Messages in this thread | | | Date | Thu, 4 Nov 2004 11:12:58 -0800 (PST) | From | Dmitry Torokhov <> | Subject | Re: [PATCH 2.6.10-rc1 2/5] driver-model: bus_recan_devices() locking fix |
| |
Greg KH <greg@kroah.com> wrote: > On Thu, Nov 04, 2004 at 04:02:58PM +0900, Tejun Heo wrote: > > df_02_bus_rescan_devcies_fix.patch > > > > bus_rescan_devices() eventually calls device_attach() and thus > > requires write locking the corresponding bus. The original code just > > called bus_for_each_dev() which only read locks the bus. This patch > > separates __bus_for_each_dev() and __bus_for_each_drv(), which don't > > do locking themselves, out from the original functions and call them > > with read lock in the original functions and with write lock in > > bus_rescan_devices(). > > > > > > Signed-off-by: Tejun Heo <tj@home-tj.org> > > Thanks, I cleaned up the formatting a bit in this patch and applied it. >
Hmm, I do not like that the patch now fiddles with bus's rwsem before incrementing bus's refcount.
I think just iterating through device list right the bus_rescan_devices will be good enough. I sent the patch together with other 3, did it get lost?
-- Dmitry
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |