From owner-cvs-all@FreeBSD.ORG Mon Apr 10 10:32:24 2006 Return-Path: X-Original-To: cvs-all@FreeBSD.org Delivered-To: cvs-all@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4D13416A406; Mon, 10 Apr 2006 10:32:24 +0000 (UTC) (envelope-from pjd@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BFBE843D53; Mon, 10 Apr 2006 10:32:22 +0000 (GMT) (envelope-from pjd@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 k3AAWM9W037684; Mon, 10 Apr 2006 10:32:22 GMT (envelope-from pjd@repoman.freebsd.org) Received: (from pjd@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k3AAWMWx037680; Mon, 10 Apr 2006 10:32:22 GMT (envelope-from pjd) Message-Id: <200604101032.k3AAWMWx037680@repoman.freebsd.org> From: Pawel Jakub Dawidek Date: Mon, 10 Apr 2006 10:32:22 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: src/sys/geom/mirror g_mirror.c g_mirror.h g_mirror_ctl.c src/sys/geom/raid3 g_raid3.c g_raid3.h g_raid3_ctl.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Apr 2006 10:32:24 -0000 pjd 2006-04-10 10:32:22 UTC FreeBSD src repository Modified files: sys/geom/mirror g_mirror.c g_mirror.h g_mirror_ctl.c sys/geom/raid3 g_raid3.c g_raid3.h g_raid3_ctl.c Log: Introduce and use delayed-destruction functionality from a pre-sync hook, which means that devices will be destroyed on last close. This fixes destruction order problems when, eg. RAID3 array is build on top of RAID1 arrays. Requested, reviewed and tested by: ru MFC after: 2 weeks Revision Changes Path 1.81 +80 -54 src/sys/geom/mirror/g_mirror.c 1.23 +5 -1 src/sys/geom/mirror/g_mirror.h 1.16 +7 -1 src/sys/geom/mirror/g_mirror_ctl.c 1.60 +70 -53 src/sys/geom/raid3/g_raid3.c 1.18 +5 -1 src/sys/geom/raid3/g_raid3.h 1.16 +7 -1 src/sys/geom/raid3/g_raid3_ctl.c