kallsyms header cleanup
Subsystems (9)
PATCH v3 7/7 tracing: Remove unnecessary kallsyms.h and module.h includes
In reply to Tom ZanussiAt some point, these files made use of something from kallsyms.h and/or module.h, but they now use nothing from either and can be removed.
--- kernel/trace/trace.c | 1 - kernel/trace/trace_branch.c | 2 -- kernel/trace/trace_export.c | 2 -- kernel/trace/trace_irqsoff.c | 2 -- kernel/trace/trace_sched_switch.c | 2 -- kernel/trace/trace_sched_wakeup.c | 2 -- kernel/trace/trace_stack.c | 2 -- 7 files changed, 13 deletions(-)
kernel/trace/trace.c +0 -1
@@ -15,7 +15,6 @@#include <generated/utsrelease.h> #include <linux/stacktrace.h> #include <linux/writeback.h> -#include <linux/kallsyms.h> #include <linux/seq_file.h> #include <linux/notifier.h> #include <linux/irqflags.h>
kernel/trace/trace_branch.c +0 -2
@@ -3,12 +3,10 @@* * Copyright (C) 2008 Steven Rostedt <[email protected]> */ -#include <linux/kallsyms.h> #include <linux/seq_file.h> #include <linux/spinlock.h> #include <linux/irqflags.h> #include <linux/uaccess.h> -#include <linux/module.h> #include <linux/ftrace.h> #include <linux/hash.h> #include <linux/fs.h>
kernel/trace/trace_export.c +0 -2
@@ -4,11 +4,9 @@* Copyright (C) 2009 Steven Rostedt <[email protected]> */ #include <linux/stringify.h> -#include <linux/kallsyms.h> #include <linux/seq_file.h> #include <linux/uaccess.h> #include <linux/ftrace.h> -#include <linux/module.h> #include <linux/init.h> #include "trace_output.h"
kernel/trace/trace_irqsoff.c +0 -2
@@ -9,9 +9,7 @@* Copyright (C) 2004-2006 Ingo Molnar * Copyright (C) 2004 Nadia Yvette Chambers */ -#include <linux/kallsyms.h> #include <linux/uaccess.h> -#include <linux/module.h> #include <linux/ftrace.h> #include "trace.h"
kernel/trace/trace_sched_switch.c +0 -2
@@ -4,8 +4,6 @@* Copyright (C) 2007 Steven Rostedt <[email protected]> * */ -#include <linux/module.h> -#include <linux/kallsyms.h> #include <linux/uaccess.h> #include <linux/ftrace.h> #include <trace/events/sched.h>
kernel/trace/trace_sched_wakeup.c +0 -2
@@ -9,8 +9,6 @@* Copyright (C) 2004-2006 Ingo Molnar * Copyright (C) 2004 Nadia Yvette Chambers */ -#include <linux/module.h> -#include <linux/kallsyms.h> #include <linux/uaccess.h> #include <linux/ftrace.h> #include <linux/sched/rt.h>
kernel/trace/trace_stack.c +0 -2
@@ -3,12 +3,10 @@* */ #include <linux/stacktrace.h> -#include <linux/kallsyms.h> #include <linux/seq_file.h> #include <linux/spinlock.h> #include <linux/uaccess.h> #include <linux/ftrace.h> -#include <linux/module.h> #include <linux/sysctl.h> #include <linux/init.h>
Signature · 1 line
1.9.3
PATCH v3 3/7 tracing: Remove redundant module.h includes
In reply to Tom Zanussikallsyms.h now includes module.h, so remove module.h includes that were apparently there only to satisfy kallsyms use of MODULE_NAME_LEN (via KSYM_SYMBOL_LEN).
--- kernel/trace/trace_output.c | 1 - kernel/trace/trace_syscalls.c | 1 - 2 files changed, 2 deletions(-)
kernel/trace/trace_output.c +0 -1
@@ -5,7 +5,6 @@* */ -#include <linux/module.h> #include <linux/kallsyms.h> #include <linux/mutex.h> #include <linux/ftrace.h>
kernel/trace/trace_syscalls.c +0 -1
@@ -3,7 +3,6 @@#include <linux/syscalls.h> #include <linux/slab.h> #include <linux/kernel.h> -#include <linux/module.h> /* for MODULE_NAME_LEN via KSYM_SYMBOL_LEN */ #include <linux/kallsyms.h> #include <linux/ftrace.h> #include <linux/perf_event.h>
Signature · 1 line
1.9.3
PATCH v3 5/7 fnic: Remove redundant module.h includes
In reply to Tom Zanussikallsyms.h now includes module.h, so remove module.h includes that were apparently there only to satisfy kallsyms use of MODULE_NAME_LEN (via KSYM_SYMBOL_LEN).
--- drivers/scsi/fnic/fnic_trace.c | 1 - 1 file changed, 1 deletion(-)
drivers/scsi/fnic/fnic_trace.c +0 -1
@@ -15,7 +15,6 @@* SOFTWARE. */ -#include <linux/module.h> #include <linux/mempool.h> #include <linux/errno.h> #include <linux/spinlock.h>
Signature · 1 line
1.9.3
PATCH v3 1/7 tracing: Remove kallsyms.h include from linux/ftrace.h
In reply to Tom Zanussikallsyms.h was included by ftrace.h for KSYM_NAME_LEN, but that usage was removed by commit 3f5ec13696f [tracing/fastboot: move boot tracer structs and funcs into their own header].
Remove kallsyms.h and have users relying on ftrace.h to include it for them include it explicitly.
--- include/linux/ftrace.h | 1 - kernel/trace/trace_kprobe.c | 1 + kernel/trace/trace_output.c | 1 + kernel/trace/trace_syscalls.c | 1 + 4 files changed, 3 insertions(+), 1 deletion(-)
include/linux/ftrace.h +0 -1
@@ -7,7 +7,6 @@#define _LINUX_FTRACE_H#include <linux/trace_clock.h> -#include <linux/kallsyms.h> #include <linux/linkage.h> #include <linux/bitops.h> #include <linux/ptrace.h>
kernel/trace/trace_kprobe.c +1 -0
@@ -18,6 +18,7 @@*/ #include <linux/module.h> +#include <linux/kallsyms.h> #include <linux/uaccess.h> #include "trace_probe.h"
kernel/trace/trace_output.c +1 -0
@@ -6,6 +6,7 @@*/ #include <linux/module.h> +#include <linux/kallsyms.h> #include <linux/mutex.h> #include <linux/ftrace.h>
kernel/trace/trace_syscalls.c +1 -0
@@ -4,6 +4,7 @@#include <linux/slab.h> #include <linux/kernel.h> #include <linux/module.h> /* for MODULE_NAME_LEN via KSYM_SYMBOL_LEN */ +#include <linux/kallsyms.h> #include <linux/ftrace.h> #include <linux/perf_event.h> #include <asm/syscall.h>
Signature · 1 line
1.9.3
PATCH v3 2/7 kallsyms: Add module.h include
In reply to Tom ZanussiKSYM_SYMBOL_LEN uses MODULE_NAME_LEN defined in module.h, so include module.h so users don't have to.
--- include/linux/kallsyms.h | 1 + 1 file changed, 1 insertion(+)
include/linux/kallsyms.h +1 -0
@@ -8,6 +8,7 @@#include <linux/errno.h> #include <linux/kernel.h> #include <linux/stddef.h> +#include <linux/module.h> #define KSYM_NAME_LEN 128#define KSYM_SYMBOL_LEN (sizeof("%s+%#lx/%#lx [%s]") + (KSYM_NAME_LEN - 1) + \
Signature · 1 line
1.9.3
PATCH v3 4/7 lib: Remove redundant module.h includes
In reply to Tom Zanussikallsyms.h now includes module.h, so remove module.h includes that were apparently there only to satisfy kallsyms use of MODULE_NAME_LEN (via KSYM_SYMBOL_LEN).
--- lib/vsprintf.c | 1 - 1 file changed, 1 deletion(-)
lib/vsprintf.c +0 -1
@@ -18,7 +18,6 @@#include <stdarg.h> #include <linux/clk-provider.h> -#include <linux/module.h> /* for KSYM_SYMBOL_LEN */ #include <linux/types.h> #include <linux/string.h> #include <linux/ctype.h>
Signature · 1 line
1.9.3
PATCH v3 6/7 slub: Remove redundant module.h includes
In reply to Tom Zanussikallsyms.h now includes module.h, so remove module.h includes that were apparently there only to satisfy kallsyms use of MODULE_NAME_LEN (via KSYM_SYMBOL_LEN).
--- mm/slub.c | 1 - 1 file changed, 1 deletion(-)
mm/slub.c +0 -1
@@ -11,7 +11,6 @@#include <linux/mm.h> #include <linux/swap.h> /* struct reclaim_state */ -#include <linux/module.h> #include <linux/bit_spinlock.h> #include <linux/interrupt.h> #include <linux/bitops.h>
Signature · 1 line
1.9.3
v3 cover kallsyms header cleanup
During review of an unrelated patchset, the question was asked why module.h was included in code that wouldn't be a module and didn't do anything with modules [1].
The reason is that it uses kallsyms defines, but kallsyms.h doesn't include module.h, though it should because it uses MODULE_NAME_LEN. The code in question also didn't include kallsyms.h but relied on ftrace.h to pull it in. But ftrace.h no longer contains anything that needs kallsyms.h, and continues to include it only because other code expects it to.
This patchset is the start of cleaning all that up. It also adds explicit kallsyms.h includes and removes module.h includes for obvious cases in kernel/trace and lib/, where I happened to be working.
There are a bunch of other files that probably include module.h only for kallsyms, but I haven't gone through them yet. I can submit a follow-on patchset to this one assuming this is best way to do it...
[1] https://lkml.org/lkml/2015/4/4/70
Changes from v2:
- rebased to linux-next
- trace.c now needs module.h so leave it
Changes from v1:
- added KSYM_SYMBOL_LEN patches for fnic and slub
- separated tracing changes into KSYM_SYMBOL_LEN-only module.h changes
- fixed up bogus lib change from previous patchset
- separate patch to remove unnecessary tracing kallsyms.h and module.h usage
The following changes since commit d3e8e8e541efab6d818008e24a71a5a9e99a8df6:
Add linux-next specific files for 20150706 (2015-07-06 13:52:06 +1000)
are available in the git repository at:
git://git.yoctoproject.org/linux-yocto-contrib.git tzanussi/kallsyms-header-cleanup-v3
http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-contrib/log/?h=tzanussi/kallsyms-header-cleanup-v3
Tom Zanussi (7):
tracing: Remove kallsyms.h include from linux/ftrace.h
kallsyms: Add module.h include
tracing: Remove redundant module.h includes
lib: Remove redundant module.h includes
fnic: Remove redundant module.h includes
slub: Remove redundant module.h includes
tracing: Remove unnecessary kallsyms.h and module.h includes
drivers/scsi/fnic/fnic_trace.c | 1 - include/linux/ftrace.h | 1 - include/linux/kallsyms.h | 1 + kernel/trace/trace.c | 1 - kernel/trace/trace_branch.c | 2 -- kernel/trace/trace_export.c | 2 -- kernel/trace/trace_irqsoff.c | 2 -- kernel/trace/trace_kprobe.c | 1 + kernel/trace/trace_output.c | 2 +- kernel/trace/trace_sched_switch.c | 2 -- kernel/trace/trace_sched_wakeup.c | 2 -- kernel/trace/trace_stack.c | 2 -- kernel/trace/trace_syscalls.c | 2 +- lib/vsprintf.c | 1 - mm/slub.c | 1 - 15 files changed, 4 insertions(+), 19 deletions(-)
Signature · 1 line
1.9.3