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. > The reason these aren't working is because they have never been > tested. I sent in my not-entirely-finished patches the night before I > left for China for one month. Well, I'm on a time-sensitive project right now, and they "need" hotplug support, so maybe I'll patch your patches and do what testing I can. I'll post a fourth patch in a few days. > When I get back to Waterloo (Ontario) in September, I should send in > revised versions of these patches with the following fixes: > > - mod_timer instead of delete_timer/change timeout/add_timer That's easy. I'll add it in my 'patch 4/3' > - bunch of code cleanups Haven't touched this, looks pretty clean to me > - proper error handling This may be something I'll have to stick my fingers in as I do more testing > - actually making the patches work. Hopefully I'll get this going. [Update, 10 mins later] Hey, I've got unplugging working already! -- Jim Ramsay "Me fail English? That's unpossible!" - : send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html