summaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_inode.h
diff options
context:
space:
mode:
authorDarrick J. Wong2016-10-03 18:11:32 +0200
committerDarrick J. Wong2016-10-05 03:06:40 +0200
commit3993baeb3c52f497d243a4a3b5510df97b22596b (patch)
tree2dab55892137a064012b352a0f9ac730797221fb /fs/xfs/xfs_inode.h
parentxfs: don't allow reflinked dir/dev/fifo/socket/pipe files (diff)
downloadkernel-qcow2-linux-3993baeb3c52f497d243a4a3b5510df97b22596b.tar.gz
kernel-qcow2-linux-3993baeb3c52f497d243a4a3b5510df97b22596b.tar.xz
kernel-qcow2-linux-3993baeb3c52f497d243a4a3b5510df97b22596b.zip
xfs: introduce the CoW fork
Introduce a new in-core fork for storing copy-on-write delalloc reservations and allocated extents that are in the process of being written out. Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com> Reviewed-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'fs/xfs/xfs_inode.h')
-rw-r--r--fs/xfs/xfs_inode.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/xfs/xfs_inode.h b/fs/xfs/xfs_inode.h
index 4be32036e16a..ff6fc03c0092 100644
--- a/fs/xfs/xfs_inode.h
+++ b/fs/xfs/xfs_inode.h
@@ -47,6 +47,7 @@ typedef struct xfs_inode {
/* Extent information. */
xfs_ifork_t *i_afp; /* attribute fork pointer */
+ xfs_ifork_t *i_cowfp; /* copy on write extents */
xfs_ifork_t i_df; /* data fork */
/* operations vectors */
@@ -65,6 +66,9 @@ typedef struct xfs_inode {
struct xfs_icdinode i_d; /* most of ondisk inode */
+ xfs_extnum_t i_cnextents; /* # of extents in cow fork */
+ unsigned int i_cformat; /* format of cow fork */
+
/* VFS inode */
struct inode i_vnode; /* embedded VFS inode */
} xfs_inode_t;