Bug 5786 - DMA access to CD-writer hangs IDE bus
Summary: DMA access to CD-writer hangs IDE bus
Status: CLOSED CODE_FIX
Alias: None
Product: IO/Storage
Classification: Unclassified
Component: IDE (show other bugs)
Hardware: i386 Linux
: P2 high
Assignee: Michael De Backer
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-12-27 03:27 UTC by Enrico Colombini
Modified: 2006-12-02 01:39 UTC (History)
1 user (show)

See Also:
Kernel Version: 2.6.12-1 and later
Subsystem:
Regression: ---
Bisected commit-id:


Attachments

Description Enrico Colombini 2005-12-27 03:27:42 UTC
Most recent kernel where this bug did not occur:
  2.4.22 (Knoppix 3.3, sg driver 3.1.25, libscg 'schily 0.7')

Distribution:
  Debian Etch (2.6.12), Fedora Core 4 (2.6.12 and 2.6.14), SuSE 9.3,
  Knoppix 4.02

Hardware Environment:
  Acer T630, Pentium 4 3.2 GHz, SATA HD [sata_uli], 
  ALi M5229 rev c7 IDE controller [alim15x3]

Software Environment:
  cdrecord (tried different versions) 
  (note: cdrecord compiled from the same source works fine in cygwin)

Problem Description:
  I can read from the CD drives, but when cdrecord issues the
  "read_dvd_structure" command with a CD-RW in the drive 
  and DMA mode active for that drive (any DMA mode)
  the IDE bus hangs (details below); when the timeout expires it logs:
    ide-cd: cmd 0x3 timed out
    hdc: lost interrupt
  Both IDE-connected drives become inaccessible until reboot.

  I think this problem could be related to bug #4514 filed by
  Jeff Wiegley: our machines share the ALi M5229 rev c7 controller.

Steps to reproduce:
  cdrecord dev=ATA:1,0,0 -checkdrive

Notes:
  I originally filed this as a possible cdrecord bug 
  (http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=338909) but:
  - Joerg Schilling says it's definitely not a cdrecord problem
  - cdrecord from the same source works fine under cygwin
  - cdrecord works fine under 2.4.22 (but I can't use the SATA HD)
  - it hangs in the middle of a SG_IO command

I did some tracing by inserting printk() in the 2.6.12 kernel:
the program gets stuck inside wait_for_completion() (kernel/sched.c)
called by blk_execute_rq() (drivers/block/ll_rw_blk.c).
However, ide_intr() (drivers/ide/ide-io.c) gets called *and returns*
IRQ_HANDLED. wait_for_completion() continues waiting.
Being a total newbie to kernel programming, I'd appreciate
suggestions about further testing and analysis.

(I also tried disabling acpi, to no avail)


--- system and environment details -------------------------

/proc/cpuinfo:
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 15
model		: 4
model name	: Intel(R) Pentium(R) 4 CPU 3.20GHz
stepping	: 1
cpu MHz		: 3200.918
cache size	: 1024 KB
fdiv_bug	: no
hlt_bug		: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 5
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36
clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx pni monitor ds_cpl cid xtpr
bogomips	: 6307.84

-----------

/proc/lspci:
0000:00:00.0 Host bridge: ATI Technologies Inc: Unknown device 5a33 (rev 01)
	Subsystem: Acer Incorporated [ALI]: Unknown device 007d
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap- 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort+ >SERR- <PERR-
	Latency: 32
	Region 2: I/O ports at d000 [disabled] [size=32]
	Region 3: Memory at <ignored> (64-bit, non-prefetchable)

0000:00:02.0 PCI bridge: ATI Technologies Inc RS480 PCI-X Root Port (prog-if 00
[Normal decode])
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
	Latency: 0, Cache Line Size: 0x08 (32 bytes)
	Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
	I/O behind bridge: 0000f000-00000fff
	Memory behind bridge: d0000000-d2ffffff
	Prefetchable memory behind bridge: c0000000-cfffffff
	BridgeCtl: Parity- SERR- NoISA+ VGA+ MAbort- >Reset- FastB2B-
	Capabilities: [50] Power Management version 3
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
		Status: D0 PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [58] #10 [0041]
	Capabilities: [80] Message Signalled Interrupts: 64bit- Queue=0/0 Enable+
		Address: fee01004  Data: 40b1
	Capabilities: [b0] #0d [0000]
	Capabilities: [b8] #08 [a803]

0000:00:19.0 PCI bridge: ALi Corporation M5249 HTT to PCI Bridge (prog-if 00
[Normal decode])
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort+ >SERR- <PERR-
	Latency: 0
	Bus: primary=00, secondary=02, subordinate=02, sec-latency=32
	I/O behind bridge: 0000c000-0000cfff
	Memory behind bridge: d3000000-d4ffffff
	Prefetchable memory behind bridge: fff00000-000fffff
	BridgeCtl: Parity- SERR- NoISA+ VGA- MAbort- >Reset- FastB2B-
	Capabilities: [c0] #08 [a803]

0000:00:1c.0 USB Controller: ALi Corporation USB 1.1 Controller (rev 03)
(prog-if 10 [OHCI])
	Subsystem: Acer Incorporated [ALI]: Unknown device 007d
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR+
	Latency: 32 (20000ns max), Cache Line Size: 0x08 (32 bytes)
	Interrupt: pin A routed to IRQ 193
	Region 0: Memory at d5007000 (32-bit, non-prefetchable) [size=4K]

0000:00:1c.1 USB Controller: ALi Corporation USB 1.1 Controller (rev 03)
(prog-if 10 [OHCI])
	Subsystem: Acer Incorporated [ALI]: Unknown device 007d
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR+
	Latency: 32 (20000ns max), Cache Line Size: 0x08 (32 bytes)
	Interrupt: pin B routed to IRQ 193
	Region 0: Memory at d5004000 (32-bit, non-prefetchable) [size=4K]

0000:00:1c.2 USB Controller: ALi Corporation USB 1.1 Controller (rev 03)
(prog-if 10 [OHCI])
	Subsystem: Acer Incorporated [ALI]: Unknown device 007d
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR+
	Latency: 32 (20000ns max), Cache Line Size: 0x08 (32 bytes)
	Interrupt: pin C routed to IRQ 193
	Region 0: Memory at d5005000 (32-bit, non-prefetchable) [size=4K]

0000:00:1c.3 USB Controller: ALi Corporation USB 2.0 Controller (rev 01)
(prog-if 20 [EHCI])
	Subsystem: Acer Incorporated [ALI]: Unknown device 007d
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR+
	Latency: 32 (4000ns min, 8000ns max)
	Interrupt: pin D routed to IRQ 193
	Region 0: Memory at d5006000 (32-bit, non-prefetchable) [size=256]
	Capabilities: [50] Power Management version 2
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
		Status: D0 PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [58] #0a [2090]

0000:00:1d.0 0403: ALi Corporation High Definition Audio/AC'97 Host Controller
	Subsystem: Acer Incorporated [ALI]: Unknown device 007d
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
	Latency: 32 (4000ns min, 20000ns max)
	Interrupt: pin C routed to IRQ 11
	Region 0: Memory at d5000000 (64-bit, non-prefetchable) [size=16K]
	Capabilities: [50] Power Management version 2
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=55mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
		Status: D0 PME-Enable- DSel=0 DScale=0 PME-

0000:00:1e.0 ISA bridge: ALi Corporation PCI to LPC Controller (rev 31)
	Subsystem: Acer Incorporated [ALI]: Unknown device 007d
	Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
	Latency: 32 (250ns min, 6000ns max)

0000:00:1e.1 Bridge: ALi Corporation M7101 Power Management Controller [PMU]
	Subsystem: Acer Incorporated [ALI]: Unknown device 007d
	Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-

0000:00:1f.0 IDE interface: ALi Corporation M5229 IDE (rev c7) (prog-if fa)
	Subsystem: Acer Incorporated [ALI]: Unknown device 007d
	Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap- 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
	Latency: 32, Cache Line Size: 0x08 (32 bytes)
	Interrupt: pin A routed to IRQ 185
	Region 4: I/O ports at f000 [size=16]

0000:00:1f.1 RAID bus controller: ALi Corporation ULi 5287 SATA (rev 02)
	Subsystem: Acer Incorporated [ALI]: Unknown device 007d
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
	Latency: 32, Cache Line Size: 0x80 (512 bytes)
	Interrupt: pin A routed to IRQ 185
	Region 0: I/O ports at d400 [size=16]
	Region 1: I/O ports at d800 [size=8]
	Region 2: I/O ports at dc00 [size=16]
	Region 3: I/O ports at e000 [size=8]
	Region 4: I/O ports at e400 [size=32]
	Region 5: Memory at d5008000 (32-bit, non-prefetchable) [size=1K]
	Capabilities: [60] Power Management version 2
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot+,D3cold-)
		Status: D0 PME-Enable- DSel=0 DScale=0 PME+

0000:01:00.0 VGA compatible controller: nVidia Corporation GeForce 6200
TurboCache(TM) (rev a1) (prog-if 00 [VGA])
	Subsystem: LeadTek Research Inc.: Unknown device d833
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
	Latency: 0, Cache Line Size: 0x08 (32 bytes)
	Interrupt: pin A routed to IRQ 5
	Region 0: Memory at d0000000 (32-bit, non-prefetchable) [size=16M]
	Region 1: Memory at c0000000 (64-bit, prefetchable) [size=256M]
	Region 3: Memory at d1000000 (64-bit, non-prefetchable) [size=16M]
	Capabilities: [60] Power Management version 2
		Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
		Status: D0 PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [68] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-
		Address: 0000000000000000  Data: 0000
	Capabilities: [78] #10 [0001]

0000:02:11.0 Communication controller: Agere Systems V.92 56K WinModem (rev 03)
	Subsystem: Agere Systems: Unknown device 044c
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
	Latency: 32 (63000ns min, 3500ns max)
	Interrupt: pin A routed to IRQ 10
	Region 0: Memory at d4001000 (32-bit, non-prefetchable) [size=256]
	Region 1: I/O ports at c000 [size=8]
	Region 2: I/O ports at c400 [size=256]
	Capabilities: [f8] Power Management version 2
		Flags: PMEClk- DSI+ D1- D2+ AuxCurrent=160mA PME(D0-,D1-,D2+,D3hot+,D3cold+)
		Status: D0 PME-Enable- DSel=0 DScale=0 PME-

0000:02:15.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169
Gigabit Ethernet (rev 10)
	Subsystem: Acer Incorporated [ALI]: Unknown device 007d
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping-
SERR- FastB2B-
	Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort-
<MAbort- >SERR- <PERR-
	Latency: 64 (8000ns min, 16000ns max), Cache Line Size: 0x20 (128 bytes)
	Interrupt: pin A routed to IRQ 201
	Region 0: I/O ports at c800 [size=256]
	Region 1: Memory at d4000000 (32-bit, non-prefetchable) [size=256]
	Capabilities: [dc] Power Management version 2
		Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=375mA PME(D0-,D1+,D2+,D3hot+,D3cold+)
		Status: D0 PME-Enable- DSel=0 DScale=0 PME-

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

/proc/modules:
ipv6 237504 6 - Live 0xf89fa000
af_packet 21256 2 - Live 0xf89ae000
ide_generic 1408 0 [permanent], Live 0xf881b000
ide_disk 16768 0 - Live 0xf8999000
usbhid 33504 0 - Live 0xf89a4000
wacom 13184 0 - Live 0xf88fd000
r8169 24460 0 - Live 0xf88f6000
i2c_ali1535 7044 0 - Live 0xf88d2000
joydev 9664 0 - Live 0xf88e9000
evdev 9344 0 - Live 0xf88db000
mousedev 11424 1 - Live 0xf88d7000
psmouse 27140 0 - Live 0xf8915000
i2c_ali15x3 7428 0 - Live 0xf8892000
parport_pc 34116 0 - Live 0xf88df000
parport 33608 1 parport_pc, Live 0xf88c0000
floppy 56660 0 - Live 0xf8906000
pci_hotplug 26164 0 - Live 0xf88ca000
serio_raw 6916 0 - Live 0xf888f000
i2c_core 20752 2 i2c_ali1535,i2c_ali15x3, Live 0xf8836000
ehci_hcd 32008 0 - Live 0xf8895000
ohci_hcd 19972 0 - Live 0xf8885000
ati_agp 8588 0 - Live 0xf8832000
agpgart 33224 1 ati_agp, Live 0xf887b000
pcspkr 3524 0 - Live 0xf881d000
rtc 11960 0 - Live 0xf8820000
ext3 125320 1 - Live 0xf88a0000
jbd 51352 1 ext3, Live 0xf883d000
usb_storage 68416 0 - Live 0xf8869000
usbcore 110332 6 usbhid,wacom,ehci_hcd,ohci_hcd,usb_storage, Live 0xf884d000
unix 26160 370 - Live 0xf8824000

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

