alistair23-linux/arch/x86/kernel
Arjan van de Ven edeed30589 x86: add testcases for RODATA and NX protections/attributes
Latest update; I now have 4 NX tests, but 2 fail so they're #if 0'd.
I also cleaned up the NX test code quite a bit, and got rid of the ugly
exception table sorting stuff.

From: Arjan van de Ven <arjan@linux.intel.com>

This patch adds testcases for the CONFIG_DEBUG_RODATA configuration option
as well as the NX CPU feature/mappings. Both testcases can move to tests/
once that patch gets merged into mainline.
(I'm half considering moving the rodata test into mm/init.c but I'll
wait with that until init.c is unified)

As part of this I had to fix a not-quite-right alignment in the vmlinux.lds.h
for the RODATA sections, which lead to 1 page less being marked read only.

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:08 +01:00
..
acpi x86: unify arch/x86/kernel/acpi/sleep*.c 2008-01-30 13:32:54 +01:00
cpu x86: do not PSE on CONFIG_DEBUG_PAGEALLOC=y 2008-01-30 13:33:58 +01:00
.gitignore .gitignore update for x86 arch 2007-10-17 21:19:04 +02:00
alternative.c x86: fix up alternatives with lockdep enabled 2008-01-30 13:33:24 +01:00
aperture_64.c x86: change aper valid checking sequence 2008-01-30 13:33:39 +01:00
apic_32.c x86: don't disable the APIC if it hasn't been mapped yet 2008-01-30 13:33:17 +01:00
apic_64.c x86: change bios_cpu_apicid to percpu data variable fixup 2008-01-30 13:33:21 +01:00
apm_32.c x86: isolate PIC/PIT in/out calls 2008-01-30 13:33:14 +01:00
asm-offsets.c i386: move kernel 2007-10-11 11:17:01 +02:00
asm-offsets_32.c x86: unify struct desc_ptr 2008-01-30 13:31:12 +01:00
asm-offsets_64.c x86: add asm_offset PARAVIRT constants 2008-01-30 13:33:19 +01:00
audit_64.c x86_64: move kernel 2007-10-11 11:17:24 +02:00
bootflag.c x86: coding style cleanup for kernel/bootflag.c 2008-01-30 13:32:31 +01:00
bugs_64.c x86, 32-bit: trim memory not covered by wb mtrrs 2008-01-30 13:33:18 +01:00
cpuid.c x86: remove unneded casts 2008-01-30 13:33:23 +01:00
crash.c x86: disable hpet legacy replacement for kdump 2007-12-03 17:17:10 +01:00
crash_dump_32.c kmap leak fix for x86_32 kdump 2007-10-19 11:53:33 -07:00
crash_dump_64.c Delete filenames in comments. 2007-10-13 10:01:23 -07:00
doublefault_32.c x86: unify tss_struct 2008-01-30 13:31:31 +01:00
ds.c x86, ptrace: support 32bit-cross-64bit BTS recording 2008-01-30 13:32:03 +01:00
e820_32.c x86_32: trim memory by updating e820 2008-01-30 13:33:32 +01:00
e820_64.c x86: replace hard coded reservations in 64-bit early boot code with dynamic table 2008-01-30 13:33:17 +01:00
early-quirks.c x86: fix section mismatch warning in early-quirks.c 2008-01-30 13:33:37 +01:00
early_printk.c [x86] remove uses of magic macros for boot_params access 2007-10-16 17:38:31 -07:00
efi.c x86: convert CPA users to the new set_page_ API 2008-01-30 13:34:06 +01:00
efi_32.c x86 32-bit boot: rename bt_ioremap() to early_ioremap() 2008-01-30 13:33:44 +01:00
efi_64.c x86: fix some bugs about EFI runtime code mapping 2008-01-30 13:33:55 +01:00
efi_stub_32.S i386: move kernel 2007-10-11 11:17:01 +02:00
efi_stub_64.S x86: EFI runtime service support 2008-01-30 13:31:19 +01:00
entry_32.S x86: move to .rodata/.init.data 2008-01-30 13:31:23 +01:00
entry_64.S x86: replace privileged instructions with paravirt macros 2008-01-30 13:32:08 +01:00
genapic_64.c x86: cleanup x86_cpu_to_apicid references 2008-01-30 13:33:11 +01:00
genapic_flat_64.c x86: convert cpu_to_apicid to be a per cpu variable 2007-10-19 20:35:03 +02:00
geode_32.c x86: GEODE: update GPIO API to support setting multiple GPIOs at once 2008-01-30 13:33:35 +01:00
head64.c x86: fix more non-global TLB flushes 2008-01-30 13:33:54 +01:00
head_32.S x86: fix Section mismatch: reference to .init.text:lguest_entry 2008-01-30 13:33:28 +01:00
head_64.S x86: make early printk selectable on 64-bit as well 2008-01-30 13:33:06 +01:00
hpet.c rtc: use the IRQ callback interface in (old) RTC driver 2008-01-30 13:33:31 +01:00
i386_ksyms_32.c x86: unexport __{read,write}_lock_failed 2008-01-30 13:30:29 +01:00
i387.c x86: x86 user_regset cleanup 2008-01-30 13:31:55 +01:00
i8237.c Driver core: change sysdev classes to use dynamic kobject names 2008-01-24 20:40:40 -08:00
i8253.c x86: isolate PIC/PIT in/out calls 2008-01-30 13:33:14 +01:00
i8259_32.c x86: isolate PIC/PIT in/out calls 2008-01-30 13:33:14 +01:00
i8259_64.c x86: provide a native_init_IRQ function on 64-bit 2008-01-30 13:33:19 +01:00
init_task.c x86: nuke a ton of unused exports 2008-01-30 13:30:28 +01:00
io_apic_32.c arch/x86/kernel/io_apic_{64,32}.c: use time_before 2008-01-30 13:32:19 +01:00
io_apic_64.c arch/x86/kernel/io_apic_{64,32}.c: use time_before 2008-01-30 13:32:19 +01:00
io_delay.c x86: add DMI quirk for io-delay hangs on Compaq Presario V6000 laptops 2008-01-30 13:30:05 +01:00
ioport.c x86: refactor ioport unification 2008-01-30 13:33:10 +01:00
irq_32.c x86: remove all definitions with fastcall 2008-01-30 13:31:17 +01:00
irq_64.c x86: rename the struct pt_regs members for 32/64-bit consistency 2008-01-30 13:30:56 +01:00
k8.c x86_64: move kernel 2007-10-11 11:17:24 +02:00
kdebugfs.c x86 boot : export boot_params via debugfs for debugging 2008-01-30 13:32:51 +01:00
kprobes.c x86: remove unneded casts 2008-01-30 13:33:23 +01:00
ldt.c x86: adjust/fix LDT handling for Xen 2008-01-30 13:33:14 +01:00
machine_kexec_32.c x86: unify struct desc_ptr 2008-01-30 13:31:12 +01:00
machine_kexec_64.c x86: 64-bit, make sparsemem vmemmap the only memory model 2008-01-30 13:30:47 +01:00
Makefile x86: fix unconditional arch/x86/kernel/pcspeaker.o compiling 2008-01-30 13:33:18 +01:00
mca_32.c Delete filenames in comments. 2007-10-13 10:01:23 -07:00
mfgpt_32.c x86: GEODE add the "mfgptfix" boot time option to fix MFGPT timers 2008-01-30 13:33:33 +01:00
microcode.c x86: remove unneded casts 2008-01-30 13:33:23 +01:00
module_32.c i386: move kernel 2007-10-11 11:17:01 +02:00
module_64.c x86_64: move kernel 2007-10-11 11:17:24 +02:00
mpparse_32.c x86: fix section mismatch warning in acpi/boot.c 2008-01-30 13:33:37 +01:00
mpparse_64.c x86: fix section mismatch warning in acpi/boot.c 2008-01-30 13:33:37 +01:00
msr.c PM: Acquire device locks on suspend 2008-01-24 20:40:04 -08:00
nmi_32.c x86: clean up nmi_32/64.c 2008-01-30 13:30:33 +01:00
nmi_64.c x86: clean up nmi_32/64.c 2008-01-30 13:30:33 +01:00
numaq_32.c x86: convert TSC disabling to generic cpuid disable bitmap 2008-01-30 13:33:20 +01:00
paravirt.c x86: fill in missing pv_mmu_ops entries for PAGETABLE_LEVELS >= 3 2008-01-30 13:33:20 +01:00
paravirt_patch_32.c x86: move patching code to arch-specific file. 2008-01-30 13:32:10 +01:00
paravirt_patch_64.c x86: add stringify header 2008-01-30 13:33:19 +01:00
pci-calgary_64.c x86: remove duplicate includes 2008-01-30 13:30:32 +01:00
pci-dma_32.c i386: Clean up duplicate includes in arch/i386/kernel/ 2007-10-17 20:15:51 +02:00
pci-dma_64.c x86: pci-dma_64.c: cleanups 2008-01-30 13:30:31 +01:00
pci-gart_64.c x86: cpa: move flush to cpa 2008-01-30 13:34:07 +01:00
pci-nommu_64.c x86 gart: rename iommu.h to gart.h 2007-10-30 00:22:22 +01:00
pci-swiotlb_64.c x86: nuke a ton of unused exports 2008-01-30 13:30:28 +01:00
pcspeaker.c i386: move kernel 2007-10-11 11:17:01 +02:00
pmtimer_64.c x86: move pmtmr related declarations 2008-01-30 13:30:18 +01:00
process_32.c x86: fix section mismatch warning in process_*.c 2008-01-30 13:33:37 +01:00
process_64.c x86: fix section mismatch warning in process_*.c 2008-01-30 13:33:37 +01:00
ptrace.c x86, ptrace: add bts_struct size to status command 2008-01-30 13:32:54 +01:00
quirks.c x86: force enable HPET on (some?) ICH9 boards 2008-01-30 13:33:39 +01:00
reboot.c x86: reboot: remove inb_p usage 2008-01-30 13:33:25 +01:00
reboot_fixups_32.c x86: add the RDC machine specific reboot fixup 2008-01-30 13:33:36 +01:00
relocate_kernel_32.S i386: move kernel 2007-10-11 11:17:01 +02:00
relocate_kernel_64.S x86_64: move kernel 2007-10-11 11:17:24 +02:00
rtc.c x86: fix sched_clock() 2008-01-30 13:32:40 +01:00
scx200_32.c long vs. unsigned long - low-hanging fruits in drivers 2007-10-14 12:41:51 -07:00
setup64.c x86: export __supported_pte_mask 2008-01-30 13:33:24 +01:00
setup_32.c x86 32-bit boot: rename bt_ioremap() to early_ioremap() 2008-01-30 13:33:44 +01:00
setup_64.c x86: not set boot cpu in cpu_present_map again 2008-01-30 13:33:38 +01:00
sigframe_32.h i386: move kernel 2007-10-11 11:17:01 +02:00
signal_32.c x86: remove unneded casts 2008-01-30 13:33:23 +01:00
signal_64.c x86: print which shared library/executable faulted in segfault etc. messages v3 2008-01-30 13:33:18 +01:00
smp_32.c x86: voluntary leave_mm before entering ACPI C3 2008-01-30 13:32:01 +01:00
smp_64.c x86: voluntary leave_mm before entering ACPI C3 2008-01-30 13:32:01 +01:00
smpboot_32.c x86: remove set_kernel_exec() 2008-01-30 13:33:53 +01:00
smpboot_64.c x86: not set boot cpu in cpu_online_map in smp_prepare_boot_cpu() 2008-01-30 13:33:39 +01:00
smpcommon_32.c x86: change write_gdt_entry signature. 2008-01-30 13:31:13 +01:00
srat_32.c x86 32-bit boot: rename bt_ioremap() to early_ioremap() 2008-01-30 13:33:44 +01:00
stacktrace.c x86: remove unneded casts 2008-01-30 13:33:23 +01:00
step.c x86: remove last user of get_segment_eip 2008-01-30 13:33:12 +01:00
summit_32.c spelling fixes: arch/i386/ 2007-10-20 01:13:56 +02:00
suspend_64.c x86: make __{save,restore}_processor_state static 2008-01-30 13:31:23 +01:00
suspend_asm_64.S x86: rename the struct pt_regs members for 32/64-bit consistency 2008-01-30 13:30:56 +01:00
sys_i386_32.c remove include/asm-*/ipc.h 2007-10-17 08:42:55 -07:00
sys_x86_64.c x86: PIE executable randomization, checkpatch fixes 2008-01-30 13:31:07 +01:00
syscall_64.c i386/x86_64: move headers to include/asm-x86 2007-10-11 11:20:03 +02:00
syscall_table_32.S i386: move kernel 2007-10-11 11:17:01 +02:00
tce_64.c x86: Create clflush() inline, remove hardcoded wbinvd 2007-10-17 20:16:12 +02:00
test_nx.c x86: add testcases for RODATA and NX protections/attributes 2008-01-30 13:34:08 +01:00
test_rodata.c x86: add testcases for RODATA and NX protections/attributes 2008-01-30 13:34:08 +01:00
time_32.c x86: rename the struct pt_regs members for 32/64-bit consistency 2008-01-30 13:30:56 +01:00
time_64.c x86: fix cpu MHz reporting for AMD family 0x11 2008-01-30 13:33:35 +01:00
tls.c x86: x86 user_regset TLS 2008-01-30 13:31:52 +01:00
tls.h x86: x86 user_regset TLS 2008-01-30 13:31:52 +01:00
topology.c x86: fix section mismatch warning in topology.c 2008-01-30 13:33:37 +01:00
trampoline_32.S x86: misc. constifications 2007-10-17 20:16:08 +02:00
trampoline_64.S x86: misc. constifications 2007-10-17 20:16:08 +02:00
traps_32.c x86: fix EISA ioremap 2008-01-30 13:33:49 +01:00
traps_64.c x86: use KSYM_NAME_LEN 2008-01-30 13:33:33 +01:00
tsc_32.c x86: convert TSC disabling to generic cpuid disable bitmap 2008-01-30 13:33:20 +01:00
tsc_64.c x86: export check_tsc_unstable 2008-01-30 13:33:24 +01:00
tsc_sync.c x86: add warning to check_tsc_warp() 2008-01-30 13:33:24 +01:00
verify_cpu_64.S x86_64: move kernel 2007-10-11 11:17:24 +02:00
vm86_32.c arch/x86/: spelling fixes 2008-01-30 13:31:42 +01:00
vmi_32.c x86: add mm parameter to paravirt_alloc_pd 2008-01-30 13:33:39 +01:00
vmiclock_32.c x86: isolate PIC/PIT in/out calls 2008-01-30 13:33:14 +01:00
vmlinux.lds.S i386: move kernel 2007-10-11 11:17:01 +02:00
vmlinux_32.lds.S x86: make arch/x86/kernel/acpi/wakeup_32.S use a separate 2008-01-30 13:32:50 +01:00
vmlinux_64.lds.S x86: provide __parainstructions section 2008-01-30 13:33:19 +01:00
vsmp_64.c x86: clean up arch/x86/kernel/vsmp_64.c 2008-01-30 13:30:24 +01:00
vsyscall_64.c x86: map vsyscalls early enough 2008-01-30 13:32:39 +01:00
x8664_ksyms_64.c x86: export cpu_gdt_descr 2008-01-30 13:31:10 +01:00