summaryrefslogtreecommitdiffstats
path: root/sys/fs/unionfs/union.h
diff options
context:
space:
mode:
authordaichi <daichi@FreeBSD.org>2007-10-14 13:55:38 +0000
committerdaichi <daichi@FreeBSD.org>2007-10-14 13:55:38 +0000
commitb4e293afdf72162137b2dba22113a5ee64c72c99 (patch)
tree2c0a8dc097e870c563dc170664ef755488256a67 /sys/fs/unionfs/union.h
parent7759a8a0eb0499316da250fbc2b12c0de2134cc7 (diff)
downloadFreeBSD-src-b4e293afdf72162137b2dba22113a5ee64c72c99.zip
FreeBSD-src-b4e293afdf72162137b2dba22113a5ee64c72c99.tar.gz
Added whiteout behavior option. ``-o whiteout=always'' is default mode
(it is established practice) and ``-o whiteout=whenneeded'' is less disk-space using mode especially for resource restricted environments like embedded environments. (Contributed by Ed Schouten. Thanks) Submitted by: Masanori Ozawa <ozawa@ongs.co.jp> (unionfs developer) Reviewed by: jeff, kensmith Approved by: re (kensmith) MFC after: 1 week
Diffstat (limited to 'sys/fs/unionfs/union.h')
-rw-r--r--sys/fs/unionfs/union.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/fs/unionfs/union.h b/sys/fs/unionfs/union.h
index 302b384..e97936d 100644
--- a/sys/fs/unionfs/union.h
+++ b/sys/fs/unionfs/union.h
@@ -45,11 +45,18 @@ typedef enum _unionfs_copymode {
UNIONFS_MASQUERADE
} unionfs_copymode;
+/* whiteout policy of upper layer */
+typedef enum _unionfs_whitemode {
+ UNIONFS_WHITE_ALWAYS = 0,
+ UNIONFS_WHITE_WHENNEEDED
+} unionfs_whitemode;
+
struct unionfs_mount {
struct vnode *um_lowervp; /* VREFed once */
struct vnode *um_uppervp; /* VREFed once */
struct vnode *um_rootvp; /* ROOT vnode */
unionfs_copymode um_copymode;
+ unionfs_whitemode um_whitemode;
uid_t um_uid;
gid_t um_gid;
u_short um_udir;
OpenPOWER on IntegriCloud