Re: Problems with eject and pktcdvd

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Damian Pietras <[email protected]> writes:

> On Sun, Jan 15, 2006 at 09:47:40PM +0100, Peter Osterlund wrote:
> > 
> > The irq timeout problem might be broken hardware/firmware, but there
> > is a problem with drive locking and the pktcdvd driver.
> > 
> > If you do
> > 
> > 	pktsetup 0 /dev/hdc
> > 	mount /dev/hdc /mnt/tmp
> > 	umount /mnt/tmp
> > 
> > the door will be left in a locked state. (It gets unlocked when you
> > run "pktsetup -d 0" though.) However, if you do:
> > 
> > 	pktsetup 0 /dev/hdc
> > 	mount /dev/pktcdvd/0 /mnt/tmp
> > 	umount /mnt/tmp
> 
> Thanks!
> 
> It works this way without any irq timeout. Unfortunately I can't use it
> as a workaround, because CD-R media must be mounted with '-o ro' or I
> get 'pktcdvd: Wrong disc profile (9)', so I can't just put it in fstab
> and use 'mount /media/cdrom' for both CD-R and RW discs.

Please try this patch.


Allow non-writable media to be mounted.

Signed-off-by: Peter Osterlund <[email protected]>
---

 drivers/block/pktcdvd.c |    7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c
index 3445386..04117a7 100644
--- a/drivers/block/pktcdvd.c
+++ b/drivers/block/pktcdvd.c
@@ -1896,7 +1896,7 @@ static int pkt_open_write(struct pktcdvd
 
 	if ((ret = pkt_probe_settings(pd))) {
 		DPRINTK("pktcdvd: %s failed probe\n", pd->name);
-		return -EIO;
+		return -EROFS;
 	}
 
 	if ((ret = pkt_set_write_settings(pd))) {
@@ -2054,10 +2054,9 @@ static int pkt_open(struct inode *inode,
 			goto out_dec;
 		}
 	} else {
-		if (pkt_open_dev(pd, file->f_mode & FMODE_WRITE)) {
-			ret = -EIO;
+		ret = pkt_open_dev(pd, file->f_mode & FMODE_WRITE);
+		if (ret)
 			goto out_dec;
-		}
 		/*
 		 * needed here as well, since ext2 (among others) may change
 		 * the blocksize at mount time

-- 
Peter Osterlund - [email protected]
http://web.telia.com/~u89404340
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux