Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 14 Jun 2013 19:01:11 +0000
From:      "Teske, Devin" <Devin.Teske@fisglobal.com>
To:        Kirk McKusick <mckusick@mckusick.com>
Cc:        "freebsd-fs@freebsd.org" <freebsd-fs@freebsd.org>, Devin Teske <dteske@freebsd.org>
Subject:   Re: ZFS Union 
Message-ID:  <13CA24D6AB415D428143D44749F57D7201F81A60@ltcfiswmsgmb21>
In-Reply-To: <201306141851.r5EIpkl2054401@chez.mckusick.com>
References:  <201306141851.r5EIpkl2054401@chez.mckusick.com>

next in thread | previous in thread | raw e-mail | index | archive | help

On Jun 14, 2013, at 11:51 AM, Kirk McKusick wrote:

The union filesystem uses "whiteout" to remove files that appear
in a lower layer. In your example, when you `rm /vm/unit1/foo'
what happens is that a whiteout entry gets created for /vm/unit1/foo.
(Whiteout is implemented by creating a name with inode number 1;
Inode 1 is the "anti-inode" which when combined with any other inode
disappears in a cloud of greasy smoke.)

WINO=85 yes=85 just as your response came in, I was finding the code=85

http://svnweb.freebsd.org/base/head/sys/ufs/ufs/ufs_lookup.c?r1=3D156418&r2=
=3D160269

  if (ep->d_ino =3D=3D 0 ||
-     (ep->d_ino =3D=3D WINO &&
+     (ep->d_ino =3D=3D WINO && namlen =3D=3D dirp->d_namlen &&
       bcmp(ep->d_name, dirp->d_name, dirp->d_namlen) =3D=3D 0)) {




Thus /vm/master/foo continues
to exist and is visible as /vm/unit2/foo and /vm/unit3/foo. You can
"recover" /vm/unit1/foo using `rm -W /vm/unit1/foo' which will remove
the whiteout entry causing /vm/master/foo to once again be visible
as /vm/unit1/foo.

Beautiful=85 that was my next consternation after seeing that it was in the=
 filesystem layer (how to reset the value from WINO to something that will =
allow the lower layer to bleed through).


In short, I believe that the existing union filesystem
will do what you want to do.

Kirk McKusick

Absolutely right=85 thank you much Sir!

I didn't know about "rm -W" until today.
--
Devin

_____________
The information contained in this message is proprietary and/or confidentia=
l. If you are not the intended recipient, please: (i) delete the message an=
d all copies; (ii) do not disclose, distribute or use the message in any ma=
nner; and (iii) notify the sender immediately. In addition, please be aware=
 that any message addressed to our domain is subject to archiving and revie=
w by persons other than the intended recipient. Thank you.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?13CA24D6AB415D428143D44749F57D7201F81A60>