Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Apr 2002 15:38:53 +0800
From:      Christopher Hall <hsw@acm.org>
To:        freebsd-stable@FreeBSD.ORG
Subject:   ATAPI CDROM fails to read CDRW
Message-ID:  <200204230738.g3N7crg6077601@x4.tucheng.generalresources.com>

next in thread | raw e-mail | index | archive | help

a) When attempting restore from a dump file on CDRW media I get the
   following messages:

   acd0: READ_BIG command timeout - resetting
   ata1: resetting devices .. done
   acd0: READ_BIG command timeout - resetting
   ata1: resetting devices ..
   acd0: removed from configuration
   CD remains spining and system is locked up (hard reset needed).

   Since the problem did not occur with a CDRW drive so I had assumed
   the CDROM drive had failed.

   However yesterday I changed to 4.5p3 (was using stable from April
   19) and the CDROM drive (AOPEN 52X) is working again.

b) I made an ISO and burn a CDRW from 4.5p3,
   mkisofs and cdburn having been recompiled under 4.5p3.
   The CDRW kernel was the April 19 stable kernel.
   Same failure as above.
   So, I think I have ruled out bugs in mkisofs, cdburn or the CDRW
   driver; which leaves a problem in ATA CDROM driver in stable.

c) While writing this I see a thread VCD reading probles.
   I tried the atacontrol suggestions.

   atacontrol to see the modes I could set
     PIO0 through PIO4 were possible
     UDMA no effect
     UDMA2, UDAM33, UDMA100 set a mode called WDMA2.

   The restore script ran sucessfully. Back at the command prompt
   atacontrol info gave:

   acd0: READ_BIG command timeout - resetting
   ata1: resetting devices .. done
   acd0: READ_BIG command timeout - resetting
   ata1: resetting devices .. acd0: ATAPI identify retries exceeded
   acd0: timeout waiting for cmd=ef s=10 e=7f
   acd0: timeout waiting for cmd=ef s=10 e=7f
   done
   acd0: READ_BIG - ABORTED COMMAND asc=0x4e ascq=0x00 error=0x04
   vm_fault: pager read error, pid 1382 (atacontrol)

   atacontrol list ... same
   df .. more of the same

   vm_fault: for dhcpd - not unexpected as I suspect all access
   to CDROM is lost at this point.
   hardware reset.

d) So far I have NOT been able to get the failure using dd (in PIO4)
   e.g.
     dd if=/dev/acd0c of=/dev/null bs=2048
     dd if=/dev/acd0c of=/mnt/x bs=2048
     dd if=dumpfile of=/dev/null

   but a restore right after this cause a failure.

e) This sequence appears to be repeatable (in PIO4 mode)
   boot from cdrom, no hard disk mounted
     restore -rNf dumpfile1  (6 times)  30M
     restore -rNf dumpfile2  (once)    200k
     restore -rNf dumpfile3  (once)    100M
   Failure plus a fatal trap 12: page fault while in kernel mode

f) the sequence (e) did NOT fail if I set dma by
     atacontrol mode 1 udma100 xxx
       Master = WDMA2
       Slave  = ???
     repeated umount/mount/restore over 40 times and no failure

g) Only one other time did crash in WDMA2 on the second run of my
   restore script.  All other runs of the script were sucessful.
   dd and restore -rNf both OK.

Conclusion:

  WDMA2 mode only 2 crashes in 10 tries.

  PIO4 is very easy to crash after several "restore -rNf"
    and run my restore script crashed very time.

  I believe this kernel was up-to-date with the latest cd driver
  cvsup today has not changed the CD driver since I made the April 19
  kernel and none of the files in the directory are dated after April 19.

  ll /usr/src/sys/dev/ata/atapi-cd* gives
  -rw-r--r--  1 root  wheel  52860 Apr  1 08:25 atapi-cd.c
  -rw-r--r--  1 root  wheel  11596 Mar 19 10:21 atapi-cd.h

Any suggestions?

---
Christopher Hall <hsw@generalresources.com>         Fax: +886-2-2795-3030
Christopher Hall <hsw@acm.org>                    Phone: +886-2-2795-5799

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200204230738.g3N7crg6077601>