Messages in this thread | | | Subject | Re: [PATCH 5/9] jump label: Add register_jump_label_key/unregister_jump_label_key | From | Peter Zijlstra <> | Date | Mon, 18 Oct 2010 14:05:21 +0200 |
| |
On Fri, 2010-10-15 at 23:13 +0200, Peter Zijlstra wrote: > On Fri, 2010-10-15 at 17:09 -0400, Steven Rostedt wrote: > > On Fri, 2010-10-15 at 23:03 +0200, Peter Zijlstra wrote: > > > > > Urgh, this sucks.. :-( > > > > > > So now we have to actually track all JUMP_LABEL() sites and call > > > register muck on them.. even though we already track them through the > > > special data section. > > > > > > Is there really no way around this? > > > > I'll take a look to see if we can monkey with magic and automate it. > > So the problem is something like: > > core kernel: > > jump_label_enable() > > module: > > JUMP_LABEL() > > And then because we don't have a proper __jump_table section, the > jump_label_enable() won't properly work? > > Why not let jump_label_enable() add a dummy entry with the enabled bit > and once you load the module merge the real entry into it.
Or actually use the value of the key pointer.. it would mean either standardizing the size (int/atomic_t would work), or using a version of the fallback JUMP_LABEL implementation to sort out the type issues.
| |