Re: ATAng regression: cdcontrol close not working

From: Bruce Evans <bde_at_zeta.org.au>
Date: Fri, 31 Oct 2003 18:27:40 +1100 (EST)
On Thu, 30 Oct 2003, Soren Schmidt wrote:

> It seems Lars Eggert wrote:
> > > I've already committed a solution that works on all the drives I
> > > could test on (some of which failed before), if this still
> > > fails for you I'd like a more detailed description of what
> > > exactly goes wrong...
> >
> > I must have missed that commit message, sorry. This is the drive I am
> > having the issues with:
> >
> > acd0: CDRW <PHILIPS DVD+RW-D28> at ata1-master UDMA33
> >
> > Sending CDIOCCLOSE from a short C snippet shows that the ioctl yields EBUSY.
>
> Hmm, now that a real stupid return code from the drive IMNHO...
>
> Anyhow if you loose the test for error in atapi-cd.c::acd_tray in the
> close case, does it work then ? Problem is that the call to read toc
> might fail early, but its worth a shot..

I was mistaken in thinking that my patch fixed this.  It only works for
1 drive, as does at acd^H^Htapi-cd.c rev.1.148.

Some boot messages:

    acd0: CDRW <RICOH CD-RW MP7320A> at ata1-slave UDMA33
    acd1: CDROM <ATAPI 44X CDROM> at ata2-slave PIO4
    (cd1:ata2:0:1:0): Recovered Sense
    (cd1:ata2:0:1:0): READ CD RECORDED CAPACITY. CDB: 25 0 0 0 0 0 0 0 0 0
    (cd1:ata2:0:1:0): CAM Status: SCSI Status Error
    (cd1:ata2:0:1:0): SCSI Status: Check Condition
    (cd1:ata2:0:1:0): NOT READY asc:3a,0
    (cd1:ata2:0:1:0): Medium not present
    cd1 at ata2 bus 0 target 1 lun 0
    cd1: <ATAPI 44X CDROM 3.40> Removable CD-ROM SCSI-0 device
    cd1: 16.000MB/s transfers
    cd1: Attempt to query device size failed: NOT READY, Medium not present
    (cd0:ata1:0:1:0): Recovered Sense
    (cd0:ata1:0:1:0): READ CD RECORDED CAPACITY. CDB: 25 0 0 0 0 0 0 0 0 0
    (cd0:ata1:0:1:0): CAM Status: SCSI Status Error
    (cd0:ata1:0:1:0): SCSI Status: Check Condition
    (cd0:ata1:0:1:0): NOT READY asc:3a,0
    (cd0:ata1:0:1:0): Medium not present
    cd0 at ata1 bus 0 target 1 lun 0
    cd0: <RICOH CD-RW MP7320A bp13> Removable CD-ROM SCSI-0 device
    cd0: 33.000MB/s transfers
    cd0: Attempt to query device size failed: NOT READY, Medium not present

These drives now have the following behaviour for eject/close:

cd0, acd1, cd1: eject and close just work
acd0: eject works.  Close fails with EBUSY.  None of
     acd_start_stop(cdp, [0-3]) (called from ddb, ignoring errors) closes
     the tray when it is open.

The related bugs in the cd driver are only that the messages are too verbose.
The above boot messages show only some of them.  Eject + close gives the
following messages (all unwanted):

    (cd0:ata1:0:1:0): Recovered Sense
    (cd0:ata1:0:1:0): READ CD RECORDED CAPACITY. CDB: 25 0 0 0 0 0 0 0 0 0
    (cd0:ata1:0:1:0): CAM Status: SCSI Status Error
    (cd0:ata1:0:1:0): SCSI Status: Check Condition
    (cd0:ata1:0:1:0): NOT READY asc:3a,0
    (cd0:ata1:0:1:0): Medium not present
    (cd0:ata1:0:1:0): Recovered Sense
    (cd0:ata1:0:1:0): READ CD RECORDED CAPACITY. CDB: 25 0 0 0 0 0 0 0 0 0
    (cd0:ata1:0:1:0): CAM Status: SCSI Status Error
    (cd0:ata1:0:1:0): SCSI Status: Check Condition
    (cd0:ata1:0:1:0): NOT READY asc:3a,0
    (cd0:ata1:0:1:0): Medium not present
    (cd0:ata1:0:1:0): Recovered Sense
    (cd0:ata1:0:1:0): READ CD RECORDED CAPACITY. CDB: 25 0 0 0 0 0 0 0 0 0
    (cd0:ata1:0:1:0): CAM Status: SCSI Status Error
    (cd0:ata1:0:1:0): SCSI Status: Check Condition
    (cd0:ata1:0:1:0): NOT READY asc:3a,0
    (cd0:ata1:0:1:0): Medium not present
    (cd0:ata1:0:1:0): Recovered Sense
    (cd0:ata1:0:1:0): READ CD RECORDED CAPACITY. CDB: 25 0 0 0 0 0 0 0 0 0
    (cd0:ata1:0:1:0): CAM Status: SCSI Status Error
    (cd0:ata1:0:1:0): SCSI Status: Check Condition
    (cd0:ata1:0:1:0): NOT READY asc:3a,0
    (cd0:ata1:0:1:0): Medium not present

This is with my modified version of scsi_cd.c.  The current one is similarly
verbose, but doesn't do as many read-capacity's.

Bruce
Received on Thu Oct 30 2003 - 22:28:01 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:27 UTC