From owner-freebsd-hackers Fri Sep 17 16:15:34 1999 Delivered-To: freebsd-hackers@freebsd.org Received: from proxy2.ba.best.com (proxy2.ba.best.com [206.184.139.14]) by hub.freebsd.org (Postfix) with ESMTP id DF80B15AEF for ; Fri, 17 Sep 1999 16:15:29 -0700 (PDT) (envelope-from dillon@apollo.backplane.com) Received: from apollo.backplane.com ([209.157.86.2]) by proxy2.ba.best.com (8.9.3/8.9.2/best.out) with ESMTP id QAA04422 for ; Fri, 17 Sep 1999 16:12:39 -0700 (PDT) Received: (from dillon@localhost) by apollo.backplane.com (8.9.3/8.9.1) id WAA27333; Mon, 13 Sep 1999 22:04:15 -0700 (PDT) (envelope-from dillon) Date: Mon, 13 Sep 1999 22:04:15 -0700 (PDT) From: Matthew Dillon Message-Id: <199909140504.WAA27333@apollo.backplane.com> To: Tony Finch Cc: Tony Finch , hackers@FreeBSD.ORG Subject: Re: mounting a partition more than once References: <199909132116.OAA25920@apollo.backplane.com> Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG :Matthew Dillon wrote: :> :Tony Finch wrote: :... :> :> Hmm... well, there is a problem here. I believe this will allow :> you to open the underlying block device read-only as well as mount :> the filesystem read-only. This will confuse the buffer cache badly. : :I don't think so -- spec_open checks whether the block device has been :mounted in order to prevent this, and I made sure that that check :remains in force except when spec_open is called by ffs_mountfs (by :adding the FMOUNTING flag). I assumed that the buffer cache will :handle multiple read-only mounts because it handles multiple userland :reading file descriptors. Ah, I see it now! :> Also, this may not be the best place to put the code. It make sense :> to be able to mount a block device multiple times in a read-only :> fashion, but the code should be in the open for the block device :> rather then in UFS/FFS, so it can be used with other filesystems :> and for other purposes. : :Yes, it's evident that this is true because I had to hack around :essentially the same test in both spec_open and ffs_mountfs; removing :the checks down from ffs_mountfs so it relies on spec_mount to DTRT :would be neater, I think. : :Tony. :-- :f.a.n.finch dot@dotat.at fanf@demon.net e pluribus unix Yes. I think this is the right track to take. The result will be more useful to the system and probably a cleaner patch as well. -Matt Matthew Dillon To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message