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 7F5E7C25B50 for ; Tue, 24 Jan 2023 02:29:49 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B33096B0075; Mon, 23 Jan 2023 21:29:48 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id AE4346B0078; Mon, 23 Jan 2023 21:29:48 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 95EA86B007D; Mon, 23 Jan 2023 21:29:48 -0500 (EST) 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 80A156B0075 for ; Mon, 23 Jan 2023 21:29:48 -0500 (EST) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 4B01CAADC3 for ; Tue, 24 Jan 2023 02:29:48 +0000 (UTC) X-FDA: 80388112056.30.9D33174 Received: from mail-pg1-f172.google.com (mail-pg1-f172.google.com [209.85.215.172]) by imf10.hostedemail.com (Postfix) with ESMTP id 72444C000F for ; Tue, 24 Jan 2023 02:29:46 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=j4Co2CjF; spf=pass (imf10.hostedemail.com: domain of npiggin@gmail.com designates 209.85.215.172 as permitted sender) smtp.mailfrom=npiggin@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1674527386; 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-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=6EL33MbyBAeFj7W1ec+AuUrU/yhgkc3rBnt2BlC4w5M=; b=Fl0HWHSRQN3hBrCgrmnJvfyQaPbDRRJyCr8e6r7u9ancY2PbKJay7lkLja9h7S6ZYWBe11 6WW0XwaXK9S1OLsmvCoOmLn83CIf6sKEo1HlBf7b14drqKkH2AixZqUKMiRYHCex7jvUld MQdQGW8ruShM2NCKdTpt2f1QKROfKEk= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=j4Co2CjF; spf=pass (imf10.hostedemail.com: domain of npiggin@gmail.com designates 209.85.215.172 as permitted sender) smtp.mailfrom=npiggin@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1674527386; a=rsa-sha256; cv=none; b=hSuwE4V5qel+BnyLVLgUeADIvhiWTQPqhAunmP3Um7YJ8L3p0FUi4rNSJb4pPIAS9zFivr cYtAoS9qkbQPoZapIM86y/xp0+mbvIAY9/n6fKMgIZqC6xUhQEnpfWsrPjJwu3hy0x+5fd VSl5fRixNDAh8ku/IdzXR6SAMzRAy84= Received: by mail-pg1-f172.google.com with SMTP id b6so10413030pgi.7 for ; Mon, 23 Jan 2023 18:29:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=in-reply-to:references:to:from:subject:cc:message-id:date :content-transfer-encoding:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=6EL33MbyBAeFj7W1ec+AuUrU/yhgkc3rBnt2BlC4w5M=; b=j4Co2CjFtUbQlY3aCX8ZaGPTa3bq/5mD2naMb3jg8EmNIah3y15FrWh/iDBJe8/mav 3GWNT5fYif/IJNrSpvSxdRPB9dMBK/9iicboI5JbqCfSgQY0gF4g4daxhY/KxiwUWkma 800yWr6LlupKIQRude2UxapBJLr1Oy/TbVhBWjgE9zONONrVzCUlBdkanBr3/c92sf/u zuUZw6bo5UqX35TYTDMPbkee/FuRVqkvyXO3S/HUIrnFYK30bzFbuQVvr0jVsegOh86M qtB235Tds0eSjSpFc+nNCn6URsIfJRxl7yZxH15S1Aqi++IxUOjAItYI/sP8MAZONqVw spGg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:references:to:from:subject:cc:message-id:date :content-transfer-encoding:mime-version:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=6EL33MbyBAeFj7W1ec+AuUrU/yhgkc3rBnt2BlC4w5M=; b=gAAdnKBQlih8xLScmgqLCyjVhhxbRVN4g4Epm4DuzMtwK+K9cZpnwHUTSIoWZ9aEe3 AIK6iZ6XwN/V0ca2wmxQWxJ2E0jj/T4gUnlHWqvzFBQ43+k16sIDBY8shC+iM0BZlb75 aSNl/OUFVuF95GTAGYKaDlfbBP9jv7fMkoHjQpu6ef5hSmXDioV+dse8glRHA1rqCant Gu+cHYdgAJyrD+pofO+z8lpTW2RyK946SQOLyOMUIm+ZRTRAk+xtgqwsUHTX4iHHrxaw P/43H5jFKkOdhB52eT0ccASWcrruiddwqWdLfulGx+c41SuiNJ245Zt1Nr/qIeHwbYy3 UcrA== X-Gm-Message-State: AFqh2koRMlLs/TV22nfB+IMcwJzXXo5MjJUXGWSFvta5m9HBlRB1kZPo rzFStRTUtQet6zUDwLW2yaA= X-Google-Smtp-Source: AMrXdXsgWBdkF5aJcEXfGt3E1+MiooI3g5UFcMgOiKWWV2GlTsc9rdrcqnSd7HVwvPKPTbVy+5n6nw== X-Received: by 2002:aa7:8bdd:0:b0:58d:be65:f781 with SMTP id s29-20020aa78bdd000000b0058dbe65f781mr27427114pfd.5.1674527385193; Mon, 23 Jan 2023 18:29:45 -0800 (PST) Received: from localhost (193-116-102-45.tpgi.com.au. [193.116.102.45]) by smtp.gmail.com with ESMTPSA id x12-20020aa793ac000000b005898fcb7c2bsm290307pff.170.2023.01.23.18.29.41 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 23 Jan 2023 18:29:44 -0800 (PST) Mime-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Tue, 24 Jan 2023 12:29:38 +1000 Message-Id: Cc: "Andy Lutomirski" , "Linus Torvalds" , "linux-arch" , "linux-mm" , Subject: Re: [PATCH v6 2/5] lazy tlb: allow lazy tlb mm refcounting to be configurable From: "Nicholas Piggin" To: "Nadav Amit" , "Andrew Morton" X-Mailer: aerc 0.13.0 References: <20230118080011.2258375-1-npiggin@gmail.com> <20230118080011.2258375-3-npiggin@gmail.com> <4d26df97-3725-182b-6312-fa5cd8e9f85d@gmail.com> In-Reply-To: <4d26df97-3725-182b-6312-fa5cd8e9f85d@gmail.com> X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 72444C000F X-Rspam-User: X-Stat-Signature: p18n7mp7y4bgy97ewbitf7hy1j73c6ti X-HE-Tag: 1674527386-602783 X-HE-Meta: U2FsdGVkX1/ttEovxlGVyQg3B21JF+lROTJUwAqScJmlzcLgjh1SsCsVN0JcvgQrKAr864HGNEEHMmrW9PYVYPXS/lRk18ejcA7RNAGUwngivhBegQoIzPZLPYK8xNYljcbdD/1BM1L1jHBG7GE37aHae/b2exRvCkuCY1WT4q2tnsGKaPiFpulbfJMX4pAeDotHbnB3jEtDUrTK/TPfX6vg5WjHzskkbEmCYdmcq2RfqnVdCWXX7f0Xn++gROoudtWlRDF4SJB2REik1zKhnKfc3gSwHUlP8hoifXVbcpwtj+qFIWYiLkBr/9uxoQIwNPA83GrIxQ+oRCL+YWBP9YbXkkzX/KPkKy1s63j8L51az9rrO9snT3xpRIYWKYlUVinLLD36uqOc7qc5KOkQzVD76DiWdymKaFVR/cRbVo23G96OX4ugrEmeMid/VDRRCH7s4KQm6G/ehiATcK0KMunQopQCioBMDF//4at2Nln78NHZZaV+Rch7QMRZjpqK2kh5dJwbu+qAbRgDDkd7dUU5sEjWyb6uizaqIPxBr4WnzJ2v4LWLAJ47GEvoZGlN7CpIPa4fyrDpIGt5YR4zIdnUjcaFifUrF5nZiGWsl7P0Imcrq+w0bhbjqTv5eRBOv+q5mpG576biOlLLsdBPS1T2elrUfzyUn3wXHISdc6BVZk7Po2fD+aeSYqtjGPTKYUtNfYpn0LKuzABwnF/rS5vwbDh8qny4TadgpUYMS2tH1TWHaW08UFTQYyokUlmenEh3acagjEVUawg2isNhLtQQwaWSWexUQPP87i1yiW5eG8UB4evh4au+1B39yUSrHE0Ll4WvV9ZCJgz19hnRebiGEHNWDYGqyfE0XNqzW5buMBpBKAicCl4YrEsJbmprDra7tZIEoUDh83bBXGvhOJWVRuAsyemCNY2mlQLyItHT6Roj7CMVUQEi30s4SZjqrjJkEY7CxHBXGJv9Klw c4yPUMyj nb4Xg3mh8msQLGkhAo/srqGyhz40/Wbec4GcHW9tXpUQeJrpFH7bXRTCGg6mtfX9hes9BzyfzqUz+s1I7AjDD4ibhOvLnRNtdZXOPDcgfEP1BTjBhenShCPP43QzzROYmLdCv4SQq3DSnLZHNcZvGtlsjSQRSZL4D79vyx/TEQY02C2pkcIa44NvhV/sIXfkVJZSP9uY51e58Z+4LmsY3a+MRMVWLkRrVKudZxn6t+SiJAlc+Gl826MKv96XQpBcPbGPPqJmI68BqHKSMcUlKquovEjJ3/YfyyJUC7w8cr/cHYR0uOBzpfSL0sr13BghUYHGtPmegzOqEoIdo+i2byQJ173ajg1pdr5XYK33+R8ADHbZYS0NIBqY1R7u5inLkLuxL+EpAoociiyNVSGWmqRsFrBmZVtTC7Z++pmwDAh9eYJjsKkrkI0qwP2HjfABgD9GdpOQATDZrEM4FrSZ1q6SeYjIJ3taqzLWgF8PVJcueHgLIfNcsqL8AEI/OlsqLU3AEFg32icZWavqCNIOPNCMEx9XkHDwCxDHU X-Bogosity: Ham, tests=bogofilter, spamicity=0.000001, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Mon Jan 23, 2023 at 6:02 PM AEST, Nadav Amit wrote: > > > On 1/23/23 9:35 AM, Nadav Amit wrote: > >> +=C2=A0=C2=A0=C2=A0 if (IS_ENABLED(CONFIG_MMU_LAZY_TLB_REFCOUNT)) { > >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 mmdrop(mm); > >> +=C2=A0=C2=A0=C2=A0 } else { > >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 /* > >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * mmdrop_lazy_tlb mu= st provide a full memory barrier, see the > >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 * membarrier comment= finish_task_switch which relies on this. > >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 */ > >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 smp_mb(); > >> +=C2=A0=C2=A0=C2=A0 } > >> =C2=A0 } > >=20 > > Considering the fact that mmdrop_lazy_tlb() replaced mmdrop() in variou= s=20 > > locations in which smp_mb() was not required, this comment might be=20 > > confusing. IOW, for the cases in most cases where mmdrop_lazy_tlb()=20 > > replaced mmdrop(), this comment was irrelevant, and therefore it now=20 > > becomes confusing. > >=20 > > I am not sure the include the smp_mb() here instead of "open-coding" it= =20 > > helps. > I think that I now understand why you do need the smp_mb() here, so=20 > ignore my comment. For the moment it's basically a convenience thing so the caller does not have to care what option is configured. Possibly we could weaken it and do necessary barriers in callers if we consolidated to one option, but I'd have to be convinced it'd be worthwhile, because it would still make it deviate from mmdrop(), and we'd probably at least need a release barrier to drop the reference. Thanks, Nick