From owner-p4-projects@FreeBSD.ORG Wed Aug 24 09:46:35 2005 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 84C3016A421; Wed, 24 Aug 2005 09:46:34 +0000 (GMT) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2635D16A41F for ; Wed, 24 Aug 2005 09:46:34 +0000 (GMT) (envelope-from soc-cjones@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E79D943D46 for ; Wed, 24 Aug 2005 09:46:33 +0000 (GMT) (envelope-from soc-cjones@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j7O9kX5b027297 for ; Wed, 24 Aug 2005 09:46:33 GMT (envelope-from soc-cjones@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j7O9kXPt027294 for perforce@freebsd.org; Wed, 24 Aug 2005 09:46:33 GMT (envelope-from soc-cjones@freebsd.org) Date: Wed, 24 Aug 2005 09:46:33 GMT Message-Id: <200508240946.j7O9kXPt027294@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to soc-cjones@freebsd.org using -f From: soc-cjones To: Perforce Change Reviews Cc: Subject: PERFORCE change 82492 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 24 Aug 2005 09:46:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=82492 Change 82492 by soc-cjones@soc-cjones_ishtar on 2005/08/24 09:45:41 Getting closer! Now it dies because the topology becomes inconsistent, while saving config. Looks like g_attach doesn't like it, problem's probably somewhere to be found via redo_rank. Affected files ... .. //depot/projects/soc2005/gvinum/src/sys/geom/vinum/geom_vinum_move.c#12 edit Differences ... ==== //depot/projects/soc2005/gvinum/src/sys/geom/vinum/geom_vinum_move.c#12 (text+ko) ==== @@ -262,6 +262,7 @@ printf("gv_move_sd: gv_drive_modify(d)\n"); printf("cp=%p, newsd=%p, newsd->provider=%p\n", cp, newsd, newsd->provider); /* And reconnect the consumer ... */ + newsd->consumer = cp; err = g_attach(cp, newsd->provider); printf("gv_move_sd: called g_attach(%p, %p) => %d; new consumer %p\n", cp, newsd->provider, err, newsd->consumer); if (err) { @@ -271,6 +272,7 @@ } else { printf("gv_move_sd: set newsd->consumer to %p\n", newsd->consumer); } + newsd->consumer = cp; printf("gv_move_sd: before LIST_INSERT_HEAD\n"); LIST_INSERT_HEAD(&sc->subdisks, newsd, sd); printf("gv_move_sd: inserted newsd into subdisks list\n");