[Debburn-devel] wodim timeout too short for DVD+R DL
Thomas Schmitt
scdbackup at gmx.net
Mon Nov 15 10:12:36 UTC 2010
Hi,
a problem examination on cdwrite mailing list yielded that the default
timeout of wodim with DVD+R DL media and command RESERVE TRACK
does not suffice for some drives.
A failed run with SCSI log is posted at
http://lists.debian.org/cdwrite/2010/11/msg00045.html
The decisive part of the log is:
> Executing 'reserve track' command on Bus 2 Target 0, Lun 0 timeout 40s
> CDB: 53 00 00 00 00 00 0C 65 40 00
> Errno: 5 (Input/output error), reserve track scsi sendcmd: retryable error
> CDB: 53 00 00 00 00 00 0C 65 40 00
> status: 0x0 (GOOD STATUS)
> cmd finished after 43.701s timeout 40s
> wodim: Cannot open new session.
I now got the confirmation from Zhang Weiwu that wodim succeeds on the
problematic drive if option
timeout=200
is given.
Actually timeout=45 would have sufficed. The successful run logs
> Executing 'reserve track' command on Bus 2 Target 0, Lun 0 timeout 200s
> CDB: 53 00 00 00 00 00 0C 65 40 00
> cmd finished after 43.458s timeout 200s
It seems that the Linux kernel did not interrupt the long running
command but just indicated error afterwards.
So a short timeout seems not to be of much benefit anyway.
--------------------------------------------------------------------
Another flaw that showed up:
wodim silently ignores option -multi with DVD+R DL.
If it cannot keep the media open then it should refuse to start with -multi.
Keeping a DVD+R appendable is just a matter of sending CLOSE TRACK SESSION
Close Function 010b rather than 100b or 101b.
wodim sends Close Function 100b which works fine,
> Executing 'close track/session' command on Bus 2 Target 0, Lun 0 timeout 1000s
> CDB: 5B 00 04 00 00 00 00 00 00 00
> cmd finished after 117.955s timeout 1000s
and then Close Function 101b which fails:
> Executing 'close track/session' command on Bus 2 Target 0, Lun 0 timeout 1000s
> CDB: 5B 00 05 00 00 00 00 00 00 00
> Errno: 5 (Input/output error), close track/session scsi sendcmd: no error
> CDB: 5B 00 05 00 00 00 00 00 00 00
> status: 0x2 (CHECK CONDITION)
> Sense Bytes: 70 00 05 00 00 00 00 0A 00 00 00 00 24 00 00 00
> Sense Key: 0x5 Illegal Request, Segment 0
> Sense Code: 0x24 Qual 0x00 (invalid field in cdb) Fru 0x0
It appears that only one of these two should be applied.
100b does not apply to single layer DVD+R.
--------------------------------------------------------------------
Have a nice day :)
Thomas
More information about the Debburn-devel
mailing list