From be41c805265881172e8004c81dd646ad579c8009 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Mon, 10 Feb 2014 00:41:49 +0100 Subject: Make open return ENXIO on missing CD-ROM * linux/src/drivers/block/ide-cd.c (ide_cdrom_open): Return -ENXIO when CD sense failed. --- linux/src/drivers/block/ide-cd.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'linux/src') diff --git a/linux/src/drivers/block/ide-cd.c b/linux/src/drivers/block/ide-cd.c index ccf7954..020a831 100644 --- a/linux/src/drivers/block/ide-cd.c +++ b/linux/src/drivers/block/ide-cd.c @@ -2643,6 +2643,10 @@ int ide_cdrom_open (struct inode *ip, struct file *fp, ide_drive_t *drive) if (stat == 0 || my_reqbuf.sense_key == UNIT_ATTENTION) { (void) cdrom_lockdoor (drive, 1, &my_reqbuf); (void) cdrom_read_toc (drive, &my_reqbuf); + } else { + /* Otherwise return as missing */ + --drive->usage; + return -ENXIO; } } -- cgit v1.2.3