I tried the following patch with a full x86 .config [1]: --- a/include/asm-x86/cache.h +++ b/include/asm-x86/cache.h -#define __read_mostly __attribute__((__section__(".data.read_mostly"))) +/* #define __read_mostly __attribute__((__section__(".data.read_mostly"))) */ The result [2,3] was: -rwxrwxr-x 1 bunk bunk 46607243 2007-12-13 19:50 vmlinux.old -rwxrwxr-x 1 bunk bunk 46598691 2007-12-13 21:55 vmlinux It's not a surprise that the kernel can become bigger when __read_mostly gets used, especially in cases where __read_mostly prevents gcc optimizations. My question is: Is there anywhere in the kernel a case where __read_mostly brings a measurable improvement or can it be removed? cu Adrian [1] mostly allyesconfig with CONFIG_MODULES=n [2] vmlinux.old is the unpatched kernel [3] gcc 4.2 was used -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed - To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html