From owner-p4-projects@FreeBSD.ORG Sun Jul 10 05:23:28 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 51CDB16A420; Sun, 10 Jul 2005 05:23:28 +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 13A9D16A41C for ; Sun, 10 Jul 2005 05:23:28 +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 D347443D49 for ; Sun, 10 Jul 2005 05:23:27 +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 j6A5NRGT029803 for ; Sun, 10 Jul 2005 05:23:27 GMT (envelope-from soc-cjones@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j6A5NRBX029800 for perforce@freebsd.org; Sun, 10 Jul 2005 05:23:27 GMT (envelope-from soc-cjones@freebsd.org) Date: Sun, 10 Jul 2005 05:23:27 GMT Message-Id: <200507100523.j6A5NRBX029800@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 79894 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: Sun, 10 Jul 2005 05:23:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=79894 Change 79894 by soc-cjones@soc-cjones_ides on 2005/07/10 05:22:31 Flesh out the kernel side of things for 'move'. Affected files ... .. //depot/projects/soc2005/gvinum/docs/PLAN#4 edit Differences ... ==== //depot/projects/soc2005/gvinum/docs/PLAN#4 (text+ko) ==== @@ -7,7 +7,9 @@ - Add NOPs for _rename, _move - - _move + - _move + (NOTE: arguments really should be 'src ... dst' for /bin/mv + compatibility) - Identify -f flag, drive, object(s) from argv - Do sanity checks (is object already on drive?) [kernel-side] - Check whether there's free space [kernel-side] @@ -64,8 +66,17 @@ - Fix up references in other structures - for gv_drive: FOREACH subdisks, fix ->drive - for gv_plex: FOREACH subsdisks, fix ->plex - - Commit to disk + - Commit config to disk * Add 'move' verb to VINUM GEOM class - + - use 'target', 'objectX' as verb arguments - int gv_move(struct g_geom *, struct gctl_req *) + - Find target, verify that it's a drive + - Find object(s) + - If drive, get list of drive's subdisks + - If plex, get list of plex's subdisks + - Check that sd(s) don't already belong to target drive + - gv_sd_to_drive + - How to copy data from old sd(s) to new? gv_sync maybe? + - Fix up references? + - Commit config to disk