PS.
On 04/23/12 00:59, Dave Chinner wrote:
From: Dave Chinner<dchinner@xxxxxxxxxx>
Rather than specifying XBF_MAPPED for almost all buffers, introduce
XBF_UNMAPPED for the couple of users that use unmapped buffers.
Signed-off-by: Dave Chinner<dchinner@xxxxxxxxxx>
---
fs/xfs/xfs_buf.c | 28 +++++++++++++---------------
fs/xfs/xfs_buf.h | 4 ++--
fs/xfs/xfs_fsops.c | 10 +++++-----
fs/xfs/xfs_inode.c | 1 +
fs/xfs/xfs_log_recover.c | 4 ++--
fs/xfs/xfs_trans_buf.c | 6 ------
fs/xfs/xfs_vnodeops.c | 3 +--
7 files changed, 24 insertions(+), 32 deletions(-)
diff --git a/fs/xfs/xfs_buf.c b/fs/xfs/xfs_buf.c
@@ -707,7 +707,6 @@ xfs_buf_set_empty(
bp->b_length = numblks;
bp->b_io_length = numblks;
bp->b_bn = XFS_BUF_DADDR_NULL;
- bp->b_flags&= ~XBF_MAPPED;
}
I know that bp->baddr is set to NULL and denotes that this is not
mapped, but why not set the XBF_UNMAPPED?
static inline struct page *
@@ -759,7 +758,6 @@ xfs_buf_associate_memory(
bp->b_io_length = BTOBB(len);
bp->b_length = BTOBB(buflen);
- bp->b_flags |= XBF_MAPPED;
return 0;
}
I think the answer is no, but can XBF_UNMAPPED be set and leaked here?
Thanks
--Mark Tinguely
|