summaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_log.h
diff options
context:
space:
mode:
authorDave Chinner <dchinner@redhat.com>2013-08-12 20:50:05 +1000
committerBen Myers <bpm@sgi.com>2013-08-13 16:12:30 -0500
commit7492c5b42de857c13d8b7e0dafb2a5e331598e00 (patch)
tree95a073b09c3ec9105bb33d1ee0cbbe28f2f78f9c /fs/xfs/xfs_log.h
parent166d13688a0e2d0aa379e259af8e2ee6a401de9a (diff)
downloadlinux-7492c5b42de857c13d8b7e0dafb2a5e331598e00.tar.gz
linux-7492c5b42de857c13d8b7e0dafb2a5e331598e00.tar.bz2
linux-7492c5b42de857c13d8b7e0dafb2a5e331598e00.zip
xfs: Reduce allocations during CIL insertion
Now that we have the size of the object before the formatting pass is called, we can allocation the log vector and it's buffer in a single allocation rather than two separate allocations. Store the size of the allocated buffer in the log vector so that we potentially avoid allocation for future modifications of the object. While touching this code, remove the IOP_FORMAT definition. Signed-off-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Mark Tinguely <tinguely@sgi.com> Signed-off-by: Ben Myers <bpm@sgi.com>
Diffstat (limited to 'fs/xfs/xfs_log.h')
-rw-r--r--fs/xfs/xfs_log.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/xfs/xfs_log.h b/fs/xfs/xfs_log.h
index e63d9e10bd69..1c458487f000 100644
--- a/fs/xfs/xfs_log.h
+++ b/fs/xfs/xfs_log.h
@@ -27,6 +27,7 @@ struct xfs_log_vec {
struct xfs_log_item *lv_item; /* owner */
char *lv_buf; /* formatted buffer */
int lv_buf_len; /* size of formatted buffer */
+ int lv_size; /* size of allocated lv */
};
#define XFS_LOG_VEC_ORDERED (-1)