/proc/iomem:
00000000-0009fbff : System RAM
0009fc00-0009ffff : reserved
000a0000-000bffff : Video RAM area
000c0000-000c7fff : Video ROM
000d8000-000d9fff : Adapter ROM
000f0000-000fffff : System ROM
00100000-3ffeffff : System RAM
  00100000-002bf75b : Kernel code
  002bf75c-0039a37f : Kernel data
3fff0000-3fff2fff : ACPI Non-volatile Storage
3fff3000-3fffffff : ACPI Tables
c0000000-cfffffff : PCI Bus #01
  c0000000-cfffffff : 0000:01:00.0
d0000000-d2ffffff : PCI Bus #01
  d0000000-d0ffffff : 0000:01:00.0
  d1000000-d1ffffff : 0000:01:00.0
d3000000-d4ffffff : PCI Bus #02
  d4000000-d40000ff : 0000:02:15.0
    d4000000-d40000ff : r8169
  d4001000-d40010ff : 0000:02:11.0
d5000000-d5003fff : 0000:00:1d.0
d5004000-d5004fff : 0000:00:1c.1
  d5004000-d5004fff : ohci_hcd
d5005000-d5005fff : 0000:00:1c.2
  d5005000-d5005fff : ohci_hcd
d5006000-d50060ff : 0000:00:1c.3
  d5006000-d50060ff : ehci_hcd
d5007000-d5007fff : 0000:00:1c.0
  d5007000-d5007fff : ohci_hcd
d5008000-d50083ff : 0000:00:1f.1
  d5008000-d50083ff : sata_uli
e0000000-efffffff : reserved
fec00000-ffffffff : reserved

-----------

/proc/ioports:
0000-001f : dma1
0020-0021 : pic1
0040-0043 : timer0
0050-0053 : timer1
0060-006f : keyboard
0070-0077 : rtc
0080-008f : dma page reg
00a0-00a1 : pic2
00c0-00df : dma2
00f0-00ff : fpu
0170-0177 : ide1
02f8-02ff : serial
0376-0376 : ide1
0378-037a : parport0
03c0-03df : vga+
03f8-03ff : serial
1000-103f : 0000:00:1e.1
  1000-1003 : PM1a_EVT_BLK
  1004-1005 : PM1a_CNT_BLK
  1008-100b : PM_TMR
  1018-1027 : GPE0_BLK
1080-10ff : motherboard
c000-cfff : PCI Bus #02
  c000-c007 : 0000:02:11.0
  c400-c4ff : 0000:02:11.0
  c800-c8ff : 0000:02:15.0
    c800-c8ff : r8169
d000-d01f : 0000:00:00.0
d400-d40f : 0000:00:1f.1
  d400-d40f : sata_uli
d800-d807 : 0000:00:1f.1
  d800-d807 : sata_uli
dc00-dc0f : 0000:00:1f.1
  dc00-dc0f : sata_uli
e000-e007 : 0000:00:1f.1
  e000-e007 : sata_uli
e400-e41f : 0000:00:1f.1
  e400-e41f : sata_uli
f000-f00f : 0000:00:1f.0
  f000-f007 : ide0
  f008-f00f : ide1
Comment 1 Bartlomiej Zolnierkiewicz 2006-01-12 06:15:15 UTC
Is this problem still present in 2.6.15?
Comment 2 Enrico Colombini 2006-01-13 07:50:49 UTC
Yes, the problem is still present in 2.6.15, almost unchanged.

Notes and differences from previous tests:

- I just downloaded and compiled the latest stable 2.6.15 source from 
kernel.org and installed it in my Debian (testing, normally using 2.6.12). 
However X.org did not start, so I did the testing in single user mode and I 
had no syslog; the usual errors showed up on the console, though.

- When started from 2.6.15 as root, cdrecord says:
  "Error: cannot gain SYS_RAWIO capability. Is cdrecord installed suid root?"


Comment 3 Bartlomiej Zolnierkiewicz 2006-01-13 07:56:09 UTC
[ adding Jens to cc: ]

Could you post again "the usual errors" just to make sure we are focusing on the
right thing?  What cdrecord version are you using?
Comment 4 Enrico Colombini 2006-01-13 08:25:09 UTC
The usual errors are:
  ide-cd: cmd 0x3 timed out
  hdc: lost interrupt
and then the IDE bus becomes unusable until reboot (in this case, being in 
single user mode, I can't do anything at all).

cdrecord version = Cdrecord-Clone 2.01.01a3
sg driver version = 3.5.27

The lockup seems to be related to some specific type (size?) of data exchange, 
possibly concerning the dvd_read_structure command, because leaving the drive 
empty or using a (cdrecord-unsupported) DVD-RW disc gives only an 
informational message, while CD-RW and CD-R cause the problem.
(however, cdrecord compiled from the same sources has no problems under cygwin 
on the same hardware)


Comment 5 Bartlomiej Zolnierkiewicz 2006-01-13 08:37:34 UTC
Thanks.  Would it be possible to obtain dmesg and also strace output for cdrecord?
Comment 6 Enrico Colombini 2006-01-13 09:27:59 UTC
dmesg and strace with 2.6.15 are shown below. dmesg looks a bit mangled (maybe 
because of booting my 2.6.12 system with 2.6.15? 
(is it OK to put all this stuff in the message body or should I use 
attachments?)

I believe that the original tracing I did with 2.6.12 may still be 
significant. My original notes of the cdrecord call stack are (in calling 
order):
- read_dvd_structure() (cdr_drv.c:325)
- scg_cmd(scgp) (scsi_cdr.c:1106)
- SCGO_SEND(scgp) (scsitransp.c:399) 
- ioctl(scgp->fd, SG_IO, &sg_io) (scsi-linux-sg.c:1239)
- (doesn't return until timeout)
(I'm not sure if those line numbers refer to 2.01.01a3 or to 2.01.01a1)

I can insert printf() into cdrecord and printk into the kernel() if you wish 
(though this would be a lot faster with 2.6.12 than with 2.6.15, unless I 
solve the X.org problem).


--------------------------------------------------------------------
--- dmesg ------------------------------------------------------
--------------------------------------------------------------------

 0 pages, LIFO batch:0
DMI 2.3 present.
ACPI: RSDP (v000 AWARD                                 ) @ 0x000f7140
ACPI: RSDT (v001 AWARD  AWRDACPI 0x42302e31 AWRD 0x01010101) @ 0x3fff3040
ACPI: FADT (v001 AWARD  AWRDACPI 0x42302e31 AWRD 0x01010101) @ 0x3fff30c0
ACPI: MCFG (v001 AWARD  AWRDACPI 0x42302e31 AWRD 0x01010101) @ 0x3fff7280
ACPI: MADT (v001 AWARD  AWRDACPI 0x42302e31 AWRD 0x01010101) @ 0x3fff71c0
ACPI: DSDT (v001 AWARD  AWRDACPI 0x00001000 MSFT 0x0100000c) @ 0x00000000
ACPI: PM-Timer IO Port: 0x1008
ACPI: Local APIC address 0xfee00000
ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
Processor #0 15:4 APIC version 20
ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled)
Processor #1 15:4 APIC version 20
WARNING: NR_CPUS limit of 1 reached.  Processor ignored.
ACPI: LAPIC_NMI (acpi_id[0x00] dfl dfl lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x01] dfl dfl lint[0x1])
ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
IOAPIC[0]: apic_id 2, version 32, address 0xfec00000, GSI 0-23
ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 low level)
ACPI: IRQ0 used by override.
ACPI: IRQ2 used by override.
ACPI: IRQ9 used by override.
Enabling APIC mode:  Flat.  Using 1 I/O APICs
Using ACPI (MADT) for SMP configuration information
Allocating PCI resources starting at 50000000 (gap: 40000000:a0000000)
Built 1 zonelists
Kernel command line: root=/dev/sda6 ro single
mapped APIC to ffffd000 (fee00000)
mapped IOAPIC to ffffc000 (fec00000)
Initializing CPU#0
PID hash table entries: 4096 (order: 12, 65536 bytes)
Detected 3200.794 MHz processor.
Using pmtmr for high-res timesource
Console: colour VGA+ 80x25
Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
Memory: 904652k/917504k available (1849k kernel code, 12320k reserved, 661k 
data, 244k init, 0k highmem)
Checking if this processor honours the WP bit even in supervisor mode... Ok.
Calibrating delay using timer specific routine.. 6410.15 BogoMIPS 
(lpj=12820308)
Security Framework v1.0.0 initialized
SELinux:  Disabled at boot.
Mount-cache hash table entries: 512
CPU: After generic identify, caps: bfebfbff 00100000 00000000 00000000 
0000441d 00000000 00000000
CPU: After vendor identify, caps: bfebfbff 00100000 00000000 00000000 0000441d 
00000000 00000000
monitor/mwait feature present.
using mwait in idle threads.
CPU: Trace cache: 12K uops, L1 D cache: 16K
CPU: L2 cache: 1024K
CPU: After all inits, caps: bfebfbff 00100000 00000000 00000080 0000441d 
00000000 00000000
mtrr: v2.0 (20020519)
CPU: Intel(R) Pentium(R) 4 CPU 3.20GHz stepping 01
Enabling fast FPU save and restore... done.
Enabling unmasked SIMD FPU exception support... done.
Checking 'hlt' instruction... OK.
Checking for popad bug... OK.
ENABLING IO-APIC IRQs
..TIMER: vector=0x31 apic1=0 pin1=2 apic2=-1 pin2=-1
checking if image is initramfs...it isn't (bad gzip magic numbers); looks like 
an initrd
Freeing initrd memory: 1308k freed
NET: Registered protocol family 16
EISA bus registered
ACPI: bus type pci registered
PCI: PCI BIOS revision 3.00 entry at 0xfafc0, last bus=2
PCI: Using MMCONFIG
ACPI: Subsystem revision 20050902
    ACPI-0339: *** Error: Looking up [\_SB_.PCI0.LNKC] in namespace, 
AE_NOT_FOUND
search_node c17db940 start_node c17db940 return_node 00000000
    ACPI-0339: *** Error: Looking up [\_SB_.PCI0.LNKB] in namespace, 
AE_NOT_FOUND
search_node c17d8fe0 start_node c17d8fe0 return_node 00000000
ACPI: Interpreter enabled
ACPI: Using IOAPIC for interrupt routing
ACPI: PCI Root Bridge [PCI0] (0000:00)
PCI: Probing PCI hardware (bus 00)
ACPI: Assume root bridge [\_SB_.PCI0] bus is 0
PCI quirk: region 1000-103f claimed by ali7101 ACPI
Boot video device is 0000:01:00.0
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P2PB._PRT]
ACPI: PCI Interrupt Link [LNK1] (IRQs 1 3 4 5 6 7 10 11 12 14 15) *0, 
disabled.
ACPI: PCI Interrupt Link [LNK2] (IRQs 1 3 4 5 6 7 *10 11 12 14 15)
ACPI: PCI Interrupt Link [LNK3] (IRQs 1 3 4 *5 6 7 10 11 12 14 15)
ACPI: PCI Interrupt Link [LNK4] (IRQs 1 3 4 5 6 7 10 *11 12 14 15)
ACPI: PCI Interrupt Link [LNK5] (IRQs 1 3 4 5 6 7 *10 11 12 14 15)
ACPI: PCI Interrupt Link [LNK6] (IRQs 1 3 4 5 6 7 10 11 12 14 15) *0, 
disabled.
ACPI: PCI Interrupt Link [LNK7] (IRQs 1 3 4 5 6 7 10 *11 12 14 15)
ACPI: PCI Interrupt Link [LNK8] (IRQs 1 3 4 5 6 7 10 11 12 14 15) *9
ACPI: PCI Interrupt Link [LNK9] (IRQs 1 3 4 5 6 7 10 11 12 14 15) *0, 
disabled.
Linux Plug and Play Support v0.97 (c) Adam Belay
pnp: PnP ACPI init
pnp: PnP ACPI: found 14 devices
PnPBIOS: Disabled by ACPI PNP
SCSI subsystem initialized
PCI: Using ACPI for IRQ routing
PCI: If a device doesn't work, try "pci=routeirq".  If it helps, post a report
PCI: Cannot allocate resource region 3 of device 0000:00:00.0
PCI: Bridge: 0000:00:02.0
  IO window: disabled.
  MEM window: d0000000-d2ffffff
  PREFETCH window: c0000000-cfffffff
