Re: [PATCH 3/3] Add disk hotswap support to libata RESEND #2

From: Jim Ramsay
Date: Wed Aug 24 2005 - 11:12:54 EST


On 8/24/05, Jim Ramsay <jim.ramsay@xxxxxxxxx> wrote:
> On 8/24/05, Lukasz Kosewski <lkosewsk@xxxxxxxxx> wrote:
> > On 8/24/05, Stefan Richter <stefanr@xxxxxxxxxxxxxxxxx> wrote:
> > > >> Timers appear to operate in an atomic context, so timers should not be
> > > >> allowed to call scsi_remove_device, which eventually schedules.
> > > >>
> > > >> Any suggestions on the best way to fix this?
> > > >
> > > > Workqueue, perhaps.
> >
> > Perhaps. Actually, of course :)
>
> How about the existing ata_wq workqueue? This makes sense. When the
> timer expires, it adds a task to this queue.

Note to self - No, you cannot use the exsting 'ata_wq' workqueue - The
plug-in events need to put other work on the queue during the hotplug
event... and of course this deadlocks since you're in the queuethread
already.

--
Jim Ramsay
"Me fail English? That's unpossible!"
-
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/