O_NONBLOCK for devices with removable media

victor cruceru victor.cruceru at gmail.com
Mon Aug 1 19:04:27 GMT 2005


In conclusion: 
any difference between open with O_NONBLOCK and open without it for this 
kind of devices?
Because man 2 open says:
----------------------------------------------------------------------------------------------------
If the O_NONBLOCK flag is specified and the open() system call would result 
in
the process being blocked for some reason (e.g., waiting for carrier on a
dialup line), open() returns immediately. The descriptor remains in non-
blocking mode for subsequent operations.
----------------------------------------------------------------------------------------------------
Thanks
victor cruceru



On 8/1/05, Bernd Walter <ticso at cicely12.cicely.de> wrote:
> 
> On Mon, Aug 01, 2005 at 09:41:30PM +0300, victor cruceru wrote:
> > Well, if you are doing this from a daemon (multiplexing a lot of events)
> > which is blocked in this open syscall, even 1 second is not reasonable. 
> In
> > my case it is something more than 30 of seconds (again, on a 5.4 box). 
> I'll
> > give it a try on FreeBSD 6. I'm currently investigating if there is
> > something like TEST_UNIT_READY (for both ATAPI and SCSI) which can be 
> issued
> > on a control device (i.e. /dev/ata)
> 
> What do you expect it to do?
> Ask the device about the state or always fail, because it is not
> allowed to ask the device?
> In your case you have a broken device, this isn't much of an argument.
> A resonable reply time for a USB device would be less then 10ms.
> 
> --
> B.Walter BWCT http://www.bwct.de
> bernd at bwct.de info at bwct.de
> 
>


More information about the freebsd-hackers mailing list