[Pkg-libburnia-devel] Bug#789260: libburn4: Incompatibility with Plextor PX-608CU burner

Thomas Schmitt scdbackup at gmx.net
Fri Jun 19 12:03:50 UTC 2015


Hi,

i'm the developer of libburn which is quite orphaned in Debian,
i fear.

> Problem can be reproduced via: Brasero, k3b, xfburn, growisofs

At least growisofs does not use libburn.
K3b hardly (if so, then via cdrskin replacing cdrecord/wodim).
Brasero might use it, depending of compilation and configuration.
xfburn surely uses libburn.

So the problem is reported to the right package, although
i currently doubt that it's the package's fault.


> "SCSI error on write(3376,16): [5 21 02] Illegal request. Invalid address for write."

This message looks like from libburn.
It is forwarded from the drive, which is unhappy with the
block write address 3376.


> Incompatibility with Plextor PX-608CU burner

I never saw evidence that a particular DVD burner model is
incompatible. There were CD drives with particular needs,
back in the last century. But nowadays they all obey the
command set and rules of SCSI. (Specified in the volumes
SPC-3, SBC-2, and MMC-5.)

Google "PX-608CU" tells me that it was around already in
the year 2007. How old is yours ? 

------------------------------------------------------------

Now let's see what is going on.

> BraseroLibburn dvd/bd Profile= 11h , obs= 32768 , obs_pad= 1

Brasero used libburn on a DVD-R.

> BraseroLibburn DVD pre-track 01 : get_nwa(0), ret= 1 , d->nwa= 0

It was blank. Write start address was 0.

> BraseroLibburn SCSI command 2Ah indicates host or driver error: host_status= 7h , driver_status= 0h

Ouch. Linux reports a problem with transporting SCSI commands
to the drive or with receiving replies. I'm not a kernel hacker
so i don't have more than the SG_IO interface description:
http://www.tldp.org/HOWTO/SCSI-Generic-HOWTO/x291.html

"SG_ERR_DID_ERROR [0x07] Internal error detected in the host adapter.
 This may not be fatal (and the command may have succeeded).
 The aic7xxx and sym53c8xx adapter drivers sometimes report this for
 data underruns or overruns."

The mentioned hardware is antique. I'd say no USB, IDE or SATA
controller is supposed to cause this error for fun.

> BraseroLibburn SCSI error condition on command 2Ah WRITE(10): [5 21 02]
> Illegal request. Invalid address for write.

The failed SCSI command was indeed a write.

> BraseroLibburn Libburn reported an error SCSI error on write(2080,16):
> [5 21 02] Illegal request. Invalid address for write.

So this time it happened at address 2080.


> sudo growisofs -speed=4 -dvd-compat -Z
> /dev/sr0=/media/dmitry/Partition_2/ISO_Images/Soft/myiso.iso
> ...
> 562397184/2906822656 (19.3%) @1.9x, remaining 15:50 RBU 100.0% UBU  53.1%
> :-( unable to WRITE at LBA=430b0h: Input/output error

This time it happened much later. about 550 MB were written.
Since growisofs does not report an SCSI error code triple of
(SK, ASC, ASCQ), i assume that it got a transport driver error,
like libburn did. 

------------------------------------------------------------

> The problem is not hardware-related,

Well, it is reported by the kernel, which accuses the controller
to have indicated an error condition.

The reported SCSI error is most probably only a consequence of
the communications problem between kernel and drive. 
DVD-R and DVD+R need to be written strictly sequentially.
If transport drops a WRITE command of 16 blocks, then the next one
will appear to the drive as having an address 16 blocks too high.
This would cause it to throw the error [5 21 02] seen with libburn.
(libburn does not go on with the drive after SG_ERR_DID_ERROR.
 So for this theory, the dropping of WRITE must have happened
 silently and the transport error only came afterwards.)

I will have a look whether libburn can be changed to repeat the
SCSI command when transport indicates failure.
Repeating might be the trick how MS-Windows gets over the hardware
connection problem. But the Linux description says:
  "the command may have succeeded"
Repeating a successful WRITE command would cause error [5 21 02],
too.

I cannot promise a test version soon.

On the first hand, transport should be flawless.
As you can see, neither growisofs nor libburn are currently
willing to tolerate SG_ERR_DID_ERROR.


> Samsung external DVD-burner works OK under Debian.

Do you plug it into the same USB port as the Plextor ?

If so, then the Plextor has at least some share in the problem.


Have anice day :)

Thomas



More information about the Pkg-libburnia-devel mailing list