From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0DAD9C27C75 for ; Tue, 11 Jun 2024 21:53:01 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 541526B00E6; Tue, 11 Jun 2024 17:53:01 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4F16B6B00E7; Tue, 11 Jun 2024 17:53:01 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3B88C6B00E8; Tue, 11 Jun 2024 17:53:01 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 1F6896B00E6 for ; Tue, 11 Jun 2024 17:53:01 -0400 (EDT) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id BCB58160B8D for ; Tue, 11 Jun 2024 21:53:00 +0000 (UTC) X-FDA: 82219958520.25.CBD7D2D Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf07.hostedemail.com (Postfix) with ESMTP id F1E0C4000E for ; Tue, 11 Jun 2024 21:52:58 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=C2bNg4Do; spf=pass (imf07.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1718142779; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=7pNMx83ihYRoVpGxqjkUO75LBzdFwAN8wUaCy9faDmg=; b=qjd+EECvMG4dzmZVpGjo2TA2By0/+dMG+lgJQNhkP3DgVQc9ttufXLp71c5k04JBErrV5f NHFKDWkdXT1Xf/V9UI49f3KqE1lhR+zLXcmaI7vzapKRZMoWWqNTgIt9j+gmkuA9fdF9ZB vCVsP7ZI9QSFxazoFvigiB6aa5VqnaQ= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=C2bNg4Do; spf=pass (imf07.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1718142779; a=rsa-sha256; cv=none; b=5Zzvf+xB+Ttdzcpj9L0K76YUuohgBxFe04WjOKyIBbv+9p4g8XuR8Y2REmN4isoZKXgU8Q lYI4z3kOhYImOujK6vXbR67kiynMRFHb/rQZmJ2vnp8N4dpwXieMitXZ9nca1jQZZLqhRv pI3JYfgE4Y6SzYVkJaWkwnqd8yL0lXk= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id DB1766118B; Tue, 11 Jun 2024 21:52:57 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 66CD1C2BD10; Tue, 11 Jun 2024 21:52:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1718142777; bh=bN3kTxm6Ndk0I7NTtl4/N+CXYAErUn5s3+b6HXKCZMk=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=C2bNg4DoM4HoolXmLSzJ1vZMdAExYVg2RPsmEocPT2zFiStkz6q6W01AmaaSbMtAw mpwMJmn0Ooh2s+oNjRJHJdjdMFykPBFOP79nDqqGmtkkhbe9dklllkFJIAqDLnP2Bq dWQYB4t8jq5o8Sti+judvhxj9aN4nWP5gQ1j9CCg= Date: Tue, 11 Jun 2024 14:52:56 -0700 From: Andrew Morton To: Kemeng Shi Cc: willy@infradead.org, linux-fsdevel@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v3] writeback: factor out balance_wb_limits to remove repeated code Message-Id: <20240611145256.41a857beb521df61cff1695a@linux-foundation.org> In-Reply-To: <20240606033547.344376-1-shikemeng@huaweicloud.com> References: <20240606033547.344376-1-shikemeng@huaweicloud.com> X-Mailer: Sylpheed 3.8.0beta1 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspam-User: X-Rspamd-Queue-Id: F1E0C4000E X-Rspamd-Server: rspam01 X-Stat-Signature: 7gds16whekgcor6rcdwzwzbu48w3t655 X-HE-Tag: 1718142778-722562 X-HE-Meta: U2FsdGVkX1+rB/mSC190gJVwRcRdTz6HN6FYH10IMkFu+iupf3vzvgipBxfmDc7jHKNxoNmI/glyHS+Icf5UDFot33vHhpkF4wZ3r7RCxfo3x5BtPt8/MlwA6LjW2/5rQFlmhSGQDn5lPEmisQmlmg6Gkuclb3CxArRNKlwf32Koco4p9yUOesPIRkCc/i4QodQFRGX2hSyCik7gZbn2zaLCcFXZ6Lu9ABk9Fa+h4pr+X3AczbSDENv/XIqOaNObEKwOUgiIBZ2P5GgLvRkhNiZM+rOpjbCY4QM6+2nWpzjbewNGVWsz+Ppo3jsxPqFH9miX9OwzHIDR6shV+Kyhxnvz8KMYHhWyMXcxPOZAlDZJh9OEF2BV3GvXKduZZSC3IvfqCGxfJ5NxtSoQctIiIN35Uvtoz0oouV/3ch1u4NSNZoWp0bUjyZEpTv8kDK0kB5DHgptFGyaMDNUO8oOshyP00ODSNFKGlBQj/8j9e86M2L5UX6IUvHVCXyrk5u2Dmm8Yob9YfBr2A8Dhmykq+EscQZC3TT/Ppxic0NGqYvIPy8ulH0+/pgz331bU1IFV+JaULw1hG5MbsIMTviQJhfYQt70Lbi64KsDFXQMrX3gDsoWUwEMQcQujHHwiMDyzT6Uqtt+IhmyMMdRTWtY+My03OScQN4qYR2SJ50k95pPniXWPKu4BRX6RYQIEkoMEl5Z1Xe2S+KWzHGc7gcbr8hCLOG2rVEFFM/mQd/afulBkqxOjN9H/0ZepWYnSY+6yY9h9xZR6jLx7TbYzrbB7qt7FAlVrIw8FkigjEp2t6mr0qCms0ou4UY3LHONXYxeY1kxrYeqZH7I3kZb8Pae7eqTDYFFrI5badMycnG40blYfr+CPfFz/iX1F9uc/1VnH6XLWphnvVaGvnp8sRSEotQ6p4EhEFCwmDsUQh9QEKKLULNXJCa8JzXOZcONeQkK+60EUz1nuCHKOu7mNJiM xtZGTk9q jLu6CJdpG82OL1z2cMuj1CMgtKWidO6948MudEzoPTUAlR5rtFZyVT6okvUZY/GWUK29wQVS7wmJPzkhZgdjTE3vU3nOx2CUV+XeWd6+D82pl/L4pJCmoVpkNcOHfrdSDEdmfaqiU1xRF9X8i/TIWTu3HULebjzsztJH2kX10Jid4sKITlraKLzszg2xVxacuFOyX/D4KbV0PwXxa3lukrsGBZOSTSiJuRft+KF/D+94dtT+yDk221AhEwOnHYlidk3JPiOr/vGY59+y5ab1wmka7c2sxdT3Xc4yyLV0o9VurbQMisyeGT2RHnVV9WwuC4w9wotYqxbuUk2M= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Thu, 6 Jun 2024 11:35:47 +0800 Kemeng Shi wrote: > Factor out balance_wb_limits to remove repeated code > > Signed-off-by: Kemeng Shi > --- > mm/page-writeback.c | 25 +++++++++++++++++-------- > 1 file changed, 17 insertions(+), 8 deletions(-) > > diff --git a/mm/page-writeback.c b/mm/page-writeback.c > index bf050abd9053..f611272d3c5b 100644 > --- a/mm/page-writeback.c > +++ b/mm/page-writeback.c > @@ -1783,6 +1783,21 @@ static inline void wb_dirty_exceeded(struct dirty_throttle_control *dtc, > ((dtc->dirty > dtc->thresh) || strictlimit); > } > > +/* > + * The limits fileds dirty_exceeded and pos_ratio won't be updated if wb is > + * in freerun state. Please don't use these invalid fileds in freerun case. s/fileds/fields/. I queued a fix for this. > + */ > +static void balance_wb_limits(struct dirty_throttle_control *dtc, > + bool strictlimit) > +{ > + wb_dirty_freerun(dtc, strictlimit); > + if (dtc->freerun) > + return; > + > + wb_dirty_exceeded(dtc, strictlimit); > + wb_position_ratio(dtc); > +} > + > /* > * balance_dirty_pages() must be called by processes which are generating dirty > * data. It looks at the number of dirty pages in the machine and will force > @@ -1869,12 +1884,9 @@ static int balance_dirty_pages(struct bdi_writeback *wb, > * Calculate global domain's pos_ratio and select the > * global dtc by default. > */ > - wb_dirty_freerun(gdtc, strictlimit); > + balance_wb_limits(gdtc, strictlimit); > if (gdtc->freerun) > goto free_running; Would it be neater to do if (balance_wb_limits(...)) goto free_running; ? That would require a balance_wb_limits() comment update and probably name change. Just a thought.