From owner-svn-src-head@FreeBSD.ORG Thu Sep 23 10:58:13 2010 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A68201065673; Thu, 23 Sep 2010 10:58:13 +0000 (UTC) (envelope-from pjd@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 964EA8FC21; Thu, 23 Sep 2010 10:58:13 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id o8NAwD1Y066674; Thu, 23 Sep 2010 10:58:13 GMT (envelope-from pjd@svn.freebsd.org) Received: (from pjd@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o8NAwDUo066672; Thu, 23 Sep 2010 10:58:13 GMT (envelope-from pjd@svn.freebsd.org) Message-Id: <201009231058.o8NAwDUo066672@svn.freebsd.org> From: Pawel Jakub Dawidek Date: Thu, 23 Sep 2010 10:58:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r213058 - head/sbin/geom/class/eli X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Sep 2010 10:58:13 -0000 Author: pjd Date: Thu Sep 23 10:58:13 2010 New Revision: 213058 URL: http://svn.freebsd.org/changeset/base/213058 Log: Because we first write metadata into new place and then trash old place we don't want situation where old size is equal to new size, as we will trash newly written metadata. MFC after: 1 week Modified: head/sbin/geom/class/eli/geom_eli.c Modified: head/sbin/geom/class/eli/geom_eli.c ============================================================================== --- head/sbin/geom/class/eli/geom_eli.c Thu Sep 23 10:55:45 2010 (r213057) +++ head/sbin/geom/class/eli/geom_eli.c Thu Sep 23 10:58:13 2010 (r213058) @@ -1302,6 +1302,10 @@ eli_resize(struct gctl_req *req) gctl_error(req, "Invalid oldsize: Out of range."); goto out; } + if (oldsize == mediasize) { + gctl_error(req, "Size hasn't changed."); + goto out; + } /* Read metadata from the 'oldsize' offset. */ if (pread(provfd, sector, secsize, oldsize - secsize) != secsize) {