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 7D35BC4332F for ; Wed, 13 Dec 2023 23:28:06 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0A7B16B0344; Wed, 13 Dec 2023 18:28:06 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 057ED6B0347; Wed, 13 Dec 2023 18:28:06 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E61A96B034A; Wed, 13 Dec 2023 18:28:05 -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 D69A76B0344 for ; Wed, 13 Dec 2023 18:28:05 -0500 (EST) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id AE44E40BC3 for ; Wed, 13 Dec 2023 23:28:05 +0000 (UTC) X-FDA: 81563385330.28.5C82E8F Received: from mail-io1-f51.google.com (mail-io1-f51.google.com [209.85.166.51]) by imf02.hostedemail.com (Postfix) with ESMTP id E911180006 for ; Wed, 13 Dec 2023 23:28:03 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=mwB0gi9c; spf=pass (imf02.hostedemail.com: domain of nphamcs@gmail.com designates 209.85.166.51 as permitted sender) smtp.mailfrom=nphamcs@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1702510083; 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=NCQLPrefVcHlxEB9xcYo+7fvtFuP79Fvjg4xN8jDkH8=; b=N05TYdWD9s+ao5hj/ishfx6tGPU4tXFS0E2GeDPo6iB6xQfE8wwScJWRX5zEpPN5tVeskB mJNoeOjRD1RBtTlqTNU9ios4ZdffC2ShwAOuIYvzpU2441Ozm1D4mpKKryGbC+EY+jZVAU 0On8LGVHSxkQJleTqaidzgaIeEsl6xw= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1702510083; a=rsa-sha256; cv=none; b=EDQQ49v7UFLsbQEBeQ90/y6AsRBHZioZD/1MPMvPZ56iNF+se/7XHI/T6CxLdOOMjeDvxI f2eAJtQUzaK2xar9Dap/+QXG0A/n+nFY7DE6olg1zhxfDsAUwFSsAPch3UyLkrAnuOJDww 853lRXg5LIBa59ConcATnUpjz64Koq4= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=mwB0gi9c; spf=pass (imf02.hostedemail.com: domain of nphamcs@gmail.com designates 209.85.166.51 as permitted sender) smtp.mailfrom=nphamcs@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-io1-f51.google.com with SMTP id ca18e2360f4ac-7b3a8366e13so313597839f.1 for ; Wed, 13 Dec 2023 15:28:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1702510083; x=1703114883; 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=NCQLPrefVcHlxEB9xcYo+7fvtFuP79Fvjg4xN8jDkH8=; b=mwB0gi9cQa+7A3HpShC2zYnsIhpa2TlL7gbyluQUlfSWVGcn+FTqB3XQJ3f/1YCngk EVbONLeUNrnwd+FnA7guPri4OXgOZgQ6uD/F5r4c0TNO65zgmLAqqfyDEZ8SRAL5nDtG x/benSg6y4/nU/c21aoKQjE+6f99bkPYi9GRTW+RGjjVnVAsTIfKSKbHcAel9QXEjkK7 2T2n8QJ1wpBs6CHvmRua5d53R4O+Tmn5xIprFTDqgQattJNYubCzkA6UfGQodgzPyYCm K8UyAi9p9AGynJkviaAkijypdlBtTmrLRvDBfUzLmYrkMAqPlfJEkeFpIMVwzDRpXqMd AnEQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702510083; x=1703114883; 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=NCQLPrefVcHlxEB9xcYo+7fvtFuP79Fvjg4xN8jDkH8=; b=QQnpH+G4e13MD4OXe+dl1VZHIDmBXnNm98wgV6me6NHbMRkjeriIuJxWLE2F+nMh1R ZVIAfRWMSTNlsXink4hOnkjLKyrBPy5rqQzK/dDgGX9StF6PDmOCg+5f/DmAxZlHJdvM SIOjigKLf4yzhD8SdHrVISriyzoTTsSyZE5h93qdSk2MfCcSjwnRqXIp/05pKgn3w8b0 yp+aces6dZRHx+fZREFeL/z1IiNkB9J1clErQ6JnmXanC11l9mpuhSMxCUh9E5GFz4Wn huWn6P1elI1sVrYf9Rzr/2wgph+OgvKfekz6nkGYGOHIt/1rr5OIKM97p10UeAJYtV8r gkfQ== X-Gm-Message-State: AOJu0YzaSA85AX00DEWCkRK3QURn2p/i/CD+FS84FHloK1Yw3bXGLjT7 c1TBcvXUxk5aRnRNVEFUjWEXqwqnGi+Xko97xkY= X-Google-Smtp-Source: AGHT+IFThW4wWQCZmeA9BepKM0r57vtZa6lcWFu91dKLYn+swsEtDUm+7sVntK3LyATSpIVpSmEu62ohVzWlfaXGr+s= X-Received: by 2002:a05:6602:3352:b0:7b7:3ba4:8944 with SMTP id c18-20020a056602335200b007b73ba48944mr9287398ioz.16.1702510082968; Wed, 13 Dec 2023 15:28:02 -0800 (PST) MIME-Version: 1.0 References: <20231213-zswap-dstmem-v1-0-896763369d04@bytedance.com> <20231213-zswap-dstmem-v1-5-896763369d04@bytedance.com> In-Reply-To: <20231213-zswap-dstmem-v1-5-896763369d04@bytedance.com> From: Nhat Pham Date: Wed, 13 Dec 2023 15:27:51 -0800 Message-ID: Subject: Re: [PATCH 5/5] mm/zswap: cleanup zswap_reclaim_entry() To: Chengming Zhou Cc: Andrew Morton , Chris Li , Johannes Weiner , Seth Jennings , Dan Streetman , Vitaly Wool , Yosry Ahmed , linux-kernel@vger.kernel.org, linux-mm@kvack.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: E911180006 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: ee9jnxbekgzpigs9wwmcfwih77sdatd3 X-HE-Tag: 1702510083-775737 X-HE-Meta: U2FsdGVkX1+gHBnxdbihvDrTZd8Yd0dX71aY28B6Aig1MfRcRNsLin4MI6og4LW4o7XKnPTCYeR+HGY3Mej9HPPKZY5E46Rr8RKV7w27U1t7VQoIJAmd7/XJewPGeNWpBuKhMQICKpYoM7T8haO+vCYdDlfilLUPJk+DXK6Paz9ZzTE3Yn9ZSon9g+LXr8KBDpIBA9HFTs5rHj3v6Io+KusjRH2gUSoFZ3nCwuHX022yuQNB6SsSFX5LKyBVXJhTMIApVxeWnJ0dvuPwBsyXgXnmh8gwhY8tkBdmvjdXLnsRbzfltlqbNjXBca+pH8TdNDIujqllAnBtFlLIKCGTcqmq1B7gqhxrDSdP9cAcpd3PAflgpNyoQJmEHK+y5+6hXHfRiCcC8Oja+OApF4CbpYhiZ5Bbp/CQkAkNlCy6gYzASscgydj0rpmnUlsIrfAz6o/4z4EaGhE2c0C7i5+P/vRvjkOvp1GLVDyaGVtrZpljfc6ympgVeHBgm4uPMyAF8Ms0+0XaYlBLty6fJjFf1DExv+U16DNkLjfLocIPOfA1rFO5IcyTLtuDHS+i4lkO7G9pXmsvBsZmhqnml8ihRNv4sbpBaAwwZZzC0/NJQn0vyPUabDqkiqEGKiev3g4igpiT1VnTcOnnG0zmqd8CsmtXD59i9MbO7MmlkKZhiLLEGg1upM5YtoU3sXsxURkbKHtDioe/6d+HyKpiRd8+g8O7/0ybAGFbYgJvXURHlku/Ea0KwChv8rlxSBvpqwZ6HY4aWp+NbpJ2SVKUIlcYF4YzW1FQ5yu8zuDb6vruORG2w0m/ukQupna1CqlBlA5hB/ApQn2jYshL8+1m06xIpqyfmw+ujYwvl1vMbvoyJ9B8j/CE+GIRu7CBT7PZ8QwNlICTR2viLOVfkJvzlLw7lZ2OR8JiEqkXW6Pwqt5XMH1qSKUs2L7N75twUwZrfPAuCPZMSRC4r7u27YYqTMX lrCuWIpx i352KO9zmhz9uf+5Bexsna1qOOAPOrKC2rn6OJxAATa7eV26if7epWM7l0kamNXSZAKGmBe5uet+ql84tg/m1Yq1vwHN0GmZ+NhEoAstpP+y3u/komAKuISs0reAyUMJfrCitpraNFL7P95BhzUIk+MHKNwDwVzpKmh1IEqq1Bk97RJ1H8CjaOOn3V+St90Ms2NwQSi0ZykO3b6xN/uKD1EhqOn1RhPXRGpjL6GNNADNL4DDgFMujyYNiwXXFOW/uuV2qp1D5PTWaI8vWWpVUMTK2rW8w71x0gXOkwiXG7G5gxzAi33GRMwFUFG0u/Xk9KcnSliZ3X4zWrYd55B8XJ7M2KLRd7V8Uq5F26zsSCuQQNBidFhjoCF+brtD68cdD6cayRvgyWi8qzpzUheJFHB8CjUSU/vs2tjFfaE/QV/sBdhGlHRe9UrhcVw7KZCZTRLQl54h6AImvu1aC9DfCKVS3TNqMRl9WC+G0 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 Tue, Dec 12, 2023 at 8:18=E2=80=AFPM Chengming Zhou wrote: > > Also after the common decompress part goes to __zswap_load(), we can > cleanup the zswap_reclaim_entry() a little. > > Signed-off-by: Chengming Zhou > --- > mm/zswap.c | 23 +++++------------------ > 1 file changed, 5 insertions(+), 18 deletions(-) > > diff --git a/mm/zswap.c b/mm/zswap.c > index 0476e1c553c2..9c709368a0e6 100644 > --- a/mm/zswap.c > +++ b/mm/zswap.c > @@ -1449,7 +1449,6 @@ static int zswap_writeback_entry(struct zswap_entry= *entry, > struct page *page; > struct mempolicy *mpol; > bool page_was_allocated; > - int ret; > struct writeback_control wbc =3D { > .sync_mode =3D WB_SYNC_NONE, > }; > @@ -1458,16 +1457,13 @@ static int zswap_writeback_entry(struct zswap_ent= ry *entry, > mpol =3D get_task_policy(current); > page =3D __read_swap_cache_async(swpentry, GFP_KERNEL, mpol, > NO_INTERLEAVE_INDEX, &page_was_allocated,= true); > - if (!page) { > - ret =3D -ENOMEM; > - goto fail; > - } > + if (!page) > + return -ENOMEM; > > /* Found an existing page, we raced with load/swapin */ > if (!page_was_allocated) { > put_page(page); > - ret =3D -EEXIST; > - goto fail; > + return -EEXIST; > } > > /* > @@ -1481,8 +1477,7 @@ static int zswap_writeback_entry(struct zswap_entry= *entry, > if (zswap_rb_search(&tree->rbroot, swp_offset(entry->swpentry)) != =3D entry) { > spin_unlock(&tree->lock); > delete_from_swap_cache(page_folio(page)); > - ret =3D -ENOMEM; > - goto fail; > + return -ENOMEM; > } > spin_unlock(&tree->lock); > > @@ -1503,15 +1498,7 @@ static int zswap_writeback_entry(struct zswap_entr= y *entry, > __swap_writepage(page, &wbc); > put_page(page); > > - return ret; > - > -fail: > - /* > - * If we get here because the page is already in swapcache, a > - * load may be happening concurrently. It is safe and okay to > - * not free the entry. It is also okay to return !0. > - */ > - return ret; > + return 0; > } > > static int zswap_is_page_same_filled(void *ptr, unsigned long *value) > > -- > b4 0.10.1 LGTM. The fail label was primarily to free the temporary memory. Since we're re-using dstmem, this isn't really needed anymore. Nice cleanup. So, FWIW: Reviewed-by: Nhat Pham