Messages in this thread | | | From | Rusty Russell <> | Subject | Re: Freeing alternatives sections after module init? | Date | Wed, 29 Jun 2016 06:03:20 +0930 |
| |
Jessica Yu <jeyu@redhat.com> writes: > Hi Rusty,
Hi Jessica,
> I noticed that the module loader keeps .altinstructions and > .altinstr_replacement (which are normally freed after kernel init) in > core memory after module init, so these sections are never freed for > modules. > > In fact, the module loader seems to keep a number of sections normally > marked between __init_begin and __init_end (which are then freed in > free_initmem()) in module core memory, for example on x86, there's > also .parainstructions and .altinstr_aux. > > I was just wondering if this discrepancy was intentional :-) > Shouldn't these sections be freed after init? Though it probably > doesn't hurt to keep some of these sections in memory, > .altinstr_replacement is (for whatever reason) an executable section, > and is technically not needed anymore after apply_alternatives() > copies the replacement instructions, so it might be good to free it.
No intention on my part! Definitely nice to fix; I look forward to your patch.
And sorry for the delay on review of ro_after_init; I'll look at it today I promise!
Cheers, Rusty.
| |