From owner-freebsd-geom@FreeBSD.ORG Mon Sep 10 08:11:49 2007 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 1D97A16A421 for ; Mon, 10 Sep 2007 08:11:49 +0000 (UTC) (envelope-from antiduh@csh.rit.edu) Received: from whitefox.csh.rit.edu (whitefox.csh.rit.edu [129.21.60.19]) by mx1.freebsd.org (Postfix) with ESMTP id C8D6313C461 for ; Mon, 10 Sep 2007 08:11:48 +0000 (UTC) (envelope-from antiduh@csh.rit.edu) Received: from localhost (localhost [127.0.0.1]) by whitefox.csh.rit.edu (Postfix) with ESMTP id E3B121142F for ; Mon, 10 Sep 2007 03:53:06 -0400 (EDT) X-Virus-Scanned: amavisd-new at csh.rit.edu Received: from whitefox.csh.rit.edu ([127.0.0.1]) by localhost (whitefox.csh.rit.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id YvC6s+dPas4f for ; Mon, 10 Sep 2007 03:52:52 -0400 (EDT) Received: from corrugated-real.rochester.rr.com (cpe-69-207-182-28.rochester.res.rr.com [69.207.182.28]) by whitefox.csh.rit.edu (Postfix) with ESMTP id 261271143B for ; Mon, 10 Sep 2007 03:52:52 -0400 (EDT) Date: Mon, 10 Sep 2007 03:52:46 -0400 To: freebsd-geom@freebsd.org From: "Kevin Thompson" Content-Type: text/plain; format=flowed; delsp=yes; charset=iso-8859-15 MIME-Version: 1.0 Content-Transfer-Encoding: Quoted-Printable Message-ID: User-Agent: Opera Mail/9.50 (Win32) Subject: geom label detaching partway through boot 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: Mon, 10 Sep 2007 08:11:49 -0000 I have a mildy complicated geom setup. Basically booting off of a geom = raid0+1. da0 --label-->geom0 da1 --label-->geom1 da2 --label-->geom2 da3 --label-->geom3 label/geom0s1a --|--mirror-->/dev/mirror/boot label/geom1s1a --| label/geom2s1a --| label/geom3s1a --| label/geom0s1d --|--stripe-->/dev/stripe/st0 --|--mirror-->/dev/mirror/g= m0 label/geom1s1d --| | | label/geom2s1d --|--stripe-->/dev/stripe/st1 --| label/geom3s1d --| mirror/boot --> / mirror/gm0s1d --> /usr mirror/gm0s1e --> /var mirror/gm0s1f --> /tmp label/geom0s1b --> swap label/geom1s1b --> swap label/geom2s1b --> swap label/geom3s1b --> swap As you can see below, it looks like the label, mirror and stripe classes are fighting, ending up with label losing because mirror and stripe are going through the direct da devices instead of the label/geomX devices. They were originally created referencing label/geomX. End result, the /dev/label/geomX devices aren't there at boot and so my swap partitions can't mount. Sure, I could work around it by using the direct da devices instead, but that sort of defeats the purpose of geom label. --Kevin Thompson da0: 1024MB (2097152 512 byte sectors: 128H 32S/T 512C) da1 at bt0 bus 0 target 1 lun 0 da1: Fixed Direct Access SCSI-2 device da1: 3.300MB/s transfers, Tagged Queueing Enabled da1: 1024MB (2097152 512 byte sectors: 128H 32S/T 512C) da2 at bt0 bus 0 target 2 lun 0 da2: Fixed Direct Access SCSI-2 device da2: 3.300MB/s transfers, Tagged Queueing Enabled da2: 1024MB (2097152 512 byte sectors: 128H 32S/T 512C) da3 at bt0 bus 0 target 3 lun 0 da3: Fixed Direct Access SCSI-2 device da3: 3.300MB/s transfers, Tagged Queueing Enabled da3: 1024MB (2097152 512 byte sectors: 128H 32S/T 512C) GEOM_LABEL: Label for provider da0 is label/geom0. GEOM_LABEL: Label for provider da1 is label/geom1. GEOM_LABEL: Label for provider da2 is label/geom2. GEOM_LABEL: Label for provider da3 is label/geom3. GEOM_MIRROR: Device boot created (id=3D2370896177). GEOM_MIRROR: Device boot: provider da0s1a detected. GEOM_STRIPE: Device st0 created (id=3D2811180181). GEOM_STRIPE: Disk da0s1d attached to st0. GEOM_MIRROR: Device boot: provider da1s1a detected. GEOM_STRIPE: Disk da1s1d attached to st0. GEOM_STRIPE: Device st0 activated. GEOM_MIRROR: Device boot: provider da2s1a detected. GEOM_STRIPE: Device st1 created (id=3D2904908189). GEOM_STRIPE: Disk da2s1d attached to st1. GEOM_MIRROR: Device boot: provider da3s1a detected. GEOM_MIRROR: Device boot: provider da1s1a activated. GEOM_MIRROR: Device boot: provider da3s1a activated. GEOM_MIRROR: Device boot: provider da2s1a activated. GEOM_MIRROR: Device boot: provider da0s1a activated. GEOM_MIRROR: Device boot: provider mirror/boot launched. GEOM_STRIPE: Disk da3s1d attached to st1. GEOM_STRIPE: Device st1 activated. GEOM_LABEL: Label label/geom0 removed. GEOM_LABEL: Label label/geom1 removed. GEOM_MIRROR: Device gm0 created (id=3D1645009057). GEOM_MIRROR: Device gm0: provider stripe/st0 detected. GEOM_LABEL: Label label/geom2 removed. GEOM_LABEL: Label label/geom3 removed. GEOM_MIRROR: Device gm0: provider stripe/st1 detected. GEOM_MIRROR: Device gm0: provider stripe/st1 activated. GEOM_MIRROR: Device gm0: provider stripe/st0 activated. GEOM_MIRROR: Device gm0: provider mirror/gm0 launched.