From 2ecb2a01e7e652b17fbaf750b3561476ab09df4c Mon Sep 17 00:00:00 2001 From: Pawel Jakub Dawidek Date: Thu, 23 Sep 2010 10:58:13 +0000 Subject: [PATCH] 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 --- sbin/geom/class/eli/geom_eli.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sbin/geom/class/eli/geom_eli.c b/sbin/geom/class/eli/geom_eli.c index 3b591fe90dd..1f9b9c89e3b 100644 --- a/sbin/geom/class/eli/geom_eli.c +++ b/sbin/geom/class/eli/geom_eli.c @@ -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) {