Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 02 Jul 2001 01:30:23 +1000
From:      Stephen McKay <mckay@thehub.com.au>
To:        Joerg Schilling <schilling@fokus.gmd.de>
Cc:        freebsd-scsi@freebsd.org, ken@kdm.org, mckay@thehub.com.au
Subject:   Re: Problems reading burned CDs 
Message-ID:  <200107011530.f61FUNw15125@dungeon.home>
In-Reply-To: <200107011502.RAA16964@fokus.gmd.de> from Joerg Schilling at "Sun, 01 Jul 2001 17:02:54 %2B0200"
References:  <200107011502.RAA16964@fokus.gmd.de>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sunday, 1st July 2001, Joerg Schilling wrote:

>>From mckay@thehub.com.au Sun Jul  1 16:50:52 2001
>
>>On Sunday, 1st July 2001, Joerg Schilling wrote:
>>>It is really a bad idea to use dd to read a CD.
>
>>I think it's important that the raw CD be presented in a fully readable
>>format.  Then dd (and everything else) will work properly.
>
>Please don't try to do this!
>
>It is a known fact that these problems with TAO CD's exist.
>If you change FreeBSD, then it would behave different from an other OS.

I was surprised by the TAO difference.  I'm not alone.  I suspect that
only a tiny percentage of people are aware of the problem.  One job of
the OS is to hide these surprises.  FreeBSD can be different from
other OSes, if need be.

>As I already said: you should not read a CD with dd but with 'readcd'.
>readcd allows you to specify sectors=from-to to exclude these run-out
>sectors. Future versions may even do this automatically.

Although 'readcd' is useful now, it is only problems with drivers and
specifications that make it useful.  We should fix the underlying
problem.  Maybe the other OSes will catch up.

>>We might either have to lie about the capacity (so that every reported byte
>>can be read), or deal specially with the run out blocks (by faking them
>>as nulls).
>
>Again: please don't do that! You would only create confusion.
>All people who know CD standards known about this Authors of CD drivers and
>ISO-9660 filesystem should know it.

I don't think this is relevant.  The Unix way is to abstract away device
differences.  A CD should be readable by simple application of open,
read, read, read (returning 0 => EOF), close.  If I write 100MB of data
to a CD (or tape, or regular file, etc), then read it back, I should get
100MB of data, then EOF.  There is no need for CDs to end with a read failure.

Is there anything useful in the error return that CD duplicators require?
Or is it just junk?  We could add a mode to preserve the old behaviour.

>>>># cdrecord dev=1,4,0 -toc
>>>>Cdrecord 1.9 (i386-unknown-freebsd4.2) Copyright (C) 1995-2000 Jörg Schilling
>>>
>>>A really old one.....
>
>>Old software lives on!  I'm still using 1.8, by the way.
>
>>It also looks like you renamed your suite to: cdrtools.  I expect the
>>cdrecord port maintainer didn't notice.
>
>I don't know who this is and I expect that a port maintaner is on the
>right mailing lists where this change has been discussed at least for 2 years.

I'll let the maintainer know.

Stephen.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-scsi" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200107011530.f61FUNw15125>