Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 Sep 2004 09:46:18 +0200
From:      Pawel Jakub Dawidek <pjd@FreeBSD.org>
To:        Ruslan Ermilov <ru@FreeBSD.org>
Cc:        current@FreeBSD.org
Subject:   Re: gmirror questions
Message-ID:  <20040927074618.GR9550@darkness.comp.waw.pl>
In-Reply-To: <20040927062820.GA89984@ip.net.ua>
References:  <20040927062820.GA89984@ip.net.ua>

next in thread | previous in thread | raw e-mail | index | archive | help

--0blaZc+aUkVqY8MO
Content-Type: text/plain; charset=iso-8859-2
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Mon, Sep 27, 2004 at 09:28:20AM +0300, Ruslan Ermilov wrote:
+> 1.  When I try to "bsdlabel -B /dev/mirror/m0", I get:
+>=20
+> # bsdlabel -B /dev/mirror/m0
+> bsdlabel: Geom not found
+>=20
+> Hopefully, using "/dev/mirror/m0c" works.  Any clue why this
+> doesn't work?

I can't reproduce it. Could you show me whole process starting from
creating a mirror?

+> 2.  Before a reboot, the state of the mirror was "COMPLETE".
+>=20
+> After a first reboot, everything was ok.  After a second
+> reboot, I got this:
+>=20
+> ad0: 38166MB <ST340014A/3.06> [77545/16/63] at ata0-master UDMA100
+> ad1: 38204MB <SAMSUNG SV0411N/UA100-11> [77622/16/63] at ata0-slave UDMA=
100
+> ad2: 38166MB <ST340014A/3.06> [77545/16/63] at ata1-master UDMA100
+> ad3: 38204MB <SAMSUNG SV0411N/UA100-11> [77622/16/63] at ata1-slave UDMA=
100
+> GEOM_MIRROR: Device m0 created (id=3D411263865).
+> GEOM_MIRROR: Device m0: provider ad1 detected.
+> GEOM_MIRROR: Device m0: provider ad3 detected.
+> GEOM_MIRROR: Device m0: provider ad3 activated.
+> GEOM_MIRROR: Device m0: provider mirror/m0 launched.
+> GEOM_MIRROR: Device m0: rebuilding provider ad1.
+>=20
+> Any idea why it thinks ad1 should be rebuilt?

Because you use reboot(8) instead of shutdown(8) to reboot your machine?
When shutdown(8) is used, swap partition will be removed before reboot,
in your case, mirror is still open for writing on reboot, so it will
rebuild components on next boot, because they are marked as dirty.

+> 3.  The syncing process takes very long, how do I tune it using
+>     the kern.geom.mirror sysctls?

The kern.geom.mirror.syncs_per_sec sysctl means number of synchronization
requests per second, so you should increase it.
Increasing hz should also help, but I'm not sure actually.
There is a simple way to increase synchronization performance by adding
more g_mirror_sync_one() calls, but I need to think of some understandable
way to tune it.

+> 4.  Will the following work with GEOM_MIRROR?
+>=20
+>     - mirror m0 is originally from two 10G providers (p1 and p2)
+>     - remove p2 from the mirror
+>     - add p3 of size 20G to the mirror
+>     - wait until p3 synchronizes with p1
+>     - remove p1 from the mirror
+>=20
+>     Will m0's size grow up to 20G after this procedure?

No. Changing provider's attributes (such as mediasize, sectorsize), while
it is running is not supported by GEOM, AFAIK.

--=20
Pawel Jakub Dawidek                       http://www.FreeBSD.org
pjd@FreeBSD.org                           http://garage.freebsd.pl
FreeBSD committer                         Am I Evil? Yes, I Am!

--0blaZc+aUkVqY8MO
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (FreeBSD)

iD8DBQFBV8VKForvXbEpPzQRAkyYAKCnY9kwxIktwuiWJFyKCOte4awDuQCdGm3V
rGXuzPlWt8vUrkPeWTXvf/g=
=hxcV
-----END PGP SIGNATURE-----

--0blaZc+aUkVqY8MO--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040927074618.GR9550>