[summary] Re: burncd 'blank' not terminating ?

Dmitry Pryanishnikov dmitry at atlantis.dp.ua
Wed Dec 27 01:11:49 PST 2006


On Tue, 26 Dec 2006, Luigi Rizzo wrote:
> I suggest the following two fixes:
> 1. change burncd.c as below, so that if CDRIOCGETPROGRESS does not return
>   anything good, it calls CDIOCRESET to determine when the command
>   is complete.
>   This can be improved by calling CDIOCRESET unconditionally as a
>   termination test
> 2. change atapi-cd.c to return something even if ATA_SENSE_VALID is
>   unset. Apparently there is a lot of non-complying hardware around
>   so restricting to what the spec says is like shooting ourselves
>   in the foot.
>      Again, if burncd.c uses CDIOCRESET to determine the completion
>   of the 'blank' operation, we don't care if the return value from
>   CDRIOCGETPROGRESS is incorrect, because we don't rely on it.
> Patches below (to be improved to make CDIOCRESET unconditional).
> Does this satisfy all ?

   Thanks, Luigi, you rule OK! As I've said before, atapi-cd.c part of these
changes seems to be effectively NOOP with my TEAC's drive

acd0: CDRW <CD-W540E/1.0C> at ata1-master UDMA33

But burncd.c patch definitely works! It's output is somehow ugly:

root at lion# burncd -f /dev/acd0 -s 10 blank
blanking CD -  17sec 0 % done -1		(interim status)
blanking CD -  39sec 0 % done 0			(final status)
root at lion#

but the operation finishes w/o pressing Ctrl-C. Now I can use aggregate 
commands such as 'blank data xxx fixate':

root at lion# burncd -f /dev/acd0 -s 10 blank data memtest86+-1.65.iso fixate
blanking CD -  39sec 0 % done 0
next writeable LBA 0
writing from file memtest86+-1.65.iso size 900 KB
written this track 900 KB (100%) total 900 KB
fixating CD, please wait..
burncd: ioctl(CDRIOCFIXATE): Input/output error
root at lion#

Fixate still issues 'ioctl(CDRIOCFIXATE): Input/output error', but AFAICT 
the resulting media is OK.

Thank you again for digging this problem!

> 	cheers
> 	luigi

Sincerely, Dmitry
Atlantis ISP, System Administrator
e-mail:  dmitry at atlantis.dp.ua
nic-hdl: LYNX-RIPE

More information about the freebsd-stable mailing list