linux/arch/x86
Arjan van de Ven 488fd99588 x86: fix pageattr-selftest
In Ingo's testing, he found a bug in the CPA selftest code. What would
happen is that the test would call change_page_attr_addr on a range of
memory, part of which was read only, part of which was writable. The
only thing the test wanted to change was the global bit...

What actually happened was that the selftest would take the permissions
of the first page, and then the change_page_attr_addr call would then
set the permissions of the entire range to this first page. In the
rodata section case, this resulted in pages after the .rodata becoming
read only... which made the kernel rather unhappy in many interesting
ways.

This is just another example of how dangerous the cpa API is (was); this
patch changes the test to use the incremental clear/set APIs
instead, and it changes the clear/set implementation to work on a 1 page
at a time basis.

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2008-01-30 13:34:07 +01:00
..
boot x86: unify arch/x86/boot/compressed/misc_??.c 2008-01-30 13:33:38 +01:00
configs x86: Set CFQ as default in 32-bit defconfig 2008-01-30 13:32:49 +01:00
crypto [CRYPTO] twofish: Merge common glue code 2008-01-14 17:07:57 +11:00
ia32 x86: remove unneded casts 2008-01-30 13:33:23 +01:00
kernel x86: cpa: move flush to cpa 2008-01-30 13:34:07 +01:00
lguest x86: remove depends on X86_32 from PARAVIRT & PARAVIRT_GUEST 2008-01-30 13:33:32 +01:00
lib x86: fix usage of .section .sched.text in assembler code 2008-01-30 13:33:37 +01:00
mach-default spelling fixes: arch/i386/ 2007-10-20 01:13:56 +02:00
mach-es7000 i386: es7000 minor cleanups 2007-10-17 20:16:15 +02:00
mach-generic spelling fixes: arch/i386/ 2007-10-20 01:13:56 +02:00
mach-rdc321x x86: add support for the RDC R-321x SoC 2008-01-30 13:33:36 +01:00
mach-visws x86: cleanup mpspec variants 2008-01-30 13:30:35 +01:00
mach-voyager x86: convert TSC disabling to generic cpuid disable bitmap 2008-01-30 13:33:20 +01:00
math-emu x86: arch/x86/math-emu/errors.c: fix printk warnings 2008-01-30 13:32:13 +01:00
mm x86: fix pageattr-selftest 2008-01-30 13:34:07 +01:00
oprofile x86: rename stack_pointer to kernel_trap_sp 2008-01-30 13:33:16 +01:00
pci x86: serverworks: IRQ routing needs no _p 2008-01-30 13:33:14 +01:00
power x86: make __{save,restore}_processor_state static 2008-01-30 13:31:23 +01:00
vdso x86: add vdso32-int80-syms.lds to .gitignore 2008-01-30 13:33:24 +01:00
video i386: move video 2007-10-11 11:16:56 +02:00
xen x86: return the page table level in lookup_address() 2008-01-30 13:33:43 +01:00
Kconfig x86: replace boot_ioremap() with enhanced bt_ioremap() - remove boot_ioremap() 2008-01-30 13:33:44 +01:00
Kconfig.cpu x86: reduce CONFIG_X86_PPRO_FENCE bloat 2008-01-30 13:32:31 +01:00
Kconfig.debug x86: cpa: make self-test depend on DEBUG_KERNEL 2008-01-30 13:34:04 +01:00
Makefile x86: add support for the RDC R-321x SoC 2008-01-30 13:33:36 +01:00
Makefile_32.cpu x86: move i386 and x86_64 Makefiles to arch/x86 2007-10-25 22:27:34 +02:00