k3b locks up when launching, disabling sata dvd burner

Bug #228762 reported by Tim Hardy
4
Affects Status Importance Assigned to Milestone
k3b (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

Binary package hint: k3b

K3B fatally locks the dvd burner when it is launched with either a blank dvd in the drive or an empty drive.

After a long delay K3B starts with the warning:

“No CD/DVD writer found.
K3b did not find an optical writing device in your system. Thus, you will not be able to burn CDs or DVDs. However, you can still use other K3b features like audio track extraction or audio transcoding or ISO9660 image creation.”

The drive is now disabled - even the eject button will not work - and only a complete power-down and restart will reinitialize it.

This does not occur when a blank CD is placed in the drive before launch. The drive works fine with growisofs and wodim.

Running K3B from command line shows the hang up was occurring after the step checking for RAW_R96R:
...
(K3bDevice::Device) /dev/scd0: checking for RAW_R96R

After a long pause the process would continue:

(K3bDevice::ScsiCommand) failed:
                           command: GET PERFORMANCE (ac)
                           errorcode: 72
                           sense key: NO SENSE (2)
                           asc: 0
                           ascq: 3
(K3bDevice::Device) /dev/scd0: GET PERFORMANCE length det failed.
(K3bDevice::ScsiCommand) failed:
                           command: MODE SENSE (5a)
                           errorcode: 0
                           sense key: NO SENSE (2)
                           asc: 0
                           ascq: 0
(K3bDevice::Device) /dev/scd0: MODE SENSE length det failed.
(K3bDevice::ScsiCommand) failed:
                           command: MODE SENSE (5a)
                           errorcode: 0
                           sense key: NO SENSE (2)
                           asc: 0
                           ascq: 0
(K3bDevice::Device) /dev/scd0: MODE SENSE with real length 65535 failed.
(K3bDevice::Device) could not open device /dev/scd0 for reading
                    (No such device or address)
Error while retrieving capabilities.
Could not initialize device /dev/scd0
Could not resolve /dev/scd0
/dev/scd0 resolved to /dev/scd0
(K3bDevice::Device) could not open device /dev/scd0 for reading
                    (No such file or directory)
could not open device /dev/scd0 (No such file or directory)
Devices:
------------------------------
kdecore (KAction): WARNING: KActionCollection::operator+=(): function is severely deprecated.
removing udi /org/freedesktop/Hal/devices/pci_8086_2922_scsi_host_0_scsi_device_ lun0_scsi_generic
removing udi /org/freedesktop/Hal/devices/pci_8086_2922_scsi_host_0_scsi_device_ lun0
removing udi /org/freedesktop/Hal/devices/pci_8086_2922_scsi_host_0
removing udi /org/freedesktop/Hal/devices/storage_model_DVDRW_LH_20A1S
Unmapping udi /org/freedesktop/Hal/devices/storage_model_DVDRW_LH_20A1S from dev

dmesg shows:

dmesg reveals the following occuring

May 1 23:52:15 mingus kernel: [ 3580.143800] cdb ac 00 00 00 00 00 00 00 00 01 03 00 00 00 00 00
May 1 23:52:15 mingus kernel: [ 3580.143801] res 40/00:03:00:00:00/00:00:00:00:00/a0 Emask 0x4 (timeout)
May 1 23:52:15 mingus kernel: [ 3580.455532] ata6: soft resetting link
May 1 23:52:15 mingus kernel: [ 3580.619411] ata6: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
May 1 23:52:45 mingus kernel: [ 3610.751976] ata6.00: qc timeout (cmd 0xa1)
May 1 23:52:45 mingus kernel: [ 3610.751985] ata6.00: failed to IDENTIFY (I/O error, err_mask=0x5)
May 1 23:52:45 mingus kernel: [ 3610.751993] ata6: failed to recover some devices, retrying in 5 secs
May 1 23:52:50 mingus kernel: [ 3615.752086] ata6: hard resetting link
May 1 23:52:56 mingus kernel: [ 3621.263794] ata6: port is slow to respond, please be patient (Status 0x80)
May 1 23:53:00 mingus kernel: [ 3625.752312] ata6: hard resetting link
May 1 23:53:06 mingus kernel: [ 3631.268013] ata6: port is slow to respond, please be patient (Status 0x80)
May 1 23:53:11 mingus kernel: [ 3635.804490] ata6: hard resetting link
May 1 23:53:16 mingus kernel: [ 3641.316197] ata6: port is slow to respond, please be patient (Status 0x80)
May 1 23:53:46 mingus kernel: [ 3670.813264] ata6: limiting SATA link speed to 1.5 Gbps
May 1 23:53:46 mingus kernel: [ 3670.813266] ata6: hard resetting link
May 1 23:53:51 mingus kernel: [ 3675.821377] ata6.00: disabled
May 1 23:53:51 mingus kernel: [ 3675.821404] ata6: hard resetting link
May 1 23:53:57 mingus kernel: [ 3681.736761] ata6: port is slow to respond, please be patient (Status 0x80)
May 1 23:54:01 mingus kernel: [ 3685.825584] ata6: hard resetting link
May 1 23:52:15 mingus kernel: [ 3580.143800] cdb ac 00 00 00 00 00 00 00 00 01 03 00 00 00 00 00
May 1 23:52:15 mingus kernel: [ 3580.143801] res 40/00:03:00:00:00/00:00:00:00:00/a0 Emask 0x4 (timeout)
May 1 23:52:15 mingus kernel: [ 3580.455532] ata6: soft resetting link
May 1 23:52:15 mingus kernel: [ 3580.619411] ata6: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
May 1 23:52:45 mingus kernel: [ 3610.751976] ata6.00: qc timeout (cmd 0xa1)
May 1 23:52:45 mingus kernel: [ 3610.751985] ata6.00: failed to IDENTIFY (I/O error, err_mask=0x5)
May 1 23:52:45 mingus kernel: [ 3610.751993] ata6: failed to recover some devices, retrying in 5 secs
May 1 23:52:50 mingus kernel: [ 3615.752086] ata6: hard resetting link
May 1 23:52:56 mingus kernel: [ 3621.263794] ata6: port is slow to respond, please be patient (Status 0x80)
May 1 23:53:00 mingus kernel: [ 3625.752312] ata6: hard resetting link
May 1 23:53:06 mingus kernel: [ 3631.268013] ata6: port is slow to respond, please be patient (Status 0x80)
May 1 23:53:11 mingus kernel: [ 3635.804490] ata6: hard resetting link
May 1 23:53:16 mingus kernel: [ 3641.316197] ata6: port is slow to respond, please be patient (Status 0x80)
May 1 23:53:46 mingus kernel: [ 3670.813264] ata6: limiting SATA link speed to 1.5 Gbps
May 1 23:53:46 mingus kernel: [ 3670.813266] ata6: hard resetting link
May 1 23:53:51 mingus kernel: [ 3675.821377] ata6.00: disabled
May 1 23:53:51 mingus kernel: [ 3675.821404] ata6: hard resetting link
May 1 23:53:57 mingus kernel: [ 3681.736761] ata6: port is slow to respond, please be patient (Status 0x80)
May 1 23:54:01 mingus kernel: [ 3685.825584] ata6: hard resetting link
May 1 23:54:07 mingus kernel: [ 3691.752971] ata6: port is slow to respond, please be patient (Status 0x80)
May 1 23:54:11 mingus kernel: [ 3695.841797] ata6: hard resetting link
May 1 23:54:17 mingus kernel: [ 3701.757192] ata6: port is slow to respond, please be patient (Status 0x80)
May 1 23:54:46 mingus kernel: [ 3730.858562] ata6: limiting SATA link speed to 1.5 Gbps
May 1 23:54:46 mingus kernel: [ 3730.858565] ata6: hard resetting link
May 1 23:54:51 mingus kernel: [ 3735.884188] ata6: EH complete
May 1 23:54:51 mingus kernel: [ 3735.884287] ata6.00: detaching (SCSI 5:0:0:0)

From investigating it seems that the lock-up occurs in the call to K3bDevice::Device::getSupportedWriteSpeedsViaGP and a workaround is to hack this to return false immediately and short-circuit the call to ioctl that appears to be locking the device

Filing this under K3B bugs but one of the ubuntu devs may want to refile it as a kernel bug.

I'm using a stock Hardy Heron Kubuntu 64-bit install on an Abit IP-35 motherboard with a SATA dvd burner (NB nothing plugged into the JMicron interface for anything on this box).

Possibly the same as Bug #177800.

Revision history for this message
Richard Seguin (sectech) wrote :

I had this problem just a few days ago...

Try adding pci=nomsi to your kernel boot commands.... I couldn't get my entire SATA hard drive to identify...

Richard Seguin (sectech)
Changed in k3b:
status: New → Incomplete
Revision history for this message
Tim Hardy (j-launchpad-timhardy-net) wrote :

Hi Richard

Sorry for the delay in responding. Haven't had a chance to try this before now.

Adding pci=nomsi fixes the problem.

Richard Seguin (sectech)
Changed in k3b:
status: Incomplete → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.