Patch "xfs: free cowblocks and retry on buffered write ENOSPC" has been added to the 4.9-stable tree
From: <gregkh@linuxfoundation.org>
Date: 2017-09-18 08:12:06
This is a note to let you know that I've just added the patch titled
xfs: free cowblocks and retry on buffered write ENOSPC
to the 4.9-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
xfs-free-cowblocks-and-retry-on-buffered-write-enospc.patch
and it can be found in the queue-4.9 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree,
please let [off-list ref] know about it.
From hch@lst.de Mon Sep 18 10:07:40 2017
From: Christoph Hellwig <hch@lst.de> Date: Sun, 17 Sep 2017 14:06:34 -0700 Subject: xfs: free cowblocks and retry on buffered write ENOSPC To: stable@vger.kernel.org Cc: linux-xfs@vger.kernel.org, Brian Foster <redacted>, "Darrick J . Wong" <redacted> Message-ID: [ref] From: Brian Foster <redacted> commit cf2cb7845d6e101cb17bd62f8aa08cd514fc8988 upstream. XFS runs an eofblocks reclaim scan before returning an ENOSPC error to userspace for buffered writes. This facilitates aggressive speculative preallocation without causing user visible side effects such as premature ENOSPC. Run a cowblocks scan in the same situation to reclaim lingering COW fork preallocation throughout the filesystem. Signed-off-by: Brian Foster <redacted> Reviewed-by: Darrick J. Wong <redacted> Signed-off-by: Darrick J. Wong <redacted> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- fs/xfs/xfs_file.c | 1 + 1 file changed, 1 insertion(+)
--- a/fs/xfs/xfs_file.c
+++ b/fs/xfs/xfs_file.c@@ -729,6 +729,7 @@ write_retry: xfs_rw_iunlock(ip, iolock); eofb.eof_flags = XFS_EOF_FLAGS_SYNC; xfs_icache_free_eofblocks(ip->i_mount, &eofb); + xfs_icache_free_cowblocks(ip->i_mount, &eofb); goto write_retry; }
Patches currently in stable-queue which might be from hch@lst.de are queue-4.9/xfs-fix-inobt-inode-allocation-search-optimization.patch queue-4.9/xfs-try-to-avoid-blowing-out-the-transaction-reservation-when-bunmaping-a-shared-extent.patch queue-4.9/xfs-free-cowblocks-and-retry-on-buffered-write-enospc.patch queue-4.9/xfs-set-firstfsb-to-nullfsblock-before-feeding-it-to-_bmapi_write.patch queue-4.9/xfs-fix-quotacheck-dquot-id-overflow-infinite-loop.patch queue-4.9/xfs-remove-bli-from-ail-before-release-on-transaction-abort.patch queue-4.9/xfs-check-_btree_check_block-value.patch queue-4.9/xfs-don-t-allow-bmap-on-rt-files.patch queue-4.9/xfs-free-uncommitted-transactions-during-log-recovery.patch queue-4.9/xfs-don-t-crash-on-unexpected-holes-in-dir-attr-btrees.patch queue-4.9/xfs-fix-spurious-spin_is_locked-assert-failures-on-non-smp-kernels.patch queue-4.9/xfs-fix-per-inode-dax-flag-inheritance.patch queue-4.9/xfs-fix-multi-ag-deadlock-in-xfs_bunmapi.patch queue-4.9/xfs-release-bli-from-transaction-properly-on-fs-shutdown.patch queue-4.9/xfs-check-_alloc_read_agf-buffer-pointer-before-using.patch