aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/btrfs_inode.h
diff options
context:
space:
mode:
Diffstat (limited to 'fs/btrfs/btrfs_inode.h')
-rw-r--r--fs/btrfs/btrfs_inode.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/fs/btrfs/btrfs_inode.h b/fs/btrfs/btrfs_inode.h
index 61205e3bbefa..1da5753d886d 100644
--- a/fs/btrfs/btrfs_inode.h
+++ b/fs/btrfs/btrfs_inode.h
@@ -196,6 +196,16 @@ struct btrfs_inode {
196 struct list_head delayed_iput; 196 struct list_head delayed_iput;
197 long delayed_iput_count; 197 long delayed_iput_count;
198 198
199 /*
200 * To avoid races between lockless (i_mutex not held) direct IO writes
201 * and concurrent fsync requests. Direct IO writes must acquire read
202 * access on this semaphore for creating an extent map and its
203 * corresponding ordered extent. The fast fsync path must acquire write
204 * access on this semaphore before it collects ordered extents and
205 * extent maps.
206 */
207 struct rw_semaphore dio_sem;
208
199 struct inode vfs_inode; 209 struct inode vfs_inode;
200}; 210};
201 211