Date: Thu, 19 Mar 2009 12:21:52 +0100 From: Luigi Rizzo <rizzo@iet.unipi.it> To: Pawel Jakub Dawidek <pjd@FreeBSD.org> Cc: fabio@gandalf.sssup.it, geom@FreeBSD.org, phk@FreeBSD.org, arch@FreeBSD.org, ivan@FreeBSD.org Subject: Re: RFC: adding 'proxy' nodes to provider ports (with patch) Message-ID: <20090319112152.GB38075@onelab2.iet.unipi.it> In-Reply-To: <20090319094505.GA1539@garage.freebsd.pl> References: <20090319081936.GA32750@onelab2.iet.unipi.it> <20090319094505.GA1539@garage.freebsd.pl>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Mar 19, 2009 at 10:45:05AM +0100, Pawel Jakub Dawidek wrote: > On Thu, Mar 19, 2009 at 09:19:36AM +0100, Luigi Rizzo wrote: ... > The one advantage I see for this over using regular GEOM rules is that > new consumers go through proxy automatically. When I was working on > similar functionality I more wanted to do something like this: > > consumer1 consumer2 > \ / > \ / > provider > > Insert the proxy in the middle of any provider-consumer pair: > > consumer1 consumer2 > | | > proxy_provider | > | / > proxy_consumer / > \ / > provider ok this is slightly different from what we have implemented, as we hook into the provider whereas you hook into the consumer. In our case we really need the hook to be in the provider so it intercepts accesses from all consumers, e.g. from /dev/ad0 and from the filesystems mounted on top of it. Given that the geom_disk node does not have a consumer on the bottom, we cannot do it differently. I can imagine that one might want to attach a proxy to a consumer port, but I cannot make a specific case where this would be needed. Also, I wonder how do i name a consumer port in the geom model ?? cheers luigi
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090319112152.GB38075>