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 AE4CBC61D85 for ; Tue, 21 Nov 2023 16:50:55 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2B2D76B04B1; Tue, 21 Nov 2023 11:50:55 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 2630B6B04B3; Tue, 21 Nov 2023 11:50:55 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 12C376B04B4; Tue, 21 Nov 2023 11:50:55 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id F3B9D6B04B1 for ; Tue, 21 Nov 2023 11:50:54 -0500 (EST) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id C130E120544 for ; Tue, 21 Nov 2023 16:50:54 +0000 (UTC) X-FDA: 81482550828.20.1BCE54B Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55]) by imf28.hostedemail.com (Postfix) with ESMTP id 41A4DC0014 for ; Tue, 21 Nov 2023 16:50:51 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=Fj+SX4vd; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf28.hostedemail.com: domain of chrisl@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=chrisl@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1700585452; 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=KAxtWpzK81kXYb0ctFh98qsvRwpoa426B7zOq4D5210=; b=kc49HvOw6Np7ztIy35sLRFPke4jVOJKylFgOlbhJAjKuK8Fw0QwVy4bvJM7auVqGBaycDx fThNrrOJEyRdBHUR8tirfGEaQ6BdP5EDn1x/gox+7TMeeHsSG2X/eVpXFGe7LVgUDNiBkY fMuP1YtlGD88MeWEKyDgEB9Brfm/AWI= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=Fj+SX4vd; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf28.hostedemail.com: domain of chrisl@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=chrisl@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1700585452; a=rsa-sha256; cv=none; b=UNuPKUpjLj5SB47DK4dD4cRylR4Z+if0Wrw+1/xc7XBNBbddhYFRHF34x0bQQdeg/L7AR7 a3VPnVxPMqvyALiblu5eeZ0FECMrqdUE7YohRe8f1pgbeg3sc76pW9hptMqtpPQM5FMNvD dQ8n47Ow4fTB/O0ZI7gm8V3aR6eUg0k= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id B41E1CE1C42 for ; Tue, 21 Nov 2023 16:50:47 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 45DD8C43395 for ; Tue, 21 Nov 2023 16:50:47 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1700585447; bh=KpSLWpoYDnujgiguvqs0R2yyZ8foM4ACeYZogrkU4I0=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=Fj+SX4vd92/6IemEiaZl2gnc4DSB2SfGdJOOqij4ynK4zkVgM7aRMiRUzjuWiIyZh Ewnanqnc+KrE260cYqPD5RM0DTRyDBkOBvwDUevGWzWcdfKbrhuHriLTLI7GcRHSIi QOfSvA8+uhUmPkp+8SuuXD9SdD3aQb961yIzH16NDjhk0irH0j4wtqPth50VLMqti4 fI31pVxWLVwUnTKVxIUoi/ENz4G/qEo8h6IHHfkz/UbQzdNE1pC9GoPxD5AjwrSeXo NcCUWFj1Ux1f320IlRuIlrt5d/bWx4y7lWkrSQmLzwqG73iGiv++e+xNYFekFnXk1S 7HtdRJ7DW4qVA== Received: by mail-pf1-f177.google.com with SMTP id d2e1a72fcca58-6be1bc5aa1cso5868929b3a.3 for ; Tue, 21 Nov 2023 08:50:47 -0800 (PST) X-Gm-Message-State: AOJu0YwdT5ma+o+HMbvsx8QCgYxpuj4YX8GHN8CHNnX7eY+nmHOrmdvl y4ER8gB6zq0T5tMIPi1ngh66ZflI8D+iGP7YzrdonA== X-Google-Smtp-Source: AGHT+IGLX8mYLdYfH8QqAbn+qSj6k0Gjc4JdO2QcOM6cfVZXNWpqQt9x+BXh4uZHmsdQxNX018/aYoCkLbjJbJQq20U= X-Received: by 2002:a05:6a20:394a:b0:18b:284f:e725 with SMTP id r10-20020a056a20394a00b0018b284fe725mr114850pzg.16.1700585446584; Tue, 21 Nov 2023 08:50:46 -0800 (PST) MIME-Version: 1.0 References: <20231119194740.94101-1-ryncsn@gmail.com> <20231119194740.94101-14-ryncsn@gmail.com> In-Reply-To: <20231119194740.94101-14-ryncsn@gmail.com> From: Chris Li Date: Tue, 21 Nov 2023 08:50:35 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH 13/24] swap: simplify swap_cache_get_folio To: Kairui Song Cc: linux-mm@kvack.org, Andrew Morton , "Huang, Ying" , David Hildenbrand , Hugh Dickins , Johannes Weiner , Matthew Wilcox , Michal Hocko , linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Stat-Signature: phmbkcjra81t18iz6hqmtyfocchkabtx X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 41A4DC0014 X-HE-Tag: 1700585451-839879 X-HE-Meta: U2FsdGVkX1//dAcKWnjSw9PKWGM9Y3ISnQcHrvbFoIbzOYLMnwZOcegNotHLIZ1AxNkQV6dZT24eo1E2Mf5Eo7gN0MsV7LJ+onNtpg+XgHyQVJvLTP8tSIZj6CIA/ti9Ur/8wPF+fTBrqoqQIOqqw/x5IUnKuJKFUoaUpIbvvB6t/RtOcExUrC47P718i3hzTidZ2kazBO1qKaUM2T9Ar4ho+d/4xUEKYMpYW5OOCkVNfUWgXmyVV2CUKgGEkbJU+C9PfCvriuL33TVagkkhyJQ2QhgjxLlMGr5tBkwoN0T5AyGntYbNw+zzf7RUNegEeO6boRYSVmE0/ij0Voe+bOXpWFvWVq50XOzJ9wOpY+GkqRUMPa8fKDYffO8MeKWNGvFYHenHs4jc6g28eUZvOSWCBb5FIaJ9c97ZSoL+5X8xUp0d/1TxldT5ot6q8XBBsR6k4BP2xYfOe/NXVcM3ehIoaTKF3sK5tlQIgJ7lTyyKOYohdYtH6avlrvyddBmuMIQDnapNr8Ys53qZJBHTdno/3EPYCxd/WgzxGe91kuWlWJl33LtGAEGn8ZClTcfal/p3dP2+zRGPRMcIfn0bB5IX2YyVNcuY41vNMkTLyuZKW8JiBc/zwRLW4j6yS6cYMaZVf1DGuUUtLWA/ovih5TrIXm5NByskOTY8aJ72RfldxF7g57H0OsIHKztuXDCN+2yI+E4cckwev6ioi2MwT9kcf4AHnx7f0JbTJ5HZm7Q+4v1+SA4br+Xn4AighzBnvRdf6/kjzYPrEFLiL1i+40frevNs8/jYWHEXofKDTaFasd9+HoB3Z6+eT1ACbbw0CYiHveDS7xtdio/oOszMH+/4BO9r9oB594zuTRhACl2LDSrFL32uLCn2dP3/1BRFAfIRWhYCVw6IdEJ0WAryswsjomBOSrb0shdtwlSjOIxz9FFTHAZPvS/K3rEOPZTa3OfE9kFMXW8Kt052Tl9 UHShc9z+ TR7Az7LkVbswjAHWye14O/q3k2WWC3RvCxLLNGM315VwzZEmyF05dhYlnzQeVtbYOgF5FQ2tfFd3tgsxu0v+NlPEpOdnunwl3HZZPhGEErDhizsx7YnPFfTVqNojiQPDEqv0Ec6ha4P0xVazfaNFFlb+6FvnhoPAwEPrX6fByGBOx7k7p1g/C3gCWv1LU94iNL7p1PPorDQbCyi5GYgyZhMXw+SZqRLDutCLONMi2tu9Kf8bFl6Nn7Rphka5ijzixDPgW2LhonNJdeLdHl/pztBaqvbT0YeFrbt7sg0bmXRcNDFwGQAaEynCk7GHlnROBOBCHHkL2xcUwyLhzpmA1hzbaig== 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: Hi Kairui, I agree the resulting code is marginally better. However, this change does not bring enough value to justify a stand alone p= atch. It has no impact on the resulting kernel. It would be much better if the code was checkin like this, or if you are modifying this function, rewrite it better. In my opinion, doing very trivial code shuffling for the sake of cleaning up is not justifiable for the value it brings. For one it will make the git blame less obvious who actually changed that code for what reason. I am against trivial code shuffling. Chris On Sun, Nov 19, 2023 at 11:48=E2=80=AFAM Kairui Song wro= te: > > From: Kairui Song > > Rearrange the if statement, reduce the code indent, no feature change. > > Signed-off-by: Kairui Song > --- > mm/swap_state.c | 58 ++++++++++++++++++++++++------------------------- > 1 file changed, 28 insertions(+), 30 deletions(-) > > diff --git a/mm/swap_state.c b/mm/swap_state.c > index 91461e26a8cc..3b5a34f47192 100644 > --- a/mm/swap_state.c > +++ b/mm/swap_state.c > @@ -336,41 +336,39 @@ static inline bool swap_use_vma_readahead(struct sw= ap_info_struct *si) > */ > struct folio *swap_cache_get_folio(swp_entry_t entry, struct vm_fault *v= mf) > { > + bool vma_ra, readahead; > struct folio *folio; > > folio =3D filemap_get_folio(swap_address_space(entry), swp_offset= (entry)); > - if (!IS_ERR(folio)) { > - bool vma_ra =3D swap_use_vma_readahead(swp_swap_info(entr= y)); > - bool readahead; > + if (IS_ERR(folio)) > + return NULL; > > - /* > - * At the moment, we don't support PG_readahead for anon = THP > - * so let's bail out rather than confusing the readahead = stat. > - */ > - if (unlikely(folio_test_large(folio))) > - return folio; > - > - readahead =3D folio_test_clear_readahead(folio); > - if (vmf && vma_ra) { > - unsigned long ra_val; > - int win, hits; > - > - ra_val =3D GET_SWAP_RA_VAL(vmf->vma); > - win =3D SWAP_RA_WIN(ra_val); > - hits =3D SWAP_RA_HITS(ra_val); > - if (readahead) > - hits =3D min_t(int, hits + 1, SWAP_RA_HIT= S_MAX); > - atomic_long_set(&vmf->vma->swap_readahead_info, > - SWAP_RA_VAL(vmf->address, win, hi= ts)); > - } > + /* > + * At the moment, we don't support PG_readahead for anon THP > + * so let's bail out rather than confusing the readahead stat. > + */ > + if (unlikely(folio_test_large(folio))) > + return folio; > > - if (readahead) { > - count_vm_event(SWAP_RA_HIT); > - if (!vmf || !vma_ra) > - atomic_inc(&swapin_readahead_hits); > - } > - } else { > - folio =3D NULL; > + vma_ra =3D swap_use_vma_readahead(swp_swap_info(entry)); > + readahead =3D folio_test_clear_readahead(folio); > + if (vmf && vma_ra) { > + unsigned long ra_val; > + int win, hits; > + > + ra_val =3D GET_SWAP_RA_VAL(vmf->vma); > + win =3D SWAP_RA_WIN(ra_val); > + hits =3D SWAP_RA_HITS(ra_val); > + if (readahead) > + hits =3D min_t(int, hits + 1, SWAP_RA_HITS_MAX); > + atomic_long_set(&vmf->vma->swap_readahead_info, > + SWAP_RA_VAL(vmf->address, win, hits)); > + } > + > + if (readahead) { > + count_vm_event(SWAP_RA_HIT); > + if (!vmf || !vma_ra) > + atomic_inc(&swapin_readahead_hits); > } > > return folio; > -- > 2.42.0 > >