Re: [PATCH v3 2/6] PM / Runtime: introduce pm_runtime_set[get]_memalloc_noio()
From: Oliver Neukum <hidden>
Date: 2012-10-31 08:37:27
Also in:
linux-mm, lkml, netdev
From: Oliver Neukum <hidden>
Date: 2012-10-31 08:37:27
Also in:
linux-mm, lkml, netdev
On Wednesday 31 October 2012 11:05:33 Ming Lei wrote:
On Wed, Oct 31, 2012 at 10:08 AM, Ming Lei [off-list ref] wrote:quoted
quoted
I am afraid it is, because a disk may just have been probed as the deviceis being reset.Yes, it is probable, and sounds like similar with 'root_wait' problem, see prepare_namespace(): init/do_mounts.c, so looks no good solution for the problem, and maybe we have to set the flag always before resetting usb device.The below idea may help the problem which 'memalloc_noio' flag isn't set during usb_reset_device(). - for usb mass storage device, call pm_runtime_set_memalloc_noio(true) inside usb_stor_probe2() and uas_probe(), and call pm_runtime_set_memalloc_noio(false) inside uas_disconnect() and usb_stor_disconnect(). - for usb network device, register_netdev() is always called inside usb interface's probe(), looks no such problem.
This still leaves networking done over PPP in the cold. Regards Oliver