]> www.infradead.org Git - users/jedix/linux-maple.git/commit
xfs: fix and streamline error handling in xfs_end_io
authorDarrick J. Wong <darrick.wong@oracle.com>
Tue, 5 Dec 2017 00:18:30 +0000 (16:18 -0800)
committerJack Vogel <jack.vogel@oracle.com>
Mon, 9 Apr 2018 23:02:00 +0000 (16:02 -0700)
commitb6175ff1fc4474e972df7f3e4d96698a982eb05c
treeedf0a0644ed36d49f1d2615d0f0d98480dde3830
parentbe284789c7655a3a4fff108af1c1f102e19039ca
xfs: fix and streamline error handling in xfs_end_io

[ Upstream commit 787eb485509f9d58962bd8b4dbc6a5ac6e2034fe ]

There are two different cases of buffered I/O errors:

 - first we can have an already shutdown fs.  In that case we should skip
   any on-disk operations and just clean up the appen transaction if
   present and destroy the ioend
 - a real I/O error.  In that case we should cleanup any lingering COW
   blocks.  This gets skipped in the current code and is fixed by this
   patch.

Orabug: 27609404
Originally-Signed-off-by: Christoph Hellwig <hch@lst.de>
[darrick: heavily modified since we don't support cow in uek4...]
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: wen.gang.wang@oracle.com
Reviewed-by: Allison Henderson <allison.henderson@oracle.com>
fs/xfs/xfs_aops.c