From owner-svn-src-all@FreeBSD.ORG Fri Dec 19 21:20:19 2008 Return-Path: Delivered-To: svn-src-all@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 30B0B106568B; Fri, 19 Dec 2008 21:20:19 +0000 (UTC) (envelope-from sobomax@FreeBSD.org) Received: from sippysoft.com (gk1.360sip.com [72.236.70.240]) by mx1.freebsd.org (Postfix) with ESMTP id ED7348FC2D; Fri, 19 Dec 2008 21:20:18 +0000 (UTC) (envelope-from sobomax@FreeBSD.org) Received: from [192.168.1.38] (S0106001372fd1e07.vs.shawcable.net [70.71.171.106]) (authenticated bits=0) by sippysoft.com (8.13.8/8.13.8) with ESMTP id mBJKqTEJ044823 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 19 Dec 2008 12:52:30 -0800 (PST) (envelope-from sobomax@FreeBSD.org) Message-ID: <494C097C.1020604@FreeBSD.org> Date: Fri, 19 Dec 2008 12:52:12 -0800 From: Maxim Sobolev Organization: Sippy Software, Inc. User-Agent: Thunderbird 2.0.0.18 (Windows/20081105) MIME-Version: 1.0 To: "David E. O'Brien" References: <200812192020.mBJKKEIo081792@svn.freebsd.org> In-Reply-To: <200812192020.mBJKKEIo081792@svn.freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org Subject: Re: svn: head/usr.sbin/burncd X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Dec 2008 21:20:19 -0000 Should not it be better to implement this on the kernel side when the device is closed abruptly? David E. O'Brien wrote: > Author: obrien > Date: Fri Dec 19 20:20:14 2008 > New Revision: 186337 > URL: http://svn.freebsd.org/changeset/base/186337 > > Log: > burncd(8) doesn't handle signals and interrupting burncd during operation. > For example, ^C (SIGINT) may leave the drive spinning and locked. > This may also happen if you try to write a too-large image to a disc > and burncd(8) exits with an I/O error. > > Add signal handling by doing a CDRIOCFLUSH ioctl to attempt to leave > burner in a sane state when burning is interrupted with SIGHUP, SIGINT, > SIGTERM, or in case an I/O error occurs during write. > Note, that blanking will still continue after interrupt but it seems to > finish correctly even after burncd(8) has quit. -Maxim