PCI: Bridge: 0000:00:19.0
  IO window: c000-cfff
  MEM window: d3000000-d4ffffff
  PREFETCH window: 50000000-500fffff
PCI: Setting latency timer of device 0000:00:02.0 to 64
PCI: Setting latency timer of device 0000:00:19.0 to 64
VFS: Disk quotas dquot_6.5.1
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
Initializing Cryptographic API
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered
PCI: Setting latency timer of device 0000:00:02.0 to 64
pcie_portdrv_probe->Dev[5a34:1002] has invalid IRQ. Check vendor BIOS
assign_interrupt_mode Found MSI capability
Allocate Port Service[pcie00]
Allocate Port Service[pcie01]
Allocate Port Service[pcie03]
isapnp: Scanning for PnP cards...
isapnp: No Plug & Play device found
PNP: PS/2 Controller [PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 irq 1,12
serio: i8042 AUX port at 0x60,0x64 irq 12
serio: i8042 KBD port at 0x60,0x64 irq 1
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled
serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
00:07: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
00:08: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksize
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
ALI15X3: IDE controller at PCI slot 0000:00:1f.0
ACPI: PCI Interrupt 0000:00:1f.0[A] -> GSI 19 (level, low) -> IRQ 185
ALI15X3: chipset revision 199
ALI15X3: not 100% native mode: will probe irqs later
    ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:pio, hdb:pio
    ide1: BM-DMA at 0xf008-0xf00f, BIOS settings: hdc:DMA, hdd:DMA
Probing IDE interface ide0...
Probing IDE interface ide1...
hdc: HL-DT-ST DVDRAM GSA-4163B, ATAPI CD/DVD-ROM drive
hdd: LITE-ON DVD SOHD-167T, ATAPI CD/DVD-ROM drive
ide1 at 0x170-0x177,0x376 on irq 15
hdc: ATAPI 40X DVD-ROM DVD-R-RAM CD-R/RW drive, 2048kB Cache, UDMA(66)
Uniform CD-ROM driver Revision: 3.20
hdd: ATAPI 48X DVD-ROM drive, 512kB Cache, UDMA(33)
libata version 1.20 loaded.
sata_uli 0000:00:1f.1: version 0.5
PCI: Enabling device 0000:00:1f.1 (0005 -> 0007)
ACPI: PCI Interrupt 0000:00:1f.1[A] -> GSI 19 (level, low) -> IRQ 185
ata1: SATA max UDMA/133 cmd 0xD400 ctl 0xD802 bmdma 0xE400 irq 185
ata2: SATA max UDMA/133 cmd 0xDC00 ctl 0xE002 bmdma 0xE408 irq 185
ata3: SATA max UDMA/133 cmd 0xD408 ctl 0xD806 bmdma 0xE410 irq 185
ata4: SATA max UDMA/133 cmd 0xDC08 ctl 0xE006 bmdma 0xE418 irq 185
ata1: dev 0 cfg 49:2f00 82:346b 83:7d01 84:4003 85:3469 86:3c01 87:4003 
88:007f
ata1: dev 0 ATA-6, max UDMA/133, 390721968 sectors: LBA48
ata1: dev 0 configured for UDMA/133
scsi0 : sata_uli
ata2: no device found (phy stat 00000000)
scsi1 : sata_uli
ata3: no device found (phy stat 00000000)
scsi2 : sata_uli
scsi3 : sata_uli
  Vendor: ATA       Model: ST3200822AS       Rev: 3.01
  Type:   Direct-Access                      ANSI SCSI revision: 05
st: Version 20050830, fixed bufsize 32768, s/g segs 256
osst :I: Tape driver with OnStream support version 0.99.3
osst :I: $Id: osst.c,v 1.73 2005/01/01 21:13:34 wriede Exp $
SCSI device sda: 390721968 512-byte hdwr sectors (200050 MB)
SCSI device sda: drive cache: write back
SCSI device sda: 390721968 512-byte hdwr sectors (200050 MB)
SCSI device sda: drive cache: write back
 sda: sda1 sda2 sda3 < sda5 sda6 sda7 sda8 sda9 >
sd 0:0:0:0: Attached scsi disk sda
sd 0:0:0:0: Attached scsi generic sg0 type 0
SCSI Media Changer driver v0.25 
EISA: Probing bus 0 at eisa.0
Cannot allocate resource for EISA slot 1
EISA: Detected 0 cards.
NET: Registered protocol family 2
input: AT Translated Set 2 keyboard as /class/input/input0
IP route cache hash table entries: 32768 (order: 5, 131072 bytes)
TCP established hash table entries: 131072 (order: 7, 524288 bytes)
TCP bind hash table entries: 65536 (order: 6, 262144 bytes)
TCP: Hash tables configured (established 131072 bind 65536)
TCP reno registered
TCP bic registered
Using IPI Shortcut mode
ACPI wakeup devices: 
P2PB USB0 USB1 USB2 USB3 
ACPI: (supports S0 S3 S5)
RAMDISK: cramfs filesystem found at block 0
RAMDISK: Loading 1308KiB [1 disk] into ram disk... <<feedback chars deleted>>
done.
VFS: Mounted root (cramfs filesystem) readonly.
Freeing unused kernel memory: 244k freed
NET: Registered protocol family 1
usbcore: registered new driver usbfs
usbcore: registered new driver hub
Initializing USB Mass Storage driver...
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
EXT3-fs: INFO: recovery required on readonly filesystem.
EXT3-fs: write access will be enabled during recovery.
kjournald starting.  Commit interval 5 seconds
EXT3-fs: recovery complete.
EXT3-fs: mounted filesystem with ordered data mode.
Linux agpgart interface v0.101 (c) Dave Jones
FDC 0 is a post-1991 82077
input: PC Speaker as /class/input/input1
parport: PnPBIOS parport detected.
parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE]
ali15x3_smbus 0000:00:1e.1: ALI15X3_smb region uninitialized - upgrade BIOS or 
use force_addr=0xaddr
ali15x3_smbus 0000:00:1e.1: ALI15X3 not detected, module not inserted.
ali1535_smbus 0000:00:1e.1: ALI1535_smb region uninitialized - upgrade BIOS?
ali1535_smbus 0000:00:1e.1: ALI1535 not detected, module not inserted.
ohci_hcd: 2005 April 22 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI)
ACPI: PCI Interrupt 0000:00:1c.0[A] -> GSI 23 (level, low) -> IRQ 193
ohci_hcd 0000:00:1c.0: OHCI Host Controller
ohci_hcd 0000:00:1c.0: new USB bus registered, assigned bus number 1
ohci_hcd 0000:00:1c.0: irq 193, io mem 0xd5007000
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 3 ports detected
ACPI: PCI Interrupt 0000:00:1c.1[B] -> GSI 23 (level, low) -> IRQ 193
ohci_hcd 0000:00:1c.1: OHCI Host Controller
ohci_hcd 0000:00:1c.1: new USB bus registered, assigned bus number 2
ohci_hcd 0000:00:1c.1: irq 193, io mem 0xd5004000
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 3 ports detected
logips2pp: Detected unknown logitech mouse model 74
ACPI: PCI Interrupt 0000:00:1c.2[C] -> GSI 23 (level, low) -> IRQ 193
ohci_hcd 0000:00:1c.2: OHCI Host Controller
ohci_hcd 0000:00:1c.2: new USB bus registered, assigned bus number 3
ohci_hcd 0000:00:1c.2: irq 193, io mem 0xd5005000
input: PS/2 Logitech Mouse as /class/input/input2
hub 3-0:1.0: USB hub found
hub 3-0:1.0: 3 ports detected
usb 1-2: new full speed USB device using ohci_hcd and address 2
ACPI: PCI Interrupt 0000:00:1c.3[D] -> GSI 23 (level, low) -> IRQ 193
ehci_hcd 0000:00:1c.3: EHCI Host Controller
ehci_hcd 0000:00:1c.3: debug port 1
PCI: cache line size of 128 is not supported by device 0000:00:1c.3
ehci_hcd 0000:00:1c.3: new USB bus registered, assigned bus number 4
ehci_hcd 0000:00:1c.3: irq 193, io mem 0xd5006000
ehci_hcd 0000:00:1c.3: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
hub 4-0:1.0: USB hub found
hub 4-0:1.0: 8 ports detected
Real Time Clock Driver v1.12
pci_hotplug: PCI Hot Plug PCI Core version: 0.5
ACPI: PCI Interrupt 0000:00:1d.0[C] -> GSI 22 (level, low) -> IRQ 201
hda_codec: Unknown model for ALC880, trying auto-probe from BIOS...
usb 1-2: device not accepting address 2, error -110
hda_codec: Cannot set up configuration from BIOS.  Using 3-stack mode...
shpchp: Standard Hot Plug PCI Controller Driver version: 0.4
r8169 Gigabit Ethernet driver 2.2LK loaded
ACPI: PCI Interrupt 0000:02:15.0[A] -> GSI 20 (level, low) -> IRQ 209
eth0: Identified chip type is 'RTL8169s/8110s'.
eth0: RTL8169 at 0xf88ec000, 00:0f:ea:d1:3a:17, IRQ 209
usb 4-3: new high speed USB device using ehci_hcd and address 3
scsi4 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 3
usb-storage: waiting for device to settle before scanning
usb 2-2: new low speed USB device using ohci_hcd and address 2
Adding 1004020k swap on /dev/sda7.  Priority:-1 extents:1 across:1004020k
EXT3 FS on sda6, internal journal
usb 1-2: new full speed USB device using ohci_hcd and address 4
scsi5 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 4
usb-storage: waiting for device to settle before scanning
input: Wacom Graphire as /class/input/input3
usbcore: registered new driver wacom
drivers/usb/input/wacom.c: v1.44:USB Wacom Graphire and Wacom Intuos tablet 
driver
usb 3-1: new full speed USB device using ohci_hcd and address 2
scsi6 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 2
usb-storage: waiting for device to settle before scanning
usbcore: registered new driver hiddev
usbcore: registered new driver usbhid
drivers/usb/input/hid-core.c: v2.6:USB HID core driver
Probing IDE interface ide0...
  Vendor: Maxtor 4  Model: R080L0            Rev:  0 0
  Type:   Direct-Access                      ANSI SCSI revision: 00
SCSI device sdb: 160086528 512-byte hdwr sectors (81964 MB)
sdb: assuming drive cache: write through
SCSI device sdb: 160086528 512-byte hdwr sectors (81964 MB)
sdb: assuming drive cache: write through
 sdb: sdb1 sdb2 sdb3 sdb4 < sdb5 sdb6 sdb7 sdb8 >
sd 4:0:0:0: Attached scsi disk sdb
sd 4:0:0:0: Attached scsi generic sg1 type 0
usb-storage: device scan complete
  Vendor: Y-E DATA  Model: USB-FDU           Rev: 7.03
  Type:   Direct-Access                      ANSI SCSI revision: 00
