Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp29408pxu; Thu, 3 Dec 2020 18:21:13 -0800 (PST) X-Google-Smtp-Source: ABdhPJyPs4PBa/4WwIi3REbwWm5srmHCpCj3ZZxmKbmTeo+zsrvBj3Is4TbdQP/lTfTpvVr3dSHL X-Received: by 2002:a17:906:1498:: with SMTP id x24mr5013601ejc.170.1607048473231; Thu, 03 Dec 2020 18:21:13 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1607048473; cv=none; d=google.com; s=arc-20160816; b=yS57xKDbsTCeUTlaJL2kuRqtxx30oj7ls3BH4MzKhanoPeT75TmBThlGwId1yT0uLq RtCTmHpes/W5PdGelG6mR7al3W5O689suk0uX3uuV0iveo5vl4ItcjCwkEs2GJzHYijd WMBMUH3GVotEzp4bQ7+Isif09XpTSB22JDkaAfiScBc0TYGhwI32J4cH7p+S8FQX508k oSRYVHFVi9615Jsg2NpinhwCdUUNWD6KJy9XX7iPhO5lP8B2VcPAL0O74OkjjV4iBmND 1tJv5Th+Fc3H2a2Gf0AquQ7eOAF0xiXgj45v00yx5WB+xP1ml0mpCSyAkKtZZg2Z3Wsk pH1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:to:in-reply-to:cc:references:message-id:date :subject:mime-version:from:content-transfer-encoding:dkim-signature; bh=Fd2ivA1JfGBE/YYaFxTeQJoY+3hIQ82HTGN9ThwBn8w=; b=N4IAm0X9dg16X9M/ZlB8k4tPmjFpKK44fxi3JSnOHsn4TKkjE3rj2TWOAR7pWqzEUy PsuyetBvXZjRNhaJgHVx4yJkV6nHmX0iXUOi4AOOUsLAj1UWIGCkdMCDyi/TXw74YlBq Oyr/XvF8yi82XIhhQsMJmabR+w00sx8YXVzKGObr54uJukvdhfNLRj35c4fd8fPGi74P KYI78TgdV5kdRuRUrMU/03Qt+TnrDn43gta9U/RNJEdRm37/OjuuUFRjycECHfFeUxTo Fhoy8l/cN11csQoBve0AxMthArsoHRv7SPG2S/kNPfvAyPDcVNJlsk31ojfSn1DVJk7Z Hg7Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amacapital-net.20150623.gappssmtp.com header.s=20150623 header.b=bd67G5cf; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id p15si2058845edx.69.2020.12.03.18.20.50; Thu, 03 Dec 2020 18:21:13 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@amacapital-net.20150623.gappssmtp.com header.s=20150623 header.b=bd67G5cf; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726396AbgLDCSn (ORCPT + 99 others); Thu, 3 Dec 2020 21:18:43 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37328 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726316AbgLDCSm (ORCPT ); Thu, 3 Dec 2020 21:18:42 -0500 Received: from mail-pg1-x52d.google.com (mail-pg1-x52d.google.com [IPv6:2607:f8b0:4864:20::52d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7877EC061A51 for ; Thu, 3 Dec 2020 18:18:02 -0800 (PST) Received: by mail-pg1-x52d.google.com with SMTP id m9so2603055pgb.4 for ; Thu, 03 Dec 2020 18:18:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amacapital-net.20150623.gappssmtp.com; s=20150623; h=content-transfer-encoding:from:mime-version:subject:date:message-id :references:cc:in-reply-to:to; bh=Fd2ivA1JfGBE/YYaFxTeQJoY+3hIQ82HTGN9ThwBn8w=; b=bd67G5cfWvkCpWSjpFtI1+6l2zRYD23xLf/mhlvIDACjrdi9nyf9dA0r6nvvREyg08 f3/zsofCKY9aHt8SOxoMx94nNle0IBiOTvBwYKGdD9BVOEcCdLCVu0I6aOeaq7weUEWd EEIsrpT29dZ7HUU6IaIcUu+7qyqHljF6kf1ZearRQIWy4NWCn0VtkvVswIJqSbx1kOPr WLin59SvycwQtsrRgOoTfDikupSHB/+1QbEuAminucunl/PpeQO2nhXPBX/ZUzrub1eG EpYVkC2O08NhLbUm2XXwT50LKLrJr4vr8BkrzMgNmwHT5STBd5lQTFYdQbdw0F0SfX1w 5njw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:content-transfer-encoding:from:mime-version :subject:date:message-id:references:cc:in-reply-to:to; bh=Fd2ivA1JfGBE/YYaFxTeQJoY+3hIQ82HTGN9ThwBn8w=; b=Z4fKE6pyuomqCE92AdeYzbHDnPQ8JlEY1+VpX7TokmP967oPE65Ar6/NSKuXb1z+L0 NZj2qCYFjeEsezIYhKIl3tgZ7SAHNnVO23C6DRFwKmnfEj0uZ8TcMaUpIf8KSO/pSDPw EyxccoPF6PeRV/mI80yHlC4QdYmvdN1uO5KlL6t5ovOs741+QVdZT8celK7wVSGq2AHo 9KEioxxbMVArE4smwKzTCfDoeXm//L2hbV+ske/lCQ978ubobfdqTm9XiCzYrO35gaO+ os7EMWizpWGHU+fMwJgp5sVPf5Q/Qc8arRwrhyr59pX7Lt4PVckRMbncNAQwJGT/aaxV PtZw== X-Gm-Message-State: AOAM532bJ3KzoCtNSjZy/ahEsPVQcCADWy421geCNxF9lWqHOt9sPcg2 ctqsX3lpAppptBQQa9dSmnIVbg== X-Received: by 2002:a63:f64c:: with SMTP id u12mr5577532pgj.325.1607048281788; Thu, 03 Dec 2020 18:18:01 -0800 (PST) Received: from ?IPv6:2600:1010:b052:49bb:5861:3d22:1fe4:dfb5? ([2600:1010:b052:49bb:5861:3d22:1fe4:dfb5]) by smtp.gmail.com with ESMTPSA id v17sm2249260pga.58.2020.12.03.18.18.00 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 03 Dec 2020 18:18:01 -0800 (PST) Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable From: Andy Lutomirski Mime-Version: 1.0 (1.0) Subject: Re: [MOCKUP] x86/mm: Lightweight lazy mm refcounting Date: Thu, 3 Dec 2020 18:17:59 -0800 Message-Id: <3B47C470-2900-4A53-9F8E-CB3A003FA361@amacapital.net> References: <1607033145.hcppy9ndl4.astroid@bobo.none> Cc: Andy Lutomirski , Peter Zijlstra , Anton Blanchard , Arnd Bergmann , Catalin Marinas , Dave Hansen , linux-arch , LKML , Linux-MM , linuxppc-dev , Mathieu Desnoyers , Rik van Riel , Will Deacon , X86 ML In-Reply-To: <1607033145.hcppy9ndl4.astroid@bobo.none> To: Nicholas Piggin X-Mailer: iPhone Mail (18B121) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > On Dec 3, 2020, at 2:13 PM, Nicholas Piggin wrote: >=20 > =EF=BB=BFExcerpts from Peter Zijlstra's message of December 3, 2020 6:44 p= m: >>> On Wed, Dec 02, 2020 at 09:25:51PM -0800, Andy Lutomirski wrote: >>>=20 >>> power: same as ARM, except that the loop may be rather larger since >>> the systems are bigger. But I imagine it's still faster than Nick's >>> approach -- a cmpxchg to a remote cacheline should still be faster than >>> an IPI shootdown.=20 >>=20 >> While a single atomic might be cheaper than an IPI, the comparison >> doesn't work out nicely. You do the xchg() on every unlazy, while the >> IPI would be once per process exit. >>=20 >> So over the life of the process, it might do very many unlazies, adding >> up to a total cost far in excess of what the single IPI would've been. >=20 > Yeah this is the concern, I looked at things that add cost to the > idle switch code and it gets hard to justify the scalability improvement > when you slow these fundmaental things down even a bit. v2 fixes this and is generally much nicer. I=E2=80=99ll send it out in a cou= ple hours. >=20 > I still think working on the assumption that IPIs =3D scary expensive=20 > might not be correct. An IPI itself is, but you only issue them when=20 > you've left a lazy mm on another CPU which just isn't that often. >=20 > Thanks, > Nick