Date: Thu, 24 Apr 2008 08:20:05 GMT From: Jaakko Heinonen <jh@saunalahti.fi> To: freebsd-bugs@FreeBSD.org Subject: Re: bin/95979: burncd(8) fails to fixate CDs Message-ID: <200804240820.m3O8K5cw093724@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR bin/95979; it has been noted by GNATS. From: Jaakko Heinonen <jh@saunalahti.fi> To: artboreb@yahoo.com, m.apitz@oclcpica.org Cc: bug-followup@FreeBSD.org Subject: Re: bin/95979: burncd(8) fails to fixate CDs Date: Thu, 24 Apr 2008 11:15:35 +0300 --ZGiS0Q5IWpPtfppv Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi, I am getting this too on 7.0-RELEASE with some iso images and with -s max option. I have reproduced the problem with three CD-RW drives: HL-DT-ST GCE-8481B/1.00 (LG) HL-DT-ST GCE-8520B/1.02 (LG) SAMSUNG CD-R/RW SW-216B BS05 20010727/BS05 The attached patch fixes the problem with all these drives. The patch increases the expected fixate time in ata(4). It seems that the current value is not enough for some drives with some burning speed and if the fixation is not completed in the expected time the driver returns an I/O error. The current default is 300 seconds for single speed write and the patch increases it to 420 seconds. (The time is divided by burning speed.) AFAIK cdrecord and wodim use also 420 seconds. Could you try the patch and report if it works for you? -- Jaakko --ZGiS0Q5IWpPtfppv Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="atapi-cd-fixate-timeout.diff" Index: atapi-cd.c =================================================================== RCS file: /home/ncvs/src/sys/dev/ata/atapi-cd.c,v retrieving revision 1.199 diff -p -u -r1.199 atapi-cd.c --- atapi-cd.c 17 Apr 2008 12:29:35 -0000 1.199 +++ atapi-cd.c 21 Apr 2008 15:52:32 -0000 @@ -1064,7 +1064,7 @@ acd_fixate(device_t dev, int multisessio struct acd_softc *cdp = device_get_ivars(dev); int8_t ccb[16] = { ATAPI_CLOSE_TRACK, 0x01, 0x02, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; - int timeout = 5*60*2; + int timeout = 7*60*2; int error, dummy; struct write_param param; --ZGiS0Q5IWpPtfppv--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200804240820.m3O8K5cw093724>