Re: [Regression] Crash in load_module() while freeing args

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Rusty Russell
Date: Wednesday, May 26, 2010 - 1:00 am

On Wed, 26 May 2010 09:17:32 am Linus Torvalds wrote:

Well, yes, obviously I missed something :(  I'll look at it tonight after
Arabella is asleep.


The kprobes guys: they were cc'd about the change.



I'd have to look back through the pre-git history, but we've dropped the
lock around the initfn for a long time now because people wanted to do odd
things (ISTR it sucked when modules oopsed on load, too).

So then we have the problem that crc32 is finished its init and needs the
lock back, and bnx2x which needs crc32 is waiting for it.  We could just
fail bnx2x; and in fact, we did prior to this patch (we timeout) and it breaks
network on booting on some box according to Brandon:

http://www.mail-archive.com/linux-crypto@vger.kernel.org/msg04331.html

This *used* not to be a problem, because userspace placed locks on
modules and so it would never try to load bnx2x until crc32 was loaded.
ISTR a mention that Jon removed that...


Sure, then userspace needs to change :(

Rusty.
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[Regression] Crash in load_module() while freeing args, Rafael J. Wysocki, (Tue May 25, 2:00 pm)
Re: [Regression] Crash in load_module() while freeing args, Rafael J. Wysocki, (Tue May 25, 3:54 pm)
Re: [Regression] Crash in load_module() while freeing args, Linus Torvalds, (Tue May 25, 4:47 pm)
Re: [Regression] Crash in load_module() while freeing args, Rusty Russell, (Wed May 26, 1:00 am)
Re: [Regression] Crash in load_module() while freeing args, Linus Torvalds, (Wed May 26, 8:41 am)
Re: [Regression] Crash in load_module() while freeing args, Rafael J. Wysocki, (Wed May 26, 3:56 pm)
Re: [Regression] Crash in load_module() while freeing args, Linus Torvalds, (Wed May 26, 4:07 pm)
Re: [Regression] Crash in load_module() while freeing args, Rusty Russell, (Wed May 26, 10:26 pm)
Re: [Regression] Crash in load_module() while freeing args, Brandon Philips, (Thu May 27, 11:46 am)
Re: [Regression] Crash in load_module() while freeing args, Rafael J. Wysocki, (Thu May 27, 2:57 pm)
Re: [Regression] Crash in load_module() while freeing args, Rusty Russell, (Mon May 31, 12:54 am)
[PATCH 0/2] kernel/module.c locking changes, Rusty Russell, (Mon May 31, 5:00 am)
[PATCH 1/2] module: make locking more fine-grained., Rusty Russell, (Mon May 31, 5:01 am)
[PATCH 1/2] Make the module 'usage' lists be two-way, Linus Torvalds, (Mon May 31, 1:16 pm)
Re: [PATCH 1/2] Make the module 'usage' lists be two-way, Rusty Russell, (Mon May 31, 6:37 pm)
Re: [PATCH 1/2] Make the module 'usage' lists be two-way, Américo Wang, (Mon May 31, 7:44 pm)
Re: [PATCH 1/2] Make the module 'usage' lists be two-way, Rusty Russell, (Mon May 31, 8:42 pm)
Re: [PATCH 1/2] Make the module 'usage' lists be two-way, Linus Torvalds, (Mon May 31, 8:51 pm)
Re: [PATCH 1/2] Make the module 'usage' lists be two-way, Linus Torvalds, (Mon May 31, 9:00 pm)
Re: [PATCH 1/2] Make the module 'usage' lists be two-way, Linus Torvalds, (Mon May 31, 9:05 pm)
Re: [PATCH 1/2] module: make locking more fine-grained., Américo Wang, (Mon May 31, 10:38 pm)
Re: [PATCH 1/2] module: make locking more fine-grained., Rusty Russell, (Mon May 31, 10:55 pm)