Messages in this thread | | | Date | Thu, 10 Apr 2008 21:16:47 -0400 | From | Mathieu Desnoyers <> | Subject | Re: [patch 16/17] Immediate Values - Documentation |
| |
* Rusty Russell (rusty@rustcorp.com.au) wrote: > On Thursday 10 April 2008 01:08:45 Mathieu Desnoyers wrote: > > If you have to read the immediate values from a function declared as > > __init or __exit, you should explicitly use _imv_read(), which will fall > > back on a global variable read. Failing to do so will leave a reference to > > the __init section after it is freed (it would generate a modpost > > warning). > > That's a real usability wart. Couldn't we skip these in the patching loop if > required and revert so noone can make this mistake? >
Yeah, I know :(
Well, only if we can find a way to detect the macro is put within a init or exit section. Is there some assembly trickery that would permit us to do that ?
Otherwise, given the memory freed from the init section could be reused later by the kernel, I don't see how we can detect the pointer leads to a freed init section and, say, a module.
Mathieu
> Thanks, > Rusty.
-- Mathieu Desnoyers Computer Engineering Ph.D. Student, Ecole Polytechnique de Montreal OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
| |