On Mon, Jan 7, 2013 at 7:49 AM, John Beard <johnb@xxxxxxxxxxxxxxxx> wrote: > On 21/12/12 18:23, Ezequiel Garcia wrote: > >> On Thu, Dec 13, 2012 at 12:31 PM, John Beard <johnb@xxxxxxxxxxxxxxxx> wrote: >>> >>> What is the right way to terminate requests and delete the gendisk in >>> the case of physically vanished PCI devices (or even devices in general)? >>> >> >> There are several block driver examples in drivers/block. >> Or you might want to take a loot at mtdblock.c, or perhaps >> this simple ubiblock implementation: >> >> http://lwn.net/Articles/525957/ > > Thanks, Ezequiel - sorry for the delay, I haven't had a chance to touch > my development computer over the break. The workqueue-based approach > from ubiblock.c seems to have solved the problem and the device can now > shut down happily once the request queue is emptied in the submit_req > call following device removal. > Great! It's nice to hear the hint helped you. FYI, a workqueue should always be preferred over a separate kernel thread, unless there is a good reason for the kernel thread. -- Ezequiel _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies