[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: What does this error stand for ?



Hi,

> status: 0x2 (CHECK CONDITION)
> Sense Bytes: 72 0B 00 00 00 00 00 0E 09 0C 00 00 00 03 00 00
> Sense Key: 0x0 No Additional Sense, Segment 11
> Sense Code: 0x00 Qual 0x03 (setmark detected) Fru 0x0

Looks like some bus problem.
But this theory does not match your observation
that growisofs burns successfully.


> cdrecord: Please properly read the error message above.

SPC-3, 4.5 Sense Data, tells that the
"Sense Bytes" actually mean error code
  Key= B , ASC= 0 , ASCQ= 0
rather than Key= 0 , ASC= 0 , ASCQ= 3 as
perceived by cdrecord.

I do not find this combination in MMC-5 or
SPC-3. But Key 0xB means according to SPC-3,
table 27:
"ABORTED COMMAND: Indicates that the device
 server aborted the command. The application
 client may be able to recover by trying the
 command again."

According to SPC-3 tables 13, 14, and 15,
"09 0C" announces an "ATA Return" of 12 bytes
to be explained in specification SAT =
"SCSI / ATA Translation [ISO/IEC 14776-921]
 [T10/1711-D]".
I don't have this document. 6 of the bytes got
not printed by cdrecord, anyway.

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

Well, above is obscure enough on its own.

But why does cdrecord receive the sense data in
format 0x72 (which it obviously tries to decode
like format 0x70) ?

I assume this is an error condition produced by
the bus controller or the operating system.
(Aren't they aware of D_SENSE status ?)


I am now busy with augmenting the code of
libburn for this case.

growisofs is not aware of sense format 0x72
either. In transport.hxx i see:
  #define ERRCODE(s)      ((((s)[2]&0x0F)<<16)|((s)[12]<<8)|((s)[13]))
which is correct only with format 0x70.

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

> I tried the third [media] with growisofs which burns it fine.

If this difference of cdrecord and growisofs
is reliably reproducible, then there could be
a trigger for success in growisofs drive
preparation.

It would be interesting to see how my program
cdrskin does with the same options as cdrecord.
(If an error occurs then the message will
 probably be as misleading. The augmented
 code is still being tested.)


Have a nice day :)

Thomas


Reply to: