diff options
Diffstat (limited to 'fs/xfs/linux-2.6/xfs_buf.c')
| -rw-r--r-- | fs/xfs/linux-2.6/xfs_buf.c | 12 | 
1 files changed, 10 insertions, 2 deletions
diff --git a/fs/xfs/linux-2.6/xfs_buf.c b/fs/xfs/linux-2.6/xfs_buf.c index cb329edc925..aa1016bb913 100644 --- a/fs/xfs/linux-2.6/xfs_buf.c +++ b/fs/xfs/linux-2.6/xfs_buf.c @@ -34,6 +34,12 @@  #include <linux/backing-dev.h>  #include <linux/freezer.h> +#include "xfs_sb.h" +#include "xfs_inum.h" +#include "xfs_ag.h" +#include "xfs_dmapi.h" +#include "xfs_mount.h" +  static kmem_zone_t *xfs_buf_zone;  STATIC int xfsbufd(void *);  STATIC int xfsbufd_wakeup(int, gfp_t); @@ -1435,10 +1441,12 @@ xfs_unregister_buftarg(  void  xfs_free_buftarg( -	xfs_buftarg_t		*btp) +	struct xfs_mount	*mp, +	struct xfs_buftarg	*btp)  {  	xfs_flush_buftarg(btp, 1); -	xfs_blkdev_issue_flush(btp); +	if (mp->m_flags & XFS_MOUNT_BARRIER) +		xfs_blkdev_issue_flush(btp);  	xfs_free_bufhash(btp);  	iput(btp->bt_mapping->host);  |