sd 5:0:0:0: Attached scsi removable disk sdc
sd 5:0:0:0: Attached scsi generic sg2 type 0
usb-storage: device scan complete
  Vendor: Generic   Model: USB SD Reader     Rev: 1.00
  Type:   Direct-Access                      ANSI SCSI revision: 00
sd 6:0:0:0: Attached scsi removable disk sdd
sd 6:0:0:0: Attached scsi generic sg3 type 0
  Vendor: Generic   Model: USB CF Reader     Rev: 1.01
  Type:   Direct-Access                      ANSI SCSI revision: 00
sd 6:0:0:1: Attached scsi removable disk sde
sd 6:0:0:1: Attached scsi generic sg4 type 0
  Vendor: Generic   Model: USB SM Reader     Rev: 1.02
  Type:   Direct-Access                      ANSI SCSI revision: 00
sd 6:0:0:2: Attached scsi removable disk sdf
sd 6:0:0:2: Attached scsi generic sg5 type 0
  Vendor: Generic   Model: USB MS Reader     Rev: 1.03
  Type:   Direct-Access                      ANSI SCSI revision: 00
sd 6:0:0:3: Attached scsi removable disk sdg
sd 6:0:0:3: Attached scsi generic sg6 type 0
usb-storage: device scan complete
r8169: eth0: link up
NET: Registered protocol family 17


--------------------------------------------------------------------
--- strace cdrecord dev=ATA:1,0,0 -checkdrive ----------------------
--------------------------------------------------------------------

