From owner-freebsd-geom@FreeBSD.ORG Wed Jul 1 13:53:36 2009 Return-Path: Delivered-To: freebsd-geom@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C211D106564A for ; Wed, 1 Jul 2009 13:53:36 +0000 (UTC) (envelope-from pjd@garage.freebsd.pl) Received: from mail.garage.freebsd.pl (chello087206192061.chello.pl [87.206.192.61]) by mx1.freebsd.org (Postfix) with ESMTP id 0A0418FC1B for ; Wed, 1 Jul 2009 13:53:35 +0000 (UTC) (envelope-from pjd@garage.freebsd.pl) Received: by mail.garage.freebsd.pl (Postfix, from userid 65534) id 5B2DE45C8C; Wed, 1 Jul 2009 15:53:33 +0200 (CEST) Received: from localhost (pjd.wheel.pl [10.0.1.1]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.garage.freebsd.pl (Postfix) with ESMTP id 6D872456B1; Wed, 1 Jul 2009 15:53:28 +0200 (CEST) Date: Wed, 1 Jul 2009 15:53:38 +0200 From: Pawel Jakub Dawidek To: Marcel Moolenaar Message-ID: <20090701135338.GE4372@garage.freebsd.pl> References: <20090625110253.GA31443@mech-cluster238.men.bris.ac.uk> <10FCC74D-6D46-4112-AD89-BBB4C5933957@mac.com> <2FFFB36F-EFA3-4D92-98A3-692BA2D6F63E@mac.com> <20090629210003.GA24038@keira.kiwi-computer.com> <704EE47D-F0C4-4C63-AA3C-3ADF92CC8379@mac.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="gr/z0/N6AeWAPJVB" Content-Disposition: inline In-Reply-To: <704EE47D-F0C4-4C63-AA3C-3ADF92CC8379@mac.com> User-Agent: Mutt/1.4.2.3i X-PGP-Key-URL: http://people.freebsd.org/~pjd/pjd.asc X-OS: FreeBSD 8.0-CURRENT i386 X-Spam-Checker-Version: SpamAssassin 3.0.4 (2005-06-05) on mail.garage.freebsd.pl X-Spam-Level: X-Spam-Status: No, score=-5.9 required=4.5 tests=ALL_TRUSTED,BAYES_00 autolearn=ham version=3.0.4 Cc: rick-freebsd2008@kiwi-computer.com, freebsd-geom@freebsd.org Subject: Re: gmirror gm0 destroyed on shutdown; GPT corrupt X-BeenThere: freebsd-geom@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: GEOM-specific discussions and implementations List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Jul 2009 13:53:37 -0000 --gr/z0/N6AeWAPJVB Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Jun 30, 2009 at 02:37:55PM -0700, Marcel Moolenaar wrote: >=20 > On Jun 29, 2009, at 2:00 PM, Rick C. Petty wrote: >=20 > >[[ Removing the double cross-post, since this is GEOM-specific ]] > > > >On Sat, Jun 27, 2009 at 06:20:49PM -0700, Marcel Moolenaar wrote: > >> > >>Using the last sector is not only flawed because it creates a race > >>condition, > > > >It shouldn't create a race condition. >=20 > It does. >=20 > Answer the following: >=20 > foo0 is a provider with 3 sectors. > bar is a geom class that puts meta-data in the first sector. > baz is a geom class that puts meta-data in the last sector. >=20 > Both bar and baz get to taste foo0. Which one should go first? Marcel, I don't think you expect than entire world will agree on one place where metadata should be stored? A provider can contain metadata of few independent GEOM classes and its class responsibility to detect its providers correctly. Even for my classes where I store provider size in metadata there are configurations I can't cope with cleanly, like the 'c' partition. Workaround I implemented is to store provider name in metadata, but of course it's problematic if your disk name will change. All in all there is nothing wrong with gmirror. In your example you want all metadata formats to be exact same size and stored in exact same place... --=20 Pawel Jakub Dawidek http://www.wheel.pl pjd@FreeBSD.org http://www.FreeBSD.org FreeBSD committer Am I Evil? Yes, I Am! --gr/z0/N6AeWAPJVB Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.4 (FreeBSD) iD8DBQFKS2piForvXbEpPzQRAkj4AJ9NaaqGxeBUng6CxtcLK2immVHt3ACfQKOg BhtPeBma/nRIevbiyQlsBxg= =WImV -----END PGP SIGNATURE----- --gr/z0/N6AeWAPJVB--