Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'driver-core-4.20-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core

Pull driver core fix from Greg KH:
"Here is a single driver core fix for 4.20-rc5

It resolves an issue with the data alignment in 'struct devres' for
the ARC platform. The full details are in the commit changelog, but
the short summary is the change is a single line:

- unsigned long long data[]; /* guarantee ull alignment */
+ u8 __aligned(ARCH_KMALLOC_MINALIGN) data[];

This has been in linux-next for a while with no reported issues"

* tag 'driver-core-4.20-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
devres: Align data[] to ARCH_KMALLOC_MINALIGN

+8 -2
+8 -2
drivers/base/devres.c
··· 26 26 27 27 struct devres { 28 28 struct devres_node node; 29 - /* -- 3 pointers */ 30 - unsigned long long data[]; /* guarantee ull alignment */ 29 + /* 30 + * Some archs want to perform DMA into kmalloc caches 31 + * and need a guaranteed alignment larger than 32 + * the alignment of a 64-bit integer. 33 + * Thus we use ARCH_KMALLOC_MINALIGN here and get exactly the same 34 + * buffer alignment as if it was allocated by plain kmalloc(). 35 + */ 36 + u8 __aligned(ARCH_KMALLOC_MINALIGN) data[]; 31 37 }; 32 38 33 39 struct devres_group {