i386/51421: CD-burning problems with Plextor PX-W1210A drive
J.Porter Clark
jpc at drum.msfc.nasa.gov
Fri Apr 25 13:20:04 PDT 2003
>Number: 51421
>Category: i386
>Synopsis: CD-burning problems with Plextor PX-W1210A drive
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Fri Apr 25 13:20:02 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator: J. Porter Clark
>Release: FreeBSD 4.8-STABLE i386
>Organization:
NASA
>Environment:
System: FreeBSD drum.msfc.nasa.gov 4.8-STABLE FreeBSD 4.8-STABLE #0: Fri Apr 25 13:37:07 CDT 2003 jpc at drum.msfc.nasa.gov:/usr/obj/usr/src/sys/JPC i386
>Description:
I'm having problems burning CDs. I'm using a Plextor drive:
acd0: CD-RW <PLEXTOR CD-R PX-W1210A> at ata0-master PIO4
This is on a Tyan K7 motherboard with 2 AMD CPUs. The main disk
drives are SCSI. I'm using a recent (as in 2 days old, maybe)
FreeBSD 4.8-STABLE. It is an SMP kernel.
If I use burncd, everything works okay until I try -d (DAO) mode.
# burncd -v -s 1 -d -f /dev/acd0c audio track01.wav.raw
adding type 0x00 file track01.wav.raw size 4961 KB 2160 blocks
next writeable LBA 0
CUE sheet:
01 00 00 01 00 00 02 00
01 01 01 00 00 00 04 00
01 aa 01 01 00 00 20 3c
addr = 150 size = 5080320 blocks = 2160
writing from file track01.wav.raw size 4961 KB
only wrote -1 of 37632 bytes err=5
This is accompanied by a syslog message:
/kernel: acd0: WRITE_BIG - ILLEGAL REQUEST asc=0x24 ascq=0x00 error=0x04
If I try using -t with the above command line, it seems to do what
it is supposed to do, but eventually I get a kernel panic (divide
by zero in kernel mode). I won't go into that one unless someone
is interested, but see below for another fun panic.
If I use atapicam/cdrecord instead, everything works, even DAO mode.
But there is one horrible side effect: If I boot the system with
nothing in the CD drive, it panics!
...usual stuff...
SMP: AP CPU#1 Launched!
acd0: MODE_SENSE_BIG command timeout - resetting
ata0: resetting devices ..
Fatal trap 12: page fault while in kernel mode
mp_lock = 01000002; cpuid = 1; lapic.id = 00000000
fault virtual address = 0x0
fault code = supervisor read, page not present
instruction pointer = 0x8:0x0150373
stack pointer = 0x10:0xff80ff3c
frame pointer = 0x10:0xff80ff44
code segment = base 0x0, limit 0xfffff, type 0x1b
= DPL 0, pres 1, def32 1, gran 1
processor eflags = interrupt enabled, resume, IOPL = 0
current process = Idle
interrupt mask = <- SMP: XXX
kernel: type 12 trap, code = 0
Stopped at reinit_bus+0xb: movl 0(%ebx),%eax
The backtrace is:
reinit_bus(0,2,c1dd6000,ff80ff74,c013deab) at reinit_bus+0xb
atapi_cam_reinit_bus(c1dd600) at atapi_cam_reinit_bus+0x13
ata_reinit(c1dd6000,c1ed6000,c014aec4,ff80ffac,c0192015) at ata_reinit_0x2d3
atapi_timeout(c1ed3000,40000000,10,1,0) at atapi_timeout+0xeb
softclock(0,18,10,10,0) at softclock+0xd1
doreti_swi() at doreti_swi+0xf
The above was copied off the screen longhand, so it might have some
small errors.
For now, I'm using atapicam and cdrecord to do DAO recording,
although I have to be careful to leave a CD in the drive. Can be
any CD, even a blank or audio one. I get the same panic if I leave
the CD door open.
>How-To-Repeat:
See above, but it may be hardware-specific.
>Fix:
I wish I knew.
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list