Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp950080pxb; Wed, 3 Mar 2021 22:13:27 -0800 (PST) X-Google-Smtp-Source: ABdhPJx+kJyNGBAC1hVQu06H+aWiA5AX/iJAfYQvXvAoW5B5vc9kuS5n/cjq/P8hktSQlIvhljet X-Received: by 2002:a50:fd8b:: with SMTP id o11mr2615989edt.346.1614838406787; Wed, 03 Mar 2021 22:13:26 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1614838406; cv=none; d=google.com; s=arc-20160816; b=XxfWVS2EGK04OAR84JuPlSra0IuErb+J210K7YXYcxUcZosKok2mEgmsIPcnLgHPCW C2pmViDAk2foTxhxulaQObZ7FZIpmIoEgBthf/Gy41iCw4dISqOm5V36nk4L57qyGwNZ fBEyKgE5joscDGQIwv44f3TGirOGcIggLB5Aoq+tabTZ745HMaIq0owDo9otNi03ME4x nTJxX+W2hjWgFc9+BIXwsmkY8FqP5hYu7ZkaKhCBJAg8J7CXLNHtXiWIYpux+gPfcpjH Rb2/gwAaqv0WzaKxOgx8Ch891MmMeR7b+m0m5P21ko7L1Hk5Jc1395qcURgKCxf8ofay M78Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from :dkim-signature; bh=OPG3GVG7sSDGQxYhC6+zVbtEJXQAdC07eA7ZoSNv4No=; b=Bfz0H6OGGUAQjytjEp5U0TI+b6FFlh6tGT95QgwnBznnoKRqbihzhHJ+TBahJm1f5l sNuehhR1nDGdGSjH8RU6UqhTP4L30jTv+vpK50kzfwdCiKS4slf2f3+ijMa7nZxSfRhh aom4ZdqY/y8/ZE+e7/dQAa7jAVSz8hJUu8Ne3w5BETgA4wH9EZ+2tnzrRTXJJscQUCay gKGH47D7luvTscO9mKL8GfHtzv4FyHMf5ryNTuDXwDvRHGAaCT8rege9W5v6gLPqoluI 7UjEHVhBcwrXz7RcYtoYpMLHDF1e4WQlfDGHwk0kP0dlragSHXKcuYNcjq0gFnd0TYD2 ZI5Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@126.com header.s=s110527 header.b="Qx/XyouH"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=126.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id p10si9543942edm.261.2021.03.03.22.13.04; Wed, 03 Mar 2021 22:13:26 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@126.com header.s=s110527 header.b="Qx/XyouH"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=126.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1383439AbhCBLfK (ORCPT + 99 others); Tue, 2 Mar 2021 06:35:10 -0500 Received: from m15114.mail.126.com ([220.181.15.114]:41568 "EHLO m15114.mail.126.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1442208AbhCBLVn (ORCPT ); Tue, 2 Mar 2021 06:21:43 -0500 X-Greylist: delayed 5661 seconds by postgrey-1.27 at vger.kernel.org; Tue, 02 Mar 2021 06:21:24 EST DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=126.com; s=s110527; h=From:Subject:Date:Message-Id; bh=OPG3GVG7sSDGQxYhC6 +zVbtEJXQAdC07eA7ZoSNv4No=; b=Qx/XyouHvf6y0/pucxfUJguPL7uEZFS9Wm amleEYwiSrEUwrTyWJXf804BMBo04eKHEBzfa8GlTRL6sYCE6ZjKAIGlEszMaspu C33nM5XhA0GQ7x5PkFgLrGsXd+MxUsqLi8jV/EfUHdqeai1Qc9iffu1uZ9YP7+c8 /DhMwygEg= Received: from pek-lpd-ccm3.wrs.com (unknown [60.247.85.82]) by smtp7 (Coremail) with SMTP id DsmowACXnW1CCT5gLDO0OQ--.27060S2; Tue, 02 Mar 2021 17:45:44 +0800 (CST) From: Zhaolong Zhang To: Theodore Ts'o , Andreas Dilger Cc: linux-ext4@vger.kernel.org, linux-kernel@vger.kernel.org, Zhaolong Zhang Subject: [PATCH] ext4: fix bh ref count on error paths Date: Tue, 2 Mar 2021 17:42:31 +0800 Message-Id: <1614678151-70481-1-git-send-email-zhangzl2013@126.com> X-Mailer: git-send-email 1.8.3.1 X-CM-TRANSID: DsmowACXnW1CCT5gLDO0OQ--.27060S2 X-Coremail-Antispam: 1Uf129KBjvdXoWrtrWrGF1ruF13ZFW5CFyxuFg_yoW3tFX_G3 4xXF48Gws8Xws7uws8Gw13Xrn2vrW8Krs5uF97ta15tFyjyr98CrnxAFZxZF1UWF4Sgr98 Gr1xZF1IkF92gjkaLaAFLSUrUUUUUb8apTn2vfkv8UJUUUU8Yxn0WfASr-VFAUDa7-sFnT 9fnUUvcSsGvfC2KfnxnUUI43ZEXa7xRRT5l5UUUUU== X-Originating-IP: [60.247.85.82] X-CM-SenderInfo: x2kd0wt2osiiat6rjloofrz/1tbitQhJz1pEDFNYdgAAsU Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org __ext4_journalled_writepage should drop bhs' ref count on error paths Signed-off-by: Zhaolong Zhang --- fs/ext4/inode.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index 650c5acd2f2d..a79a9ea58c56 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c @@ -1938,13 +1938,13 @@ static int __ext4_journalled_writepage(struct page *page, if (!ret) ret = err; - if (!ext4_has_inline_data(inode)) - ext4_walk_page_buffers(NULL, page_bufs, 0, len, - NULL, bput_one); ext4_set_inode_state(inode, EXT4_STATE_JDATA); out: unlock_page(page); out_no_pagelock: + if (!inline_data && page_bufs) + ext4_walk_page_buffers(NULL, page_bufs, 0, len, + NULL, bput_one); brelse(inode_bh); return ret; } -- 2.26.1