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 9FB77D2E001 for ; Wed, 23 Oct 2024 00:47:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 175CA6B009E; Tue, 22 Oct 2024 20:47:52 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 11C5D6B00AE; Tue, 22 Oct 2024 20:47:52 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EFE786B00A5; Tue, 22 Oct 2024 20:47:51 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id D32896B0088 for ; Tue, 22 Oct 2024 20:47:51 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id D2C5EA0634 for ; Wed, 23 Oct 2024 00:47:20 +0000 (UTC) X-FDA: 82703028828.08.07524E1 Received: from mail-ed1-f52.google.com (mail-ed1-f52.google.com [209.85.208.52]) by imf17.hostedemail.com (Postfix) with ESMTP id DCC9640006 for ; Wed, 23 Oct 2024 00:47:36 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=iH5zJgOf; spf=pass (imf17.hostedemail.com: domain of yosryahmed@google.com designates 209.85.208.52 as permitted sender) smtp.mailfrom=yosryahmed@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1729644418; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=OQTL1Ixvyu9GBgkBHMSSAH8WTvSZvQTSYgwd9mQ+ijY=; b=8q0E3L7FWbGGXvIdW8Ji7S1mkGJLHdyadhUv5FIdSk3yWiKVVO5i4fkjC4OaNHnX7iyQfI BLKCotmeQ2RBYZe+EvO4DM9V60h1WAq0h07ILAUpEkwhebQ96dST3T/VI0sdBPSxumn6cg knpH/rrt5pYo9Bti8ty+dBOaBi9PZf4= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=iH5zJgOf; spf=pass (imf17.hostedemail.com: domain of yosryahmed@google.com designates 209.85.208.52 as permitted sender) smtp.mailfrom=yosryahmed@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1729644418; a=rsa-sha256; cv=none; b=8MAQm6BtVQ7doUKqV5alAWvzBH205JychxZhi1ZC56SPU+tP4+zczD4aY7E+uHoy65Xngj X/6NBhVFmTKTQH/gLpbGPfD9I6/sy91lhRw9XHgjofBkqL9E74DEWKEsoBAmZMYTeLEgNp szdnpLe1bvN5SyyO/kx0sOYyRuaQSR0= Received: by mail-ed1-f52.google.com with SMTP id 4fb4d7f45d1cf-5c9552d02e6so7909387a12.2 for ; Tue, 22 Oct 2024 17:47:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1729644468; x=1730249268; darn=kvack.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=OQTL1Ixvyu9GBgkBHMSSAH8WTvSZvQTSYgwd9mQ+ijY=; b=iH5zJgOfV8CgFdLXfJtXmuoisZs7r8ddVWV2RMUsI5FxLSZXEBm7hRxonqstx0PGde K//znKWb+Ql2TzO9sYpBYgXNHD3KI14mJ2wepw6v04Eg4Tzzy72hJ3WvnRkVrXeIjrn/ hWyrbfbKg/5l0x944ze197OGL9TUlq+DHPd5OOPJRCSDpQ1Ls51aLK3n185EAuKSdts8 800KGZPy06r6JpjKohwTzftK8rsQaI/83P15bcC32C9AI32Apl/5pAmWeqQeaLzz7qHy vJrXGEj/QibEZKgrmCLIBFAIOg3+UGcBwxQWuRFejeAOsnSixNG6O+xoSyWnZMMRjTh2 h5gA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1729644468; x=1730249268; h=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=OQTL1Ixvyu9GBgkBHMSSAH8WTvSZvQTSYgwd9mQ+ijY=; b=rqwCDnIebBjRTm/J5DjJGvvFuj5t5EdIj5edX/Vrj2HZOWB7SldMw0mUuj3B3OwkqI ycNBJqxW2zxM8DDy2IZuWDOYWa8MUreIiRfSkcUBGJ4kNeRyAqcJGHa5OuSHjt1IIGkr mTU5fJ2ZPjSrHvEMlVQVinKNmYF/fyu5HML+PIG5wxlcz5M+HABCOTE/NACKT/YDg2z7 9JohHCdIJNWgNkS+sp/u9/myPs1oBE2X/A8qv0L7841iEVIovSjoPop9xwUgyP/6Dtym I48zgxm4G+HYP9OlGDlJthkYlti5cl+RrTJ3SpnUg4q5YGok0i5FAZTYeehZSvlhYATj Hmlw== X-Forwarded-Encrypted: i=1; AJvYcCX+9YQOuxZAuXmIwVFzundPVrrixqV1QqIEj6MxX9bjVQ1B/I5j05nGXfWvmO8RhOODyI4ilXt6Ng==@kvack.org X-Gm-Message-State: AOJu0YxxZOKcOS7Fh5oODdrgOKyL3RWITGJnJBsNJ4VsaP8nLT0Rrtf9 1LdrVFx4zXsYeRz5tSMmFIGSU/W5oStuTSctAkYJ64oAeiAhFJ8TXMvL9ktZRrVVmtlvJLSRNF+ gaCzMFNSotqQ2VmxCOZ7CGnxVexEc9MmM66Lb X-Google-Smtp-Source: AGHT+IEVqx7O7ORCeR4U/6OdY9r9M+LO12vrLNYYbjZyOxjQVHwbdL54vYjiJg2le7Vro5+Yh+SRJ4tNhaNBsWtRRTQ= X-Received: by 2002:a17:907:9811:b0:a99:eb94:3e37 with SMTP id a640c23a62f3a-a9abf964492mr54242566b.58.1729644467828; Tue, 22 Oct 2024 17:47:47 -0700 (PDT) MIME-Version: 1.0 References: <20241018105026.2521366-1-usamaarif642@gmail.com> <20241018105026.2521366-2-usamaarif642@gmail.com> <032b5d28-68bb-4fea-91f7-e4a8bc4c4bb6@gmail.com> In-Reply-To: <032b5d28-68bb-4fea-91f7-e4a8bc4c4bb6@gmail.com> From: Yosry Ahmed Date: Tue, 22 Oct 2024 17:47:12 -0700 Message-ID: Subject: Re: [RFC 1/4] mm/zswap: skip swapcache for swapping in zswap pages To: Usama Arif Cc: akpm@linux-foundation.org, linux-mm@kvack.org, hannes@cmpxchg.org, david@redhat.com, willy@infradead.org, kanchana.p.sridhar@intel.com, nphamcs@gmail.com, chengming.zhou@linux.dev, ryan.roberts@arm.com, ying.huang@intel.com, 21cnbao@gmail.com, riel@surriel.com, shakeel.butt@linux.dev, kernel-team@meta.com, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org Content-Type: text/plain; charset="UTF-8" X-Rspam-User: X-Stat-Signature: bnhwjt6q1yzspsit4pw5afiqh81wn37a X-Rspamd-Queue-Id: DCC9640006 X-Rspamd-Server: rspam11 X-HE-Tag: 1729644456-787615 X-HE-Meta: U2FsdGVkX187ezI0KRes9Z5+Xiq3gEAWh40bRKCuoMACvz3/Itcm888CZS21hEP/3SOUiP3niR0ajXnZ8a0WNmyJoQyAPu9Ruc+D+n3lFx3MQODPz4Ie3EO6agAQucnMn6Y5NTC8z54id29AQLNl4Q8wUWRan6H9QQGcZd4EgekIMhLdlKNarASYrrXDdyMImMdEoYLFAwfPrsoaVDv5mq8TjLj+5UAvu5HAM1NKbH5qXXfwqREzkGfzvi1tlkutYiegUK81J4ILS+eg2NCQLosjH31rXnt6FryGnkoSP1fw1+j0wjr+MhdwUU4ZH3pVjZxCt2v2RryQ6xfCTy2tDvBNzh7eXMWgpoLneAaItrjp62DDPezMhkjdE00x+c66JnDeNKOCTLfuHX2LFmBTSWTvBKrc74bhEqCHF65CKRZN+lf1NLBS0gD5Wbv7iXkauiA5Dkoi7ck28NMRhyeSmQlIqwgFITkq0Frj5Zs9nUx2TBuBwZjE7PMfVkORMkLQS0fAvZh7h22M1u4fzlIc7t0/Uhj9T5r2OxsSgepJ4RJJnh65KIOu1hMEOeBGahdz62B09Pwbd5RTJOHolClVDu0KSjPUuRfaIGG6IbGobIIX/xx9rYs7WAPKI8LqewFoZSF+LT4kvWHvY4nMlcWVFu2QwKUuYmfW4MmfCSI5cjyx7ML67SikeKeZD5OVSe/zWjZ/uQ0XZtuj5pRHkU0PyOI/wPIRYrvrAsJTfWs2Nqf5C8A4URbZv7L2mifEBOevZnDGNlT34RU3rHAoCc0x7QdmdCNpCmryJ3Mg8zKmMI1jbSWZPDy65bhFFCZDCDHQnEK9j+9n+1rq1367JWh68ElNPrn6tg5eOoA2JyilpvxTdvev6R29eceTD1fIQiRWkEizQvS6yu+fLMWwOLInIk2pOfXJEK71Dx27FxbMg2QieKKonzMRhUqR6ewIhXyU4uylyLVHyStx331qaN9 5KYVw1+9 zVclqmDBh8N7qvwRe0f+ZuLpZPeQ8kXqhtOOpeDYispsAyliwFov+A2AAFFkNCj41Pa3bVhnYZb1IK6aXMgnqArsS6okf5uIL3RxKh0XhxuApKgY5zPI94NIUjcpzmTu0VNexn1YRoZ3X89N5A5ryPEhcPR7vIBTDPo4SX5OC/87TmpYcNGU6FZ72+XCWbHfUTn+9 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: [..] > >> diff --git a/mm/zswap.c b/mm/zswap.c > >> index 7f00cc918e7c..f4b03071b2fb 100644 > >> --- a/mm/zswap.c > >> +++ b/mm/zswap.c > >> @@ -1576,6 +1576,52 @@ bool zswap_store(struct folio *folio) > >> return ret; > >> } > >> > >> +static bool swp_offset_in_zswap(unsigned int type, pgoff_t offset) > >> +{ > >> + return (offset >> SWAP_ADDRESS_SPACE_SHIFT) < nr_zswap_trees[type]; > >> +} > >> + > >> +/* Returns true if the entire folio is in zswap */ > >> +bool zswap_present_test(swp_entry_t swp, int nr_pages) > > > > Also, did you check how the performance changes if we bring back the > > bitmap of present entries (i.e. what used to be frontswap's bitmap) > > instead of the tree lookups here? > > > > I think the cost of tree lookup is not much and compared to zswap_decompress > can probably be ignored. zswap_present_test is essentially just xa_load for > the first entry, and then xas_next_entry for subsequent entries which is even > cheaper than xa_load. Maybe it's worth measuring if it's not too much work. IIUC there is a regression that we don't fully understand with this series, and the extra lookup may be contributing to that. I think it could be just fine, but I can't tell without numbers :)