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 A0C96CF6D2C for ; Wed, 2 Oct 2024 14:09:55 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0C31B6B009C; Wed, 2 Oct 2024 10:09:55 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id F144D6B039B; Wed, 2 Oct 2024 10:09:54 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D186A6B039C; Wed, 2 Oct 2024 10:09:54 -0400 (EDT) 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 A85926B039A for ; Wed, 2 Oct 2024 10:09:54 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 5271A160686 for ; Wed, 2 Oct 2024 14:09:54 +0000 (UTC) X-FDA: 82628845908.30.11DBBF9 Received: from nyc.source.kernel.org (nyc.source.kernel.org [147.75.193.91]) by imf26.hostedemail.com (Postfix) with ESMTP id 870EB14001D for ; Wed, 2 Oct 2024 14:09:50 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=fW0oa0SL; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf26.hostedemail.com: domain of "SRS0=nNOy=Q6=paulmck-ThinkPad-P17-Gen-1.home=paulmck@kernel.org" designates 147.75.193.91 as permitted sender) smtp.mailfrom="SRS0=nNOy=Q6=paulmck-ThinkPad-P17-Gen-1.home=paulmck@kernel.org" ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1727878151; a=rsa-sha256; cv=none; b=wXQ62MMkD3SJEEI949ahmlndCAGnxrK9aVE5agE74LyX6jz7snILE+0uqxnDrOLveyo1SY 8voV/tIaDf3WwHQUh87ctqYwhCQN1dS28sCw3S+vVlSECevMQsWaYWCqcp9aqX03NxWfG2 UkLuxgn0qKF1f94yY22nBUgPVmWOzPI= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=fW0oa0SL; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf26.hostedemail.com: domain of "SRS0=nNOy=Q6=paulmck-ThinkPad-P17-Gen-1.home=paulmck@kernel.org" designates 147.75.193.91 as permitted sender) smtp.mailfrom="SRS0=nNOy=Q6=paulmck-ThinkPad-P17-Gen-1.home=paulmck@kernel.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1727878150; h=from:from:sender:reply-to: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=bN9UTP2ci+ZA0VXd5xtgqQBz/LWavEdCPZ2P3IMbF/c=; b=6TJF30r3h41bKRGj3OxAayw5dtgGaVD7DDKci0lxCfeIGC5+Jhwkk1nOK41jrCFxF56pqc dj9CYHehBk9MkBRh2lM4SzxUfIeq9yV9Qd8Iu5NGYrFMyCY50qgUuwAzIwZcaX4BwYJuDt NbiEpsZzzmrZYQic4FoBqI3FeflUiyY= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by nyc.source.kernel.org (Postfix) with ESMTP id 2162BA4325D; Wed, 2 Oct 2024 14:09:41 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 20444C4CEC5; Wed, 2 Oct 2024 14:09:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1727878189; bh=ztEtpO2kOUfk95Fq1fQfm+HQEaDF0QnfJ03JKTdJUHs=; h=Date:From:To:Cc:Subject:Reply-To:References:In-Reply-To:From; b=fW0oa0SL00BMD5AxbNVSpfHResa4zReH+jYl5W3c4FzobttWTVraba/51xUO3ejUo fkFz4qihVsDkhKd2fHyWKmWTyh9KPc3gN6iWuQ803xyFDy/l6cfgLoSrsNjhbr6Z1T 2/hTWJkUHLwdkAKzpeptJMdmBSX9s0FdZNzmENdaHc73z8rrgwgO2BPkVJ/7Qxy/lK IBiKE2h+gP1y8vgzM2DFODO8j8WFhnqZeGAubbIosYVU3YHXotQiXjAcvpBE+UVoxl MYUICTvuMdBGXfFZPyc9YBh7/jE4Q30Zf9D9J+lJpIKKvkPgfHmE4c1ySbUin8kDaG VqMotaKRQyVlw== Received: by paulmck-ThinkPad-P17-Gen-1.home (Postfix, from userid 1000) id AD341CE0710; Wed, 2 Oct 2024 07:09:48 -0700 (PDT) Date: Wed, 2 Oct 2024 07:09:48 -0700 From: "Paul E. McKenney" To: Mathieu Desnoyers Cc: Linus Torvalds , Andrew Morton , Peter Zijlstra , linux-kernel@vger.kernel.org, Nicholas Piggin , Michael Ellerman , Greg Kroah-Hartman , Sebastian Andrzej Siewior , Will Deacon , Boqun Feng , Alan Stern , John Stultz , Neeraj Upadhyay , Frederic Weisbecker , Joel Fernandes , Josh Triplett , Uladzislau Rezki , Steven Rostedt , Lai Jiangshan , Zqiang , Ingo Molnar , Waiman Long , Mark Rutland , Thomas Gleixner , Vlastimil Babka , maged.michael@gmail.com, Mateusz Guzik , Jonas Oberhauser , rcu@vger.kernel.org, linux-mm@kvack.org, lkmm@lists.linux.dev Subject: Re: [RFC PATCH 0/4] sched+mm: Track lazy active mm existence with hazard pointers Message-ID: Reply-To: paulmck@kernel.org References: <20241002010205.1341915-1-mathieu.desnoyers@efficios.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20241002010205.1341915-1-mathieu.desnoyers@efficios.com> X-Rspam-User: X-Rspamd-Queue-Id: 870EB14001D X-Rspamd-Server: rspam01 X-Stat-Signature: 5ghr8dwyzeaebrskt733da3fgrqdu74n X-HE-Tag: 1727878190-157175 X-HE-Meta: U2FsdGVkX1+CjDs5ZtyOUawyusUl+rakSgudmfeRLVtnDMlDgnbEWg4hkjS7PZi338nwTL+YxT2L5V6vB32CuoEeoSTrZBdd7iV9wnDmNnAG3Qdj/45t9oN7rYmN2iR38j+hM9VMf7JA0nnaajzBwIYgCEfU+dGQ9ea3aSc0rhqs6ACyFDDe7kvNPjsEs4vlfXLA+zx3wNgmnJhV7ZuXSKtta4AYO7xD9AP1Vs94oBkiB0yUNiJ037tuQAhnNeH00AlfNlQ5zhco1G5wyWq3R2FQd19a16Bgxxok01V0JvUx0Ek7lCPvzXC60gYUF8ZNYqdGzPxerVGTKtSFzExSBHbIsMXk9VSYilkO6NkN/ez+v2Vn8sg3D/h0w5UXgNYS1PJYxy52ykNlK4YLhb1VNeIccS232aIZoBiF+X+jyJwU0SarY5fjbS5MyG8tSgYuo5mYAIlScQfRy08exHSzWX4PqosLk/n/UrgQ/l8cV9Q+wBu4G7OqMgaxOmNzUje5RuUdxlZq71IBPWM61II7tNCxA6We2JZvhDXdKGrhueD5hCH8i4wdW27n/2nSIXQnrHkMLIpohVRL75h+GRnL56Kj619dDiiP8RwZMGPCVfsJrQPshoLdltS9wvkqBgY40Qclp3CbnoAq2M+X7UrmBin80VGr/ioMiyhnajEatXpxFECTCKf4jronZnKdb5maLWFiWcApBQBCBSbL9JFTveLyvL/0YRMOMtz+MNd0fDsxWPOhz50uPrU7CLG7dl5bSIu5jQ25HCqRWfsmML+qPMF17brJXBTE8R+8DOnbs1klR2wqPAB9msXPdVlrw1hw8JuQB0r2Gddm/XQd9n0pqVRMhhGHpj36QNQn2q1/t1RJh5XK5Fm1hFL4yDCPOwv6+e8dwjXyBVDKwcI3zJBxw29kuxhrqHcuW1M9tvSDlFJv7KV6trXVg76QcO6OWGVQgt36XX68ctIJqzq+4oO r3qvxgVc JlumHa/FEMf5zthK47fXpKFsha5dBHz9/mX0CoBTXXApgSsTmKavhyrU7Jrj/u8ilTfde3HMqVRtAacFIEj2zBoFzVwMIRRk1YSZkzqVPeR1K6FGodEjSbx/vmFX3V6joK69SfUmESBjRP63YTEoPm27jC2b+AYxNdX8BFIXcgUCHn9oNwrDrxML8hDrWUjciOrwHICYgNOBKEJ1d+AY5nInVHOGH0rTK+kNLP2Jw1GTV8f0NCDntFvIdoXVzHS9sQGEJ3WglX+OGj5QUVGjVKdqMsNz0jTZ6wDKbx/0EuESfkpT9V9FTaJNVVBmCHXLy72ODptC73Qv6S33+de62QoJp1XE+EdcU18dduWV+ehS5rQIQusDR5seVVMUObvkWkoskj18V9Nguu/Wg/zu4LRE56lNMuzfLaXIWWmXg4uakkGPOeGZojwoXmmqk8uy0rTgbqme9YKVz//GesztrWQZwNg5Jf9cX9CjKPe4hBFeByFx09yxeVI4wyOQ3kg9UeMBH48wbEmzOttLbhsdGh1fKD88SEtTPA2d3KtLk+XdXu2hsIAfgmCBVr6Uj619nshIntEtOIj8dNfky2kcTryZCwIoRiVdoZhwt/Qz7qVl7WPnS69oQpUohuzOSo7TPHARPKxArQyVkHTr9cUnPQ9DUPTesdUbRfz70bZbN/43eoIsiWA6rwWcLp5U/sU6/L2cpBpu6ANaYMFLhq4RfITPI/3/vjjM+0i/GYA3Xc64VnWEjic1otcEjGX2BhvB4j17YYx52170FXAtmzi3AqggUv6lK01E5RWm86lleFbUFKa6YCVO8KScXn34IWjbd8ze9aVG8s6UY3n9++TPBtbNdnJ8/4kVKkkrVrkfI2+tEFRaYbO2h3CfKr0xZ6H9k++jfO1rwBtSi+TISYeZW0GCz7YOisyJvVwYk5naf+REh/YUIYexbeynyvSY095xLvih6p9CdzQTfM3Ouq6RamnkYy1GW YmoGYOu0 +DjCuvkMQMtEPHk9H6QWzkdSyl3MACK8oNb6Tt6DDNsa1fAUJjkmkkofvbJR6zllv0DwO63vyYSaOJ5NhWBwNew4dz+3cTb5T/Kh4tBMuDqSsaLdrWhyjVDFbwirgS9hV60oVh/zKQCoeEYMVi74xNltahJUEgvMu86yJRgZd9OOsgG37c0JwuYz7g+AAuzq8yjNM/iynaYmGIsaQa1utG49LeT1cXHojpjnFgLCl1zqgXFRi7Sif0Ly7tv8HoIv 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: List-Subscribe: List-Unsubscribe: On Tue, Oct 01, 2024 at 09:02:01PM -0400, Mathieu Desnoyers wrote: > Hazard pointers appear to be a good fit for replacing refcount based lazy > active mm tracking. > > Highlight: > > will-it-scale context_switch1_threads > > nr threads (-t) speedup > 24 +3% > 48 +12% > 96 +21% > 192 +28% Impressive!!! I have to ask... Any data for smaller numbers of CPUs? Thanx, Paul > I'm curious to see what the build bots have to say about this. > > This series applies on top of v6.11.1. > > Signed-off-by: Mathieu Desnoyers > Cc: Nicholas Piggin > Cc: Michael Ellerman > Cc: Greg Kroah-Hartman > Cc: Sebastian Andrzej Siewior > Cc: "Paul E. McKenney" > Cc: Will Deacon > Cc: Boqun Feng > Cc: Alan Stern > Cc: John Stultz > Cc: Neeraj Upadhyay > Cc: Boqun Feng > Cc: Frederic Weisbecker > Cc: Joel Fernandes > Cc: Josh Triplett > Cc: Uladzislau Rezki > Cc: Steven Rostedt > Cc: Lai Jiangshan > Cc: Zqiang > Cc: Ingo Molnar > Cc: Waiman Long > Cc: Mark Rutland > Cc: Thomas Gleixner > Cc: Vlastimil Babka > Cc: maged.michael@gmail.com > Cc: Mateusz Guzik > Cc: Jonas Oberhauser > Cc: rcu@vger.kernel.org > Cc: linux-mm@kvack.org > Cc: lkmm@lists.linux.dev > > Mathieu Desnoyers (4): > compiler.h: Introduce ptr_eq() to preserve address dependency > Documentation: RCU: Refer to ptr_eq() > hp: Implement Hazard Pointers > sched+mm: Use hazard pointers to track lazy active mm existence > > Documentation/RCU/rcu_dereference.rst | 38 ++++++- > Documentation/mm/active_mm.rst | 9 +- > arch/Kconfig | 32 ------ > arch/powerpc/Kconfig | 1 - > arch/powerpc/mm/book3s64/radix_tlb.c | 23 +--- > include/linux/compiler.h | 63 +++++++++++ > include/linux/hp.h | 154 ++++++++++++++++++++++++++ > include/linux/mm_types.h | 3 - > include/linux/sched/mm.h | 71 +++++------- > kernel/Makefile | 2 +- > kernel/exit.c | 4 +- > kernel/fork.c | 47 ++------ > kernel/hp.c | 46 ++++++++ > kernel/sched/sched.h | 8 +- > lib/Kconfig.debug | 10 -- > 15 files changed, 346 insertions(+), 165 deletions(-) > create mode 100644 include/linux/hp.h > create mode 100644 kernel/hp.c > > -- > 2.39.2