Description of problem: I have an LG GSA-5120D external USB dvd burner attached to my FC3 system (2.6.11-1.14_FC3). I am unable to burn DVDs or CDs with this drive. This drive, cable and system work great with windows and RH9. The drive and cable work great with other systems as well. The system and cable work fine with a SONY DVD burner as well so the problem is specific to support for this burner. Please note that I have bug 157311 open which is related _but_ is a different problem. 157311 addresses the fact that when a DVD burn fails over usb, my firewire attached drive gets knocked out until reboot. I also have 156155 open which is related but also a different issue. 156155 is similar to 157311 in that when both the hard drive and LG 5120D burner are firewire connected, the hard drive gets knocked out until reboot. I do not believe this is a cdrecord problem because growisofs also has problems writing DVDs. cdrecord -scanbus sees the drive and cdrecord -checkdrive gets a scsi sendcmd error shown below. cdrecord -blank=all fails with: kernel: SCSI error : <0 0 0 0> return code = 0x70000 last message repeated 6 times last message repeated 9 times kernel: usb 1-3: reset high speed USB device using ehci_hcd and address 3 kernel: sr0: CDROM (ioctl) error, command: <6>Test Unit Ready 00 00 00 00 00 00 kernel: Unrecognized sense data (in hex): kernel: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 kernel: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Version-Release number of selected component (if applicable): 2.6.11-1.14_FC3 How reproducible: Always Steps to Reproduce: 1. insert rewritable cd-rw 2. issue cdrecord -v -dev=0,0,0 -blank=all 3. watch cdrecord fail and sometimes segfault. Actual results: cdrecord fails with "cdrecord: Input/output error. read buffer: scsi sendcmd: retryable error" Expected results: cdrecord works! Additional info: [root@garnetd600 ~]# cat /proc/scsi/scsi Attached devices: Host: scsi1 Channel: 00 Id: 00 Lun: 00 Vendor: DMI Model: SAMSUNG SV0602H Rev: 4.38 Type: Direct-Access ANSI SCSI revision: 02 Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: HL-DT-ST Model: DVDRAM GSA-5120D Rev: A115 Type: CD-ROM ANSI SCSI revision: 02 [root@garnetd600 ~]# cdrecord -scanbus Cdrecord-Clone 2.01-dvd (i686-pc-linux-gnu) Copyright (C) 1995-2004 Jörg Schilling Note: This version is an unofficial (modified) version with DVD support Note: and therefore may have bugs that are not present in the original. Note: Please send bug reports or support requests to http://bugzilla.redhat.com/bugzilla Note: The author of cdrecord should not be bothered with problems in this version. Linux sg driver version: 3.5.27 Using libscg version 'schily-0.8'. cdrecord: Warning: using inofficial libscg transport code version (schily - Red Hat-scsi-linux-sg.c-1.83-RH '@(#)scsi-linux-sg.1.83 04/05/20 Copyright 1997 J. Schilling'). scsibus0: 0,0,0 0) 'HL-DT-ST' 'DVDRAM GSA-5120D' 'A115' Removable CD-ROM 0,1,0 1) * 0,2,0 2) * 0,3,0 3) * 0,4,0 4) * 0,5,0 5) * 0,6,0 6) * 0,7,0 7) * [root@garnetd600 ~]# cdrecord -v -dev=0,0,0 -blank=all Cdrecord-Clone 2.01-dvd (i686-pc-linux-gnu) Copyright (C) 1995-2004 Jörg Schilling Note: This version is an unofficial (modified) version with DVD support Note: and therefore may have bugs that are not present in the original. Note: Please send bug reports or support requests to http://bugzilla.redhat.com/bugzilla Note: The author of cdrecord should not be bothered with problems in this version. TOC Type: 1 = CD-ROM scsidev: '0,0,0' scsibus: 0 target: 0 lun: 0 Linux sg driver version: 3.5.27 Using libscg version 'schily-0.8'. cdrecord: Warning: using inofficial libscg transport code version (schily - Red Hat-scsi-linux-sg.c-1.83-RH '@(#)scsi-linux-sg.1.83 04/05/20 Copyright 1997 J. Schilling'). SCSI buffer size: 64512 atapi: 1 Device type : Removable CD-ROM Version : 0 Response Format: 2 Capabilities : Vendor_info : 'HL-DT-ST' Identifikation : 'DVDRAM GSA-5120D' Revision : 'A115' Device seems to be: Generic mmc2 DVD-R/DVD-RW. Current: 0x000A Profile: 0x0012 Profile: 0x0011 Profile: 0x0014 Profile: 0x0013 Profile: 0x001A Profile: 0x001B Profile: 0x002B Profile: 0x0010 Profile: 0x0009 Profile: 0x000A (current) Profile: 0x0008 Profile: 0x0002 Using generic SCSI-3/mmc CD-R/CD-RW driver (mmc_cdr). Driver flags : MMC-3 SWABAUDIO BURNFREE Supported modes: TAO PACKET SAO SAO/R96P SAO/R96R RAW/R16 RAW/R96P RAW/R96R Drive buf size : 1053696 = 1029 KB cdrecord: Input/output error. read buffer: scsi sendcmd: retryable error CDB: 3C 00 00 00 00 00 00 FC 00 00 status: 0x0 (GOOD STATUS) resid: 64512 cmd finished after 108.071s timeout 40s Current Secsize: 0 resid: 4 resid: 2 resid: 4 resid: 2 ATIP start of lead in: -150 (00:00/00) Disk type: unknown dye (reserved id code) Manuf. index: -1 Manufacturer: unknown (not in table) cdrecord: Warning: controller returns zero sized CD write parameter page. cdrecord: Warning: controller returns wrong size for CD write parameter page. cdrecord: Warning: controller returns wrong page 0 for CD write parameter page (5). cdrecord: Warning: controller returns zero sized CD write parameter page. cdrecord: Warning: controller returns wrong size for CD write parameter page. cdrecord: Warning: controller returns wrong page 0 for CD write parameter page (5). cdrecord: Cannot init drive.
With the help of Alan Stern, I found the source of this problem as well as a workaround. cdrecord 2.01 (FC3) uses the READ_BUFFER command which cdrecord 2.00.3 (RH9) does not. Please see http://sourceforge.net/mailarchive/forum.php?thread_id=7317229&forum_id=5395 for a discussion of this problem. The current generation of LG external DVD burners has a problem with the READ_BUFFER command on transfers greater than 32768 bytes. As per the thread, owners of other drives have similar problems. By feeding cdrecord the -ts=32768 parameter, the problem no longer occurs. So in short, LG burners have a bug/limitation that was only exposed with the newer version of cdrecord. growisofs does not have any problem with these drives, it only appeared to be so because once cdrecord 2.01 has done a READ_BUFFER with > 32768 bytes, the drive is messed up and growisofs doesn't work right either. k3b seems to run cdrecord on startup to check the attached drives so by the time it goes to run growisofs, the drive is in a hosed state. By telling k3b to use -ts=32768, k3b seems to work fine. LG has sold a _lot_ of these drives (especially in asia) and is a fairly mainstream manufacturer. Even though it is a fault/quirk due to the drive itself, it would seem worthwhile if the distro modified /etc/cdrecord.conf on installation when an LG external drive is detected. BTW, I am running the latest LG A115 firmware on this drive for anyone reading this later :-)
An update has been released for Fedora Core 3 (kernel-2.6.12-1.1372_FC3) which may contain a fix for your problem. Please update to this new kernel, and report whether or not it fixes your problem. If you have updated to Fedora Core 4 since this bug was opened, and the problem still occurs with the latest updates for that release, please change the version field of this bug to 'fc4'. Thank you.
This bug has been automatically closed as part of a mass update. It had been in NEEDINFO state since July 2005. If this bug still exists in current errata kernels, please reopen this bug. There are a large number of inactive bugs in the database, and this is the only way to purge them. Thank you.