public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jens Axboe <jens.axboe@oracle.com>
To: Mike Galbraith <efault@gmx.de>
Cc: Alex Romosan <romosan@sycorax.lbl.gov>,
	linux-kernel@vger.kernel.org, olaf@aepfle.de
Subject: Re: 2.6.19-rc1 regression: unable to read dvd's
Date: Thu, 12 Oct 2006 14:21:46 +0200	[thread overview]
Message-ID: <20061012122146.GS6515@kernel.dk> (raw)
In-Reply-To: <20061012120927.GQ6515@kernel.dk>

On Thu, Oct 12 2006, Jens Axboe wrote:
> On Thu, Oct 12 2006, Mike Galbraith wrote:
> > On Thu, 2006-10-12 at 10:28 +0000, Mike Galbraith wrote:
> > > On Thu, 2006-10-12 at 08:53 +0200, Jens Axboe wrote:
> > > > Test case, please.
> > > 
> > > Xine.
> > > 
> > > I just built it from scratch(the one that comes with SuSE 10.1 is
> > > useless for DVDs), and tried it in 2.6.19-rc1 after verifying that it
> > > worked fine in 2.6.17.
> > 
> > s/17/18
> > 
> > > hdd: BENQ DVD DD DW1625, ATAPI CD/DVD-ROM drive
> > > hdd: ATAPI 63X DVD-ROM DVD-R CD-R/RW drive, 2048kB Cache, UDMA(33)
> > > 
> > > hdd: read_intr: Drive wants to transfer data the wrong way!
> > > hdd: read_intr: Drive wants to transfer data the wrong way!
> > 
> > We're having secret handshake troubles?
> > 
> > [pid  8348] stat64("/dev/dvd", {st_dev=makedev(0, 13), st_ino=3750, st_mode=S_IFBLK|0640, st_nlink=1, st_uid=0, st_gid=6, st_blksize=4096, st_blocks=0, st_rdev=makedev(22, 64), st_atime=2006/10/12-10:03:04, st_mtime=2006/10/12-10:00:12, st_ctime=2006/10/12-10:00:17}) = 0
> > [pid  8348] open("/dev/dvd", O_RDONLY|O_LARGEFILE <unfinished ...>
> > [pid  8348] <... open resumed> )        = 8
> > [pid  8348] fstat64(8, {st_dev=makedev(0, 13), st_ino=3750, st_mode=S_IFBLK|0640, st_nlink=1, st_uid=0, st_gid=6, st_blksize=4096, st_blocks=0, st_rdev=makedev(22, 64), st_atime=2006/10/12-10:03:04, st_mtime=2006/10/12-10:00:12, st_ctime=2006/10/12-10:00:17}) = 0
> > [pid  8348] ioctl(8, DVD_READ_STRUCT <unfinished ...>
> > [pid  8348] <... ioctl resumed> , 0xbfc792a4) = 0
> > [pid  8348] ioctl(8, DVD_AUTH <unfinished ...>
> > [pid  8348] <... ioctl resumed> , 0xbfc7916c) = 0
> > [pid  8348] ioctl(8, DVD_AUTH <unfinished ...>
> > [pid  8348] <... ioctl resumed> , 0xbfc7916c) = 0
> > [pid  8348] ioctl(8, DVD_AUTH <unfinished ...>
> > [pid  8348] <... ioctl resumed> , 0xbfc7916c) = 0
> > [pid  8348] ioctl(8, DVD_AUTH <unfinished ...>
> > [pid  8348] <... ioctl resumed> , 0xbfc79170) = 0
> > [pid  8348] close(8)                    = 0
> > [pid  8348] write(2, "libdvdread: Could not open /dev/"..., 52 <unfinished ...>
> > [pid  8348] <... write resumed> )       = 52
> > [pid  8348] write(2, "libdvdread: Can\'t open /dev/dvd "..., 44 <unfinished ...>
> > [pid  8348] <... write resumed> )       = 44
> > [pid  8348] write(1, "libdvdnav: vm: faild to open/rea"..., 42 <unfinished ...>
> > [pid  8348] <... write resumed> )       = 42
> > [pid  8348] write(1, "libdvdnav: Using dvdnav version "..., 62 <unfinished ...>
> > [pid  8348] <... write resumed> )       = 62
> > [pid  8348] write(2, "libdvdread: Using libdvdcss vers"..., 57 <unfinished ...>
> > [pid  8348] <... write resumed> )       = 57
> 
> It's the rq-cmd-type patch, it must be causing a disturbance for some of
> the internal cd commands. I bet it's the same thing affecting the report
> on broken dvd identification on ppc from Olaf.

