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 _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs