[PATCH] GCC 3.3.x/3.4 compatiblity fix in include/linux/init.h
GCC 3.4 miscompiles the kernel because it silently optimizes away data placed in the .init.setup section by the __setup() macro. __attribute__((unused)) does only avoid the warning, but doesn't mark the data as being used. Since GCC 3.3, __attribute__((used)) should be applied to such variables. The __attribute_used__ macro from linux/compiler.h already takes care of compiler differences for us. In this patch, I've gone a step further and proactively fixed that in all places.
Showing
Please register or sign in to comment