Mike/Alex/Olaf, can you give this a spin? Totally untested here, but I
think it should fix it.

diff --git a/drivers/ide/ide-cd.c b/drivers/ide/ide-cd.c
index 69bbb62..e7513e5 100644
--- a/drivers/ide/ide-cd.c
+++ b/drivers/ide/ide-cd.c
@@ -597,7 +597,7 @@ static void cdrom_prepare_request(ide_dr
 	struct cdrom_info *cd = drive->driver_data;
 
 	ide_init_drive_cmd(rq);
-	rq->cmd_type = REQ_TYPE_BLOCK_PC;
+	rq->cmd_type = REQ_TYPE_ATA_PC;
 	rq->rq_disk = cd->disk;
 }
 
@@ -2023,7 +2023,8 @@ ide_do_rw_cdrom (ide_drive_t *drive, str
 		}
 		info->last_block = block;
 		return action;
-	} else if (rq->cmd_type == REQ_TYPE_SENSE) {
+	} else if (rq->cmd_type == REQ_TYPE_SENSE ||
+		   rq->cmd_type == REQ_TYPE_ATA_PC) {
 		return cdrom_do_packet_command(drive);
 	} else if (blk_pc_request(rq)) {
 		return cdrom_do_block_pc(drive, rq);
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index 26f7856..d370d2c 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -157,6 +157,7 @@ enum rq_cmd_type_bits {
 	REQ_TYPE_ATA_CMD,
 	REQ_TYPE_ATA_TASK,
 	REQ_TYPE_ATA_TASKFILE,
+	REQ_TYPE_ATA_PC,
 };
 
 /*

-- 
Jens Axboe


  reply	other threads:[~2006-10-12 12:21 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-10-12  1:45 2.6.19-rc1 regression: unable to read dvd's Alex Romosan
2006-10-12  6:53 ` Jens Axboe
2006-10-12 10:28   ` Mike Galbraith
2006-10-12 14:13     ` Mike Galbraith
2006-10-12 12:09       ` Jens Axboe
2006-10-12 12:21         ` Jens Axboe [this message]
2006-10-12 14:44           ` Mike Galbraith
2006-10-12 13:07             ` Jens Axboe
2006-10-12 15:19           ` Alex Romosan
2006-10-12 15:23             ` Jens Axboe
2006-10-12 15:47               ` Alex Romosan
2006-10-12 19:00                 ` Mike Galbraith
2006-10-12 17:02                   ` Alex Romosan
2006-10-12 18:05                   ` Jens Axboe
2006-10-12 16:04               ` Alex Romosan
2006-10-12 16:51                 ` Jens Axboe
2006-10-13 14:40                   ` 2.6.19-rc1 (+ide-cd patches) regression: unable to rip cd Alex Romosan
2006-10-12 19:28           ` 2.6.19-rc1 regression: unable to read dvd's Olaf Hering
2006-10-12 20:20             ` Jens Axboe
2006-10-12 14:31         ` Mike Galbraith
2006-10-12 10:55 ` Alan Cox

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20061012122146.GS6515@kernel.dk \
    --to=jens.axboe@oracle.com \
    --cc=efault@gmx.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=olaf@aepfle.de \
    --cc=romosan@sycorax.lbl.gov \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox