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 5054CC46CD2 for ; Tue, 30 Jan 2024 23:47:43 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BBC436B0071; Tue, 30 Jan 2024 18:47:42 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B6C4A6B0074; Tue, 30 Jan 2024 18:47:42 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A5B3D6B0075; Tue, 30 Jan 2024 18:47:42 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 97E6B6B0071 for ; Tue, 30 Jan 2024 18:47:42 -0500 (EST) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 26090120BE7 for ; Tue, 30 Jan 2024 23:47:39 +0000 (UTC) X-FDA: 81737617038.21.EDFF34C Received: from mail-io1-f49.google.com (mail-io1-f49.google.com [209.85.166.49]) by imf30.hostedemail.com (Postfix) with ESMTP id 6333680021 for ; Tue, 30 Jan 2024 23:47:37 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=HZeIGHp5; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf30.hostedemail.com: domain of nphamcs@gmail.com designates 209.85.166.49 as permitted sender) smtp.mailfrom=nphamcs@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1706658457; a=rsa-sha256; cv=none; b=gXw3zG85Uo5NjpQ7WX9N7pr+DNf6HXt7Pp74fBtYDswNQdnqz7ua/vZrHzskawGBxAaQ39 e2bSNaHsV1c+WEhOX0A2Eh23CFWgLU3ooJaEaTibsYozc+cJ2Dk/lUHcUTAggvm8CkIuOL +SdElkcWtYDkdJotCAErRVdp6IqFCMA= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=HZeIGHp5; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf30.hostedemail.com: domain of nphamcs@gmail.com designates 209.85.166.49 as permitted sender) smtp.mailfrom=nphamcs@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1706658457; 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=P926dzBusyOMI+nwQKA18OR1CDveRDAGUvH0omnrkLM=; b=IrsY2I300mnFv0q0xHGlv55JPMutlABKe4JlfTZs7vP737c08vLhVni0nKE4COKgkLKDJJ QBZ6iVdqlNifAMUPm/iVmDu3UVdlIWHdcSL3eWtKFLTe4wp0GEN62n8KuuCFaGK+nd9gkX ZmPKPjpncoVvoQ8VnG6K2AA37yYaBk4= Received: by mail-io1-f49.google.com with SMTP id ca18e2360f4ac-7bc32b0fdadso195399139f.2 for ; Tue, 30 Jan 2024 15:47:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1706658456; x=1707263256; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=P926dzBusyOMI+nwQKA18OR1CDveRDAGUvH0omnrkLM=; b=HZeIGHp5PybR4/tF2M8mdwLRTqMZU05XSv0ZG7pvEt0ZsXU7OqSxWhuHoDgA2VDKcn MKfnKVYsZqIDY84O0dwJqqwzx9zGNLmTlNXUaOMJ+l9UC/+469emrCOrAffcd+5c7Zic UsEzrbLBKIj3XIM/SIqQzEx9VOir90i/q1Yb4xrYmWgbK9gUnkUdq0D5ynvJ6df8uQYi oRVuEroXZ4rUqfrkP5Dhy9gA0bVxy/YSpOla3HQlB5G6HBcdD65/8PXEI5yNFR8TXZUm T7aPIZ1JpfK+5C3cNOs3JSBlplAL94rI96XTbSQlsDBHrj9sQys+mAqnFXuUVYCy4Crp Xdxw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706658456; x=1707263256; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=P926dzBusyOMI+nwQKA18OR1CDveRDAGUvH0omnrkLM=; b=m34QYi5uCKP6CAz+R2zYTkqPgTVsoX91OVbz631zmu/W91JB/Eca74ZczZ+XdOkTfW hbzzlXzH/AT5s26ot7L7HB0Y6U3xWGvMtxXV8sM7jteIRPVPT41WK9wdkI2SdpcEZnOi jT+ez1PuChxn1cmLd+2dkj7gFbX/Wz3hDTdUxX7FGHHbtkiLcvwlN+Vk4CUNpiIg5x1m gAyCmCOqS/YNTaIyCeFmDSbop+7cg5sV/jpYX1tZAwF2dFHhsgzarNSVHb4AOZ689o7M +y0f0aSRlZzsEfNg5tuGdtR3RzYEINRZJpuqfnmSgq20RqiWdmYBvMQfmY8F50dcpjTh APqA== X-Gm-Message-State: AOJu0Yx5WnUzdVAMRF1npEoHK0R0QsPDTCOTZe4ESqLXB3wm9tvTtvjD qRs/NImHvBOEKJZwkzf7w3iL3YLfbdAHLsXjCQB4TTRRSU6Eus9Cbkne8EFG4qtn9om+JoGPt/p 6jlFTiJi/dWGk7pte7+bpWEcdh5I= X-Google-Smtp-Source: AGHT+IE6hhL0p8l721bL0HMuyYbB4TNqYvZn9RxTxhaspcjukhJECaYqtic9Xj2gjVCyuLyrZLK5kAvKlUdiEl8bOEU= X-Received: by 2002:a6b:5f01:0:b0:7be:e863:483f with SMTP id t1-20020a6b5f01000000b007bee863483fmr132859iob.11.1706658456452; Tue, 30 Jan 2024 15:47:36 -0800 (PST) MIME-Version: 1.0 References: <20240130014208.565554-1-hannes@cmpxchg.org> <20240130014208.565554-15-hannes@cmpxchg.org> In-Reply-To: <20240130014208.565554-15-hannes@cmpxchg.org> From: Nhat Pham Date: Tue, 30 Jan 2024 15:47:25 -0800 Message-ID: Subject: Re: [PATCH 14/20] mm: zswap: function ordering: public lru api To: Johannes Weiner Cc: Andrew Morton , Yosry Ahmed , Chengming Zhou , linux-mm@kvack.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 6333680021 X-Stat-Signature: 6xxzzwt5wmsbdxspm8y6o4uqa4tfcbmq X-HE-Tag: 1706658457-881813 X-HE-Meta: U2FsdGVkX1+Px2O/6G/YuudynZYQOSL+Y3UgLp9Bu21/WvewhTxyNt1DeaVlNztaVQJ5hcgHtxiVu/AojZg5wQb9DBA2fmgGqPmXESXYRQSrl0BY8gLAKc/X5uESnw+HdFsUDBatxRT8Ti3aufya9xvizk1ilGaV7leVwuFb38e34KfKAJ1BivTHbYBk/sm7RA7q/xlB40X/qHWsS22zBAAm/UCK4RZ07gQkazjaxkf9Fk2qmCWZnyX4NfnV+N6WdcutMgvYHVhKrwvJRN91jcJ+/nMvx6BQQiS9KLoDw6H69C4M0MSTodvRyIkLAFrv56qz2NwW7cRWaWGTCMVdYT7GInnmVSotl3SJYE2JKbKcreHnSn7jRSjdTsUq8+4D9LGVsMiGEVKSjj1uvqXDNuNBMWYMb54LgD2LKJsKKFkt6B1Por0+H9yjnYMQt7lFGyEfGhCS6kXYBgY7qxjoveTf6ocEA2erupoEIBUK94V3DOOLR6qk1rzNPCLx2G5WeGzdnG7gOKpUoFEaG+PMnFE7EvVGVGTkYN5WHnceqF1tPNIAyiu7Igz1/qAebVbA9ut9ZEE1tb8n6UEBezWtOpDWe3clbQHCKUN7qH/qdH3lCf7Z0QFmKh468px1LCHLECCSqC/sYngZ8V+UWx5kfv6Pram/mgR4XQrT3EKV41DXL88vbHnHhgHttOVC9dVXIayi0l5d9u/uBy0qx494OGtH5IsNebg0TN3FVnmCmT/UcHGDekFzk3CmLCbtbIn8lmGPOt+aZ0+meLENpwzHBPABfEBRALVD6S8VGvwdFEtHVP63lwAtK7TfLMS03RMXwmB9mwMBXxkgxBjF1LgN0rxqGYjgzBGEFLIcHdblm1xTpTEAhkWMXBdszpW58W2+siW3iEmA2pFu3FGcma+5HoO8SeaYVL30xxXxy9IFhwBL4vIm/CMw796n4VNMEOzbVNxVVnbX6qn4TJH69IQ qUp8U6/3 ChUzHuOynas+exJTeiLoaT6s3kP+Jrm9de2QiQkeIN0QirN2aeb8N9wBdYQyOA7h2+zJCp+IVFb2cMGBo8DR6gvRKBg6Vm6NMVikQlFV7+6PhOG8KAbABUf662IOda8BS7X5KNVlQcCtuI+a81b9k4d9oXg2BaP5D0ieR4Y4PLCdAmCJaOFtACgKUVGBSnOyaCCkyOhppGpFSc5aXYNk3N/DT5/9ZvkkEGYX8sGWkS9RPKmAh0yGTsUWOM8G0PoViQN3E3qXXU38o/VqSwqfVtA0fhkwte44zrbQvVjoMzSvHvBjr/LzrDvbD0cgGqnic3OYF6REZS5J0vuKOHwvCkKxUVcQsNYR911LJU6EevMCD0uwesRp4RlFiOPxZTM0ygraOBlDs8EesdHyW3rp+g9AAa15fCPpiUC+afxJ4OKAsjEoieO39g28tUw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000048, 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 Mon, Jan 29, 2024 at 5:42=E2=80=AFPM Johannes Weiner wrote: > > The zswap entry section sits awkwardly in the middle of LRU-related > functions. Group the external LRU API functions first. > > Signed-off-by: Johannes Weiner > --- > mm/zswap.c | 37 +++++++++++++++++++------------------ > 1 file changed, 19 insertions(+), 18 deletions(-) > > diff --git a/mm/zswap.c b/mm/zswap.c > index e650fc587116..511bfafc1456 100644 > --- a/mm/zswap.c > +++ b/mm/zswap.c > @@ -746,6 +746,10 @@ static int zswap_enabled_param_set(const char *val, > return ret; > } > > +/********************************* > +* lru functions > +**********************************/ > + nit: looks like there are 2 "lru functions" headers after this patch? You remove the "lruvec functions" header, then add another "lru functions" header it seems. The next patch removes one of them, so end result is fine I guess - just seems a bit odd. That asides: Reviewed-by: Nhat Pham > /* should be called under RCU */ > #ifdef CONFIG_MEMCG > static inline struct mem_cgroup *mem_cgroup_from_entry(struct zswap_entr= y *entry) > @@ -764,6 +768,21 @@ static inline int entry_to_nid(struct zswap_entry *e= ntry) > return page_to_nid(virt_to_page(entry)); > } > > +void zswap_lruvec_state_init(struct lruvec *lruvec) > +{ > + atomic_long_set(&lruvec->zswap_lruvec_state.nr_zswap_protected, 0= ); > +} > + > +void zswap_folio_swapin(struct folio *folio) > +{ > + struct lruvec *lruvec; > + > + if (folio) { > + lruvec =3D folio_lruvec(folio); > + atomic_long_inc(&lruvec->zswap_lruvec_state.nr_zswap_prot= ected); > + } > +} > + > void zswap_memcg_offline_cleanup(struct mem_cgroup *memcg) > { > struct zswap_pool *pool; > @@ -798,24 +817,6 @@ static void zswap_entry_cache_free(struct zswap_entr= y *entry) > kmem_cache_free(zswap_entry_cache, entry); > } > > -/********************************* > -* zswap lruvec functions > -**********************************/ Here's the removed zswap lruvec functions header. > -void zswap_lruvec_state_init(struct lruvec *lruvec) > -{ > - atomic_long_set(&lruvec->zswap_lruvec_state.nr_zswap_protected, 0= ); > -} > - > -void zswap_folio_swapin(struct folio *folio) > -{ > - struct lruvec *lruvec; > - > - if (folio) { > - lruvec =3D folio_lruvec(folio); > - atomic_long_inc(&lruvec->zswap_lruvec_state.nr_zswap_prot= ected); > - } > -} > - > /********************************* > * lru functions > **********************************/ > -- Here's the second (original) lru functions header. > 2.43.0 >