lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4F2379E6.9050303@sipsolutions.net>
Date:	Fri, 27 Jan 2012 20:30:30 -0800
From:	Johannes Berg <johannes@...solutions.net>
To:	Larry Finger <Larry.Finger@...inger.net>
CC:	LKML <linux-kernel@...r.kernel.org>,
	wireless <linux-wireless@...r.kernel.org>
Subject: Re: Kernel BUG due to kernel page fault

Larry,

On 1/26/2012 2:36 PM, Larry Finger wrote:
> I am trying to convert the rtlwifi family of drivers to use asynchronous
> firmware loading. With recent changes in udev, many problems are being
> reported. See Bug 42632] at b.k.o.

I'm not sure what caused your problem, but your email reminded me of an 
issue we had with asynchronous firmware loading that you may want to 
consider.

When request_firmware_async() is called, it eventually calls the 
callback you give it. This may, however, be a long time later (I think 
the current default timeout is 1 minute). In the meantime, the module 
could be unloaded by the user, and then the system crashes as soon as 
the firmwaer code attempts to invoke the callback.

To fix this, we have a completion in iwlwifi that some exit code path 
waits for to make sure this scenario doesn't happen.

I think you should implement that.

A better fix would probably be to make request_firmware_async() take a 
struct module * argument and pass THIS_MODULE to it, and make the 
firmware code handle this, but currently it doesn't.

johannes
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