2015-05-22 14:26:39

by Minfei Huang

[permalink] [raw]
Subject: [Patch v2] livepatch: annotate klp_init() with __init

Usually we prefer to let compiler put the module initialized function to
section ".init.text". Thus this text in memory will be freed in future.

Once we add the "__init" preceding function name, we can use following
command to find it in specfied section.

$ objdump -t -j .init.text built-in.o

built-in.o: file format elf64-x86-64

SYMBOL TABLE:
0000000000000000 l d .init.text 0000000000000000 .init.text
0000000000000000 l F .init.text 000000000000004e klp_init

Signed-off-by: Minfei Huang <[email protected]>
---
v1:
- modify the subject to make it more concise
---
kernel/livepatch/core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/livepatch/core.c b/kernel/livepatch/core.c
index 284e269..86e40b9 100644
--- a/kernel/livepatch/core.c
+++ b/kernel/livepatch/core.c
@@ -973,7 +973,7 @@ static struct notifier_block klp_module_nb = {
.priority = INT_MIN+1, /* called late but before ftrace notifier */
};

-static int klp_init(void)
+static int __init klp_init(void)
{
int ret;

--
2.2.2


2015-05-22 14:35:09

by Josh Poimboeuf

[permalink] [raw]
Subject: Re: [Patch v2] livepatch: annotate klp_init() with __init

On Fri, May 22, 2015 at 10:26:29PM +0800, Minfei Huang wrote:
> Usually we prefer to let compiler put the module initialized function to
> section ".init.text". Thus this text in memory will be freed in future.
>
> Once we add the "__init" preceding function name, we can use following
> command to find it in specfied section.
>
> $ objdump -t -j .init.text built-in.o
>
> built-in.o: file format elf64-x86-64
>
> SYMBOL TABLE:
> 0000000000000000 l d .init.text 0000000000000000 .init.text
> 0000000000000000 l F .init.text 000000000000004e klp_init
>
> Signed-off-by: Minfei Huang <[email protected]>
> ---
> v1:
> - modify the subject to make it more concise

Thanks!

Acked-by: Josh Poimboeuf <[email protected]>

--
Josh

2015-05-25 15:19:03

by Jiri Kosina

[permalink] [raw]
Subject: Re: [Patch v2] livepatch: annotate klp_init() with __init

On Fri, 22 May 2015, Minfei Huang wrote:

> Usually we prefer to let compiler put the module initialized function to
> section ".init.text". Thus this text in memory will be freed in future.
>
> Once we add the "__init" preceding function name, we can use following
> command to find it in specfied section.
>
> $ objdump -t -j .init.text built-in.o
>
> built-in.o: file format elf64-x86-64
>
> SYMBOL TABLE:
> 0000000000000000 l d .init.text 0000000000000000 .init.text
> 0000000000000000 l F .init.text 000000000000004e klp_init
>
> Signed-off-by: Minfei Huang <[email protected]>

I think this changelog is way too verbose for no good reason (this is
probably the first time in my life I am saying something like that :) ).

There is really no need to explain how to use objdump in changelog. I've
shortened the changelog and applied.

Thanks,

--
Jiri Kosina
SUSE Labs