Summary: | k3b crashes on startup if no media is in drive | ||
---|---|---|---|
Product: | [Applications] k3b | Reporter: | Martin Holz <martin> |
Component: | general | Assignee: | Sebastian Trueg <trueg> |
Status: | RESOLVED FIXED | ||
Severity: | crash | ||
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Debian testing | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Attachments: | More output |
Description
Martin Holz
2007-07-08 14:10:34 UTC
Hmm, you pointed me to the same bug. I thought the new version is fixed, cos it started without troubles once. Then I noticed I had a burned cd in that drive. With a cdrom in my dvd-burner it starts, otherwise it crashes. This is what I get out of the terminal: [amnon@amnonspc:~]$ k3b --nocrashhandler > k3b-start-with-cdrom Qt: Locales not supported on X server kbuildsycoca running... Qt: Locales not supported on X server kdecore (KAction): WARNING: KActionCollection::KActionCollection( QObject *parent, const char *name, KInstance *instance ) /dev/sr2 resolved to /dev/sr2 /dev/sr2 is block device (2) /dev/sr2 seems to be cdrom bus: 5, id: 1, lun: 0 (K3bDevice::Device) /dev/sr2: init() (K3bDevice::Device) /dev/sr2 feature: CD Mastering (K3bDevice::Device) /dev/sr2 feature: CD Track At Once (K3bDevice::Device) /dev/sr2 unknown profile: 2 (K3bDevice::Device) /dev/sr2: dataLen: 60 (K3bDevice::Device) /dev/sr2: checking for TAO (K3bDevice::Device) /dev/sr2: checking for SAO (K3bDevice::Device) /dev/sr2: checking for SAO_R96P (K3bDevice::Device) /dev/sr2: checking for SAO_R96R (K3bDevice::Device) /dev/sr2: checking for RAW_R16 (K3bDevice::Device) /dev/sr2: checking for RAW_R96P (K3bDevice::Device) /dev/sr2: checking for RAW_R96R (K3bDevice::ScsiCommand) failed: command: GET PERFORMANCE (ac) errorcode: 70 sense key: NOT READY (2) asc: 3a ascq: 1 (K3bDevice::Device) /dev/sr2: GET PERFORMANCE length det failed. (K3bDevice::ScsiCommand) failed: command: GET PERFORMANCE (ac) errorcode: 70 sense key: NOT READY (2) asc: 3a ascq: 1 (K3bDevice::Device) /dev/sr2: GET PERFORMANCE with real length 2048 failed. (K3bDevice::Device) /dev/sr2: Number of supported write speeds via 2A: 0 (K3bDevice::DeviceManager) setting current write speed of device /dev/sr2 to 0 Could not resolve /dev/scd2 /dev/scd2 resolved to /dev/scd2 (K3bDevice::Device) could not open device /dev/scd2 for reading (No such file or directory) could not open device /dev/scd2 (No such file or directory) /dev/sr1 resolved to /dev/sr1 /dev/sr1 is block device (1) /dev/sr1 seems to be cdrom bus: 5, id: 0, lun: 0 (K3bDevice::Device) /dev/sr1: init() (K3bDevice::ScsiCommand) failed: command: MODE SENSE (5a) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::Device) /dev/sr1: MODE SENSE length det failed. (K3bDevice::ScsiCommand) failed: command: MODE SENSE (5a) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::Device) /dev/sr1: MODE SENSE with real length 65535 failed. (K3bDevice::Device) /dev/sr1: modeSense 0x05 failed! (K3bDevice::Device) /dev/sr1: Cannot check write modes. (K3bDevice::ScsiCommand) failed: command: MODE SENSE (5a) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::Device) /dev/sr1: MODE SENSE length det failed. (K3bDevice::ScsiCommand) failed: command: MODE SENSE (5a) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::Device) /dev/sr1: MODE SENSE with real length 65535 failed. Could not resolve /dev/scd1 /dev/scd1 resolved to /dev/scd1 (K3bDevice::Device) could not open device /dev/scd1 for reading (No such file or directory) could not open device /dev/scd1 (No such file or directory) /dev/sr0 resolved to /dev/sr0 /dev/sr0 is block device (0) /dev/sr0 seems to be cdrom bus: 4, id: 0, lun: 0 (K3bDevice::Device) /dev/sr0: init() (K3bDevice::Device) /dev/sr0 feature: CD Mastering (K3bDevice::Device) /dev/sr0 feature: CD Track At Once (K3bDevice::Device) /dev/sr0 feature: CD-RW Media Write Support (K3bDevice::Device) /dev/sr0 feature: DVD+R (K3bDevice::Device) /dev/sr0 feature: DVD+RW (K3bDevice::Device) /dev/sr0 feature: DVD+R Double Layer (K3bDevice::Device) /dev/sr0 feature: DVD-R/-RW Write (K3bDevice::Device) /dev/sr0 feature: Rigid Restricted Overwrite (K3bDevice::Device) /dev/sr0 unknown profile: 2 (K3bDevice::Device) /dev/sr0: dataLen: 60 (K3bDevice::Device) /dev/sr0: checking for TAO (K3bDevice::Device) /dev/sr0: checking for SAO (K3bDevice::Device) /dev/sr0: checking for SAO_R96P (K3bDevice::Device) /dev/sr0: checking for SAO_R96R (K3bDevice::Device) /dev/sr0: checking for RAW_R16 (K3bDevice::Device) /dev/sr0: checking for RAW_R96P (K3bDevice::Device) /dev/sr0: checking for RAW_R96R (K3bDevice::DeviceManager) setting current write speed of device /dev/sr0 to 7056 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) (K3bDevice::DeviceManager) SCANNING FOR GENERIC DEVICES. (K3bDevice::Device) could not open device /dev/sg0 for reading (Permission denied) (K3bDevice::Device) could not open device /dev/sg1 for reading (Permission denied) bus: 4, id: 0, lun: 0 bus: 5, id: 0, lun: 0 bus: 5, id: 1, lun: 0 Could not resolve /dev/sg5 (K3bDevice::Device) could not open device /dev/sg5 for reading (No such file or directory) Could not resolve /dev/sg6 (K3bDevice::Device) could not open device /dev/sg6 for reading (No such file or directory) Could not resolve /dev/sg7 (K3bDevice::Device) could not open device /dev/sg7 for reading (No such file or directory) Could not resolve /dev/sg8 (K3bDevice::Device) could not open device /dev/sg8 for reading (No such file or directory) Could not resolve /dev/sg9 (K3bDevice::Device) could not open device /dev/sg9 for reading (No such file or directory) Could not resolve /dev/sg10 (K3bDevice::Device) could not open device /dev/sg10 for reading (No such file or directory) Could not resolve /dev/sg11 (K3bDevice::Device) could not open device /dev/sg11 for reading (No such file or directory) Could not resolve /dev/sg12 (K3bDevice::Device) could not open device /dev/sg12 for reading (No such file or directory) Could not resolve /dev/sg13 (K3bDevice::Device) could not open device /dev/sg13 for reading (No such file or directory) Could not resolve /dev/sg14 (K3bDevice::Device) could not open device /dev/sg14 for reading (No such file or directory) Could not resolve /dev/sg15 (K3bDevice::Device) could not open device /dev/sg15 for reading (No such file or directory) /dev/sr2 resolved to /dev/sr2 (K3bDevice::DeviceManager) dev /dev/sr2 already found /dev/sr1 resolved to /dev/sr1 (K3bDevice::DeviceManager) dev /dev/sr1 already found /dev/sr0 resolved to /dev/sr0 (K3bDevice::DeviceManager) dev /dev/sr0 already found (K3bDevice::DeviceManager) found config entry for devicetype: HL-DT-ST CD-RW GCE-8520B (K3bDevice::DeviceManager) found config entry for devicetype: TOSHIBA DVD-ROM SD-M1712 (K3bDevice::DeviceManager) found config entry for devicetype: HL-DT-ST DVDRAM GSA-4163B 0 - 01001111 - 79 1 - 00111011 - 59 2 - 01000110 - 70 /dev/sr0: ATIP capacity: 79:57:70 (K3bDevice::Device) READ CAPACITY: 71:43:41 other capacity: 79:57:70 DiskInfo: Mediatype: CD-R Current Profile: CD-R Disk state: complete Empty: 0 Rewritable: 0 Appendable: 0 Sessions: 1 Tracks: 1 Layers: 1 Capacity: 79:57:70 (LBA 359845) (736962560 Bytes) Remaining size: 00:00:00 (LBA 0) (0 Bytes) Used Size: 71:43:42 (LBA 322767) (661026816 Bytes) Devices: ------------------------------ Blockdevice: /dev/sr2 Generic device: /dev/sg4 Vendor: HL-DT-ST Description: CD-RW GCE-8520B Version: 1.00 Write speed: 9450 Profiles: CD-ROM, CD-R, CD-RW Read Cap: CD-ROM, CD-R, CD-RW Write Cap: CD-R, CD-RW Writing modes: SAO, TAO, RAW, SAO/R96P, SAO/R96R, RAW/R16, RAW/R96P, RAW/R96R Reader aliases: /dev/sr2 ------------------------------ Blockdevice: /dev/sr1 Generic device: /dev/sg3 Vendor: TOSHIBA Description: DVD-ROM SD-M1712 Version: J004 Write speed: 0 Profiles: DVD-ROM, CD-ROM Read Cap: DVD-ROM, CD-ROM Write Cap: Error Writing modes: None Reader aliases: /dev/sr1 ------------------------------ Blockdevice: /dev/sr0 Generic device: /dev/sg2 Vendor: HL-DT-ST Description: DVDRAM GSA-4163B Version: A103 Write speed: 3324 Profiles: DVD-ROM, DVD-R Sequential, DVD-RAM, DVD-RW Restricted Overwrite, DVD-RW Sequential, DVD+RW, DVD+R, DVD+R Dual Layer, CD-ROM, CD-R, CD-RW Read Cap: DVD-ROM, DVD-R, DVD-R Sequential, DVD-RW, DVD-RW Restricted Overwrite, DVD-RW Sequential, DVD+RW, DVD+R, DVD+R Dual Layer, CD-ROM, CD-R, CD-RW Write Cap: DVD-R, DVD-R Sequential, DVD-RW, DVD-RW Restricted Overwrite, DVD-RW Sequential, DVD+RW, DVD+R, DVD+R Dual Layer, CD-R, CD-RW Writing modes: SAO, TAO, RAW, SAO/R96P, SAO/R96R, RAW/R16, RAW/R96P, RAW/R96R, Restricted Overwrite Reader aliases: /dev/sr0 ------------------------------ Session | ADR | CONTROL| TNO | POINT | Min | Sec | Frame | Zero | PMIN | PSEC | PFRAME | 1 | 1 | 4 | 0 | a0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | 4 | 0 | a1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | 4 | 0 | a2 | 0 | 0 | 0 | 0 | 71 | 45 | 42 | 1 | 1 | 4 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | (K3bDevice::Device) found invalid bcd values. No bcd toc. kdecore (KAction): WARNING: KActionCollection::operator+=(): function is severely deprecated. [amnon@amnonspc:~]$ /dev/sr0: setting last sector of last track to 322766 (K3bDevice::Device) /dev/sr0: Number of supported write speeds via 2A: 6 (K3bDevice::Device) /dev/sr0 : 7056 KB/s (K3bDevice::Device) /dev/sr0 : 5645 KB/s (K3bDevice::Device) /dev/sr0 : 4234 KB/s (K3bDevice::Device) /dev/sr0 : 2822 KB/s (K3bDevice::Device) /dev/sr0 : 1411 KB/s (K3bDevice::Device) /dev/sr0 : 706 KB/s How do I get the kde-crash-dialog. I tried with "k3b > bugprintout.log" but the .log-file was empty. k3b --version Qt: 3.3.8 KDE: 3.5.7 K3b: 1.0.2 uname -r > Linux amnonspc 2.6.21.5-paldo1 #1 SMP PREEMPT Tue Jun 12 11:09:21 CEST 2007 i686 GNU/Linux Here is my bug-report. Seems it has the same problem: https://bugs.kde.org/show_bug.cgi?id=147663 When I put an empty dvd-medium into the drive, my system crashes. I reinstalled 1.0.1 for the moment. Although your bug report contains all the information I should need to fix the problem (if only all reports were as good as yours) I am very confused by the crash. From how I understand my own code it should not happen. Well, that of course is nonesense so I need your help to track the problem down. Could you please apply the attached patch to the K3b 1.0.2 sources and make it crash again. I added commandline output to help me figure out at which point what goes wrong. Created attachment 21191 [details]
More output
OK ... so i patched the source an compiled k3b from sources (without i18n). Now it won't crash anymore. I don't know if i should be happy now. It seems that there must be some weired stuff in the Debian-Package(s). But where to search? Anyway ... here's the output of the patched k3b startup: ,-------------------------------------------------------- martin@martin:~$ k3b martin@martin:~$ kdecore (KAction): WARNING: KActionCollection::KActionCollection( QObject *parent, const char *name, KInstance *instance ) k3b: (K3bCdrecordProgram) could not start /opt/schily/bin k3b: (K3bMkisofsProgram) could not start /opt/schily/bin k3b: (K3bExternalBinManager) Cdrecord 1.1.6 features: wodim, gracetime, overburn, cdtext, clone, tao, cuefile, xamix, suidroot, plain-atapi, hacked-atapi, short-track-raw, audio-stdin, burnfree /dev/hdd resolved to /dev/hdd /dev/hdd is block device (64) /dev/hdd seems to be cdrom (K3bDevice::Device) /dev/hdd: init() (K3bDevice::ScsiCommand) failed: command: GET CONFIGURATION (46) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::ScsiCommand) failed: command: GET CONFIGURATION (46) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::ScsiCommand) failed: command: GET CONFIGURATION (46) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::ScsiCommand) failed: command: GET CONFIGURATION (46) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::ScsiCommand) failed: command: GET CONFIGURATION (46) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::ScsiCommand) failed: command: GET CONFIGURATION (46) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::ScsiCommand) failed: command: GET CONFIGURATION (46) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::ScsiCommand) failed: command: GET CONFIGURATION (46) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::ScsiCommand) failed: command: GET CONFIGURATION (46) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::ScsiCommand) failed: command: GET CONFIGURATION (46) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::ScsiCommand) failed: command: GET CONFIGURATION (46) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::ScsiCommand) failed: command: GET CONFIGURATION (46) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::ScsiCommand) failed: command: MODE SENSE (5a) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::Device) /dev/hdd: MODE SENSE length det failed. (K3bDevice::ScsiCommand) failed: command: MODE SENSE (5a) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::Device) /dev/hdd: MODE SENSE with real length 65535 failed. (K3bDevice::Device) /dev/hdd: modeSense 0x05 failed! (K3bDevice::Device) /dev/hdd: Cannot check write modes. (K3bDevice::ScsiCommand) failed: command: MODE SENSE (5a) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::Device) /dev/hdd: MODE SENSE length det failed. (K3bDevice::ScsiCommand) failed: command: MODE SENSE (5a) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 24 ascq: 0 (K3bDevice::Device) /dev/hdd: MODE SENSE with real length 65535 failed. /dev/hdc resolved to /dev/hdc /dev/hdc is block device (0) /dev/hdc seems to be cdrom (K3bDevice::Device) /dev/hdc: init() (K3bDevice::Device) /dev/hdc feature: CD Mastering (K3bDevice::Device) /dev/hdc feature: CD Track At Once (K3bDevice::Device) /dev/hdc: dataLen: 64 (K3bDevice::Device) /dev/hdc: checking for TAO (K3bDevice::Device) /dev/hdc: checking for SAO (K3bDevice::Device) /dev/hdc: checking for SAO_R96P (K3bDevice::Device) /dev/hdc: checking for SAO_R96R (K3bDevice::Device) /dev/hdc: checking for RAW_R16 (K3bDevice::ScsiCommand) failed: command: MODE SELECT (55) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 26 ascq: 2 (K3bDevice::Device) /dev/hdc: checking for RAW_R96P (K3bDevice::ScsiCommand) failed: command: MODE SELECT (55) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 26 ascq: 2 (K3bDevice::Device) /dev/hdc: checking for RAW_R96R (K3bDevice::Device) /dev/hdc: Number of supported write speeds via 2A: 1 (K3bDevice::Device) /dev/hdc : 4233 KB/s (K3bDevice::DeviceManager) setting current write speed of device /dev/hdc to 3324 /dev/hdb resolved to /dev/hdb /dev/hdb is block device (64) /dev/hdb seems to be cdrom (K3bDevice::Device) /dev/hdb: init() (K3bDevice::Device) /dev/hdb feature: CD Mastering (K3bDevice::Device) /dev/hdb feature: CD Track At Once (K3bDevice::Device) /dev/hdb feature: DVD Read (MMC5) (K3bDevice::Device) /dev/hdb feature: DVD+R (K3bDevice::Device) /dev/hdb feature: DVD+RW (K3bDevice::Device) /dev/hdb feature: DVD+R Double Layer (K3bDevice::Device) /dev/hdb feature: DVD-R/-RW Write (K3bDevice::Device) /dev/hdb feature: Rigid Restricted Overwrite (K3bDevice::Device) /dev/hdb feature: Layer Jump Recording (K3bDevice::Device) /dev/hdb: dataLen: 60 (K3bDevice::Device) /dev/hdb: checking for TAO (K3bDevice::Device) /dev/hdb: checking for SAO (K3bDevice::Device) /dev/hdb: checking for SAO_R96P (K3bDevice::ScsiCommand) failed: command: MODE SELECT (55) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 26 ascq: 0 (K3bDevice::Device) /dev/hdb: checking for SAO_R96R (K3bDevice::Device) /dev/hdb: checking for RAW_R16 (K3bDevice::Device) /dev/hdb: checking for RAW_R96P (K3bDevice::ScsiCommand) failed: command: MODE SELECT (55) errorcode: 70 sense key: ILLEGAL REQUEST (5) asc: 26 ascq: 0 (K3bDevice::Device) /dev/hdb: checking for RAW_R96R (K3bDevice::Device) /dev/hdb: doing GET PERFORMANCE with dataLen = 120 (K3bDevice::Device) /dev/hdb: GET PERFORMANCE successful with reported length: 116 (K3bDevice::Device) /dev/hdb: Number of supported write speeds via GET PERFORMANCE: 7 (K3bDevice::Device) /dev/hdb : 8466 KB/s (K3bDevice::Device) /dev/hdb : 7056 KB/s (K3bDevice::Device) /dev/hdb : 5645 KB/s (K3bDevice::Device) /dev/hdb : 4234 KB/s (K3bDevice::Device) /dev/hdb : 2822 KB/s (K3bDevice::Device) /dev/hdb : 2117 KB/s (K3bDevice::Device) /dev/hdb : 1411 KB/s (K3bDevice::DeviceManager) setting current write speed of device /dev/hdb to 3324 (K3bDevice::DeviceManager) SCANNING FOR GENERIC DEVICES. Could not resolve /dev/sg0 (K3bDevice::Device) could not open device /dev/sg0 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg1 (K3bDevice::Device) could not open device /dev/sg1 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg2 (K3bDevice::Device) could not open device /dev/sg2 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg3 (K3bDevice::Device) could not open device /dev/sg3 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg4 (K3bDevice::Device) could not open device /dev/sg4 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg5 (K3bDevice::Device) could not open device /dev/sg5 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg6 (K3bDevice::Device) could not open device /dev/sg6 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg7 (K3bDevice::Device) could not open device /dev/sg7 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg8 (K3bDevice::Device) could not open device /dev/sg8 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg9 (K3bDevice::Device) could not open device /dev/sg9 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg10 (K3bDevice::Device) could not open device /dev/sg10 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg11 (K3bDevice::Device) could not open device /dev/sg11 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg12 (K3bDevice::Device) could not open device /dev/sg12 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg13 (K3bDevice::Device) could not open device /dev/sg13 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg14 (K3bDevice::Device) could not open device /dev/sg14 for reading (Datei oder Verzeichnis nicht gefunden) Could not resolve /dev/sg15 (K3bDevice::Device) could not open device /dev/sg15 for reading (Datei oder Verzeichnis nicht gefunden) k3b: [void K3bMediaCache::clearDeviceList()] /dev/hdd resolved to /dev/hdd (K3bDevice::DeviceManager) dev /dev/hdd already found /dev/hdc resolved to /dev/hdc (K3bDevice::DeviceManager) dev /dev/hdc already found /dev/hdb resolved to /dev/hdb (K3bDevice::DeviceManager) dev /dev/hdb already found (K3bDevice::DeviceManager) found config entry for devicetype: LG DVD-ROM DRD8160B (K3bDevice::DeviceManager) found config entry for devicetype: YAMAHA CRW3200E (K3bDevice::DeviceManager) found config entry for devicetype: BENQ DVD DD DW1650 k3b: (K3bCdrecordProgram) could not start /opt/schily/bin k3b: (K3bMkisofsProgram) could not start /opt/schily/bin k3b: (K3bExternalBinManager) Cdrecord 1.1.6 features: wodim, gracetime, overburn, cdtext, clone, tao, cuefile, xamix, suidroot, plain-atapi, hacked-atapi, short-track-raw, audio-stdin, burnfree Devices: ------------------------------ Blockdevice: /dev/hdd Generic device: Vendor: LG Description: DVD-ROM DRD8160B Version: 1.00 Write speed: 0 Profiles: DVD-ROM, CD-ROM Read Cap: DVD-ROM, CD-ROM Write Cap: Error Writing modes: None Reader aliases: /dev/hdd ------------------------------ Blockdevice: /dev/hdc Generic device: Vendor: YAMAHA Description: CRW3200E Version: 1.0b Write speed: 4233 Profiles: CD-ROM, CD-R, CD-RW Read Cap: CD-ROM, CD-R, CD-RW Write Cap: CD-R, CD-RW Writing modes: SAO, TAO, RAW, SAO/R96P, SAO/R96R, RAW/R96R Reader aliases: /dev/hdc ------------------------------ Blockdevice: /dev/hdb Generic device: Vendor: BENQ Description: DVD DD DW1650 Version: BCAC Write speed: 16620 Profiles: DVD-ROM, DVD-R Sequential, DVD-R Dual Layer Sequential, DVD-R Dual Layer Jump, DVD-RW Restricted Overwrite, DVD-RW Sequential, DVD+RW, DVD+R, DVD+R Dual Layer, CD-ROM, CD-R, CD-RW Read Cap: DVD-ROM, DVD-R, DVD-R Sequential, DVD-R Dual Layer, DVD-R Dual Layer Sequential, DVD-R Dual Layer Jump, DVD-RW, DVD-RW Restricted Overwrite, DVD-RW Sequential, DVD+RW, DVD+R, DVD+RW Dual Layer, DVD+R Dual Layer, CD-ROM, CD-R, CD-RW Write Cap: DVD-R, DVD-R Sequential, DVD-R Dual Layer, DVD-R Dual Layer Sequential, DVD-R Dual Layer Jump, DVD-RW, DVD-RW Restricted Overwrite, DVD-RW Sequential, DVD+RW, DVD+R, DVD+R Dual Layer, CD-R, CD-RW Writing modes: SAO, TAO, RAW, SAO/R96R, RAW/R16, RAW/R96R, Restricted Overwrite, Layer Jump Reader aliases: /dev/hdb ------------------------------ kdecore (KAction): WARNING: KActionCollection::operator+=(): function is severely deprecated. k3b: (K3bFileTreeView::addCdDeviceBranches) k3b: (K3bFileTreeView::addCdDeviceBranches) done k3b: (K3bFileTreeView::addCdDeviceBranches) k3b: (K3bFileTreeView::addCdDeviceBranches) done k3b: WARNING: Pixmap not found for mimetype inode/directory k3b: WARNING: Pixmap not found for mimetype inode/directory k3b: WARNING: Pixmap not found for mimetype inode/directory k3b: [void K3bMediaCache::clearDeviceList()] k3b: [void K3bMediaCache::clearDeviceList()] waiting for info thread /dev/hdb to finish k3b: [void K3bMediaCache::clearDeviceList()] waiting for info thread /dev/hdd to finish k3b: [void K3bMediaCache::clearDeviceList()] waiting for info thread /dev/hdc to finish k3b: Waiting for thread 0x8282128 k3b: Thread waiting done. k3b: [void K3bMediaCache::clearDeviceList()] `------------------------------------------------- Maybe there's some useful stuff for you. Nice, that means that the following part of th patch fixes the problem: - if( (dataLen-8) % descLen || dataLen <= 8 ) + if( (dataLen-8) % descLen || dataLen <= 8 ) { + // same reason as above + return false; dataLen = 2048; + } That is very good. K3b 1.0.3 will include the fix and, thus, fix your problem. Thanks a lot! SVN commit 690627 by trueg: Never perform GET PEFORMANCE with a guessed length. BUG: 147676 M +17 -21 k3bdevice_mmc.cpp --- branches/extragear/kde3/multimedia/k3b/libk3bdevice/k3bdevice_mmc.cpp #690626:690627 @@ -198,33 +198,29 @@ cmd[9] = 1; // first we read one descriptor cmd[10] = type; cmd[11] = 0; // Necessary to set the proper command length - if( cmd.transport( TR_DIR_READ, header, 8 ) == 0 ) { - // again with real length - dataLen = from4Byte( header ) + 4; + if( cmd.transport( TR_DIR_READ, header, 8 ) ) { + k3bDebug() << "(K3bDevice::Device) " << blockDeviceName() + << ": GET PERFORMANCE length det failed." << endl; + return false; + } - // At least one Panasonic drive returns gigantic changing numbers for the data length - // which makes K3b crash below when *data cannot be allocated. That's why we cut the - // length here. - // FIXME: 2048 is a proper upper boundary for the write speed but not for all - // return types. "Defect Status Data" for example might return way more data. - // FIXME: I added a "return false" here since there was a situation in which this method - // returned a gigantic dataLen even with this cut. So there is still some bug here. - // Since we only use getPerformance for writing speeds and without a proper length - // those do not make sense it is better to fail here anyway. - if( dataLen > 2048 ) { + dataLen = from4Byte( header ) + 4; + + // At least one Panasonic drive returns gigantic changing numbers for the data length + // which makes K3b crash below when *data cannot be allocated. That's why we cut the + // length here. + // FIXME: 2048 is a proper upper boundary for the write speed but not for all + // return types. "Defect Status Data" for example might return way more data. + // FIXME: Since we only use getPerformance for writing speeds and without a proper length + // those do not make sense it is better to fail here anyway. + if( (dataLen-8) % descLen || + dataLen <= 8 || + dataLen > 2048 ) { k3bDebug() << "(K3bDevice::Device) " << blockDeviceName() << ": GET PERFORMANCE reports bogus dataLen: " << dataLen << endl; return false; - dataLen = 2048; - } } - else - k3bDebug() << "(K3bDevice::Device) " << blockDeviceName() - << ": GET PERFORMANCE length det failed." << endl; - if( (dataLen-8) % descLen || dataLen <= 8 ) - dataLen = 2048; - *data = new unsigned char[dataLen]; ::memset( *data, 0, dataLen ); I still have the problem with the latest version K3b 1.0.3 KDEmod 3.5.7 (K3bDevice::Device) /dev/sr0: init() (K3bDevice::Device) /dev/sr0 feature: CD Mastering (K3bDevice::Device) /dev/sr0 feature: CD Track At Once (K3bDevice::Device) /dev/sr0 feature: CD-RW Media Write Support (K3bDevice::Device) /dev/sr0 feature: DVD Read (MMC5) (K3bDevice::Device) /dev/sr0 feature: DVD+R (K3bDevice::Device) /dev/sr0 feature: DVD+RW (K3bDevice::Device) /dev/sr0 feature: DVD+R Double Layer (K3bDevice::Device) /dev/sr0 feature: DVD-R/-RW Write (K3bDevice::Device) /dev/sr0 feature: Rigid Restricted Overwrite (K3bDevice::Device) /dev/sr0 feature: Layer Jump Recording (K3bDevice::Device) /dev/sr0: dataLen: 60 (K3bDevice::Device) /dev/sr0: checking for TAO (K3bDevice::Device) /dev/sr0: checking for SAO (K3bDevice::Device) /dev/sr0: checking for SAO_R96P (K3bDevice::Device) /dev/sr0: checking for SAO_R96R (K3bDevice::Device) /dev/sr0: checking for RAW_R16 (K3bDevice::Device) /dev/sr0: checking for RAW_R96P (K3bDevice::Device) /dev/sr0: checking for RAW_R96R (K3bDevice::ScsiCommand) failed: command: GET PERFORMANCE (ac) errorcode: 0 sense key: NO SENSE (2) asc: 0 ascq: 0 |