with grsecurity-2.1.10-2.6.20.4-200703271911.patch, it dies compiling here:
arch/i386/lib/mmx.c: In function ‘_mmx_memcpy’:
arch/i386/lib/mmx.c:75: error: ‘cr0’ undeclared (first use in this function)
arch/i386/lib/mmx.c:75: error: (Each undeclared identifier is reported only once
arch/i386/lib/mmx.c:75: error: for each function it appears in.)
arch/i386/lib/mmx.c:46: error: invalid lvalue in asm output 0
arch/i386/lib/mmx.c:80: error: invalid lvalue in asm output 0
arch/i386/lib/mmx.c: In function ‘fast_copy_page’:
arch/i386/lib/mmx.c:238: error: ‘cr0’ undeclared (first use in this function)
arch/i386/lib/mmx.c:209: error: invalid lvalue in asm output 0
arch/i386/lib/mmx.c:242: error: invalid lvalue in asm output 0
make[1]: *** [arch/i386/lib/mmx.o] Error 1
unless you have CONFIG_PAX_KERNEXEC enabled
lines 34-36 of arch/i386/lib/mmx.c:
- Code: Select all
#ifdef CONFIG_PAX_KERNEXEC
unsigned long cr0;
#endif
but then line 75 does:
- Code: Select all
...
: "=&r" (cr0) : "r" (from) : "ax");
the easy fix is obviously just to enable CONFIG_PAX_KERNEXEC, which is probably what everyone wants anyways.