Received: by 2002:a05:6a10:a0d1:0:0:0:0 with SMTP id j17csp1200373pxa; Thu, 20 Aug 2020 05:28:56 -0700 (PDT) X-Google-Smtp-Source: ABdhPJytsuipfJAULY51grp49jduZ1gKZ1ikhNjNAci3JxU43f2459vCBWGrf1lrcAobrsBOAxIj X-Received: by 2002:a17:906:fad2:: with SMTP id lu18mr3078521ejb.15.1597926535879; Thu, 20 Aug 2020 05:28:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1597926535; cv=none; d=google.com; s=arc-20160816; b=bME1LL4pm1dS69XWqAy2wcDtrX+aiowR36+p8X0Rdq0iAsoKdBl9gZkTt+LJzrWGSd Riwc5XeeYJpZVtREuaMmaFJH1nxeo8/PvCmRGaYCeavtttgZhrHzHwgq+lwKcOtv0cAR rbUPh/w64Jwf5d0eV7H1kNSmMdQUG0V0JG7LGrU0Hj82jiK8haKQr7wlqhSnIUGyN+bc Op+LmV5+WBRGdC6sUSP+Ur9wevNYT8SzHf+a7/l2Yv1UODxm21TNWbNcadcqo5+laLOq WwdwMcJUVSbTHSpyUKwbI+6WEnj7Vt1xZIfHIG+YhlpVF0cT1QcCynwxxTu89Qe9+9su sW5g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=w38VlwpS7ZEjKWrlVyi9uEbIXcug1WspV4t2ZPtFpZc=; b=B1ZCqT708LVjeygHKWPTsy8w1yzBayf5ab7dheewGfK/3nDLR4oeRRNrgHygTggYM4 0pa7ZsXJOHe7rgbRzpzyv9RTw3Pfa0dfP0TrMw56cPLuIVD2daYLiRgD2kKlhTaB1JPW oPXvOLQwUHivyDDzK/6uMv3lshFe1IA0pAacfhXe4NqOe0OZejvXseDjMUwcn4eT1xxc TQw3MqD/UXCE1iHuRsElBDFJ4E5IIocbAQb6ut5tVQ59avJLn+DS+TIlBCEUDcfQfqO0 D1TabbV9tj+EojSNoZ/UMVEUVG4p2EuTx1qabfBNQKeZdCuIpvJw7eIV6RzKU2d8ktl2 6ZmA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=QppLR81f; 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=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id q26si1071605eja.259.2020.08.20.05.28.32; Thu, 20 Aug 2020 05:28:55 -0700 (PDT) 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=@kernel.org header.s=default header.b=QppLR81f; 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=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730155AbgHTMZ4 (ORCPT + 99 others); Thu, 20 Aug 2020 08:25:56 -0400 Received: from mail.kernel.org ([198.145.29.99]:34884 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729143AbgHTJxJ (ORCPT ); Thu, 20 Aug 2020 05:53:09 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 59B582067C; Thu, 20 Aug 2020 09:53:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1597917188; bh=N7hUzOKg89hfCvlCfJ0ZbjFa5U76+UBt9Hgv6aW9NgY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=QppLR81f0zaMwlWN6+5AggINSla+ChiD/8ha61H7YB4UT3hdXJN99OmiAVgEgiJq7 f18hiVe2rGp/dL1IfqiCj+DxqbsawK459+aytrXZwK6s+MGHSgbpIhWM6hGJcVUkRS EISj74JD+g5NXDa07H3KHHcbgDZ2iaWIIY2XZ1SU= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Mikulas Patocka , Jan Kara Subject: [PATCH 4.19 34/92] ext2: fix missing percpu_counter_inc Date: Thu, 20 Aug 2020 11:21:19 +0200 Message-Id: <20200820091539.376655618@linuxfoundation.org> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20200820091537.490965042@linuxfoundation.org> References: <20200820091537.490965042@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Mikulas Patocka commit bc2fbaa4d3808aef82dd1064a8e61c16549fe956 upstream. sbi->s_freeinodes_counter is only decreased by the ext2 code, it is never increased. This patch fixes it. Note that sbi->s_freeinodes_counter is only used in the algorithm that tries to find the group for new allocations, so this bug is not easily visible (the only visibility is that the group finding algorithm selects inoptinal result). Link: https://lore.kernel.org/r/alpine.LRH.2.02.2004201538300.19436@file01.intranet.prod.int.rdu2.redhat.com Signed-off-by: Mikulas Patocka Cc: stable@vger.kernel.org Signed-off-by: Jan Kara Signed-off-by: Greg Kroah-Hartman --- fs/ext2/ialloc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) --- a/fs/ext2/ialloc.c +++ b/fs/ext2/ialloc.c @@ -80,6 +80,7 @@ static void ext2_release_inode(struct su if (dir) le16_add_cpu(&desc->bg_used_dirs_count, -1); spin_unlock(sb_bgl_lock(EXT2_SB(sb), group)); + percpu_counter_inc(&EXT2_SB(sb)->s_freeinodes_counter); if (dir) percpu_counter_dec(&EXT2_SB(sb)->s_dirs_counter); mark_buffer_dirty(bh); @@ -531,7 +532,7 @@ got: goto fail; } - percpu_counter_add(&sbi->s_freeinodes_counter, -1); + percpu_counter_dec(&sbi->s_freeinodes_counter); if (S_ISDIR(mode)) percpu_counter_inc(&sbi->s_dirs_counter);