From patchwork Fri Jun 9 12:03:44 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Zhang X-Patchwork-Id: 13273775 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 DC875C7EE29 for ; Fri, 9 Jun 2023 12:04:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 23AC08E0003; Fri, 9 Jun 2023 08:04:37 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 1E9D78E0001; Fri, 9 Jun 2023 08:04:37 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0D9298E0003; Fri, 9 Jun 2023 08:04:37 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 00D908E0001 for ; Fri, 9 Jun 2023 08:04:36 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id B94D91A021B for ; Fri, 9 Jun 2023 12:04:36 +0000 (UTC) X-FDA: 80883077352.21.7ECD631 Received: from mail-pf1-f176.google.com (mail-pf1-f176.google.com [209.85.210.176]) by imf12.hostedemail.com (Postfix) with ESMTP id 658904002B for ; Fri, 9 Jun 2023 12:04:33 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=PRc3ZLG9; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf12.hostedemail.com: domain of zhangpeng.00@bytedance.com designates 209.85.210.176 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=1686312275; 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=lp6OV13Bt/hNYfWu+dUWpmpBFuOi+D6XcFIiA8tjOKg=; b=DvD40RGM/7D9bi861mDsVKw9kkrp8NQI9bK2N2Yu763HtCiFak6T3UNwZ5b5D9qdPfJFGm tMNrdCh025xCjmI5dWl1fCem3Ckuj3GZCM8GxpItsGSHPTCfiSueygL32n2XpQEsmWrL7K n3EAY8xkC3eso29ojaGpHK7lhtAfDVI= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=PRc3ZLG9; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf12.hostedemail.com: domain of zhangpeng.00@bytedance.com designates 209.85.210.176 as permitted sender) smtp.mailfrom=zhangpeng.00@bytedance.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1686312275; a=rsa-sha256; cv=none; b=cxJKXUH+xb1N/zeqmc5oKytSDLUOBG8jKcsKwpslm6jBY4CQqFf1p1q31Q2z2JgjJnMzEB Qtpa+4FXWamExkSU/55HgWxG3PpuMMGsR4DXrDmduAuSwMlGJtw7N2iV3oxcFcef4j6A5x 39absyaf/E3RtDs2HcJJBKQ55hxAIPk= Received: by mail-pf1-f176.google.com with SMTP id d2e1a72fcca58-64d44b198baso1314833b3a.0 for ; Fri, 09 Jun 2023 05:04:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1686312272; x=1688904272; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=lp6OV13Bt/hNYfWu+dUWpmpBFuOi+D6XcFIiA8tjOKg=; b=PRc3ZLG9xumYTe3iNTpYxXmSIfnSJd3hDh7S5Kbt9/Im5mvIeUsyviNVibu6klxK4i A2qhQgXsIsD4vx5O6T/e9xkVtT6XySDs3rp6HVIU+P2iyuE/6ugFVGT+GJQTll5OkUnD nrc65hI+bajJDfpIq0Yfm8XovTN0AiqZnU7deGI0gtJ8C8lqDPzdxBx47MVXwRmtj1OF T3g2sr5SU8kShraGEVEpWfve2NHe5Q/eje488uWjHo2du6l4xBVDNYChX2pON9axAJd8 i96aK6DqlBqd7CvDHL8aMoabvlhd5FYQDMh6jDiaTfH9EPUe9ZzmC0CXSqgV1hYezvPc JXQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686312272; x=1688904272; 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=lp6OV13Bt/hNYfWu+dUWpmpBFuOi+D6XcFIiA8tjOKg=; b=RIHcZP5eOo5uipJMgsULT++3U9elkaCnq2jGuTLKN2ZepvQDTlBU4T8Dc67wXiQjVN Hb28ello0MTxn6lmUhptEZOpu/DU6RNfkDumJz+sPpCv0YIpwoDRbYeNrgVY0yOg7I/g nU3Hh/Xr7+je4zZ6oH1IubS83J+p4XGNPRaEFOi84wMlRX5nerq30ZXQ3bQI7ahCzm+l rLquZQn9pH/tvo4btrXh6t1BibqFziqoQHZQjt9FitD1QAPqe+pdawgWi312YxAvPahD Go5T9qx2kmpemFZQyU6rG4iAgNnhNCUTUYQ32cH4tw+QVpRMD0C2H0Ar47WFDOapUVle YQ8Q== X-Gm-Message-State: AC+VfDzIm2qeuyQ1FS5ZDYpmwDrOMX3xx6GZ3lTznksnWp+JZ1ay7L0K 5qMJ7XErQWTuZk536rt6L0CIMQ== X-Google-Smtp-Source: ACHHUZ4OD6GZXbvCpliG4gL749ujSXX9biD9kK3KxajdWPsOXlBfI8UPCGzSFWI56XgAwmROj6qpJg== X-Received: by 2002:a05:6a20:3947:b0:10c:2c30:4765 with SMTP id r7-20020a056a20394700b0010c2c304765mr2091168pzg.1.1686312271708; Fri, 09 Jun 2023 05:04:31 -0700 (PDT) Received: from localhost.localdomain ([139.177.225.249]) by smtp.gmail.com with ESMTPSA id v12-20020a65568c000000b00514256c05c2sm2619168pgs.7.2023.06.09.05.04.29 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Fri, 09 Jun 2023 05:04:31 -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 v2 0/3] Optimize the fast path of mas_store() Date: Fri, 9 Jun 2023 20:03:44 +0800 Message-Id: <20230609120347.63936-1-zhangpeng.00@bytedance.com> X-Mailer: git-send-email 2.37.0 (Apple Git-136) MIME-Version: 1.0 X-Rspamd-Queue-Id: 658904002B X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: ows4mij8crf1ishimuj9apadnxnyz3a1 X-HE-Tag: 1686312273-124404 X-HE-Meta: U2FsdGVkX1+/vg29OJdueMa/3h0Xkh/bJVeulptLB04GLvVYSrMWgakJU4b6exhS1uK7noHvg7ZjE1iTUhy5Scrg/J/ZdLWEch9W7TnDUfr94RkmvTYiof9m4yax5Pv/ORMSFKTZr4SQGiXBIwmiYTJ4RS5MBxu+DK98I4F55NLPDD3NoAOgA7fXrP0yQww9wUHmGUgUlZB1Ieypm40NoLiDVFPNb3sA1FX76Lf5C0eg933/h3WSKjQg6CbsPNlTY2m51Soe45D+uO+WK0troWg+jlQAWr85D5/1RW/cH7qzCET2ve89iE+0zSAXxMMZOUUcQv05FALQw6kRy0BqUqw0jnQ0m/gA0UtNsASuYgHj0GA8yMuCHpAvP/ggTdX0DX6Wmj5a27UEqcVpet0r/65yWRERSysdSh8v77VVc8EjCC9YaA6TvBAQ4UCHolqrli6MDm55Z3r5nDoWCK7ClWnAb5wViF+7iky8ayD3OpgjbXwhXWk6XXiBtrv1ka28YyB4c+hp9ZosCNA6NlilDjKU8YGYkA/S1RFRkQkFPSvxlAU1Ur2AlY2NpstVf0mSH+1i+WkeRxSx7hXbqSiVxqS5F6k1PiAVwM4TSvIaxWuysG2ZkKv9H4AGS4J/ub6ju/TwcS15hNp23apgJdljSdASs5LavDe9RI3mBG7XCvOXfGWcTt5VJ32VE6t5BVRFe5tSDmwGm3thKIFjbthmFs75auWtW5DryUdv86dvI1kjn382/j25CQkeGKJW/Ihlr0EXDW7TI8IRbEFlQXMMAdtM7lZtf5mGZVzE43pbtHZojc4+hLZ5ZdG4tgDmFXgehO0xIAADlHbZ7WutpDz1tB+fDXAQh39ShD82QH+ugMSPafNR2MqH6a4YirNazziSiBhHWw30ynu5ph5LysXkD4jszvc0G/7WpmgKctQJzOaLe6pHtaPieprjcF3t6C3pCtFR0FQIrPtcDyfdSNC Z7u19GyF b1bbgkuNfX7kP6QAmAn7FZVDt3JoWzYhPHB4EgdMjYDOSbXIro9m7sbuzEcd6IWy4ioWw0Xf675nLoWTvlmYhq7UAlLJV/TZYR6i/14/SmWS5V6epK8VAzaSgQ1GLPKJH50t+sDZD/Y9/xPucqBoXUASP6+x3bbeGNVkTTez4qnWgByr/7w4C8DsJ7GL4vS/b+NjLcSLSYguF3fBsxne2qTIfxb0dbHdeQN3AhezQb+8iqion4ntqYvyx9nZYx2AR0bt13RIH89LcrJhgc5H9a8MobWZHUIhNEA77512dZZ2gkJY5Jf2f06VuBg1TKrXLsDwaqHE2NhjFjczeMYPw6o4vIrFEINT1/F3Q7fFbLNnPsS7OvDVhxXhqT1NCPpx9QmZSicKihGS4c1ylUxt3OFWRIsvTi8xnEU99nKZLrRwMyER138doIkBqD0g/vu+Sn6qjUhK1ZnIU5YESVGLHWOEdYengFDmcjlhRnyl5aS9DqJ8xlASo1PMSAK0E9wMbc+J8LoJdB7UhMos= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000215, 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. Changes since v1: - Revise comment and commit log. [3/3] - Add test for mas_wr_modify() fast path. [1/3] v1: https://lore.kernel.org/lkml/20230602075353.5917-1-zhangpeng.00@bytedance.com/ Peng Zhang (3): maple_tree: add test for mas_wr_modify() fast path 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 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 111 insertions(+), 23 deletions(-)