execve("/usr/bin/cdrecord", ["cdrecord", "dev=ATA:1,0,0", "-checkdrive"], [/* 
15 vars */]) = 0
uname({sys="Linux", node="atuan", ...}) = 0
brk(0)                                  = 0x80ec000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or 
directory)
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or 
directory)
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7fdb000
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=34610, ...}) = 0
old_mmap(NULL, 34610, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fd2000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or 
directory)
open("/lib/libncurses.so.5", O_RDONLY)  = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0p\343\0"..., 512) = 
512
fstat64(3, {st_mode=S_IFREG|0644, st_size=268396, ...}) = 0
old_mmap(NULL, 273580, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0xb7f8f000
old_mmap(0xb7fc9000, 36864, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x39000) = 0xb7fc9000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or 
directory)
open("/lib/tls/libdl.so.2", O_RDONLY)   = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\20\f\0"..., 512) = 
512
fstat64(3, {st_mode=S_IFREG|0644, st_size=9592, ...}) = 0
old_mmap(NULL, 12404, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0xb7f8b000
old_mmap(0xb7f8d000, 8192, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0xb7f8d000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or 
directory)
open("/lib/tls/libc.so.6", O_RDONLY)    = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320O\1"..., 512) = 
512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1266800, ...}) = 0
old_mmap(NULL, 1272764, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) 
= 0xb7e54000
old_mmap(0xb7f81000, 32768, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12d000) = 0xb7f81000
old_mmap(0xb7f89000, 7100, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7f89000
close(3)                                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7e53000
mprotect(0xb7f81000, 20480, PROT_READ)  = 0
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7e538e0, limit:1048575, 
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, 
seg_not_present:0, useable:1}) = 0
munmap(0xb7fd2000, 34610)               = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
open("/dev/tty", O_RDWR|O_NONBLOCK|O_LARGEFILE) = 3
close(3)                                = 0
brk(0)                                  = 0x80ec000
brk(0x80ed000)                          = 0x80ed000
brk(0x80ee000)                          = 0x80ee000
getuid32()                              = 0
getgid32()                              = 0
geteuid32()                             = 0
getegid32()                             = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
time(NULL)                              = 1137173105
brk(0x80ef000)                          = 0x80ef000
brk(0x80f0000)                          = 0x80f0000
open("/etc/mtab", O_RDONLY)             = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=238, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7fda000
read(3, "/dev/sda6 / ext3 rw,errors=remou"..., 4096) = 238
close(3)                                = 0
munmap(0xb7fda000, 4096)                = 0
open("/proc/meminfo", O_RDONLY)         = 3
fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7fda000
read(3, "MemTotal:       906348 kB\nMemFre"..., 1024) = 598
close(3)                                = 0
munmap(0xb7fda000, 4096)                = 0
brk(0x80f1000)                          = 0x80f1000
rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
rt_sigaction(SIGQUIT, {SIG_IGN}, {SIG_DFL}, 8) = 0
uname({sys="Linux", node="atuan", ...}) = 0
stat64("/root", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
getpid()                                = 5465
getppid()                               = 5464
getpgrp()                               = 5464
rt_sigaction(SIGCHLD, {0x8078e40, [], 0}, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
open("/usr/bin/cdrecord", O_RDONLY|O_LARGEFILE) = 3
ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfcee158) = -1 ENOTTY (Inappropriate 
ioctl for device)
_llseek(3, 0, [0], SEEK_CUR)            = 0
read(3, "#!/bin/sh\nVERS=`uname -r`\ncase \""..., 80) = 80
_llseek(3, 0, [0], SEEK_SET)            = 0
getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0
dup2(3, 255)                            = 255
close(3)                                = 0
fcntl64(255, F_SETFD, FD_CLOEXEC)       = 0
fcntl64(255, F_GETFL)                   = 0x8000 (flags O_RDONLY|O_LARGEFILE)
fstat64(255, {st_mode=S_IFREG|S_ISUID|0754, st_size=133, ...}) = 0
_llseek(255, 0, [0], SEEK_CUR)          = 0
brk(0x80f2000)                          = 0x80f2000
brk(0x80f3000)                          = 0x80f3000
rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
read(255, "#!/bin/sh\nVERS=`uname -r`\ncase \""..., 133) = 133
rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
pipe([3, 4])                            = 0
rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0
_llseek(255, -107, [26], SEEK_CUR)      = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, 
child_tidptr=0xb7e53928) = 5466
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
--- SIGCHLD (Child exited) @ 0 (0) ---
waitpid(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], WNOHANG) = 5466
waitpid(-1, 0xbfced828, WNOHANG)        = -1 ECHILD (No child processes)
sigreturn()                             = ? (mask now [])
rt_sigaction(SIGCHLD, {0x8078e40, [], 0}, {0x8078e40, [], 0}, 8) = 0
close(4)                                = 0
read(3, "2.6.15debug\n", 128)           = 12
read(3, "", 128)                        = 0
close(3)                                = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigaction(SIGINT, {0x8077b50, [], 0}, {SIG_DFL}, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {0x8077b50, [], 0}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8)  = 0
read(255, "case \"$VERS\" in\n  2.0.*|2.2.*)\n "..., 133) = 107
stat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
stat64("/bin/cdrecord.mmap", 0xbfcedba8) = -1 ENOENT (No such file or 
directory)
stat64("/usr/bin/cdrecord.mmap", {st_mode=S_IFREG|S_ISUID|0754, 
st_size=323540, ...}) = 0
stat64("/usr/bin/cdrecord.mmap", {st_mode=S_IFREG|S_ISUID|0754, 
st_size=323540, ...}) = 0
rt_sigaction(SIGINT, {SIG_DFL}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {SIG_DFL}, {SIG_IGN}, 8) = 0
rt_sigaction(SIGCHLD, {SIG_DFL}, {0x8078e40, [], 0}, 8) = 0
execve("/usr/bin/cdrecord.mmap", ["cdrecord.mmap", "dev=ATA:1,0,0", 
"-checkdrive"], [/* 13 vars */]) = 0
uname({sys="Linux", node="atuan", ...}) = 0
brk(0)                                  = 0x809a000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or 
directory)
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or 
directory)
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7f4a000
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=34610, ...}) = 0
old_mmap(NULL, 34610, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f41000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or 
directory)
open("/lib/libcap.so.1", O_RDONLY)      = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\20\r\0"..., 512) = 
512
fstat64(3, {st_mode=S_IFREG|0644, st_size=11024, ...}) = 0
old_mmap(NULL, 14676, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 
0xb7f3d000
old_mmap(0xb7f40000, 4096, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0xb7f40000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or 
directory)
open("/lib/tls/libc.so.6", O_RDONLY)    = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320O\1"..., 512) = 
512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1266800, ...}) = 0
old_mmap(NULL, 1272764, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) 
= 0xb7e06000
old_mmap(0xb7f33000, 32768, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12d000) = 0xb7f33000
old_mmap(0xb7f3b000, 7100, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7f3b000
close(3)                                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7e05000
mprotect(0xb7f33000, 20480, PROT_READ)  = 0
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7e056c0, limit:1048575, 
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, 
seg_not_present:0, useable:1}) = 0
munmap(0xb7f41000, 34610)               = 0
geteuid32()                             = 0
getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0
brk(0)                                  = 0x809a000
brk(0x80bb000)                          = 0x80bb000
open("/etc/default/cdrecord", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=1158, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7f49000
_llseek(3, 0, [0], SEEK_SET)            = 0
read(3, "#ident @(#)cdrecord.dfl\t1.4 02/0"..., 4096) = 1158
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0xb7f49000, 4096)                = 0
open("/etc/default/cdrecord", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=1158, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7f49000
_llseek(3, 0, [0], SEEK_SET)            = 0
read(3, "#ident @(#)cdrecord.dfl\t1.4 02/0"..., 4096) = 1158
close(3)                                = 0
munmap(0xb7f49000, 4096)                = 0
fstat64(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(5, 1), ...}) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 
0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 
0xb7f49000
write(1, "Cdrecord-Clone 2.01.01a03 (i686-"..., 86) = 86
write(1, "NOTE: this version of cdrecord i"..., 79) = 79
write(1, "      and thus may have bugs tha"..., 75) = 75
write(1, "      Please send bug reports an"..., 86) = 86
write(1, "      The original author should"..., 80) = 80
write(1, "\n", 1)                       = 1
uname({sys="Linux", node="atuan", ...}) = 0
write(2, "cdrecord: Warning: Running on Li"..., 48) = 48
write(2, "cdrecord: There are unsettled is"..., 63) = 63
write(2, "cdrecord: If you have unexpected"..., 76) = 76
fstat64(2, {st_mode=S_IFCHR|0600, st_rdev=makedev(5, 1), ...}) = 0
write(2, "scsidev: \'ATA:1,0,0\'\n", 21) = 21
write(2, "devname: \'ATA\'\n", 15)      = 15
write(2, "scsibus: 1 target: 0 lun: 0\n", 28) = 28
write(2, "Warning: Using badly designed AT"..., 60) = 60
open("/dev/hdc", O_RDWR|O_NONBLOCK|O_EXCL) = 3
ioctl(3, SG_GET_TIMEOUT, 0xbf95d0dc)    = 0
fcntl64(3, F_GETFL)                     = 0x8802 (flags 
O_RDWR|O_NONBLOCK|O_LARGEFILE)
fcntl64(3, F_SETFL, O_RDWR|O_LARGEFILE) = 0
ioctl(3, SG_GET_VERSION_NUM, 0xbf95d038) = 0
write(2, "Linux sg driver version: 3.5.27\n", 32) = 32
ioctl(3, SG_SET_TIMEOUT, 0xbf95cef4)    = 0
fstat64(3, {st_mode=S_IFBLK|0660, st_rdev=makedev(22, 0), ...}) = 0
geteuid32()                             = 0
getuid32()                              = 0
capget(0x19980330, 0, 
{CAP_CHOWN|CAP_DAC_OVERRIDE|CAP_DAC_READ_SEARCH|CAP_FOWNER|CAP_FSETID|CAP_KILL|CAP_SETGID|CAP_SETUID|CAP_LINUX_IMMUTABLE|CAP_NET_BIND_SERVICE|CAP_NET_BROADCAST|CAP_NET_ADMIN|CAP_NET_RAW|CAP_IPC_LOCK|CAP_IPC_OWNER|CAP_SYS_MODULE|CAP_SYS_RAWIO|CAP_SYS_CHROOT|CAP_SYS_PTRACE|CAP_SYS_PACCT|CAP_SYS_ADMIN|CAP_SYS_BOOT|CAP_SYS_NICE|CAP_SYS_RESOURCE|CAP_SYS_TIME|CAP_SYS_TTY_CONFIG|0xf8000000, 
CAP_CHOWN|CAP_DAC_OVERRIDE|CAP_DAC_READ_SEARCH|CAP_FOWNER|CAP_FSETID|CAP_KILL|CAP_SETGID|CAP_SETUID|CAP_SETPCAP|CAP_LINUX_IMMUTABLE|CAP_NET_BIND_SERVICE|CAP_NET_BROADCAST|CAP_NET_ADMIN|CAP_NET_RAW|CAP_IPC_LOCK|CAP_IPC_OWNER|CAP_SYS_MODULE|CAP_SYS_RAWIO|CAP_SYS_CHROOT|CAP_SYS_PTRACE|CAP_SYS_PACCT|CAP_SYS_ADMIN|CAP_SYS_BOOT|CAP_SYS_NICE|CAP_SYS_RESOURCE|CAP_SYS_TIME|CAP_SYS_TTY_CONFIG|0xf8000000, 
}) = 0
capset(0x19980330, 0, 
{CAP_CHOWN|CAP_DAC_OVERRIDE|CAP_DAC_READ_SEARCH|CAP_FOWNER|CAP_FSETID|CAP_KILL|CAP_SETGID|CAP_SETUID|CAP_LINUX_IMMUTABLE|CAP_NET_BIND_SERVICE|CAP_NET_BROADCAST|CAP_NET_ADMIN|CAP_NET_RAW|CAP_IPC_LOCK|CAP_IPC_OWNER|CAP_SYS_MODULE|CAP_SYS_RAWIO|CAP_SYS_CHROOT|CAP_SYS_PTRACE|CAP_SYS_PACCT|CAP_SYS_ADMIN|CAP_SYS_BOOT|CAP_SYS_NICE|CAP_SYS_RESOURCE|CAP_SYS_TIME|CAP_SYS_TTY_CONFIG|0xf8000000, 
CAP_CHOWN|CAP_DAC_OVERRIDE|CAP_DAC_READ_SEARCH|CAP_FOWNER|CAP_FSETID|CAP_KILL|CAP_SETGID|CAP_SETUID|CAP_SETPCAP|CAP_LINUX_IMMUTABLE|CAP_NET_BIND_SERVICE|CAP_NET_BROADCAST|CAP_NET_ADMIN|CAP_NET_RAW|CAP_IPC_LOCK|CAP_IPC_OWNER|CAP_SYS_MODULE|CAP_SYS_RAWIO|CAP_SYS_CHROOT|CAP_SYS_PTRACE|CAP_SYS_PACCT|CAP_SYS_ADMIN|CAP_SYS_BOOT|CAP_SYS_NICE|CAP_SYS_RESOURCE|CAP_SYS_TIME|CAP_SYS_TTY_CONFIG|0xf8000000, 
}) = -1 EPERM (Operation not permitted)
write(2, "Error: Cannot gain SYS_RAWIO cap"..., 99) = 99
write(1, "Using libscg version \'ubuntu-0.8"..., 42) = 42
write(2, "cdrecord: Warning: using inoffic"..., 151) = 151
ioctl(3, SG_GET_RESERVED_SIZE, 0xbf95d244) = 0
ioctl(3, SG_SET_RESERVED_SIZE, 0xbf95d248) = 0
ioctl(3, SG_GET_RESERVED_SIZE, 0xbf95d248) = 0
ioctl(3, SG_GET_RESERVED_SIZE, 0xbf95d224) = 0
ioctl(3, SG_GET_RESERVED_SIZE, 0xbf95d228) = 0
brk(0x80de000)                          = 0x80de000
brk(0x80dd000)                          = 0x80dd000
gettimeofday({1137173105, 844347}, NULL) = 0
ioctl(3, SG_IO, 0xbf95d1fc)             = 0
gettimeofday({1137173105, 846153}, NULL) = 0
gettimeofday({1137173105, 846190}, NULL) = 0
ioctl(3, SG_IO, 0xbf95d04c)             = 0
gettimeofday({1137173105, 847836}, NULL) = 0
gettimeofday({1137173105, 847869}, NULL) = 0
ioctl(3, SG_IO, 0xbf95d03c)             = 0
gettimeofday({1137173105, 849491}, NULL) = 0
gettimeofday({1137173105, 849529}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cddc)             = 0
gettimeofday({1137173105, 851361}, NULL) = 0
gettimeofday({1137173105, 851393}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cdbc)             = 0
gettimeofday({1137173105, 854274}, NULL) = 0
gettimeofday({1137173105, 854313}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cc7c)             = 0
gettimeofday({1137173105, 856237}, NULL) = 0
gettimeofday({1137173105, 856269}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cb0c)             = 0
gettimeofday({1137173105, 858392}, NULL) = 0
gettimeofday({1137173105, 858424}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cc7c)             = 0
gettimeofday({1137173105, 860035}, NULL) = 0
gettimeofday({1137173105, 860067}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cb0c)             = 0
gettimeofday({1137173105, 862734}, NULL) = 0
gettimeofday({1137173105, 862767}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cc7c)             = 0
gettimeofday({1137173105, 864451}, NULL) = 0
gettimeofday({1137173105, 864483}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cb0c)             = 0
gettimeofday({1137173105, 867095}, NULL) = 0
gettimeofday({1137173105, 867128}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cddc)             = 0
gettimeofday({1137173105, 868738}, NULL) = 0
write(1, "Device type    : Removable CD-RO"..., 34) = 34
write(1, "Version        : 0\n", 19)    = 19
write(1, "Response Format: 2\n", 19)    = 19
write(1, "Capabilities   : \n", 18)     = 18
write(1, "Vendor_info    : \'HL-DT-ST\'\n", 28) = 28
write(1, "Identifikation : \'DVDRAM GSA-416"..., 36) = 36
write(1, "Revision       : \'A102\'\n", 24) = 24
write(1, "Device seems to be: Generic mmc2"..., 47) = 47
gettimeofday({1137173105, 869856}, NULL) = 0
ioctl(3, SG_IO, 0xbf95ccfc)             = 0
gettimeofday({1137173105, 872325}, NULL) = 0
gettimeofday({1137173105, 872369}, NULL) = 0
ioctl(3, SG_IO, 0xbf95ccfc)             = 0
gettimeofday({1137173105, 876246}, NULL) = 0
gettimeofday({1137173105, 876279}, NULL) = 0
ioctl(3, SG_IO, 0xbf95ccfc)             = 0
gettimeofday({1137173105, 878543}, NULL) = 0
gettimeofday({1137173105, 878576}, NULL) = 0
ioctl(3, SG_IO, 0xbf95ccfc)             = 0
gettimeofday({1137173105, 882457}, NULL) = 0
gettimeofday({1137173105, 882491}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cecc)             = 0
gettimeofday({1137173105, 884099}, NULL) = 0
gettimeofday({1137173105, 884131}, NULL) = 0
ioctl(3, SG_IO, 0xbf95ceac)             = 0
gettimeofday({1137173105, 887293}, NULL) = 0
gettimeofday({1137173105, 887326}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cd6c)             = 0
gettimeofday({1137173105, 889010}, NULL) = 0
gettimeofday({1137173105, 889042}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cbfc)             = 0
gettimeofday({1137173105, 891358}, NULL) = 0
gettimeofday({1137173105, 891390}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cd6c)             = 0
gettimeofday({1137173105, 893053}, NULL) = 0
gettimeofday({1137173105, 893086}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cbfc)             = 0
gettimeofday({1137173105, 895764}, NULL) = 0
gettimeofday({1137173105, 895797}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cd6c)             = 0
gettimeofday({1137173105, 897406}, NULL) = 0
gettimeofday({1137173105, 897438}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cbfc)             = 0
gettimeofday({1137173105, 899926}, NULL) = 0
gettimeofday({1137173105, 899959}, NULL) = 0
ioctl(3, SG_IO, 0xbf95cfcc)             = 0
gettimeofday({1137173105, 902481}, NULL) = 0
gettimeofday({1137173105, 902516}, NULL) = 0
ioctl(3, SG_IO


--------------------------------------------------------------------
--- strace (as above) after lockup happened ------------------------
--------------------------------------------------------------------

(I was able to get back control and issue the command again)

[...stuff deleted...]
write(2, "scsibus: 1 target: 0 lun: 0\n", 28) = 28
write(2, "Warning: Using badly designed AT"..., 60) = 60
open("/dev/hdc", O_RDWR|O_NONBLOCK|O_EXCL


Comment 7 Bartlomiej Zolnierkiewicz 2006-01-16 03:05:46 UTC
Thanks, does it work fine if you disable DMA with hdparm?

Would it be possible to try reproducing this bug on machine without ALi chipset?
It would allow us to limit the problem to alim15x3 driver and ping ALi folks
about the problem.
Comment 8 Alan 2006-01-18 05:03:37 UTC
Also can you confirm that if you just throw a pre burned CD into the drive and
mount it with DMA enabled it reads the disk and the file system works fine ?
That wil help understand if it is some kind of buffer alignment issue
Comment 9 Chris Backstrom 2006-01-18 06:51:24 UTC
Well, I've tried all the media I could find: DVD, Audio, self-burned cdrom and
pre-burned cdrom (bought). All of them reads fine, even with DMA enabled, and
I've used audio, video, rpms and clip-arts.
Comment 10 Enrico Colombini 2006-01-18 09:20:46 UTC
To Bartlomiej:

If I disable DMA with hdparm, it works fine even in 2.6.15: I tried "cdrecord 
-checkdrive" and "cdrecord blank=fast", both successfully. 
In fact, it seems to work better in 2.6.15 than in 2.6.12 because with DMA 
disabled the speed is now high enough to reach the drive's minimum 
requirement (10x) so it can now write to disk.

I don't think there is a positive way to prove that the lockup happens only on 
machines using ALi M5229 rev c7; however, before posting I searched the Web 
for people having the same problem: the two instances I found referred to the 
same ALi M5229 controller and the same c7 revision. Of course, people having 
the HD on the same IDE bus as the CD writer will experience a full system 
lockup, so they could have more difficulties in diagnosing it (or to install 
at all).
Perhaps it could be a good idea to notify ALi folks as you propose (did they 
write the low-level driver, I gather?). Maybe they changed/added the meaning 
of a 'minor' bit in a DMA register when upgrading the chip to rev c7.

To Alan:

I successfully copied from CD burner to HD with 2.6.15 and DMA enabled:
- the entire content of a printed CD-ROM
- the entire content of a CD-RW
- the entire content of a printed DVD-ROM

However, Jeff Wiegley (who filed bug #4514 for a similar problem on similar 
hardware) said he had reading problems too. This difference is the main 
reason why I filed this problem as a different bug.


Comment 11 Bartlomiej Zolnierkiewicz 2006-01-19 03:18:48 UTC
Hm, this looks similar to http://bugzilla.kernel.org/show_bug.cgi?id=4514

Could somebody try 2.6.8 kernel?
Comment 12 Enrico Colombini 2006-01-19 08:20:12 UTC
I didn't find a 2.6.8 (is there a live distribution using it?) but I tried:

- 2.6.7 (Knoppix 3.6): works fine (even with DMA active).
- 2.6.10-5 (Ubuntu live 5.04): locks up (only if DMA active).

However, 2.6.7 does not accept the ATA: interface but it uses ATAPI: with a 
different bus address (was ATA: introduced in 2.6.8?).
Also, cdrecord on 2.6.7 can't actually write data to the CD because of "DMA 
speed too slow", so I couldn't do a complete test; anyway, no lockup happened 
at the usual point (for both "-checkdrive" and "blank=fast").


Comment 13 Chris Backstrom 2006-01-19 19:41:36 UTC
Perhaps I've got a different problem, because I cannot get it to work with _any_
2.6 kernel. I've tried 2.6.0, 2.6.5, 2.6.8.1, 2.6.9, 2.6.10, 2.6.11, 2.6.14,
2.6.15. All of them hang the ide driver when trying to use dma + burner, and
works without dma. I'm using an Turion64 processor, though, if that makes any
difference (in 64-bit). Same errors as before:

ide-cd: cmd 0x3 timed out
hdc: lost interrupt

I've used:

cdrecord -v -dummy -driveropts=burnfree dev=/dev/hdc <FILE>
Comment 14 Bartlomiej Zolnierkiewicz 2006-01-20 01:01:37 UTC
Thanks for testing.

> However, 2.6.7 does not accept the ATA: interface but it uses ATAPI: with a 
> different bus address (was ATA: introduced in 2.6.8?).


No, this is probably cdrecord's issue.
Comment 15 Enrico Colombini 2006-01-20 10:25:30 UTC
Below is a sort of "poor man's tracing" of some kernel function calls on my 
machine leading to an IDE lockup.

It is definitely not complete or exhaustive: I just added a number of printk() 
at entry and exit points of some functions and printed out a few values (I 
know next to nothing of inner kernel workings).

Legenda:
-->            function call (also ==>, no significant difference)
<-- (r)        function return (also <==) with return value r
<-- (r) -retN  n-th return point from the middle of a function <sigh>.
    <n>        n-th arbitrary checkpoint iside a function 

Note IRQ entry and return. Feel free to ask for details/changes/values.

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

Jan 20 18:16:06 atuan kernel: ==> scsi_cmd_ioctl (cmd=2285)
Jan 20 18:16:06 atuan kernel:     scsi_cmd_ioctl-->sg_io
Jan 20 18:16:06 atuan kernel: ==> sg_io
Jan 20 18:16:06 atuan kernel:     sg_io-->blk_execute_rq
Jan 20 18:16:06 atuan kernel: ==> blk_execute_rq
Jan 20 18:16:06 atuan kernel: rq_status=0001, cmd_len=000c, data_len=0020, 
sense_len=0000, cmd=ad 00 00 00 00 00 00 00 00 20 00 00 
Jan 20 18:16:06 atuan kernel: 
Jan 20 18:16:06 atuan kernel: --> ide_cdrom_prep_pc
Jan 20 18:16:06 atuan kernel: --> do_ide_request
Jan 20 18:16:06 atuan kernel: --> ide_do_request
Jan 20 18:16:06 atuan kernel: --> ide_cdrom_prep_pc
Jan 20 18:16:06 atuan kernel:     ide_do_request-->start_request
Jan 20 18:16:06 atuan kernel: --> start_request
Jan 20 18:16:06 atuan kernel:     start_request<1>
Jan 20 18:16:06 atuan kernel:     start_request-->do_request(=ide_do_rw_cdrom)
Jan 20 18:16:06 atuan kernel: --> ide_do_rw_cdrom
Jan 20 18:16:06 atuan kernel: --> cdrom_start_packet_command(len=32)
Jan 20 18:16:06 atuan kernel: ==> ide_map_sg
Jan 20 18:16:06 atuan kernel: <== map_sg
Jan 20 18:16:06 atuan kernel: --> cdrom_transfer_packet_command
Jan 20 18:16:06 atuan kernel: <-- (1) cdrom_transfer_packet_command
Jan 20 18:16:06 atuan kernel: <-- (1) cdrom_start_packet_command-ret3
Jan 20 18:16:06 atuan kernel: <-- (1) ide_do_rw_cdrom-ret4
Jan 20 18:16:06 atuan kernel: <-- (1) start_request-ret3
Jan 20 18:16:06 atuan kernel: <-- ide_do_request
Jan 20 18:16:06 atuan kernel: <-- do_ide_request
Jan 20 18:16:06 atuan kernel:     blk_execute_rq-->wait_for_completion
Jan 20 18:16:06 atuan kernel: --> (IRQ) ide_intr
Jan 20 18:16:06 atuan kernel: --> cdrom_decode_status
Jan 20 18:16:06 atuan kernel:     
cdrom_decode_status-->cdrom_queue_request_sense-1
Jan 20 18:16:06 atuan kernel: --> cdrom_queue_request_sense
Jan 20 18:16:06 atuan kernel: --> cdrom_prepare_request
Jan 20 18:16:06 atuan kernel: ==> ide_init_drive_cmd
Jan 20 18:16:06 atuan kernel: <== ide_init_drive_cmd
Jan 20 18:16:06 atuan kernel: <-- cdrom_prepare_request
Jan 20 18:16:06 atuan kernel:     cdrom_queue_request_sense-->ide_do_drive_cmd
Jan 20 18:16:06 atuan kernel: ==> ide_do_drive_cmd(action=2)
Jan 20 18:16:06 atuan kernel:     ide_do_drive_cmd-->ide_do_request
Jan 20 18:16:06 atuan kernel: --> ide_do_request
Jan 20 18:16:06 atuan kernel: <-- ide_do_request
Jan 20 18:16:06 atuan kernel:     ide_do_drive_cmd-->spin_unlock_irqrestore
Jan 20 18:16:06 atuan kernel: <== (0) ide_do_drive_cmd
Jan 20 18:16:06 atuan kernel: <-- cdrom_queue_request_sense
Jan 20 18:16:06 atuan kernel: <-- (1) cdrom_decode_status-ret7
Jan 20 18:16:06 atuan kernel: --> ide_do_request
Jan 20 18:16:06 atuan kernel:     ide_do_request-->start_request
Jan 20 18:16:06 atuan kernel: --> start_request
Jan 20 18:16:06 atuan kernel:     start_request<1>
Jan 20 18:16:06 atuan kernel:     start_request-->do_request(=ide_do_rw_cdrom)
Jan 20 18:16:06 atuan kernel: --> ide_do_rw_cdrom
Jan 20 18:16:06 atuan kernel: --> cdrom_do_packet_command
Jan 20 18:16:06 atuan kernel:     
cdrom_do_packet_command-->cdrom_start_packet_command
Jan 20 18:16:06 atuan kernel: --> cdrom_start_packet_command(len=18)
Jan 20 18:16:06 atuan kernel: --> cdrom_do_pc_continuation
Jan 20 18:16:06 atuan kernel: --> cdrom_transfer_packet_command
Jan 20 18:16:06 atuan kernel: <-- (1) cdrom_transfer_packet_command
Jan 20 18:16:06 atuan kernel: <-- (1) cdrom_do_pc_continuation
Jan 20 18:16:06 atuan kernel: <-- (1) cdrom_start_packet_command-ret3
Jan 20 18:16:06 atuan kernel: <-- (1) cdrom_do_packet_command
Jan 20 18:16:06 atuan kernel: <-- (1) ide_do_rw_cdrom-ret3
Jan 20 18:16:06 atuan kernel: <-- (1) start_request-ret3
Jan 20 18:16:06 atuan kernel: <-- ide_do_request
Jan 20 18:16:06 atuan kernel: <-- (IRQ_HANDLED) ide_intr
Jan 20 18:17:06 atuan kernel: --> cdrom_timer_expiry(hdc)
Jan 20 18:17:06 atuan kernel: ide-cd: cmd 0x3 timed out


Comment 16 Enrico Colombini 2006-01-20 10:27:09 UTC
I forgot: the 'tracing' has been done on 2.6.12 (I did most of it last month).

Comment 17 Enrico Colombini 2006-01-22 10:28:12 UTC
Is the device driver interface consistent across minor kernel numbers?
I mean, if I copy alim15x3.[ch] from 2.6.8 source to 2.6.12 source, can I 
still compile 2.6.12 or does it all break down horribly?
In the former case, it could be helpful in deciding if the problem's source 
lies in the driver or elsewhere.

(I apologize if this is a stupid question; I just lifted the kernel hood a 
couple of months ago)


Comment 18 Bartlomiej Zolnierkiewicz 2006-01-23 05:56:40 UTC
> Is the device driver interface consistent across minor kernel numbers?
> I mean, if I copy alim15x3.[ch] from 2.6.8 source to 2.6.12 source, can I 
> still compile 2.6.12 or does it all break down horribly?

probably would break down, kernel internal APIs change rapidly


Alan, does this look like alignment issue?

data_len=0020 so we should be safe unless this chipset
has really weird alignment requirements (?)
Comment 19 Alan 2006-01-23 07:08:32 UTC
Looks like alignment to me, I'm not aware of any odd rules for ALi but this is
an ALi/ATI combination and that may have funnies of its own ?
Comment 20 Enrico Colombini 2006-01-23 09:30:40 UTC
I tried messing up with xferlen at the entry of cdrom_start_packet_command(), 
first changing it (only when it was 0x20) then just setting it to a fixed 
value (0x04), so that it set up the chipset for a shorter packet transfer.

I expected to get errors, or at least odd behavior, but what I see is:
- the commands preceding the lockup behave differently 
  (returning error, I suppose: generic_ide_ioctl returns -22)
- the command where it locks up behaves exactly as it did before: 
  same calls, same results (at least on visual check), then lockup  
  (I expected it to return error like the others).
- 'strace' of cdrecord seems to give the same results as before.

I know such a test may make little sense, but in case it may be useful...
(feel free to ask for more meaningful tests)

A wild guess: could it have something to do with getting the 
answer/acknowledge/whatever back from the drive after sending the command?


Comment 21 Bartlomiej Zolnierkiewicz 2006-01-23 10:26:59 UTC
What is actually happening is this:
* READ_DVD_STRUCTURE command (0xa) is send to the device
* it fails for some reason and driver queue REQUEST_SENSE command (0x03)
* REQUEST_SENSE timeouts and device/driver is unable to recover

It may be useful to see while READ_DVD_STRUCTURE fails be adding some debugging
info printing value of 'stat' / 'err' variable for REQ_BLOCK_PC requests in
cdrom_decode_status() [ just before cdrom_queue_request_sense() ].  Sorry but I
don't have patch handy ATM.
Comment 22 Enrico Colombini 2006-01-24 07:46:18 UTC
Inside IRQ handler ide_intr(), in cdrom_decode_status(), inside REQ_BLOCK_PC, 
before the call to cdrom_queue_request_sense():

  stat=81, err=84, sense_key=5
  (with a CD-RW in the drive)

If I try with no disc in the drive, I get a number of (stat=81, err=36, 
sense_key=2) and also a single one (not the last one) same as the one above 
(err=84, sense_key=5).


Other notes:

- I've also noticed, going back through the 'tracing', that there are many 
calls to generic_ide_ioctl returning (-22), both with CD-RW and with no disc. 
I assume that's normal, but just in case...

- I'm still using 2.6.12 because of the convenience of my old tracing points; 
tell me if I have to use 2.6.15.

- don't worry about writing test patches: you're already doing the work that 
counts! I have no trouble following your directions.


Comment 23 Enrico Colombini 2006-01-25 01:43:22 UTC
I repeated the test with 2.6.15 and also tried a DVD-RW disc (which does not 
lock up the IDE bus):

(cdrecord dev=ATA:1,0,0 -checkdrive)

No disk in the drive:
  stat=81, err=36, sense_key=2  [this one repeated 25 times]
  stat=81, err=84, sense_key=5
  stat=81, err=36, sense_key=2
  stat=81, err=84, sense_key=5
  stat=81, err=36, sense_key=2  [this one repeated 28 times]
  
DVD-RW in the drive:
  stat=81, err=84, sense_key=5  [this one repeated 2 times]
  (no lockup)

CD-RW in the drive:
  stat=81, err=84, sense_key=5
  (lockup: cmd 0x3 timed out, etc.)
  
Could it have something to do with the handling of the drive's reply?


Comment 24 Hubert Verstraete 2006-02-07 01:59:42 UTC
Hello
On November 2005, I opened a detailed bugzilla on redhat.com:
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=172278 and wrote to the
kernel mailing list about this bug without getting an answer. FYI, the archive link:
http://www.uwsg.indiana.edu/hypermail/linux/kernel/0511.2/0082.html
My bug reports and Enrico's one definitely describe the same issue. So I'm
adding myself to this bug, hoping I can help.
Comment 25 Dieter Ferstl 2006-03-13 06:50:35 UTC
are there any changes to this bug?
i also got the barebone st20g5 with the ali 15x3 chipset.
cant burn correctly since half a year, that bug is making me crazy
anybody got a patch for it?
Comment 26 Luca 2006-03-27 10:42:16 UTC
Hello,

I was able to reproduce the very same problem with kernel 2.6.11.12 and 2.6.16.
I have the same ide controller:

$ lspci|grep IDE
0000:00:16.0 IDE interface: ALi Corporation M5229 IDE (rev c7)

The problem appeared after I changed my motherboard (my previous motherboard had 
a VIA ide controller) so I think we can exclude anything not related to the 
ali15x3 driver.

The error messages and behaviour are identical to the ones already described by 
other users.

HTH, HAND
Comment 27 Enrico Colombini 2006-03-27 23:52:50 UTC
There seems to be a consensus about the problem likely being in the ali15x3 
driver with the ALi Corporation M5229 IDE (rev c7) IDE controller. 

For Bartlomiej:
did you notify the driver's author(s), or should I do this (as originator of 
this thread)?


Comment 28 Dieter Ferstl 2006-03-28 01:30:19 UTC
plz notify the driver's author, perhaps there is a solution coming....
if not ill use ebay for kicking this chipsets out n buy non ati products...
Comment 29 Bartlomiej Zolnierkiewicz 2006-03-28 02:12:40 UTC
Enrico: nope, please do so.
Comment 30 Enrico Colombini 2006-03-28 07:53:47 UTC
[self-correction: the driver is alim15x3, not ali15x3]

What is the corrent way to contact the maintainer(s)?
Should I email the addresses listed in alim15x3.c (Clear Zhang could probably 
be the right person), or is there an 'official' way to do this?

I didn't see any mention of storage low-level drivers for specific chipsets in 
the kernel bug tracker page.


Comment 31 Alan 2006-03-30 08:26:12 UTC
Clear Zhang appears to have left ULi
Comment 32 Larry Auton 2006-04-14 18:37:01 UTC
I have a few dozen of the Shuttle ST20G5 systems with the ALi M5229 IDE
controller that exhibits this problem.  I would be happy to loan one of these
systems to the appropriate developer if it would help resolve this problem more
quickly.
Comment 33 Luca 2006-04-25 03:42:14 UTC
Good news everyone :)

