This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "XFS development tree".
The branch, master has been updated
1baaffd xfs: remove i_iocount
1e60cfa xfs: wait for I/O completion when writing out pages in
xfs_setattr_size
6790d7b xfs: reduce ioend latency
a826361 xfs: defer AIO/DIO completions
4e95434 xfs: remove dead ENODEV handling in xfs_destroy_ioend
184e80f xfs: use the "delwri" terminology consistently
b57a4ed xfs: let xfs_bwrite callers handle the xfs_buf_relse
ef216bd xfs: call xfs_buf_delwri_queue directly
9b28cfc xfs: move more delwri setup into xfs_buf_delwri_queue
3724504 xfs: remove the unlock argument to xfs_buf_delwri_queue
4f9d183 xfs: remove delwri buffer handling from xfs_buf_iorequest
from 297db93bb74cf687510313eb235a7aec14d67e97 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 1baaffdc386f83b85c1e91e7b25f0db02848ca59
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Tue Aug 23 08:28:13 2011 +0000
xfs: remove i_iocount
We now have an i_dio_count filed and surrounding infrastructure to wait
for direct I/O completion instead of i_icount, and we have never needed
to iocount waits for buffered I/O given that we only set the page uptodate
after finishing all required work. Thus remove i_iocount, and replace
the actually needed waits with calls to inode_dio_wait.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
Signed-off-by: Alex Elder <aelder@xxxxxxx>
commit 1e60cfa02430a9d1f0a051ca4bf521e71f562a33
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Tue Aug 23 08:28:12 2011 +0000
xfs: wait for I/O completion when writing out pages in xfs_setattr_size
The current code relies on the xfs_ioend_wait call later on to make sure
all I/O actually has completed. The xfs_ioend_wait call will go away soon,
so prepare for that by using the waiting filemap function.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
Signed-off-by: Alex Elder <aelder@xxxxxxx>
commit 6790d7b01fc5fb77952c1a96a12d594aab50cebc
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Tue Aug 23 08:28:11 2011 +0000
xfs: reduce ioend latency
There is no reason to queue up ioends for processing in user context
unless we actually need it. Just complete ioends that do not convert
unwritten extents or need a size update from the end_io context.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
Signed-off-by: Alex Elder <aelder@xxxxxxx>
commit a826361aa4afca6ee735e73f4f0c63c4c8439c51
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Tue Aug 23 08:28:10 2011 +0000
xfs: defer AIO/DIO completions
We really shouldn't complete AIO or DIO requests until we have finished
the unwritten extent conversion and size update. This means fsync never
has to pick up any ioends as all work has been completed when signalling
I/O completion.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
Signed-off-by: Alex Elder <aelder@xxxxxxx>
commit 4e95434b5bb70f62fcdf11b98ef4aa5ff0ee1a24
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Tue Aug 23 08:28:09 2011 +0000
xfs: remove dead ENODEV handling in xfs_destroy_ioend
No driver returns ENODEV from it bio completion handler, not has this
ever been documented. Remove the dead code dealing with it.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
Signed-off-by: Alex Elder <aelder@xxxxxxx>
commit 184e80f2a2075263db3eec6d7cee8fdb9f2d118a
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Tue Aug 23 08:28:08 2011 +0000
xfs: use the "delwri" terminology consistently
And also remove the strange local lock and delwri list pointers in a few
functions.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
Signed-off-by: Alex Elder <aelder@xxxxxxx>
commit b57a4ed207854e6d722abf1ce26c2bd9113fd57b
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Tue Aug 23 08:28:07 2011 +0000
xfs: let xfs_bwrite callers handle the xfs_buf_relse
Remove the xfs_buf_relse from xfs_bwrite and let the caller handle it to
mirror the delwri and read paths.
Also remove the mount pointer passed to xfs_bwrite, which is superflous now
that we have a mount pointer in the buftarg.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
Signed-off-by: Alex Elder <aelder@xxxxxxx>
commit ef216bdc80eb74c5d30cff8dc77df61ff071edc3
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Tue Aug 23 08:28:06 2011 +0000
xfs: call xfs_buf_delwri_queue directly
Unify the ways we add buffers to the delwri queue by always calling
xfs_buf_delwri_queue directly. The xfs_bdwrite functions is removed and
opencoded in its callers, and the two places setting XBF_DELWRI while a
buffer is locked and expecting xfs_buf_unlock to pick it up are converted
to call xfs_buf_delwri_queue directly, too. Also replace the
XFS_BUF_UNDELAYWRITE macro with direct calls to xfs_buf_delwri_dequeue
to make the explicit queuing/dequeuing more obvious.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
Signed-off-by: Alex Elder <aelder@xxxxxxx>
commit 9b28cfc60532bbd20e157f17c13dcd6ace27867b
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Tue Aug 23 08:28:05 2011 +0000
xfs: move more delwri setup into xfs_buf_delwri_queue
Do not transfer a reference held by the caller to the buffer on the list,
or decrement it in xfs_buf_delwri_queue, but instead grab a new reference
if needed, and let the caller drop its own reference. Also move setting
of the XBF_DELWRI and XBF_ASYNC flags into xfs_buf_delwri_queue, and
only do it if needed. Note that for now xfs_buf_unlock already has
XBF_DELWRI, but that will change in the following patches.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
Signed-off-by: Alex Elder <aelder@xxxxxxx>
commit 3724504d4abfcfd7d9e5892a9e5b1bf2d7c4a522
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Tue Aug 23 08:28:04 2011 +0000
xfs: remove the unlock argument to xfs_buf_delwri_queue
We can just unlock the buffer in the caller, and the decrement of b_hold
would also be needed in the !unlock, we just never hit that case currently
given that the caller handles that case.
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
Signed-off-by: Alex Elder <aelder@xxxxxxx>
commit 4f9d18351358c0ad814f7507c75dcebce5cd9f54
Author: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Date: Tue Aug 23 08:28:03 2011 +0000
xfs: remove delwri buffer handling from xfs_buf_iorequest
We cannot ever reach xfs_buf_iorequest for a buffer with XBF_DELWRI set,
given that all write handlers make sure that the buffer is remove from
the delwri queue before, and we never do reads with the XBF_DELWRI flag
set (which the code would not handle correctly anyway).
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Dave Chinner <dchinner@xxxxxxxxxx>
Signed-off-by: Alex Elder <aelder@xxxxxxx>
-----------------------------------------------------------------------
Summary of changes:
fs/xfs/xfs_aops.c | 87 ++++++++++---------------------------
fs/xfs/xfs_aops.h | 4 +-
fs/xfs/xfs_attr.c | 9 ++--
fs/xfs/xfs_buf.c | 108 +++++++++++++++------------------------------
fs/xfs/xfs_buf.h | 14 +++---
fs/xfs/xfs_buf_item.c | 4 +-
fs/xfs/xfs_dquot.c | 6 ++-
fs/xfs/xfs_file.c | 8 +---
fs/xfs/xfs_fsops.c | 40 +++++++++--------
fs/xfs/xfs_iget.c | 2 -
fs/xfs/xfs_inode.c | 6 ++-
fs/xfs/xfs_inode.h | 1 -
fs/xfs/xfs_iops.c | 8 ++--
fs/xfs/xfs_log_recover.c | 18 +++++---
fs/xfs/xfs_mount.c | 2 +-
fs/xfs/xfs_qm.c | 3 +-
fs/xfs/xfs_rw.c | 2 +-
fs/xfs/xfs_super.c | 7 +---
fs/xfs/xfs_sync.c | 14 +++---
fs/xfs/xfs_trace.h | 1 -
fs/xfs/xfs_trans_buf.c | 5 +-
fs/xfs/xfs_vnodeops.c | 4 +-
22 files changed, 136 insertions(+), 217 deletions(-)
hooks/post-receive
--
XFS development tree
|