Return-Path: Received: from mail.kernel.org ([198.145.29.99]:39534 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751995AbeERMeY (ORCPT ); Fri, 18 May 2018 08:34:24 -0400 From: Jeff Layton To: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org Cc: viro@ZenIV.linux.org.uk, willy@infradead.org, andres@anarazel.de Subject: [RFC PATCH 07/11] ext4: have sync_fs op report writeback errors when passed a since pointer Date: Fri, 18 May 2018 08:34:11 -0400 Message-Id: <20180518123415.28181-8-jlayton@kernel.org> In-Reply-To: <20180518123415.28181-1-jlayton@kernel.org> References: <20180518123415.28181-1-jlayton@kernel.org> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: From: Jeff Layton When ext4_sync_fs gets a non-NULL since pointer, use it to report errors vs. the errseq_t in the super_block. This allows us to properly report an error to sync_fs when any inode has failed writeback since we last checked for it. Signed-off-by: Jeff Layton --- fs/ext4/super.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fs/ext4/super.c b/fs/ext4/super.c index 896ddf8c3421..a5f41d31611f 100644 --- a/fs/ext4/super.c +++ b/fs/ext4/super.c @@ -4898,6 +4898,8 @@ static int ext4_sync_fs(struct super_block *sb, int wait, errseq_t *since) } out: ret2 = __sync_blockdev(sb->s_bdev, wait); + if (since) + ret2 = errseq_check_and_advance(&sb->s_wb_err, since); return ret ? ret : ret2; } -- 2.17.0