2.6.16.10 fixes the problem for me. Look at this:

--- a/drivers/ide/pci/alim15x3.c
+++ b/drivers/ide/pci/alim15x3.c
@@ -731,6 +731,8 @@ static unsigned int __devinit ata66_ali1
        
        if(m5229_revision <= 0x20)
                tmpbyte = (tmpbyte & (~0x02)) | 0x01;
+       else if (m5229_revision == 0xc7)
+               tmpbyte |= 0x03;
        else
                tmpbyte |= 0x01;

Thank you!
Comment 34 Enrico Colombini 2006-04-25 04:03:17 UTC
Great! I look forward to getting my machine back (from the repair shop) and 
trying it out!


Comment 35 Hubert Verstraete 2006-04-25 06:18:46 UTC
I've just tried with kernel 2.6.16.11 compiled with Fedora Core 5 rules.
I've been able to do a cdrecord -atip, to blank and burn a CDRW.
For DVD burning, this seems to be OK, I've just had a scsi command error at the
beginning, but everything worked well.
Who should we thank for this fix?
Comment 36 Larry Auton 2006-04-28 14:27:39 UTC
I built and installed a 64-bit version of 2.6.16.11 on a Shuttle ST20G5.  The 
IDE CD/DVD now works properly.
Comment 37 Enrico Colombini 2006-05-06 08:36:12 UTC
Got my PC back (at last!).

