Hi, I was playing with a DVD writer on -CURRENT again today, this time with growisofs utility from dvd+rw-tools package. It's "almost" working, but sometimes it fails on a SCSI command with IMMED (0x01) flag set. The problems demonstrates with this error message: 653580288/4658987008 (99.9%) _at_2.4x, remaining 0:01 /dev/pass1: flushing cache /dev/pass1: writing lead-out - [unable to TEST UNIT READY]: Input/output error I was able to get it fully working on DVD+RW with this patch: --- dvd+rw-tools-5.13.4.7.4-orig/growisofs_mmc.cpp Fri Sep 19 13:21:27 2003 +++ dvd+rw-tools-5.13.4.7.4/growisofs_mmc.cpp Fri Dec 19 00:46:31 2003 _at__at_ -942,6 +942,7 _at__at_ static int flush_cache (Scsi_Command &cmd) { int err; +#if 0 cmd[0] = 0x35; // FLUSH CACHE cmd[1] = 0x02; // "IMMED" cmd[9] = 0; _at__at_ -949,6 +950,7 _at__at_ wait_for_unit (cmd); else perror (":-( unable to FLUSH CACHE"); +#endif // XXX PAV XXX #if 1 // Pioneer apparently needs this, non-IMMED FLUSH that is... cmd[0] = 0x35; // FLUSH CACHE _at__at_ -1019,7 +1021,7 _at__at_ fprintf (stderr,"%s: writing lead-out\n",ioctl_device); cmd[0] = 0x5B; // CLOSE TRACK/SESSION - cmd[1] = 0x01; // "IMMED" + // XXX PAV XXX cmd[1] = 0x01; // "IMMED" cmd[2] = 0x02; // "Close session" cmd[9] = 0; if ((errcode=cmd.transport())) It's not a clean solution, but it points into one exact thing that is broken in atapicam after ATAng - IMMED flagged commands. My guess is that it's the periodical checking of the unit for completion of this command which is failing. I'd really appreciate if someone skilled in this area looks into the issue - I'm ready to test any patches, as I'm planning on keeping DVD writer hooked to my -CURRENT box over the holidays. -- Pav Lucistnik <pav_at_oook.cz> <pav_at_FreeBSD.org> Me go and see Elves and all! Hooray!
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:34 UTC