Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Mar 2015 15:17:58 +0100
From:      Fabian Keil <freebsd-listen@fabiankeil.de>
To:        freebsd-geom@freebsd.org
Subject:   Re: RFC: Pass TRIM through GELI
Message-ID:  <3d5629f4.63dcb347@fabiankeil.de>
In-Reply-To: <20150316101323.GD52331@over-yonder.net>
References:  <20150308000131.GP1742@over-yonder.net> <20150314151453.GJ24274@over-yonder.net> <501bca86.508d8e26@fabiankeil.de> <20150315145324.GA52331@over-yonder.net> <20150315182444.GB52331@over-yonder.net> <20150316010845.GA1515@garage.freebsd.pl> <20150316092126.GC52331@over-yonder.net> <20150316100030.GB1515@garage.freebsd.pl> <20150316101323.GD52331@over-yonder.net>

next in thread | previous in thread | raw e-mail | index | archive | help
--Sig_/duOBSR7HPL.IQWZK4+m/pIr
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: quoted-printable

"Matthew D. Fuller" <fullermd@over-yonder.net> wrote:

> On Mon, Mar 16, 2015 at 11:00:31AM +0100 I heard the voice of
> Pawel Jakub Dawidek, and lo! it spake thus:
> >
> > Still would be good to know the root cause of what you are seeing.
>=20
> I've about used up my investigation time for right now, but what I've
> found is that onetime providers wind up with no md_magic and no (0)
> md_version, so eli_metadata_decode() EINVAL's right up at the top
> before filling anything into the passed md.  As a result, in
> g_eli_ctl_configure(), it gets (keeps) stack garbage in the var.

If g_eli_configure() is changed to not (try to) read and write
metadata for onetime providers it seems to work as expected:
https://www.fabiankeil.de/sourcecode/electrobsd/g_eli_ctl_configure-Do-not-=
try-to-read-or-write-meta-from-onetime-providers.diff

A nicer looking solution would be moving all the metadata fiddling
below a if (sc->sc_flags & G_ELI_FLAG_ONETIME) block at the end of
the function where md.md_flags could inherit the flags from
sc->sc_flags.

Fabian

--Sig_/duOBSR7HPL.IQWZK4+m/pIr
Content-Type: application/pgp-signature
Content-Description: OpenPGP digital signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iEYEARECAAYFAlUG5hQACgkQBYqIVf93VJ0GGwCgtp+uExejVVOL42oQ068ic33F
HD8Ani8TkhnAc8gSSy4A8gqBIs6a+9db
=Eyev
-----END PGP SIGNATURE-----

--Sig_/duOBSR7HPL.IQWZK4+m/pIr--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3d5629f4.63dcb347>