All of lore.kernel.org
 help / color / mirror / Atom feed
* (no subject)
@ 2018-05-31  4:33 Benjamin Herrenschmidt
  2018-05-31  4:33 ` [RFC PATCH 01/11] powerpc/prom_init: Make of_workarounds static Benjamin Herrenschmidt
                   ` (10 more replies)
  0 siblings, 11 replies; 16+ messages in thread
From: Benjamin Herrenschmidt @ 2018-05-31  4:33 UTC (permalink / raw)
  To: linuxppc-dev

prom_init is a rather "special" bit of code. Run once when booting
from Open Firmware as pretty much the very first thing we do, it
will perform all communications with OF before it gets killed and
extract the device-tree for the kernel use. It will then re-enter
the kernel at its main entry point but this time with an FDT.

Future secure VM support will require that entry to happen in the
form of a call to the Ultravisor, which will check the integrity
of the kernel image.

Thus it's critical that prom_init doesn't actually write to the
portions of the kernel potentially being checked, or if it does,
undoes it.

This series is a set of a cleanup and a first step in that direction.

All of prom_init static (it shares no globals with the rest of the
kernel appart from some rodata stuff) are moved to a separate ELF
section placed in .bss if they are writeable, or .rodata if not.

We can later move that section elsewhere if necessary or re-clear
the .bss before entering the kernel.

prom_init already takes care of restoring relocs to their original
state.

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

end of thread, other threads:[~2018-10-15  4:07 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-31  4:33 Benjamin Herrenschmidt
2018-05-31  4:33 ` [RFC PATCH 01/11] powerpc/prom_init: Make of_workarounds static Benjamin Herrenschmidt
2018-10-12 13:56   ` Michael Ellerman
2018-10-15  4:00   ` [RFC,01/11] " Michael Ellerman
2018-05-31  4:33 ` [RFC PATCH 02/11] powerpc/prom_init: Make "fake_elf" const Benjamin Herrenschmidt
2018-10-15  4:00   ` [RFC,02/11] " Michael Ellerman
2018-05-31  4:33 ` [RFC PATCH 03/11] powerpc/prom_init: Make "default_colors" const Benjamin Herrenschmidt
2018-10-15  4:00   ` [RFC,03/11] " Michael Ellerman
2018-05-31  4:33 ` [RFC PATCH 04/11] powerpc/prom_init: Replace __initdata with __prombss when applicable Benjamin Herrenschmidt
2018-05-31  4:33 ` [RFC PATCH 05/11] powerpc/prom_init: Remove support for OPAL v2 Benjamin Herrenschmidt
2018-05-31  4:33 ` [RFC PATCH 06/11] powerpc/prom_init: Move prom_radix_disable to __prombss Benjamin Herrenschmidt
2018-05-31  4:33 ` [RFC PATCH 07/11] powerpc/prom_init: Move ibm_arch_vec " Benjamin Herrenschmidt
2018-05-31  4:33 ` [RFC PATCH 08/11] powerpc/prom_init: Move const structures to __initconst Benjamin Herrenschmidt
2018-05-31  4:33 ` [RFC PATCH 09/11] powerpc/prom_init: Move a few remaining statics to appropriate sections Benjamin Herrenschmidt
2018-05-31  4:33 ` [RFC PATCH 10/11] powerpc/prom_init: Move __prombss to it's own section and store it in .bss Benjamin Herrenschmidt
2018-05-31  4:33 ` [RFC PATCH 11/11] powerpc: Check prom_init for disallowed sections Benjamin Herrenschmidt

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.