Hello!

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:

[EMAIL PROTECTED] burncd -f /dev/acd0 -s 10 blank
blanking CD -  17sec 0 % done -1                (interim status)
blanking CD -  39sec 0 % done 0                 (final status)
[EMAIL PROTECTED]

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

[EMAIL PROTECTED] 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
[EMAIL PROTECTED]

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:  [EMAIL PROTECTED]
nic-hdl: LYNX-RIPE
_______________________________________________
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to