lkml.org 
[lkml]   [2004]   [Aug]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: cdrom: dropping to single frame dma
Jens Axboe wrote:
> On Sun, Jul 25 2004, David Ford wrote:
>
>>I've been trying to rip my CDs onto my HD, and last night after about 7
>>CDs I realized I was getting junk and it was taking forever to rip a
>>CD. I'm using 2.6.8-rc2 and I have two different CD-ROMs in my
>>machine. Both are burners.
>>
>>I got a single "cdrom: dropping to single frame dma" message which
>>according to my research is part of the culprit.
>>
>>See the thread on LKML back on 5/15/2004 titled "dma ripping", and again
>>on 6/15 titled "cdrom ripping / dropping to dingle frame dma" -- yes
>>that's a "d".
>>
>>I'm guessing that Jens' patch for this didn't make it into the kernel.
>
>
> Try this.
>
> --- linux-2.6.8-rc2-mm1/drivers/cdrom/cdrom.c~ 2004-08-02 14:56:48.259992912 +0200
> +++ linux-2.6.8-rc2-mm1/drivers/cdrom/cdrom.c 2004-08-02 15:20:58.326549288 +0200
> @@ -2004,6 +2004,8 @@
> struct packet_command cgc;
> int nr, ret;
>
> + cdi->last_sense = 0;
> +
> memset(&cgc, 0, sizeof(cgc));
>
> /*
> @@ -2055,6 +2057,8 @@
> if (!q)
> return -ENXIO;
>
> + cdi->last_sense = 0;
> +
> while (nframes) {
> nr = nframes;
> if (cdi->cdda_method == CDDA_BPC_SINGLE)
> @@ -2102,6 +2106,7 @@
>
> nframes -= nr;
> lba += nr;
> + ubuf += len;
> }
>
> return ret;
>

I don't know if it's a result of upgrading to 2.6.8-rc2 (from 2.6.5) or
from the patch, but it has changed things. I still get

hdd: DMA timeout retry
hdd: timeout waiting for DMA
hdd: status timeout: status=0xd0 { Busy }
hdd: status timeout: error=0x00
hdd: drive not ready for command
hdd: ATAPI reset complete
cdrom: dropping to single frame dma

but ripping stays at its normal speed (5.0x instead of 0.6x) and the
file produced is correct instead of skipping/silence.

It doesn't fix the true issue of why I'm getting DMA timeouts, but it
does make ripping useable.

P.S. Does anyone know why this:

gst-launch-0.8 cdparanoia ! vorbisenc ! filesink location="music.ogg"

would cause a DMA timeout but this:

gst-launch-0.8 cdparanoia ! queue ! { vorbisenc ! filesink
location="music.ogg" }

wouldn't?

Thanks,
Dave Arnold
-
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/

\
 
 \ /
  Last update: 2005-03-22 14:04    [W:0.188 / U:0.012 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site