From a6867a6815fa0241848d4620f2dbd2954f4405d7 Mon Sep 17 00:00:00 2001 From: David Chinner Date: Wed, 11 Jan 2006 15:37:58 +1100 Subject: [XFS] Introduce per-filesystem delwri pagebuf flushing to reduce contention between filesystems and prevent deadlocks between filesystems when a flush dependency exists between them. SGI-PV: 947098 SGI-Modid: xfs-linux-melb:xfs-kern:24844a Signed-off-by: David Chinner Signed-off-by: Nathan Scott --- fs/xfs/linux-2.6/xfs_buf.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'fs/xfs/linux-2.6/xfs_buf.h') diff --git a/fs/xfs/linux-2.6/xfs_buf.h b/fs/xfs/linux-2.6/xfs_buf.h index 237a35b915d1..f721d47ad4cc 100644 --- a/fs/xfs/linux-2.6/xfs_buf.h +++ b/fs/xfs/linux-2.6/xfs_buf.h @@ -88,6 +88,15 @@ typedef struct xfs_buftarg { uint bt_hashmask; uint bt_hashshift; xfs_bufhash_t *bt_hash; + + /* per device delwri queue */ + struct task_struct *bt_task; + struct list_head bt_list; + struct list_head bt_delwrite_queue; + spinlock_t bt_delwrite_lock; + uint bt_flags; +#define BT_FORCE_SLEEP 1 +#define BT_FORCE_FLUSH 2 } xfs_buftarg_t; /* -- cgit v1.2.3