Messages in this thread | | | From | Mathias Krause <> | Subject | [PATCH v2 0/8] Mark literal strings in __init / __exit code | Date | Sat, 12 Jul 2014 16:43:24 +0200 |
| |
This is v2 of the patch series initially posted here:
https://lkml.org/lkml/2014/6/22/149
I've integrated Joe's idea of also providing printk_init() / printk_exit() wrappers for code that cannot (or doesn't want to) be converted to the pi_*() / pe_*() wrappers.
Patches 4 and 5 are cleanup patches I stumbled over while changing the corresponding code to make use of the new pi_*() helpers.
This version addresses the symbol filtering issue, by filtering the pseudo symbols in kallsyms (patch 8). This removes them even in the KALLSYMS_ALL case.
I've changed a few more files, pushing up the memory moved from .rodata to .init.rodata to ~3 kB. This should free up a page after init for almost any x86 system.
Comments?
Mathias Krause (8): init.h: Add __init_str / __exit_str macros printk: Provide pi_<level> / pe_<level> macros for __init / __exit code x86, acpi: Mark __init strings as such x86, mm: Make x86_init.memory_setup() return a const char * x86, mm: early_panic() - pass on the message as string x86, mm: e820 - mark __init strings as such x86: setup - mark __init strings as such kallsyms: exclude pseudo symbols for __init / __exit strings
arch/x86/include/asm/e820.h | 4 +- arch/x86/include/asm/x86_init.h | 2 +- arch/x86/kernel/acpi/boot.c | 162 ++++++++++++++++++--------------------- arch/x86/kernel/acpi/sleep.c | 17 ++-- arch/x86/kernel/e820.c | 95 +++++++++++------------ arch/x86/kernel/setup.c | 70 ++++++++--------- arch/x86/lguest/boot.c | 2 +- arch/x86/xen/setup.c | 4 +- arch/x86/xen/xen-ops.h | 4 +- include/linux/init.h | 23 ++++++ include/linux/printk.h | 59 ++++++++++++++ scripts/kallsyms.c | 13 ++++ 12 files changed, 267 insertions(+), 188 deletions(-)
-- 1.7.10.4
| |