All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/8] arm: support CONFIG_RODATA
@ 2014-08-07 15:01 ` Kees Cook
  0 siblings, 0 replies; 34+ messages in thread
From: Kees Cook @ 2014-08-07 15:01 UTC (permalink / raw)
  To: linux-kernel
  Cc: Kees Cook, Liu hua, Mark Salter, Rabin Vincent, Nikolay Borisov,
	Nicolas Pitre, Leif Lindholm, Tomasz Figa, Rob Herring,
	Doug Anderson, Jason Wessel, Will Deacon, Laura Abbott,
	Catalin Marinas, Russell King - ARM Linux, linux-arm-kernel

This is a series of patches to support CONFIG_RODATA on ARM, so that
the kernel text is RO, and non-text sections default to NX. To support
on-the-fly kernel text patching (via ftrace, kprobes, etc), fixmap
support has been finalized based on several versions of various patches
that are floating around on the mailing list. This series attempts to
include the least intrusive version, so that others can build on it for
future fixmap work.

The series has been heavily tested, and appears to be working correctly:

With CONFIG_ARM_PTDUMP, expected page table permissions are seen in
/sys/kernel/debug/kernel_page_tables.

Using CONFIG_LKDTM, the kernel now correctly detects bad accesses for
for the following lkdtm tests via /sys/kernel/debug/provoke-crash/DIRECT:
        EXEC_DATA
        WRITE_RO
        WRITE_KERN

ftrace works:
        CONFIG_FTRACE_STARTUP_TEST passes
        Enabling tracing works:
                echo function > /sys/kernel/debug/tracing/current_tracer

kprobes works:
        CONFIG_ARM_KPROBES_TEST passes

kexec works:
        kexec will load and start a new kernel

Thanks to everyone who has been testing this series and working on its
various pieces!

-Kees

v2:
- fix typo in kexec merge (buildbot)
- flip index order for highmem pte access (lauraa)
- added kgdb updates (dianders)


^ permalink raw reply	[flat|nested] 34+ messages in thread

end of thread, other threads:[~2014-08-11 15:41 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-08-07 15:01 [PATCH v2 0/8] arm: support CONFIG_RODATA Kees Cook
2014-08-07 15:01 ` Kees Cook
2014-08-07 15:01 ` [PATCH 1/8] arm: use generic fixmap.h Kees Cook
2014-08-07 15:01   ` Kees Cook
2014-08-07 17:38   ` Leif Lindholm
2014-08-07 17:38     ` Leif Lindholm
2014-08-07 17:47     ` Kees Cook
2014-08-07 17:47       ` Kees Cook
2014-08-07 15:01 ` [PATCH 2/8] arm: fixmap: implement __set_fixmap() Kees Cook
2014-08-07 15:01   ` Kees Cook
2014-08-07 15:01 ` [PATCH 3/8] arm: mm: reduce fixmap kmap from 32 to 16 CPUS Kees Cook
2014-08-07 15:01   ` Kees Cook
2014-08-07 22:18   ` Rob Herring
2014-08-07 22:18     ` Rob Herring
2014-08-08 10:16     ` Leif Lindholm
2014-08-08 10:16       ` Leif Lindholm
2014-08-09  0:11     ` Kees Cook
2014-08-09  0:11       ` Kees Cook
2014-08-07 15:01 ` [PATCH 4/8] arm: use fixmap for text patching when text is RO Kees Cook
2014-08-07 15:01   ` Kees Cook
2014-08-07 15:01 ` [PATCH 5/8] ARM: kexec: Make .text R/W in machine_kexec Kees Cook
2014-08-07 15:01   ` Kees Cook
2014-08-07 15:01 ` [PATCH 6/8] arm: kgdb: Handle read-only text / modules Kees Cook
2014-08-07 15:01   ` Kees Cook
2014-08-07 15:01 ` [PATCH 7/8] ARM: mm: allow non-text sections to be non-executable Kees Cook
2014-08-07 15:01   ` Kees Cook
2014-08-07 15:01 ` [PATCH 8/8] ARM: mm: allow text and rodata sections to be read-only Kees Cook
2014-08-07 15:01   ` Kees Cook
2014-08-11 13:30   ` Will Deacon
2014-08-11 13:30     ` Will Deacon
2014-08-11 15:41     ` Kees Cook
2014-08-11 15:41       ` Kees Cook
2014-08-07 20:43 ` [PATCH v2 0/8] arm: support CONFIG_RODATA Laura Abbott
2014-08-07 20:43   ` Laura Abbott

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.