Messages in this thread | | | Date | Mon, 18 Oct 2010 10:14:55 -0400 | From | Jason Baron <> | Subject | Re: [PATCH 3/9] jump label: Fix module __init section race |
| |
On Sat, Oct 16, 2010 at 12:23:19PM -0400, Steven Rostedt wrote: > On Sat, 2010-10-16 at 08:23 +0200, Ingo Molnar wrote: > > * Steven Rostedt <rostedt@goodmis.org> wrote: > > > > > On Fri, 2010-10-15 at 16:09 -0400, Steven Rostedt wrote: > > > > > > > --- a/kernel/jump_label.c > > > > +++ b/kernel/jump_label.c > > > > @@ -168,7 +168,8 @@ void jump_label_update(unsigned long key, enum jump_label_type type) > > > > count = e_module->nr_entries; > > > > iter = e_module->table; > > > > while (count--) { > > > > - if (kernel_text_address(iter->code)) > > > > + if (iter->key && > > > > + kernel_text_address(iter->code)) > > > > > > Peter, I know you hated this, but the alternative is either: > > > > > > if (iter->key && > > > kernel_text_address(iter->code)) > > > > > > or break 80 chars. All three seem bad (although I don't mind breaking > > > 80 chars for this). But I'll leave it for now. > > > > No, the proper alternative is to move the body of the iteration into a > > jump_label_update_entry() inline function ... > > > > Nobody is forcing you to start yet another iteration 4 indentations > > deep. We have functions for a reason. > > Jason, > > Could you send me another version of this patch with the second > iteration wrapped in a function. > > Thanks, > > -- Steve > >
sure. I going to re-spin this whole series - there are a bunch of changes. Hopefully, I can drop the whole register/unregister notion as Peter suggested.
thanks,
-Jason
| |