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 D3965EB64DA for ; Wed, 28 Jun 2023 07:37:13 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2FA4E8D0002; Wed, 28 Jun 2023 03:37:13 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2A8738D0001; Wed, 28 Jun 2023 03:37:13 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 172178D0002; Wed, 28 Jun 2023 03:37:13 -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 023898D0001 for ; Wed, 28 Jun 2023 03:37:12 -0400 (EDT) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id C71E1120CB4 for ; Wed, 28 Jun 2023 07:37:12 +0000 (UTC) X-FDA: 80951350704.25.C4AB8A0 Received: from mail-pf1-f170.google.com (mail-pf1-f170.google.com [209.85.210.170]) by imf25.hostedemail.com (Postfix) with ESMTP id 1229CA0009 for ; Wed, 28 Jun 2023 07:37:09 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=lizA85DE; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf25.hostedemail.com: domain of zhangpeng.00@bytedance.com designates 209.85.210.170 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=1687937831; 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:references:dkim-signature; bh=59hIQrKJpHgwfOvQPS9O30uYvhiNepA8VuOZQbvyanA=; b=GySaBNiqT6n/lyjRFS12+luLn4Yl0GGdDxpmoB0ZmSu8sW7hQdYo4CsJReDN/9UhJoKxjF 4DUvxm5IV4QEjzxfRxfSBBUkmC1w/EkPdhUxGhP4A2vPcBrfLh564iZiNIGwGYIjCvPzHa GApeGTf62iutRwF7fbaqZ9W7sduwfXs= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=lizA85DE; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf25.hostedemail.com: domain of zhangpeng.00@bytedance.com designates 209.85.210.170 as permitted sender) smtp.mailfrom=zhangpeng.00@bytedance.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1687937831; a=rsa-sha256; cv=none; b=8CKFKmyhcACe0OL+w/fuwqPGdPjUgSwrl8OFiGqbDRxJSBxsPf86NKdJN9hMba8jH9clYr QWfNSEL6lEJufagHV7kk7vt2RHKDBOctgMOdEOQhbQFQZECvbXbTFtLHexQz9XYs4VSuEb 80F9uEtGdrOTSoKcvcnboC82lU/y9GA= Received: by mail-pf1-f170.google.com with SMTP id d2e1a72fcca58-666e6ecb52dso2967148b3a.2 for ; Wed, 28 Jun 2023 00:37:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1687937828; x=1690529828; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=59hIQrKJpHgwfOvQPS9O30uYvhiNepA8VuOZQbvyanA=; b=lizA85DEToMfBBfQG02qZ6g1MJIjaBA/DqpRfkcz/rTwRPMLUSvi1CyIVpZJ75UIEH zDr9zNNfrfFHOLtp+t5hDVjg9LFqFStSXHQCdiMa424VhYPEB5T2im9T7d3Z0G0bgR/u GMt9fclQXlw7MEfNQIc8dfv2dGWWLLL8h2yaDpqO3gd5v94/lhjo8zN/QgoXsQVa5Ghm YcVDOi9q1fl2FYnVHdvQfb+jdO7XS0F5vYmANEjWWbOKeGXJ0Vf2F0ZHzJz41i4ZRvaQ pG5BvAJAZnoal6brCNWN+HB0ei2GSdmPyFUUlOkgOiWgS7gGlqUxPjP3Vxjbnii0u0wo aQqA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687937828; x=1690529828; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=59hIQrKJpHgwfOvQPS9O30uYvhiNepA8VuOZQbvyanA=; b=feOW5pAisZHF1NXtnEsDevnCRDYUPqVeIby1k/RVyac4PLFKMfJgfCfli0Hg04ry1P 8q8BPgRckWeF7t19np9qKZ8L2BI4s9knszHWwvqEfzyBMDekYzpxOTAQJwqy5SiBPOQz pJOarycjjwMYn3pVG3IAddw3v1sTYMW+aVmjSTaEMCvQr0rSBC/ayTs8o3os+O71QSXa XP1XK3cKe2lS5RzraPTbR0Jgb5ChQoVKMyGtBh4FRqxqDU/lZ04XruXDlvaiHygm0XNx 8L2dqYZfKFjg8h6PbR6tTj2+8jX38YF5LjhIMVIc92OjDXkyZMiMmchHtlLy3k4gYt0Q sUjA== X-Gm-Message-State: AC+VfDxQ3EODtU0uzgU3XaFmdQXw5bVyuihqJ3UNHlR4XPEeiHUl503B AFjZxdvNfGJb3zEXRfE3tkmQGw== X-Google-Smtp-Source: ACHHUZ7sSZA2dWtV3MSXiHZSsyyjPBx3Gzn28IS91FEiYfJ0YdxogMtvUD6PcjFRg/YjdoP0oDZayw== X-Received: by 2002:a05:6a20:a108:b0:12c:1193:a563 with SMTP id q8-20020a056a20a10800b0012c1193a563mr1398950pzk.58.1687937828517; Wed, 28 Jun 2023 00:37:08 -0700 (PDT) Received: from GL4FX4PXWL.bytedance.net ([203.208.167.146]) by smtp.gmail.com with ESMTPSA id jj6-20020a170903048600b001b8021fbcd2sm4836988plb.280.2023.06.28.00.37.05 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 28 Jun 2023 00:37:08 -0700 (PDT) From: Peng Zhang To: Liam.Howlett@oracle.com Cc: akpm@linux-foundation.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org, Peng Zhang Subject: [PATCH v4 0/4] Optimize the fast path of mas_store() Date: Wed, 28 Jun 2023 15:36:53 +0800 Message-Id: <20230628073657.75314-1-zhangpeng.00@bytedance.com> X-Mailer: git-send-email 2.37.0 (Apple Git-136) MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 1229CA0009 X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: bxhpz7gdq3jyo5nrsnj7pfj9b4u5mizh X-HE-Tag: 1687937829-324614 X-HE-Meta: U2FsdGVkX1+xc1QYpYixLWx+1GBQDukvdFrfBxtFw5cPS0jSPSR6oUJYM1pf7LpLlBkOF6KzQCJ09d8N9qPi2NuIEmJ1yBZFQmAxrmIzF8if3HBzRyH5u5kkXhOqFYlGpptM+1/riVX85yjxVfOf3dm3WoaEIS0KsqFOW0I9tbHA3oOS10/NLGmQgj/1wKs+iuGr0gWHGr6SAL8dUvKuHc0qQ4QvaexVj5CR7/PpS2gfa+Cwv4P7nQQp+Y+E1KuLRYZZEwiJPPBDxs4eXMyKbZRXcjwOIeM2UJZZSh7+KO/NiN/dhiPbCFVlDXL74J0aK2daqDm5BZNVnJ5aTT7jV4B2O4oR1okPvClTXA8sTbOON/rh91CeJBIioBwfFZB++NV/Qat2Oj/GOgJVBieHU/Z3YfWC+4sKBXPzG2BAQhUNh2ig9sMyi5r1iuhuZNJQU848JBKc5CkKogHqRwD5PPcfPLUpZr57WoEE6k5Wd4cItnXkdlS+VN4F6gq8rF4jLAGIYaP5UkrA+aUUG8+EEy/SFDlw9qI6juwFqQbDRaTP5jNYIClSiaZOuDQENNiZ+thjqog/rG1cQ31dPfiQx0tta6ZcB0ePwpWwhndYifMCVZnKR9OzRDVDN37+yrWasvrS6IqNtNOCBXhp89lqKh+c9FkckcCMlGbjwpojBG6VFTdVNgeIPA+Ms5OEZOaZ25RqpaeU3VuIc6Rs4kpjH/Wq2/NiFdrRxqlXd8114yuUK+45WJxn3It+D/423sQIciMhz+lmuCbnX6x0OW4hP06+nNhuTAEnXIG3A4SMJQxfSHD5J93LvM4fdRVI+067BW0Jo82JtSzqRVc3otmbQAcXWzKXetDPjAUJEIRl8tqKs+FXONwEeCg5e+tO64S5NWCVhv4tISegdcOucpVhDi6CwP6gNmt3XmVF8ye3IAYDd/FeQ0r04QZyPrJKuxd+OqtTsXGx63tFR0w8tCj XcOTRc7N o1cZ7a//21ZLtObpYmXZLBwUbU1Ib1sff3grcpDLBajH2krus6Mmq0prZF4inT3+DfZvjQUS4cbts00pGX6U+Iihrt6dmraxC2oBU4X5dAIN5DgMt+hov+qVEdGNCCErYXJqcpF/BF/yskjlrbj8vEqT1eVPVSCpup4zurIkDHEPGoQvyrvy1WcnA9G/2JD0o3jAxoQOCBWWdX/L8WzoOUJNHApmqCrG8050144aOppfmyOIu5EwAv2SdcUwNCM/5EuSDsFxfHuCKcD9WcHvAKkE2loos/vJgRHDyf+OL1KIdLgD1fLC1Xu+7WZ1WEhvtznFD3MgWEPFrwS3VVP6YB23NCTeoKgk/NS2+743NYJWGoDBSalKs05TkjOT9vVSwCEYKHAQ9BBJdeSgJ9vB+u/38NE6zlgqedB0vwt6yNje64NVchgIFe2lRJusKl4OP26//qfEwXffvXweNXI3DJTn/VEO0b5hQJoF4daDvvQxtT0hYRqycqfghmf4TP3QU9tCpVY57sj5Yutc= 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: Add fast paths for mas_wr_append() and mas_wr_slot_store() respectively. The newly added fast path of mas_wr_append() is used in fork() and how much it benefits fork() depends on how many VMAs are duplicated. Thanks Liam for the review. Changes since v3: - Revise the commit log of [4/4] v1: https://lore.kernel.org/lkml/20230602075353.5917-1-zhangpeng.00@bytedance.com/ v2: https://lore.kernel.org/lkml/20230609120347.63936-1-zhangpeng.00@bytedance.com/ v3: https://lore.kernel.org/lkml/20230615084301.97701-1-zhangpeng.00@bytedance.com/ Peng Zhang (4): maple_tree: add test for mas_wr_modify() fast path maple_tree: add test for expanding range in RCU mode maple_tree: optimize mas_wr_append(), also improve duplicating VMAs maple_tree: add a fast path case in mas_wr_slot_store() lib/maple_tree.c | 69 +++++++++++++++++++---------- lib/test_maple_tree.c | 65 +++++++++++++++++++++++++++ tools/testing/radix-tree/maple.c | 75 ++++++++++++++++++++++++++++++++ 3 files changed, 186 insertions(+), 23 deletions(-) -- 2.20.1