Re: [PATCH 2.6.10-rc1 2/5] driver-model: bus_recan_devices() locking fix

From: Dmitry Torokhov
Date: Thu Nov 04 2004 - 14:23:48 EST


Greg KH <greg@xxxxxxxxx> 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@xxxxxxxxxxx>
>
> 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@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/