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 DFD2ECE7A81 for ; Mon, 25 Sep 2023 03:58:23 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 74F7B6B0173; Sun, 24 Sep 2023 23:58:23 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6D68E6B0174; Sun, 24 Sep 2023 23:58:23 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 550186B0177; Sun, 24 Sep 2023 23:58:23 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 3C34C6B0173 for ; Sun, 24 Sep 2023 23:58:23 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 0DEE21606DE for ; Mon, 25 Sep 2023 03:58:23 +0000 (UTC) X-FDA: 81273762486.28.19D9BEC Received: from mail-qk1-f180.google.com (mail-qk1-f180.google.com [209.85.222.180]) by imf15.hostedemail.com (Postfix) with ESMTP id 3F48CA002F for ; Mon, 25 Sep 2023 03:58:21 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b="UShm4i0/"; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf15.hostedemail.com: domain of zhangpeng.00@bytedance.com designates 209.85.222.180 as permitted sender) smtp.mailfrom=zhangpeng.00@bytedance.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1695614301; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=hww7oOWxGKb7qmsb0mmM2P/enCFKvkDkB3bMeqs1n3g=; b=FZJRZfamEaQ+kpQRWfDrdyD/xn3yCZ696WJFoIX8FRtm0ASFzv+B5bc3zwDED2u0CbV3wo BryebvuQ6eRfGCZ1YOH7vW3UPQwg9deKHoD00I2cgVioBZ1A7T1YMbSyRyUFZTvY4UMD/w uiF6rohXEVdRgXB+zXxpfxdO0T4bXiE= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b="UShm4i0/"; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf15.hostedemail.com: domain of zhangpeng.00@bytedance.com designates 209.85.222.180 as permitted sender) smtp.mailfrom=zhangpeng.00@bytedance.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1695614301; a=rsa-sha256; cv=none; b=CCfkvWi6j5Kh6xQw95gq3kbC8LX04EYWST0M7d5o1A/YhGDfSeqMLdV9jbgdxYy4601Ykg aogKiAAx9VRUQonN3lmppf7qhqKYcTXxB5ldmcx62OJEiRqOrcREvXDCknUkn8yiYR/9N5 r+QOVSkOYCThdheVoU67Y4BajV+V36o= Received: by mail-qk1-f180.google.com with SMTP id af79cd13be357-77410032cedso346434485a.1 for ; Sun, 24 Sep 2023 20:58:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1695614300; x=1696219100; darn=kvack.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=hww7oOWxGKb7qmsb0mmM2P/enCFKvkDkB3bMeqs1n3g=; b=UShm4i0/hLL/ag+MPLuqPHzFXUE9HIiioMDWZzqAbPoUSCQSa2tDb+hW4Dimc2ulF9 xFRCKx5EOuPlqVsOGD5c0sitgI4RnGnZyqpSIJIF0UmFNOOIIU5fji2bBfJCfzGaMW34 5P8LKfcFNzjovWyPfFeZhOaR6KeZ7waBva7/nr7WQANPIm4UVRaP8Q1aHbYQhrOtuJTw mUIDLcTnhehA9MDRIcBv2ClY7XfogGbZY/4DKUILCwS+n6nYzWd0HmSXeJw5DsO1JrF9 2jIZZegR2L61rPsertvHbvwowQ4N+BSoFdRGdMEkKBqoTT6n0W4lCnRVPMEO5WB6lcL5 T3WQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695614300; x=1696219100; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=hww7oOWxGKb7qmsb0mmM2P/enCFKvkDkB3bMeqs1n3g=; b=rLHszcC0bk416hf3FLPaa81K5zom816X6HS4KQOCVBqFilNWw+V5J+cq1zZXMWmpGY 8dvf8Eq4zZNi+hfZ5O8OQ9V5OO+nkjpK7wRlQKqe4aSPPsl17LTCghnwQ36EOopnvTLK Q9i6R9h3PZJiK7e4IzwlF8/eZo13reXrMxjFFqKI8LnujsAG7GtoP8sc3mH0f/1/ST0u drPk4duqOxQFG3O+J2eZYj2MyqAsQU+UqJLYW4lWFmbxod0QJ3L/S/1i/aVQjywHuG1+ n6T7l65Yx/cYxBs95P2ylB23SYMtMPlMFxDz4aZR+1Jt/J7j+j3J643NQOu1sVWLD2Yq WTsQ== X-Gm-Message-State: AOJu0YwBPYzPVQtq9BEJvenSwN4gjxCopCaCj/w6csympqCmKXZ5EKa5 rMuNJcpi83JN2xovbXgog+V+Tg== X-Google-Smtp-Source: AGHT+IF83HXgYz6hKs16v3Oy5RBkvjlke2ZYjx8DNaVcWabWxUJCzfLznLiorxxWRtU2DFZTy6RRoQ== X-Received: by 2002:a05:620a:1987:b0:774:2c35:3796 with SMTP id bm7-20020a05620a198700b007742c353796mr3484182qkb.34.1695614300078; Sun, 24 Sep 2023 20:58:20 -0700 (PDT) Received: from GL4FX4PXWL.bytedance.net ([203.208.167.146]) by smtp.gmail.com with ESMTPSA id fm1-20020a056a002f8100b00679a4b56e41sm7025387pfb.43.2023.09.24.20.58.13 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Sun, 24 Sep 2023 20:58:19 -0700 (PDT) From: Peng Zhang To: Liam.Howlett@oracle.com, corbet@lwn.net, akpm@linux-foundation.org, willy@infradead.org, brauner@kernel.org, surenb@google.com, michael.christie@oracle.com, mjguzik@gmail.com, mathieu.desnoyers@efficios.com, npiggin@gmail.com, peterz@infradead.org, oliver.sang@intel.com Cc: zhangpeng.00@bytedance.com, maple-tree@lists.infradead.org, linux-mm@kvack.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org Subject: [PATCH v3 5/9] maple_tree: Update the documentation of maple tree Date: Mon, 25 Sep 2023 11:56:13 +0800 Message-Id: <20230925035617.84767-6-zhangpeng.00@bytedance.com> X-Mailer: git-send-email 2.37.0 (Apple Git-136) In-Reply-To: <20230925035617.84767-1-zhangpeng.00@bytedance.com> References: <20230925035617.84767-1-zhangpeng.00@bytedance.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 3F48CA002F X-Stat-Signature: qwp55ckcjcrcgbstwzun9o9wwsobihue X-HE-Tag: 1695614301-376134 X-HE-Meta: U2FsdGVkX1+Ix+eW4sHzIqXqJbDLCKW0ps/bYNuzeZe/jd5NuAym6eQgpXEPaWXmnrFnR/S/LnKOKw4R4URDR4MY8Ejv4t5UMd+coPS2xeX59iQ70AJt1CCFagW6vfgyieq1FAfHqAZ7y0X0KB5jFH0ZyClhY94QX4mDFhhGFa7g92mUqbYuX7b4PKGo5vW2T6f7YIOUfq2MUHDHiWKrN930mSW5pyGCzPgidKJTYZjQo1PqGp2mmXvpbSDbGL/mwnDjXdmyF0x5cbTV+I+hdOgs2itxri+W1XLIMFv6gSOA8kGpe/FHNG9JtmWrCC2bxDbw50eruHFNUrmS3X9P0IdZR6OF1yPdnNyqQq1OGmyRqokJ/fU/qxR4KExwcm1WVqSCyZEyPtkLVClG+zwbp9UKQLAzpH0UywlwV9PdAs2N74CIyHHXVvomYUHLtJVcXHAeH8yn9mricAF95Ri+2mabxRHHUjVLC0NJJAJs/OGgwJf/dKBMd3vI5mtRo2zTGx6h4IgPqVwey9gGGfu2YAHWEgiudt7fJNNGPdV0KNZaG/PJ2eDfTD/ZLbTg/9FxcU8xpOTwEVtUd+RdQPAfQZeF7oXkE9eLaVeMd3dsbqlbofxVUiWE8qstcvQEzAiS3E5xuDhdG/K6FH8pl61JzZDVQbB+jL5ng4K+x+sMUJOQ9z7ztw3AWMN70bTNLIgBCb/59a9+KqfORQlcqBbnsJUoq8zH3XSDBJXH+gYm70pLdAPMB3KI9r+i9MvFTQh0bVY/Wf1VT6rM+IZ3FpE3efh3rAtgIvCYdOZf1slHghEMLuMgbyPEkbK1aDKV35sMBAd+cIxN6DYh/w9TJg4MyZB4U7E719jIgVG0aQa/T/h34NsWO9QnNyqqi+J5TVPZwKueGCysdDIAxoAA/XX5hTRC7sGQKV7ypGC6GR/73ewPQHirYovoItXA6E7KNMP0TITI1PRoWv6dXKbsqNd 2XBYJls5 hJSvLwdiAGYTeea+KtKqEw2xT4D5o8ZH0sJ5TVGxS/OHNVZTPOovapjN/pjEYHRjF47KJcVPjx5x79RbT4bs1ngJd2CDzUZ3Zyjh3XHsSe/geWDK3DZogv6pAOKUCFO7skLUlKJrULdM4HsS52zI4hux84OqcvCwtYSEbehs7fst8LeFAXSPS5ovu8Y2goKsVRsZulvrvO8mEYRZV6ncIN0Y0ZtR2GBZXtQ2a2euoJX2xCjpVFI4PN89mA/2F7pTSCOuY0dZNVunAiP4gDrPBmCIuI0DSUi7hbvlYxsC5TYrt5z5Z5vhE7G3XQOcARlurNEiR4wbBFtDQvl9Jhybol30L/0R9VrX8Eb0UURzOV4ItBy2It+onx1YKa+O58fWOmQBK6GGmrvPx7xU/XNb/l9VQvQMZ27eEUOj57E5EjjE8wRfKaWzfNrAG3DU7cLCwGEaFDL9FJYmApCBFd1z7dMMd4Q== 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: Introduce the new interface mtree_dup() in the documentation. Signed-off-by: Peng Zhang --- Documentation/core-api/maple_tree.rst | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Documentation/core-api/maple_tree.rst b/Documentation/core-api/maple_tree.rst index 45defcf15da7..3d8a1edf6d04 100644 --- a/Documentation/core-api/maple_tree.rst +++ b/Documentation/core-api/maple_tree.rst @@ -81,6 +81,9 @@ section. Sometimes it is necessary to ensure the next call to store to a maple tree does not allocate memory, please see :ref:`maple-tree-advanced-api` for this use case. +You can use mtree_dup() to duplicate an identical tree. It is a more efficient +way than inserting all elements one by one into a new tree. + Finally, you can remove all entries from a maple tree by calling mtree_destroy(). If the maple tree entries are pointers, you may wish to free the entries first. @@ -112,6 +115,7 @@ Takes ma_lock internally: * mtree_insert() * mtree_insert_range() * mtree_erase() + * mtree_dup() * mtree_destroy() * mt_set_in_rcu() * mt_clear_in_rcu() -- 2.20.1