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 09BD4C6FD18 for ; Wed, 29 Mar 2023 15:23:02 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 784536B007B; Wed, 29 Mar 2023 11:23:02 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 733FE6B007D; Wed, 29 Mar 2023 11:23:02 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5FC0D6B007E; Wed, 29 Mar 2023 11:23:02 -0400 (EDT) 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 4C7CB6B007B for ; Wed, 29 Mar 2023 11:23:02 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 1D81C120647 for ; Wed, 29 Mar 2023 15:23:02 +0000 (UTC) X-FDA: 80622303804.02.3B3CFDF Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by imf18.hostedemail.com (Postfix) with ESMTP id 56B231C0024 for ; Wed, 29 Mar 2023 15:23:00 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=UV1xzOIw; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf18.hostedemail.com: domain of chrisl@kernel.org designates 145.40.68.75 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=1680103380; 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=kLAz9CfzOvlgS1RAaSajx7np9j4FSC6hr2PWzpOd/0Q=; b=vlpfmV5sNazuHTI4aa7s2jtH9tBI3ymiqNajB6TuXFpZjuF9sR3IcwLoqzRtpKk3uxuBci y2DxmPCJgGSTKRfzSxEBw5uxDRjisYnctZeI0Fc9SN9Tw5reJDx3bt2vLI4K3MYj6uBow1 lsjKu4nKHadqdL6fXzLmoyoCD1OQUdU= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=UV1xzOIw; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf18.hostedemail.com: domain of chrisl@kernel.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=chrisl@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1680103380; a=rsa-sha256; cv=none; b=37t5o6ZUchuvyJ+tT3FLxsevkezEu4YCuoG3fw5whFRegPAQelm8vfcE1OxDPCHHqU+HrS Vmf3PUjqCGtMimNGZzNxw9BX11E7l1yNuXP5vzicLSKer/v4AttTIFBG0+dvkN6sgihXtf QKIqreagD76i8Pg/OXI8HG185w1GwlA= Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 96B96B821FB; Wed, 29 Mar 2023 15:22:58 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B4ACDC433D2; Wed, 29 Mar 2023 15:22:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1680103377; bh=Uo5FMqmhXvSHhzhUUT6EsxTS+Zk2xNg0RgzthY76cLo=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=UV1xzOIweoBGOP48aRw4F6j53xNGBbk12bPZYsKhYlRgDK/z81e6v1nUZmxmNEJXG NAiNKkD9aMAc5jz2p6QhLdeERvFNE47JHpDxlNWE/mfBJkaLhMtOCianqd/79mHjGJ Z0gGYrJvcMciKg+0EVgz6bJ1wO1h6QLz65Z42dRbWibM4eABWah1Xre5lpX6gKCEGK pqT0ZEaLzWCX2qbkNctBIX1EzamoEN3+gXvc6ZBJMwp9YZSCQl6gv/CeEWmvG4CaXB mNpH/AHu2blxG2M5dhQHJuFV1EcT1rgTQ6TuPEh4S2zI7A7lERCR1mG0Zde+QFZhty b7Cvi0i2TEGNA== Date: Wed, 29 Mar 2023 08:22:54 -0700 From: Chris Li To: "Huang, Ying" Cc: Yosry Ahmed , lsf-pc@lists.linux-foundation.org, Johannes Weiner , Linux-MM , Michal Hocko , Shakeel Butt , David Rientjes , Hugh Dickins , Seth Jennings , Dan Streetman , Vitaly Wool , Yang Shi , Peter Xu , Minchan Kim , Andrew Morton , Aneesh Kumar K V , Michal Hocko , Wei Xu Subject: Re: [LSF/MM/BPF TOPIC] Swap Abstraction / Native Zswap Message-ID: References: <87jzz1pfb3.fsf@yhuang6-desk2.ccr.corp.intel.com> <87fs9ppdhz.fsf@yhuang6-desk2.ccr.corp.intel.com> <87bkkcpckw.fsf@yhuang6-desk2.ccr.corp.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <87bkkcpckw.fsf@yhuang6-desk2.ccr.corp.intel.com> X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 56B231C0024 X-Stat-Signature: fswoqd6wmkno4sgin966zwmmg5cef4xp X-HE-Tag: 1680103380-940491 X-HE-Meta: U2FsdGVkX1/U7YmKPG2HKPa/0dgaliaSO5hfjPjhPwqa7Wn1MeYEy92EkGW/7NocpsmMUp1JxqjA9NEVnS6erqr21W+JKy99aEuZt0BU4NIKG9QShCUs9v3L+6e50cgaCUja08k7TgxJRMn8M1H/Nyt9N5Zp6WpYU0GJn2x7Ma3Q3HWIe2rgRuFySjeoOZADWUgpeEvnJL4dN47lkMEGBpuMd7LYoRkyepo846P0+uGFDUI6kxiReR9fdsK3hrPmXLQagLOIAS+2HhXqA/0HEnkYJIpYSwA6btjPr8nYIHGCEIXYJZRbVd1GNqtP3H74UMWGMvNt2nZsx8CvrsJ58WqTqkdlvMOTkvMfXXf8zo46UrVCRlJc0mmaw3Ndpu1/mVqifS6v2LKCzuxx24uXooxkmmS1TZs0jRE72FXgV5QhdUHLIJ5rAWwEnxj8r0LP2smrbzQshA9JrTwueW8OT/NMejQLBjfGk9WhepC+bHcwTuZB+ybyJDD0ayciIEAx/n0P0243i0OeJajVKfsBkrC8CdCTb063chuCHTMOzLbYP8PDxQW8/ZqjPDIgpZLmHYt3iCEDT2M4+4Hq01em3GCCG3WPaCPjCfOqsqzZD43uYTIjCBFQAl8gI5anf0w8oUoGk0a3GsBLEniyxKo3j2V/FVpNbLg+LEWVZj95hVXQoGhBrtSIbglJkxWTX8dT1QXs72a9TrlDS/lh0J4RDh+h5xc3S3b/eiFeztQZRxUWjKTeSx8UfWINK/T2qKfIq6i9gQ/h5lXJkb5/U1huO7Az4KeU5otSf6ce654DGjdLUjppSpA29A6wznUJ+JglRN+UapO+it8aNAsey8goa3p/YalRCsQRohxls90lv8us7RTh1bqpS7iTaxFTaxs5uDFWF31Zx7vF48Cqo1gWgjgz5ft9u5e64DSgvyFKEyWVN7s2dC1NwEw6YIdHxyvz4EU76h4vVRf04YrqJLW xpO6WlA3 5qeoKX0sig+u0KliMTBOyY+ICQ1B7ZrhWB864FAlN5fgHLxtJzH8hwP0mQZExuz1FYVqrtSLSfK6JyrldBexXZQLIyWvSx27u2/nVKTo27H7XqKt24Ic1uTK9RB/Qu/nonusvC8P45vEdSe4joZXXTUsFedPG7mW9PfZc 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: On Wed, Mar 29, 2023 at 09:31:59AM +0800, Huang, Ying wrote: > > Oh, you mean the swap ID space. We just need to find an unused ID, we > > can simply use an allocating xarray > > (https://docs.kernel.org/core-api/xarray.html#allocating-xarrays). > > This is simpler than keeping track of swap slots in a swapfile. > > If we want to implement the swap entry management inside the zswap > implementation (instead of reusing swap_map[]), then the allocating > xarray can be used too. Some per-entry data (such as swap count, etc.) > can be stored there. I understanding that this isn't perfect (one more Just want to confirm that "there" means the zswap entry, not the xarray itself, right? If you have ways to store both the zswap entry pointer and swap count in xarray, I am very much interested to know :-) > xarray looking up, one more data structure, etc.), but this is a choice > too. Chris