From: Chris Mason Date: Mon, 10 Sep 2007 23:58:36 +0000 (-0400) Subject: Btrfs: Add more synchronization before creating a snapshot X-Git-Tag: v2.6.29-rc1~27^2~9^2~55^2~56^2~30^2~497 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=011410bd859a481a335d7db1fb559542c5663fd5;p=pandora-kernel.git Btrfs: Add more synchronization before creating a snapshot File data checksums are only done during writepage, so we have to make sure all pages are written when the snapshot is taken. This also adds some locking so that new writes don't race in and add new dirty pages. Signed-off-by: Chris Mason --- diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h index cd75c906048f..03e1c4ad341b 100644 --- a/fs/btrfs/ctree.h +++ b/fs/btrfs/ctree.h @@ -333,6 +333,7 @@ struct btrfs_root { struct inode *inode; struct kobject root_kobj; struct completion kobj_unregister; + struct rw_semaphore snap_sem; u64 objectid; u64 last_trans; u32 blocksize; Reading git-diff-tree failed