I tried with a freshly compiled 2.6.16.14 on a Debian testing (Etch): I also 
got a SCSI error, presumably the same as Hubert's (see below) but the erasing 
and burning commands worked fine at full speed (I used a CD_RW); I also did a 
successful file compare afterwards, re-reading it from the other CD drive.

Here is the error that appeared between cdrecord's messages "Supported modes: 
..." and "Starting to write ..." when writing (not when erasing):

  Error: Cannot gain SYS_RAWIO capability. Is cdrecord installed SUID root?
    Operation not permitted.

The same error message was shown when operating both as user and as root.
Should I close this bug or does that error message require further 
investigation?


Comment 38 Enrico Colombini 2006-05-06 08:41:03 UTC
Ah, and *many* thanks to whoever fixed it! :-)


Comment 39 Gerhard Gau 2006-06-10 15:37:15 UTC
I got something similar without an ALi ide chipsetdriver.

I got an nvidia CK804.

Here is some /var/log/messages output:

Jun 10 18:14:59 localhost kernel: [ 5089.287873] ide-cd: cmd 0x3 timed 
out
Jun 10 18:14:59 localhost kernel: [ 5089.287877] hdc: lost interrupt
Jun 10 18:15:59 localhost kernel: [ 5127.078782] ide-cd: cmd 0x3 timed 
out
Jun 10 18:15:59 localhost kernel: [ 5127.078786] hdc: lost interrupt

$ killall k3b
$ lsof /dev/hdc
COMMAND     PID    USER   FD   TYPE DEVICE SIZE NODE NAME
growisofs 18924 gerhard    4r   BLK   22,0      4279 /dev/hdc
growisofs 18924 gerhard    5u   BLK   22,0      4279 /dev/hdc
growisofs 18924 gerhard    6u   BLK   22,0      4279 /dev/hdc
$ killall growisofs
$ lsof /dev/hdc
COMMAND     PID    USER   FD   TYPE DEVICE SIZE NODE NAME
growisofs 18924 gerhard    4r   BLK   22,0      4279 /dev/hdc
growisofs 18924 gerhard    5u   BLK   22,0      4279 /dev/hdc
growisofs 18924 gerhard    6u   BLK   22,0      4279 /dev/hdc
$ sudo killall -9 
growisofs
Password:
$ lsof /dev/hdc
COMMAND     PID    USER   FD   TYPE DEVICE SIZE NODE NAME
growisofs 18924 gerhard    4r   BLK   22,0      4279 /dev/hdc
growisofs 18924 gerhard    5u   BLK   22,0      4279 /dev/hdc
growisofs 18924 gerhard    6u   BLK   22,0      4279 /dev/hdc
$ 

Here we see that the dvd drive and the ide channel hung...

$ tail -f /var/log/messages
Jun 10 18:22:59 localhost kernel: [ 5364.589041] ide-cd: cmd 0x3 timed 
out
Jun 10 18:22:59 localhost kernel: [ 5364.589046] hdc: lost interrupt
Jun 10 18:23:59 localhost kernel: [ 5394.770115] ide-cd: cmd 0x3 timed 
out
Jun 10 18:23:59 localhost kernel: [ 5394.770119] hdc: lost interrupt
Jun 10 18:24:59 localhost kernel: [ 5424.409996] ide-cd: cmd 0x3 timed 
out

This happened after 6% of writing with growisofs 5.21.

$ k3b --version
Qt: 3.3.6
KDE: 3.5.2
K3b: 0.12.14
$ uname -r
2.6.15-23-amd64-generic
$ lspci
0000:00:00.0 Memory controller: nVidia Corporation CK804 Memory 
Controller (rev a3)
0000:00:01.0 ISA bridge: nVidia Corporation CK804 ISA Bridge (rev a3)
0000:00:01.1 SMBus: nVidia Corporation CK804 SMBus (rev a2)
0000:00:02.0 USB Controller: nVidia Corporation CK804 USB Controller 
(rev a2)
0000:00:02.1 USB Controller: nVidia Corporation CK804 USB Controller 
(rev a3)
0000:00:04.0 Multimedia audio controller: nVidia Corporation CK804 AC'97 
Audio Controller (rev a2)
0000:00:06.0 IDE interface: nVidia Corporation CK804 IDE (rev a2)
0000:00:07.0 IDE interface: nVidia Corporation CK804 Serial ATA 
Controller (rev a3)
0000:00:08.0 IDE interface: nVidia Corporation CK804 Serial ATA 
Controller (rev a3)
0000:00:09.0 PCI bridge: nVidia Corporation CK804 PCI Bridge (rev a2)
0000:00:0a.0 Bridge: nVidia Corporation CK804 Ethernet Controller (rev 
a3)
0000:00:0b.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
0000:00:0c.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
0000:00:0d.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
0000:00:0e.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
0000:00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 
[Athlon64/Opteron] HyperTransport Technology Configuration
0000:00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 
[Athlon64/Opteron] Address Map
0000:00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 
[Athlon64/Opteron] DRAM Controller
0000:00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 
[Athlon64/Opteron] Miscellaneous Control
0000:01:00.0 VGA compatible controller: nVidia Corporation NV43 [GeForce 
6600 GT] (rev a2)
0000:05:06.0 Network controller: AVM Audiovisuelles MKTG & Computer 
System GmbH Fritz!PCI v2.0 ISDN (rev 01)
0000:05:0a.0 RAID bus controller: Silicon Image, Inc. SiI 3114 
[SATALink/SATARaid] Serial ATA Controller (rev 02)
0000:05:0b.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A 
IEEE-1394a-2000 Controller (PHY/Link)
0000:05:0c.0 Ethernet controller: Marvell Technology Group Ltd. 88E8001 
Gigabit Ethernet Controller (rev 13)

$ dmesg |grep ide
[    0.000000] BIOS-provided physical RAM map:
[    0.000000] Nvidia board detected. Ignoring ACPI timer override.
[    0.000000] ACPI: BIOS IRQ0 pin2 override ignored.
[    0.000000] ACPI: IRQ9 used by override.
[    0.000000] ACPI: IRQ14 used by override.
[    0.000000] ACPI: IRQ15 used by override.
[   41.836776] Boot video device is 0000:01:00.0
[   41.946918] ide: Assuming 33MHz system bus speed for PIO modes; 
override with idebus=xx
[   42.197989]     ide0: BM-DMA at 0xf000-0xf007, BIOS settings: 
hda:DMA, hdb:DMA
[   42.197997]     ide1: BM-DMA at 0xf008-0xf00f, BIOS settings: 
hdc:DMA, hdd:DMA
[   42.198003] Probing IDE interface ide0...
[   43.178048] ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
[   43.181035] Probing IDE interface ide1...
[   44.159346] ide1 at 0x170-0x177,0x376 on irq 15
[ 4008.457286] ide-cd: cmd 0x3 timed out
[ 4041.095994] ide-cd: cmd 0x3 timed out
[ 4089.186529] ide-cd: cmd 0x3 timed out
[ 4128.969616] ide-cd: cmd 0x3 timed out
[ 4160.789522] ide-cd: cmd 0x3 timed out
$ dmesg |grep hdc
[   42.197997]     ide1: BM-DMA at 0xf008-0xf00f, BIOS settings: 
hdc:DMA, hdd:DMA
[   43.852709] hdc: HL-DT-ST DVDRAM GSA-4167B, ATAPI CD/DVD-ROM drive
[   44.506449] hdc: ATAPI 48X DVD-ROM DVD-R-RAM CD-R/RW drive, 2048kB 
Cache, UDMA(33)
[ 4008.457290] hdc: lost interrupt
[ 4008.457294] hdc: cdrom_pc_intr: The drive appears confused (ireason = 
0x01)
[ 4041.095998] hdc: lost interrupt
[ 4041.096002] hdc: cdrom_pc_intr: The drive appears confused (ireason = 
0x01)
[ 4089.186535] hdc: lost interrupt

$ sudo cdrecord dev=ATA --scanbus
Cdrecord-Clone 2.01.01a01 (x86_64-unknown-linux-gnu) Copyright (C) 
1995-2004 Joerg Schilling
NOTE: this version of cdrecord is an inofficial (modified) release of 
cdrecord
      and thus may have bugs that are not present in the original 
version.
      Please send bug reports and support requests to 
<cdrtools@packages.debian.org>.
      The original author should not be bothered with problems of this 
version.

cdrecord: Warning: Running on Linux-2.6.15-23-amd64-generic
cdrecord: There are unsettled issues with Linux-2.5 and newer.
cdrecord: If you have unexpected problems, please try Linux-2.4 or 
Solaris.
scsidev: 'ATA'
devname: 'ATA'
scsibus: -2 target: -2 lun: -2
Warning: Using badly designed ATAPI via /dev/hd* interface.
Linux sg driver version: 3.5.27

