From owner-freebsd-geom@FreeBSD.ORG Mon Jan 17 13:31:00 2011 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 939101065673 for ; Mon, 17 Jan 2011 13:31:00 +0000 (UTC) (envelope-from gcubfg-freebsd-geom@m.gmane.org) Received: from lo.gmane.org (lo.gmane.org [80.91.229.12]) by mx1.freebsd.org (Postfix) with ESMTP id 48C4C8FC0A for ; Mon, 17 Jan 2011 13:31:00 +0000 (UTC) Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1PepAg-00050a-Vp for freebsd-geom@freebsd.org; Mon, 17 Jan 2011 14:30:59 +0100 Received: from lara.cc.fer.hr ([161.53.72.113]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 17 Jan 2011 14:30:58 +0100 Received: from ivoras by lara.cc.fer.hr with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 17 Jan 2011 14:30:58 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: freebsd-geom@freebsd.org From: Ivan Voras Date: Mon, 17 Jan 2011 14:30:43 +0100 Lines: 30 Message-ID: References: <1686083494.20110113182418@serebryakov.spb.ru> <1811347380.20110113213700@serebryakov.spb.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: lara.cc.fer.hr User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.2.12) Gecko/20101102 Thunderbird/3.1.6 In-Reply-To: <1811347380.20110113213700@serebryakov.spb.ru> X-Enigmail-Version: 1.1.2 Subject: Re: Broken gmirror: why /dev/ufs is empty when geom_mirror is not loaded? 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, 17 Jan 2011 13:31:00 -0000 On 13/01/2011 19:37, Lev Serebryakov wrote: > Hello, Freebsd-geom. > You wrote 13 января 2011 г., 18:24:18: > >> I have mirrored PARTITION (/dev/ad4s1d + /dev/ad6s1d) with UFS with >> label on it. This label is shown in /dev/ufs when geom_mirror is >> loaded. > >> When geom_mirror is NOT loaded both ad4s1d and ad6s1d are valid, >> complete, clean filesystems, but here is no /dev/ufs entries for them, >> and kernel can not mount FSes at all. > And even worse: it sees ONE of all FSes and when "geom_mirror" is > loaded, it puck up one of components from "/dev/ufs/home" instead of > device node and everything hangs up due to loop (?)... Yes, gmirror and glabel are known to interact badly because of such edge cases - since glabel presents the whole underlying device in pretty much the same way as the original device entry, gmirror cannot distinguish between the two. You could use the "-h" argument to "gmirror create" to get around this. Since this is so common and has also bitten me in the past, I wonder if some kind of avoidance detection mechanism could be created in gmirror? I'm thinking of making glabel expose a GEOM property like "fslabel" meaning "this device entry comes from a file system label, not a device or native glabel label" and making gmirror search for this property and skip tasting for devices having it? Pawel?