From owner-cvs-all Sun Oct 29 23: 3: 6 2000 Delivered-To: cvs-all@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 45FD437B4C5; Sun, 29 Oct 2000 23:03:03 -0800 (PST) Received: (from ken@localhost) by freefall.freebsd.org (8.9.3/8.9.2) id XAA12639; Sun, 29 Oct 2000 23:03:03 -0800 (PST) (envelope-from ken@FreeBSD.org) Message-Id: <200010300703.XAA12639@freefall.freebsd.org> From: Kenneth Merry Date: Sun, 29 Oct 2000 23:03:02 -0800 (PST) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/kern subr_diskslice.c src/sys/sys diskslice.h src/sys/cam/scsi scsi_cd.c X-FreeBSD-CVS-Branch: HEAD Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG ken 2000/10/29 23:03:02 PST Modified files: sys/kern subr_diskslice.c sys/sys diskslice.h sys/cam/scsi scsi_cd.c Log: Write support for the cd(4) driver. This allows writing to DVD-RAM, PD and similar drives that probe as CD devices. Note that these are randomly writeable devices, not sequential-only devices like CD-R drives, which are supported by cdrecord. Add a new flag value for dsopen(), DSO_COMPATLABEL. The cd(4) driver now uses this flag instead of the DSO_NOLABELS flag. The DSO_NOLABELS always used a "fake" disklabel for the entire disk, provided by the caller. With the DSO_COMPATLABEL flag, dsopen() will first search the media for a label, and if it finds a label, it will use that label. Otherwise it will use the fake disklabel provided by the caller. This provides backwards compatibility, since we will still have labels for ISO9660 media. It also provides new functionality, since you can now have a regular BSD disklabel on read-only media, or on writeable media (e.g. DVD-RAM). Bruce and I both think that we should eventually (in a few years) get away from using disklabels for ISO9660 media, and just use the whole disk device (/dev/cd0). At that point disklabel handling in the cd(4) driver could follow the "normal" model, as used in the da(4) driver. Also, clean up the path in a couple of places in cdregister(). (Thanks to Nick Hibma for catching that bug.) Reviewed by: bde Revision Changes Path 1.92 +22 -2 src/sys/kern/subr_diskslice.c 1.40 +2 -1 src/sys/sys/diskslice.h 1.42 +5 -3 src/sys/cam/scsi/scsi_cd.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message