From owner-freebsd-current@FreeBSD.ORG Thu Dec 25 09:36:24 2003 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 009FB16A4CE for ; Thu, 25 Dec 2003 09:36:23 -0800 (PST) Received: from hood.oook.cz (hood.oook.cz [212.27.205.50]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0AE4D43D1F for ; Thu, 25 Dec 2003 09:36:20 -0800 (PST) (envelope-from pav@FreeBSD.org) Received: from hood.oook.cz (localhost.oook.cz [127.0.0.1]) by hood.oook.cz (8.12.10/8.12.10) with ESMTP id hBPHaIQM005192 for ; Thu, 25 Dec 2003 18:36:18 +0100 (CET) (envelope-from pav@FreeBSD.org) Received: (from pav@localhost) by hood.oook.cz (8.12.10/8.12.10/Submit) id hBPHaHXd005181 for freebsd-current@freebsd.org; Thu, 25 Dec 2003 18:36:17 +0100 (CET) (envelope-from pav@FreeBSD.org) X-Authentication-Warning: hood.oook.cz: pav set sender to pav@FreeBSD.org using -f From: Pav Lucistnik To: freebsd-current@FreeBSD.org Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="=-dWc8lOX1WUyoY7ARRXp5" Message-Id: <1072373777.25855.2.camel@hood.oook.cz> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.4.5 Date: Thu, 25 Dec 2003 18:36:17 +0100 Subject: dvd+rw-tools-5.15.4.8.5 and FreeBSD 5-current X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: pav@FreeBSD.org List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 Dec 2003 17:36:24 -0000 --=-dWc8lOX1WUyoY7ARRXp5 Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Forwarding this from -ports to -current, because more kernel wizards are lurking here. If anyone can look into this - if we can't solve this, no one is going to burn a single CD on 5.2 system... From: Andy Polyakov To: chuck@pkix.net, ports@freebsd.org Cc: pav@freebsd.org Subject: dvd+rw-tools-5.15.4.8.5 and FreeBSD 5-current Date: Tue, 23 Dec 2003 21:38:23 +0100 Folks, It was brought to my attention that growisofs, principal burning utility from dvd+rw-tools, fails to fulfill DVD recording under FreeBSD 5-current. In the course of trouble-shooting it became apparent that the failure is cased by kernel bug, reportedly introduced with "ATAng commit." The kernel deficiency manifests itself by failure to automatically pull sense data for failed ATAPI command, when application most expects it to (as CAM_DIS_AUTOSENSE flag is *not* set). It was possible to work around the bug by explicitly checking for CAM_AUTOSNS_VALID status flag and "manually" pulling the sense data with REQUEST SENSE command. Thanks to Pav Lucistnik for working with me on this. The workaround is incorporated to dvd+rw-tools-5.15.4.8.5 update, which is available for immediate download at usual location, http://fy.chalmers.se/~appro/linux/DVD+RW/tools/. Even though workaround is available, it doesn't change the fact that there is a kernel bug, which needs to be fixed. Well, one can argue if it's a bug or feature, but the truth is that it doesn't affect dvd+rw-tools only. Source code examination makes me conclude that at least cd-write, cdrdao and cdrecord are affected as well. All three apparently rely on kernel ability to pull sense data for failed command automatically. One can wonder why it was not noticed and fixed so far? ATAng is available for several months now, right? One possible explanation might be that one can actually say that growisofs fails more often. How come? There're few command MMC commands which come it two flavors, "synchronous" and "immedidate." "Immediate" commands merely initiate requested procedure and immediately return to requestor (therefore the name:-), *implying* that requestor will periodically poll the logical unit in order to find out when the requested procedure actually finishes. Polling is normally done with TEST UNIT READY command which is *bound* to fail while procedure in question progresses. Now the catch is that unlike other programs dvd+rw-tools *extensively* use these "immediate" commands in order to minimize the periods of IDE-bus monopolization. So that in a sense one can say that growisofs is *bound* to fail, yet it doesn't mean that recording was unsuccessful! Other programs surely failed too, e.g. because of media defect, but such failures are rare and intermittent and users could have silently tolerated them as the problem just disappears if they retry. Season greetings to everybody. A. --=20 Pav Lucistnik Can't sing. Can't dance. Can handle a sword a little. --=-dWc8lOX1WUyoY7ARRXp5 Content-Type: application/pgp-signature; name=signature.asc Content-Description: Toto je =?iso-8859-2?Q?digit=E1ln=EC?= =?ISO-8859-1?Q?_podepsan=E1?= =?iso-8859-2?Q?_=E8=E1st?= =?ISO-8859-1?Q?_zpr=E1vy?= -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.3 (FreeBSD) iD8DBQA/6yARntdYP8FOsoIRAtbRAKCjhs1akrfcUB3MWGCSXksRU6O4oQCeOdR9 BQRnTnUZyw/suzvU9LxCoL8= =11Jc -----END PGP SIGNATURE----- --=-dWc8lOX1WUyoY7ARRXp5--