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 7B488C4725D for ; Fri, 19 Jan 2024 05:14:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 121456B0075; Fri, 19 Jan 2024 00:14:30 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 0AA6C6B0078; Fri, 19 Jan 2024 00:14:30 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E66D76B007B; Fri, 19 Jan 2024 00:14:29 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id CDA716B0075 for ; Fri, 19 Jan 2024 00:14:29 -0500 (EST) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 90BD8120210 for ; Fri, 19 Jan 2024 05:14:29 +0000 (UTC) X-FDA: 81694895058.23.768BD12 Received: from mail-pg1-f177.google.com (mail-pg1-f177.google.com [209.85.215.177]) by imf30.hostedemail.com (Postfix) with ESMTP id C73EC80009 for ; Fri, 19 Jan 2024 05:14:27 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=CcugrwLZ; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf30.hostedemail.com: domain of chriscli@google.com designates 209.85.215.177 as permitted sender) smtp.mailfrom=chriscli@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1705641267; 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=wp3wjd4I+zVM5cxe6a7l/i+C674LfaWl8nrY3usedYE=; b=AF0EYAZ8Z4m9toIiZOjBUl66iI8LnirG0w2tKr1EPMlot4isHEGK3zvymtXJd+VSNhkiyc hw8iW9DWjlcB83HGAA14swisiCfNm0CHVfINoLglZQS2Bya73JpFBAM5lG+k99kWLFBp9H tfe2dHpMoF4XPUAACQ5Jog8peIv2r0w= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=CcugrwLZ; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf30.hostedemail.com: domain of chriscli@google.com designates 209.85.215.177 as permitted sender) smtp.mailfrom=chriscli@google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1705641267; a=rsa-sha256; cv=none; b=n8MqffUk5l94A6rymsAR4f5uL+54KqMPl+cnLh31y+jrYaJ5AX5+qERXM0Sh30GvuMjq9w /vuFlZVmqYActg0XPzoN3L33gul2/xinLuSC8CwTSRi9w5qtS+x5M/yXKRWtaEso5sYbQw zXdQAjm7MnkNcCB3aaoJY2MLurrvcqI= Received: by mail-pg1-f177.google.com with SMTP id 41be03b00d2f7-53fbf2c42bfso302939a12.3 for ; Thu, 18 Jan 2024 21:14:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1705641266; x=1706246066; 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=wp3wjd4I+zVM5cxe6a7l/i+C674LfaWl8nrY3usedYE=; b=CcugrwLZxJU0FsVpc6jzhS3bFuzzUXgTeFHWJ8r04+GFZWXo/C/6iWQbcaTdY+Zi7f 83LMP5S8h8YH5yIIGBJMdUILi49kEtQ7h04nDgXLev+WIo1KYIA8sUg8Z2lLX0gMF/OO lJhLh5Rw+IRzU6aDECofiFvcCqQW+HtDRM9w2rBtIGSVkRsCKbRfs5cYNXOL8XjXli/x IodsmtTsOHsfg2zPcDn9elQNz8jRQsLBxQhsulEZgx/sSWyi+ALRJYgQfDSuGqxxWv8U EDavZ0/v2eZSc/+rilQBAk4H1W1sgmz1rDoyLN2aIaOo8WCkIJXbiIYzoK3yW+Otv8Gp 0DkA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1705641266; x=1706246066; 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=wp3wjd4I+zVM5cxe6a7l/i+C674LfaWl8nrY3usedYE=; b=gbWgqfDbJwqlMJeJsmsqYwoi/E3LUBdMRALfbGIa+U1BbOWdo0eKbsJJD5G22unTvn BIRJdGU6omV9/Pao67upI1PcCbWpPUCc6A/wAPxQW/khqFrTT/bzD5nAE1LUMmudzdpb sXZvlOxZS2tw8shZrJ2/Bq/yDA9OSiWqBd5shcBWy0MKZI3kzCzN0KOSbbgrZpC6dp70 vo9nqnF5I4VD4rya7ZONCCj5zEGPPbNnNEvEkP5UktPOniAV8sc8YEh9NfUXFk2flkek WUGRjjWa06rhapkXSpRbVqyzUoP5uaA0f5GrfGivn1mkvDYUcoZkjVhLmZOPvMfsU9W6 jlyQ== X-Gm-Message-State: AOJu0YxWF13uZhrU9a7zpreKH87COnXm5mvjDZRWuNxF5vIOijgCLlmx kScpwYxFOYaRM4ZDT9rCX2U7uouW/khIU4PdA3u2G0IbDofKLzTRS0kxRqc1jIPDb69tToluPRM c39+zF1VOeCZaB8O+ezXCFhhMmuzhwZYk8trt X-Google-Smtp-Source: AGHT+IEBqp9/5YJugFJacZWPpA3Hwk7qBhdjQ0F3H3c8Hz8ipPEPg0B0bEzZOC0YK0BSCY4x09tssRrGjcbUV+zf75M= X-Received: by 2002:a05:6a20:1441:b0:19a:57e9:905f with SMTP id a1-20020a056a20144100b0019a57e9905fmr2190743pzi.8.1705641266412; Thu, 18 Jan 2024 21:14:26 -0800 (PST) MIME-Version: 1.0 References: <20240117-zswap-xarray-v1-0-6daa86c08fae@kernel.org> In-Reply-To: From: Chris Li Date: Thu, 18 Jan 2024 21:14:14 -0800 Message-ID: Subject: Re: [PATCH 0/2] RFC: zswap tree use xarray instead of RB tree To: Nhat Pham Cc: Andrew Morton , linux-kernel@vger.kernel.org, linux-mm@kvack.org, =?UTF-8?B?V2VpIFh177+8?= , Yu Zhao , Greg Thelen , Chun-Tse Shao , =?UTF-8?Q?Suren_Baghdasaryan=EF=BF=BC?= , Yosry Ahmed , Brain Geffon , Minchan Kim , Michal Hocko , Mel Gorman , Huang Ying , Johannes Weiner , Kairui Song , Zhongkun He , Kemeng Shi , Barry Song , "Matthew Wilcox (Oracle)" , "Liam R. Howlett" , Joel Fernandes , Chengming Zhou Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: C73EC80009 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: ya1um1367q9f4ihegmfrbzcmpg13ph1x X-HE-Tag: 1705641267-183434 X-HE-Meta: U2FsdGVkX196Tf2lrqH3DiQ2H+Pdk9oQ1POipiiWWTyLG4cFXmU0VwqQ7tveeQ2ZkBKlbTJA1xbP0r8lDgYPT1upw8iC3xwQhZtCjsEO46sWcDa7Pt0vSjNEk0TRSnKz83Kq5XRcCNGz4JmrJ8GRL4nhtIZF6JBkeTDtTfNKIEBf2P6ShBxkddARPnQJA6qEs7DpBt271EXJGNwoO67qzRTiHvk9tamonCaqNn0cdyxN8p6JdMkn4bpcNR4W+WtJ5ef4VKso8dfqCbxSm3bGrRXPmpK3o+HlYNbkC4V7BbiM0NkqWgnPpExoP+TsQmFkAA7P+fsG9ArSADU93M2qSIWnWu36Ols45UKb1BZqYS0eqw9rP2L2xIdxXaL4j9eJKezZ4oj82RzzUx8taoShZ/egEHfrxXIQNdLLUGGtFDebWVaV68BPHUnvhjrb3VEGFqv1I+KfFogEkbR//Uv9y+Tzup3G5X+4euBYNucXagxeX1kO8VP6MBzH+BOptRwxKnSJ7CMbVycxcHU3U3/jyGZY1N/X/rddGM945cd+l9l90VIPJ76+819GQICL2/2w1Hl2JnOBJ8Dvo71wXaDNASrdce6+WeZ9pqajqq4m/sfeKWn9wMXI8tmgHk0FKdt2tuz7UOMjsKJdhEWVZE4R4K23lfuBWW2SNi/v8N5H3CoXjQT7vKWTkONMqhjsahh+aYC9itiewr9ktkjXVwYcMm/imBetG50iPdjOCa0hAcYi+taUd/3sdsjCbBgSTMYAfEIl/uellG1Bv88rMhfc2V12p3QjQ1MnOHL4Sw8969ogCb846LLRAJXCNGqrx/7DeHP495wxWMD32TUqF7YNVEy/0GT8MUs9avfhuMdirbsErIbA2ieyVqpVI71541ZeXUUxJ4wRKmb7KW1Cxmtkrvz8oT8CaySVbBn2G44qd7i/JAzplJCkM0ARC7Moz5tNG2d2lEmttNz0BHif7BR 6vagk0Zd /gVZXanDaeQ4R1j/wHcd0wH6gLBM4roEXAsFbqhkrV5WkJDdgfxVz4wZhnpoewyy+3wmkNStccqWlzOQCUNGHAIeIKXJ/Qkdx+eEq4dV2RSYrsKCM69YwKcW4BtuUOj4xOSZUn7kIAAyqjUNTeuHXaAQkWc+f78b6S44eVRT4Fik2GSp2DJzstmLyRVbwWEAs+E/1E3eCxthvtij/xp+Q40l2qRpVbCkw8GFbb9cNOWt/OZnyxnmnCcNgr6W22hUHF/fuPt9j5Sa7V66wcVoPaf2s5uSECJmcHxsqalg385JDoGy80NDI/ggnUw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000004, 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 Thu, Jan 18, 2024 at 10:01=E2=80=AFAM Nhat Pham wrot= e: > > On Wed, Jan 17, 2024 at 7:06=E2=80=AFPM Chris Li wrot= e: > > > > The RB tree shows some contribution to the swap fault > > long tail latency due to two factors: > > 1) RB tree requires re-balance from time to time. > > 2) The zswap RB tree has a tree level spin lock protecting > > the tree access. > > > > The swap cache is using xarray. The break down the swap > > cache access does not have the similar long time as zswap > > RB tree. > > > > Moving the zswap entry to xarray enable read side > > take read RCU lock only. > > > > The first patch adds the xarray alongside the RB tree. > > There is some debug check asserting the xarray agrees with > > the RB tree results. > > > > The second patch removes the zwap RB tree. > > > > I expect to merge the zswap rb tree spin lock with the xarray > > lock in the follow up changes. > > > > I can surely use some help in reviewing and testing. > > > > Signed-off-by: Chris Li > > --- > > Chris Li (2): > > mm: zswap.c: add xarray tree to zswap > > While I think it is pretty neat to keep the rbtree around to check if > the results agree during development stages, in the final version > please squash the patches. One patch is enough :) Ack. Chris