Date: Sat, 21 Mar 2009 00:34:37 +0100 From: Ivan Voras <ivoras@freebsd.org> To: freebsd-geom@freebsd.org Subject: Re: RFC: adding 'proxy' nodes to provider ports (with patch) Message-ID: <gq1975$p1k$1@ger.gmane.org> In-Reply-To: <20090319130137.GB40489__3492.42561865157$1237467521$gmane$org@onelab2.iet.unipi.it> References: <20090319081936.GA32750@onelab2.iet.unipi.it> <b649e5e0903190441m2d511107qd95cb3cd566b11f7@mail.gmail.com> <20090319130137.GB40489__3492.42561865157$1237467521$gmane$org@onelab2.iet.unipi.it>
next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enigBF64D510A73AEB49CE90CB48 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Luigi Rizzo wrote: > On Thu, Mar 19, 2009 at 12:41:13PM +0100, Marius N?nnerich wrote: >> 2009/3/19 Luigi Rizzo <rizzo@iet.unipi.it>: >>> Hi, >>> >>> Fabio Checconi and I have been thinking on how to implement "proxy" >>> geom nodes, i.e. nodes that have exactly 1 provider and 1 consumer >>> port, do not do any data transformation, and can be transparently >>> inserted or removed on top of a provider port while the tree is >>> actively moving data. > ... >>> The idea is to intercept requests coming on a provider port, pp, and >>> redirect them to a geom node acting as a proxy if the port >>> is configured in this way: > ... >> I wonder if it's really necessary to alter the GEOM infrastructure or >> if it is possible to do this with what's there already. Just an idea: >> Lock g_topology, put g_down and g_up to sleep, alter the consumer and >> provider pointers where you need it so the everything is routed >> through your proxy class (which isn't special in any way) and restart >> g_down and g_up. >=20 > we'll look into this, thanks. If we can spare the extra fields > in the g_provider, the thing is even easier to do. >=20 > I just don't know how your suggestion interferes with the naming: > if I change the pointers, the name of a provider will not > be anymore a prefix of the name of the node attached above. > But maybe that is not an architectural requirements but just > a convenient convention. Not only with naming and device creation - the proxy classes cannot be "normal" classes because it's common that "normal" classes do a lot of initialization in .taste. (i.e. there at least needs to be a flag for proxy classes) --------------enigBF64D510A73AEB49CE90CB48 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAknEKBUACgkQldnAQVacBchKhwCg71ft9Jn6NaT9MErBc0PI0IN2 hakAoJrO2DBaW2YjDk0nbM3B2YMsP+Zw =cpco -----END PGP SIGNATURE----- --------------enigBF64D510A73AEB49CE90CB48--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?gq1975$p1k$1>