bug-xorriso
[Top][All Lists]
Advanced

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

Re: [Bug-xorriso] building libisofs-1.4.4, libburn-1.4.4, libisoburn-1.4


From: Thomas Schmitt
Subject: Re: [Bug-xorriso] building libisofs-1.4.4, libburn-1.4.4, libisoburn-1.4.4 on OpenBSD
Date: Sat, 30 Jul 2016 14:02:31 +0200

Hi,

> The LED of optical drive had been blinking about 50 seconds since starting
> blank process.
> After killing xorriso (Ctrl-C could not stop, used kill -KILL),
> the medium was blanked.

The time would match "fast" blanking at speed 4x.
(Is the CD-RW labeled "2x - 4x" ?)

This looks as if the drive reacted normally but the Sense data not only
do not get to libburn but also stay stuck with the Sense code 2,0,0 which
should actually never be emitted by a drive.

Even if the ASC, ASCQ values of real KEY = 2 messages would be altered
to 0,0, the drive should begin to issue KEY = 0 when blanking is done.


> ./xorriso : ABORT : Trying to shut down busy drives

So the signal was caught and the worker thread should abort as soon
as possible.
But the waiting loop after BLANK does not look for the cancel flag.

I need to think about the conditions which would allow to break the loop
because of user intervention. It is tricky, because the drive might not
be done with the BLANK run. Closing the file descriptor and ending the
process would still leave it in the procedure of blanking. When it is done
then it would wake up and be all alone.


> -immed option makes blanking was unterminated like current xorriso.
> I attach the log.

The BLANK command was the same as with libburn:

> Executing 'blank unit' command on Bus 1 Target 4, Lun 0 timeout 9600s
> CDB:  A1 11 00 00 00 00 00 00 00 00 00 00
> cmd finished after 0.001s timeout 9600s

compared to:

> BLANK
> a1 11 00 00 00 00 00 00 00 00 00 00
>      1682 us     [ 5043228 ]

Regrettably -V did not show the Sense data of the subsequent TEST UNIT
READY commands.
It only reports:

> cdrecord: Input/output error. test unit ready: scsi sendcmd: retryable error

Hrmpf. I should have tested my proposal.
With cdrecord 3.02a05 i need option  -VV  to see info like

  Executing 'test unit ready' command on Bus 8 Target 0, Lun 0 timeout 40s
  CDB:  00 00 00 00 00 00
  cdrecord: Input/output error. test unit ready: scsi sendcmd: no error
  CDB:  00 00 00 00 00 00
  status: 0x2 (CHECK CONDITION)
  Sense Bytes: 71 00 02 00 00 00 00 0A 00 00 00 00 04 07 00 80
  Sense Key: 0x2 Not Ready, deferred error, Segment 0
  Sense Code: 0x04 Qual 0x07 (logical unit not ready, operation in progress) 
Fru 0x0
  Sense flags: Blk 0 (not valid) operation 0% done
  cmd finished after 0.001s timeout 40s

Well, it has to be expected, that it is the same as with libburn.


I am now working on offering the opportunity to execute the long running
commands without Immed bit. If we cannot fix the problem with Immed on
OpenBSD, then the default could be set to no-Immed at compile time.

But actually it is ugly and we did not yet rule out completely that the
drive is mad.


Have a nice day :)

Thomas




reply via email to

[Prev in Thread] Current Thread [Next in Thread]