On 8/2/05, Steven Scholz <[EMAIL PROTECTED]> wrote:
> Jens Axboe wrote:

> do_ide_request() could check hwif->present and/or drive->present.
> BUT: at this point the request is already made and the low level block layer 
> is
> sleeping and waiting for it's completion.
> I could not figure out how to kill a request in do_ide_request() and wake up 
> the
> block layer (sleeping in __wait_on_buffer()).
> That's why I thought preventing the generation of such reuqests would be the
> right way.
> 
> > I suggest you take it up with Bart how best to solve this. He might even
> > already have patches.
> Bart? Are you there?

IDE device unplug TODO :)
* add ide_device_get() helper which will check for drive->present
  + increase reference count on drive->gendev and ide_device_put()
  helper which will decrease reference count on drive->gendev
* propagate usage of these helpers to device drivers (ide_disk_get() etc.)
  so there won't be _new_ requests after removal of the device
* if !drive->present fail _old_ requests (as already mentioned by Jens)
* add proper locking around drive->present
* ...

first three points should be relatively easy

Bartlomiej
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to