kernel/module.c: do not inline do_init_module()
authorJan Kiszka <[email protected]>
Tue, 17 Feb 2015 21:46:50 +0000 (13:46 -0800)
committerLinus Torvalds <[email protected]>
Tue, 17 Feb 2015 22:34:53 +0000 (14:34 -0800)
This provides a reliable breakpoint target, required for automatic symbol
loading via the gdb helper command 'lx-symbols'.

Signed-off-by: Jan Kiszka <[email protected]>
Acked-by: Rusty Russell <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Jason Wessel <[email protected]>
Cc: Andi Kleen <[email protected]>
Cc: Ben Widawsky <[email protected]>
Cc: Borislav Petkov <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
kernel/module.c

index 8426ad48362c73f96e8031a7c9b0cd16eba1d426..b34813f725e970fa79b97e625fab6c568543aaf8 100644 (file)
@@ -3025,8 +3025,13 @@ static void do_free_init(struct rcu_head *head)
        kfree(m);
 }
 
-/* This is where the real work happens */
-static int do_init_module(struct module *mod)
+/*
+ * This is where the real work happens.
+ *
+ * Keep it uninlined to provide a reliable breakpoint target, e.g. for the gdb
+ * helper command 'lx-symbols'.
+ */
+static noinline int do_init_module(struct module *mod)
 {
        int ret = 0;
        struct mod_initfree *freeinit;