Date: Thu, 29 Nov 2001 00:04:04 -0800 From: Peter Wemm <peter@wemm.org> To: Christoph Herrmann <C.Herrmann@science-computing.de> Cc: current@FreeBSD.ORG Subject: Re: cdrecord produces broken CDs on -CURRENT: The Answer ! Message-ID: <20011129080404.5DC613808@overcee.netplex.com.au> In-Reply-To: <Pine.BSF.4.21.0111281532210.59797-100000@scmsrv1.science-computing.de>
next in thread | previous in thread | raw e-mail | index | archive | help
Christoph Herrmann wrote: > > The Problem was the use of vfs.ioopt=2 ! > As long as vfs.ioopt is 1 or 2 the CDs are broken and with > vfs.ioopt=0 the CDs are o.k. > > I didn't see any other problems with the use of vfs.ioopt=2, > especially no Filesystem corruption :-). Are there other known > problems withs vfs.ioopt != 0 ? Yes, it breaks read(2) semantics totally. With a traditional system, if you read something into your buffer, it never changes. With vfs.ioopt >= 1, that read may be turned into a mmap() if the conditions are right. Specifically, if you are doing a page aligned read of one or more pages, your original page will be released and you will get a copy-on-write page mapped in. The problem with that is that it is copy-on-write for *you*, not everybody else. If somebody else subsequently changes the file, your buffer will automagically change. This is why it is off. The NFS zerocopy patches made some changes to the VM and buffer system to fix this. It was pretty simple to fix if I recall correctly. Cheers, -Peter -- Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au "All of this is for nothing if we don't go to the stars" - JMS/B5 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011129080404.5DC613808>