Re: [PATCH RESEND 2/2] Fix some kallsyms_lookup() vs rmmod races

From: Rusty Russell
Date: Sat Mar 17 2007 - 20:46:59 EST


On Fri, 2007-03-16 at 12:51 +0100, Ingo Molnar wrote:
> * Alexey Dobriyan <adobriyan@xxxxx> wrote:
>
> > [cc'ing folks whose proc files are affected]
> >
> > kallsyms_lookup() can call module_address_lookup() which iterates over
> > modules list without module_mutex taken. Comment at the top of
> > module_address_lookup() says it's for oops resolution so races are
> > irrelevant, but in some cases it's reachable from regular code:
>
> looking at the problem from another angle: wouldnt this be something
> that would benefit from freeze_processes()/unfreeze_processes(), and
> hence no locking would be required?

Actually, the list manipulation is done with stop_machine for this
reason. Alexey, is preempt enabled in your kernel?

Rusty.


-
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/