This might give nothing, because the drive hangs.

$ growisofs --version
* growisofs by <appro@fy.chalmers.se>, version 5.21,
  front-ending to mkisofs: mkisofs 2.01-unofficial-iconv 
(x86_64-unknown-linux-gnu)

$ lsmod|grep ide
video                  18824  0
ide_scsi               20868  0
ide_disk               19456  0
ide_generic             2816  0
ide_cd                 35744  16
cdrom                  41144  1 ide_cd
scsi_mod              160504  5 sbp2,ide_scsi,sg,sd_mod,libata

$ sudo cdrecord -scanbus dev=ATA
Cdrecord-Clone 2.01.01a01 (x86_64-unknown-linux-gnu) Copyright (C) 
1995-2004 Joerg Schilling
NOTE: this version of cdrecord is an inofficial (modified) release of 
cdrecord
      and thus may have bugs that are not present in the original 
version.
      Please send bug reports and support requests to 
<cdrtools@packages.debian.org>.
      The original author should not be bothered with problems of this 
version.

cdrecord: Warning: Running on Linux-2.6.15-23-amd64-generic
cdrecord: There are unsettled issues with Linux-2.5 and newer.
cdrecord: If you have unexpected problems, please try Linux-2.4 or 
Solaris.
scsidev: 'ATA'
devname: 'ATA'
scsibus: -2 target: -2 lun: -2
Warning: Using badly designed ATAPI via /dev/hd* interface.
Linux sg driver version: 3.5.27
Using libscg version 'debian-0.8debian2'.
cdrecord: Warning: using inofficial version of libscg 
(debian-0.8debian2 '@(#)scsitransp.c      1.91 04/06/17 Copyright 
1988,1995,2000-2004 J. Schilling').
scsibus0:
        0,0,0     0) *
        0,1,0     1) 'HL-DT-ST' 'DVDRAM GSA-4163B' 'A100' Removable 
CD-ROM
        0,2,0     2) *
        0,3,0     3) *
        0,4,0     4) *
        0,5,0     5) *
        0,6,0     6) *
        0,7,0     7) *
scsibus1:
        1,0,0   100) 'HL-DT-ST' 'DVDRAM GSA-4167B' 'DL13' Removable 
CD-ROM
        1,1,0   101) *
        1,2,0   102) *
        1,3,0   103) *
        1,4,0   104) *
        1,5,0   105) *
        1,6,0   106) *
        1,7,0   107) *
$ dmesg |grep GSA
[   39.483964] hdb: HL-DT-ST DVDRAM GSA-4163B, ATAPI CD/DVD-ROM drive
[   40.211833] hdc: HL-DT-ST DVDRAM GSA-4167B, ATAPI CD/DVD-ROM drive

The GSA-4167B seems to be defect.

k3b:
$ k3b: ERROR: (K3bDevice::Device) Unable to do inquiry.
k3b: ERROR: (K3bDevice::Device) Unable to do inquiry.
KCrash: Application 'k3b' crashing...

That was about burning.

This is about reading:

Jun 10 19:52:51 localhost -- MARK --

Jun 10 20:02:10 localhost kernel: [ 2958.592081] UDF-fs: No VRS found
Jun 10 20:02:10 localhost kernel: [ 2958.690627] UDF-fs: No VRS found
Jun 10 20:02:18 localhost kernel: [ 2963.845403] File unit size != 0 for 
ISO file (1856).
Jun 10 20:03:17 localhost kernel: [ 2999.624687] UDF-fs: No VRS found
Jun 10 20:03:17 localhost kernel: [ 2999.680065] UDF-fs: No VRS found
Jun 10 20:03:17 localhost kernel: [ 2999.755172] File unit size != 0 for 
ISO file (20608).
Jun 10 20:03:17 localhost kernel: [ 2999.833390] Interleaved files not 
(yet) supported.
Jun 10 20:03:17 localhost kernel: [ 2999.874666] VFS: Can't find a valid 
FAT filesystem on dev hdc.
Jun 10 20:03:18 localhost kernel: [ 2999.920586] VFS: Can't find a valid 
FAT filesystem on dev hdc.
Jun 10 20:03:18 localhost kernel: [ 3000.030910] HFS+-fs: unable to find 
HFS+ superblock
Jun 10 20:03:18 localhost kernel: [ 3000.081468] HFS+-fs: unable to find 
HFS+ superblock
Jun 10 20:03:18 localhost kernel: [ 3000.136636] VFS: Can't find a HFS 
filesystem on dev hdc.
Jun 10 20:03:18 localhost kernel: [ 3000.178018] VFS: Can't find a HFS 
filesystem on dev hdc.
Jun 10 20:03:18 localhost kernel: [ 3000.338956] VFS: Can't find an ext2 
filesystem on dev hdc.
Jun 10 20:03:19 localhost kernel: [ 3000.394140] VFS: Can't find an ext2 
filesystem on dev hdc.
Jun 10 20:03:25 localhost kernel: [ 3002.712144] ReiserFS: hdc: warning: 
sh-2021: reiserfs_fill_super: can not find reiserfs on hdc
Jun 10 20:03:33 localhost kernel: [ 3003.480077] ReiserFS: hdc: warning: 
sh-2021: reiserfs_fill_super: can not find reiserfs on hdc
Jun 10 20:03:33 localhost kernel: [ 3003.856567] XFS: bad magic number
Jun 10 20:03:33 localhost kernel: [ 3003.856636] XFS: SB validate failed
Jun 10 20:03:33 localhost kernel: [ 3003.897954] XFS: bad magic number
Jun 10 20:03:33 localhost kernel: [ 3003.898024] XFS: SB validate failed
Jun 10 20:04:34 localhost kernel: [ 3034.672150] UDF-fs: No VRS found
Jun 10 20:04:34 localhost kernel: [ 3034.779104] UDF-fs: No VRS found
Jun 10 20:04:34 localhost kernel: [ 3034.854309] File unit size != 0 for 
ISO file (20608).
Jun 10 20:04:35 localhost kernel: [ 3034.932547] Interleaved files not 
(yet) supported.
Jun 10 20:04:35 localhost kernel: [ 3035.153128] VFS: Can't find a valid 
FAT filesystem on dev hdc.
Jun 10 20:04:35 localhost kernel: [ 3035.208291] VFS: Can't find a valid 
FAT filesystem on dev hdc.
Jun 10 20:04:35 localhost kernel: [ 3035.309304] HFS+-fs: unable to find 
HFS+ superblock
Jun 10 20:04:36 localhost kernel: [ 3035.359866] HFS+-fs: unable to find 
HFS+ superblock
Jun 10 20:04:36 localhost kernel: [ 3035.415027] VFS: Can't find a HFS 
filesystem on dev hdc.
Jun 10 20:04:36 localhost kernel: [ 3035.470189] VFS: Can't find a HFS 
filesystem on dev hdc.
Jun 10 20:04:36 localhost kernel: [ 3035.640278] VFS: Can't find an ext2 
filesystem on dev hdc.
Jun 10 20:04:36 localhost kernel: [ 3035.690859] VFS: Can't find an ext2 
filesystem on dev hdc.
Jun 10 20:04:36 localhost kernel: [ 3035.774217] ReiserFS: hdc: warning: 
sh-2021: reiserfs_fill_super: can not find reiserfs on hdc
Jun 10 20:04:37 localhost kernel: [ 3035.843174] ReiserFS: hdc: warning: 
sh-2021: reiserfs_fill_super: can not find reiserfs on hdc
Jun 10 20:04:37 localhost kernel: [ 3035.939224] XFS: bad magic number
Jun 10 20:04:37 localhost kernel: [ 3035.939339] XFS: SB validate failed
Jun 10 20:04:37 localhost kernel: [ 3036.003583] XFS: bad magic number
Jun 10 20:04:37 localhost kernel: [ 3036.003752] XFS: SB validate failed
Jun 10 20:06:30 localhost kernel: [ 3103.797281] hdc: lost interrupt
Jun 10 20:07:10 localhost kernel: [ 3127.701834] hdc: lost interrupt

$ cdrecord dev=/dev/hdc -atip
[...]
devname: '/dev/hdc'
scsibus: -2 target: -2 lun: -2
Warning: Open by 'devname' is unintentional and not supported.
Linux sg driver version: 3.5.27
Error: Cannot gain SYS_RAWIO capability.Is cdrecord installed SUID root?
: Operation not permitted
Using libscg version 'debian-0.8debian2'.
cdrecord: Warning: using inofficial version of libscg 
(debian-0.8debian2 '@(#)scsitransp.c      1.91 04/06/17 Copyright 
1988,1995,2000-2004 J. Schilling').
Device type    : Removable CD-ROM
Version        : 0
Response Format: 2
Capabilities   :
Vendor_info    : 'HL-DT-ST'
Identifikation : 'DVDRAM GSA-4167B'
Revision       : 'DL13'
Device seems to be: Generic mmc2 DVD-R/DVD-RW.
cdrecord: Found DVD+ media but DVD+R/DVD+RW support code is missing.
cdrecord: If you need DVD+R/DVD+RW support, ask the Author for 
cdrecord-ProDVD.
[...]

Nevertheless, the burned dvd with DMA turned off (by hdparm) is ok regarding the
windows shareware cdcheck. Also after a reboot I gained access to that dvd under
linux. I couldn't get access to the dvd before reboot. 

I hope, this report is related to this bug. 

regards

Gerhard Gau
Comment 40 Gerhard Gau 2006-06-11 03:14:10 UTC
Reading seems to be ok, when mounting manually, and not with
gnome-volume-manager/hal. So it might not be related to the kernel/ide...
Comment 41 Gerhard Gau 2006-06-24 06:52:39 UTC
>$ dmesg |grep GSA
>[   39.483964] hdb: HL-DT-ST DVDRAM GSA-4163B, ATAPI CD/DVD-ROM drive
>[   40.211833] hdc: HL-DT-ST DVDRAM GSA-4167B, ATAPI CD/DVD-ROM drive

>The GSA-4167B seems to be defect.
|-------^^^^  should be GSA-4163B

After disconnecting the defect burner everything worked like a charm.
There is no kernel bug, that leads into these problems.

I'm sorry for the noise.
Comment 42 Michael De Backer 2006-09-06 18:00:33 UTC
Hello 

I had the same issue with an Asus A8R32-MVP - ALi Corporation M5229 IDE (rev
c8). As there are no problems, only solutions: 

--- a/drivers/ide/pci/alim15x3.c
+++ b/drivers/ide/pci/alim15x3.c
@@ -731,6 +731,6 @@ static unsigned int __devinit ata66_ali1
        
        if(m5229_revision <= 0x20)
                tmpbyte = (tmpbyte & (~0x02)) | 0x01;
-       else if (m5229_revision == 0xc7)
+       else if (m5229_revision == 0xc7 || 0xc8)
                tmpbyte |= 0x03;
        else
                tmpbyte |= 0x01;
Comment 43 Michael De Backer 2006-09-09 12:01:06 UTC
This one is better :/

Patched against 2.6.18-rc6:

--- linux/drivers/ide/pci/alim15x3.c.orig       2006-09-09
16:07:07.000000000 +0200
+++ linux/drivers/ide/pci/alim15x3.c    2006-09-09 16:08:25.000000000
+0200
@@ -730,7 +730,7 @@ static unsigned int __devinit ata66_ali1

	if(m5229_revision <= 0x20)
		tmpbyte = (tmpbyte & (~0x02)) | 0x01;
-       else if (m5229_revision == 0xc7)
+       else if (m5229_revision == 0xc7 || m5229_revision == 0xc8)
		tmpbyte |= 0x03;
	else
		tmpbyte |= 0x01;

Maybe should bug status be changed to closed ...
Comment 44 Adrian Bunk 2006-12-02 01:39:42 UTC
The patch from this bug has been included since kernel 2.6.18.

Note You need to log in before you can comment on or make changes to this bug.