CDEJECT for SCSI disks/ide-floppy in drivers/block/scsi_ioctl.c

Andrey Borzenkov (arvidjaar@mail.ru)
Thu, 12 Jun 2003 19:26:47 +0400


At least in 2.5.70 there is common drivers/block/scsi_ioctl.c that defines
CDEJECT and is used by both SCSI and IDE ioctls. This fails for SCSI disks
and should fail for ide-floppy as well (unverified for the lack of hardware).
Both lock tray on open and that prevents media from being ejected (even if
command appears to succeed).

This happens to sometimes work for CD-ROMs because they do not lock media when
opened with O_NONBLOCK. It is not clear if this is a feature - device opened
with O_NONBLOCK is still busy so it should be locked as well.

CDEJECT implementation should unlock tray first; is moving it into
drivers/block/scsi_ioctl.c a long term goal? Would it make sense to add
CDROM_LOCKDOOR ioctl to this file as well?

Hmm ... just realized it fails for ide-floppy that has specia case for Click!
drive. But then, it is impossible to add generic unlock command to
scsi_iotcl.c as well.

Thank you

-andrey
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/