How to stop attached USB device / send IRP_MN_REMOVE_DEVICE?

Bernd Walter ticso at cicely12.cicely.de
Tue Aug 14 08:13:06 PDT 2007


On Tue, Aug 14, 2007 at 04:14:06PM +0200, Sven Hazejager wrote:
> >>>So, the question really is: how to send a IRP_MN_REMOVE_DEVICE
> >>>command?
> >>
> >>`camcontrol da? stop` seemed to do the trick before (5.2.1-R, AFAIR),
> >>but now I'm not sure (looks like it doesn't)
> >
> >sorry, I meant to say that `camcontrol da? stop` does not power down
> >the device anymore; nonetheless, it is probably safe to disconnect it
> 
> No, camcontrol does not support this over USB. Windows XP demonstrates it 
> is technically possible, and I do not believe it is fully safe to 
> disconnect the drive (even when unmounted), as the drive then is not able 
> to park its heads, which it DOES do under XP.

Why do you think it is not safe?
You either don't physically move the drive when disconneting it or it's
not a mechanical drive at all.

> So, we come back to the original question: how to send an 
> IRP_MN_REMOVE_DEVICE event?

You don't have to, there is nothing more than not using the device you
are about to remove.
This is different in windows where every device available is
automatically mounted, polled for media change, or whatever.

-- 
B.Walter                http://www.bwct.de      http://www.fizon.de
bernd at bwct.de           info at bwct.de            support at fizon.de


More information about the freebsd-hackers mailing list