Re: [PATCH 03/11] jump label: Base patch for jump label

From: Mathieu Desnoyers
Date: Fri Sep 24 2010 - 16:59:42 EST


* Steven Rostedt (rostedt@xxxxxxxxxxx) wrote:
> On Thu, 2010-09-23 at 14:40 -0400, Jason Baron wrote:
>
> > I agree that we this synchronization for the module __init section.
> >
> > However, I believe we are ok for module removal case. free_module() is
> > called *after* blocking_notifier_call_chain() call. The
> > blocking_notifier_call_chain() is going to call back into the jump label
> > code, grab the jump_label_mutex and remove the reference to the module that
> > is about to freed. Thus, the jump label code can no longer reference it.
> >
> > So I think the following patch is all that is required here (lightly
> > tested).
> >
> > Steve, I'll re-post as a separate patch, if we agree on this fix.
>
> Ug, I'm struggling to get ready for my Tokyo trip. I'll try to look at
> it on the flight. But I still need to write my presentation :-)
>
> I may have a response back till Monday or Tuesday.

As a note for when you review this patch, I have a strong preference for
adding a "pre-init-free notifier callback" rather than taking the rcu
read lock + adding a synchronize_rcu() in module.c. This will make our
life much easier when we end up doing modifications down in text_poke.

Thanks,

Mathieu

>
> -- Steve
>
>

--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/