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 B2588C3DA6D for ; Tue, 20 May 2025 11:30:04 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3ED386B0088; Tue, 20 May 2025 07:30:04 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 39DE76B0089; Tue, 20 May 2025 07:30:04 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 28CFB6B008A; Tue, 20 May 2025 07:30:04 -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 05B9C6B0088 for ; Tue, 20 May 2025 07:30:03 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 97F19120DE0 for ; Tue, 20 May 2025 11:30:03 +0000 (UTC) X-FDA: 83463067086.21.5C530C4 Received: from mail-ed1-f53.google.com (mail-ed1-f53.google.com [209.85.208.53]) by imf18.hostedemail.com (Postfix) with ESMTP id 919951C000A for ; Tue, 20 May 2025 11:30:01 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=NngeMbEX; spf=pass (imf18.hostedemail.com: domain of nadav.amit@gmail.com designates 209.85.208.53 as permitted sender) smtp.mailfrom=nadav.amit@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=1747740601; 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=iNSWdVp0pCGv6zZlGqB2G5Ypt6F8CERWSTLAliUg2NE=; b=qxa0XtdpaYN0l73QS0oLn20aNxLZa7ZtJMQ9Ovagx87NIkX/y7A3fPcZEdo8Zrkvd2Hf2T SR7FrvKLnnGHQXk/KXaRIVwBtudA8k2qSnqyoIQyoY3wSgOhFTMvysXD0qXcaA3Kt/DjoN Ns4JoJ2UL+LL/pevnJQa7XWdFPia0Vc= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1747740601; a=rsa-sha256; cv=none; b=dAuFtJ/JwCV6ha9tFgKonKlvAGI+BGM1eLui5iUp+ENVKl7EiGbQpi8AnKj5mJ8j1gNPQW zqOuEYQg0ymnr0Qwxm0KAC1W9gSryIQKXCi5NzWDD3VPteS0BEBc3Cs7BExzlo+Jyc4gms wkF5R1fqYOZbC4vO6rHZrgKX72rDcHQ= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=NngeMbEX; spf=pass (imf18.hostedemail.com: domain of nadav.amit@gmail.com designates 209.85.208.53 as permitted sender) smtp.mailfrom=nadav.amit@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-ed1-f53.google.com with SMTP id 4fb4d7f45d1cf-601d66f8cafso3431023a12.3 for ; Tue, 20 May 2025 04:30:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1747740600; x=1748345400; darn=kvack.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=iNSWdVp0pCGv6zZlGqB2G5Ypt6F8CERWSTLAliUg2NE=; b=NngeMbEXmwZvtTno22Igzn2TM/OEz36BWHzkU5EkZOfE2LDMtKizp0qt8MmiBtlY9N IWRARIEBiXYbZcmgeuFDJOUCzjUh0WXAPT8DeHkjFAe4ES5ki39CnmOe1hmO4SDMNwEJ +Sh7Fi30pzGHZEt3Wj7PVUf33NjPol5if0+0iWjuejhY+q6C1nvuJE4KIO0Dm/Tp5UHu m3GPDGfBzMF+y/tIRI/BzojfqgdAzAEF2LinCyaoWJ2LsLcuq6c3QwzRqEq6AdoYz1xx JxtFp0RIUIlD/HCSbMJsO2AUO+o7XmPGr3IqOYWKEK8keGghz5ySCuxasB+Kg3JNZTyO /j3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747740600; x=1748345400; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=iNSWdVp0pCGv6zZlGqB2G5Ypt6F8CERWSTLAliUg2NE=; b=n0Qf9bDMn22bic0dC5MZiqIKYC9AW+A7i1p33cjpfek3MdDEk767JJ0ER4MeG0OGvw n7WMwFdq9/RCT4n9E5ro5O4LDM5vBGbab3GCNacsks9cTzD6CXzFY6aOBoksQnIpcr8g q/T4ENNluDc36WGK8fwgSqSxQpKUNtzAE546Rhk72ZAXOLjWwXGRFhIrxScHcYzCh7lb i6jrBitsKMsfhaZoDi257XwvhPOV97ftuPn650SSfxeo6MqbhBKC+5cix6Visz4cxAxf 67gEFDOuj17I1WknEbPryzFX81EH9j/gSvp9rVDpM1OBW5a2jwiyJew74mwMVs5zH6Ag KBmQ== X-Forwarded-Encrypted: i=1; AJvYcCUMz/vkl+MneFUwrEvwys0UAzhvV/L2VrVM1ZVgZaf3ZspCST2PJi7XDRxhtED652+VqgPb0jJSpA==@kvack.org X-Gm-Message-State: AOJu0YzUUHSHE6Cih4UARqmO554vuhouftLVj2nr58ubRG/14nFXQSO9 UFY2gVvvw5WgyZADHTc7IhR+ftQZnDTcziIosJJ6agg0Nc1AjbddMUB0 X-Gm-Gg: ASbGncsPI4Du1YFOWYpSvm17WcVuof9ZC4lrifiwSnQs/Dv9mzgLaXT8Cah8tKUbLLe ZuU9SUgMLPegXwqRYpz6OewveMbNpEJkYTTBFfhUviApZpHINDb41SCAfDjjGAHzTYbMqgGHEP/ 5bAoNLUB3bTTitSK1TJu/rWHQIACsiZcD75O3grAQxPgk6j7AEGr6Y1hZvt6S9m4I1DDgkqjPE2 T0JIHCFX1vFX7sMOK8ZKO3ulaPOr3IdhAyQSMHnodmcBVr3mVG9RGU22v2QoXWrXvblAUdbvXx+ ngj7MJK3gdHRhDN8jZGBotFxlAvl/wEKPWetfkbFgvCAFCwRuEQz+YjUjzKbnEzD/hDFEu3WH21 W40A= X-Google-Smtp-Source: AGHT+IFHkJS1TgytAIFMsB6vO1Cu5EW569Xn4PZHR3u4t0a3HsI/YxGapJU2ZnEmP8JJG2H20JPt0A== X-Received: by 2002:a17:907:7da2:b0:ace:5461:81dd with SMTP id a640c23a62f3a-ad536b5a0cfmr1500424866b.3.1747740599535; Tue, 20 May 2025 04:29:59 -0700 (PDT) Received: from smtpclient.apple ([64.176.163.79]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ad52d04e816sm708660766b.23.2025.05.20.04.29.56 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 20 May 2025 04:29:58 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.500.181.1.5\)) Subject: Re: [RFC v2 7/9] x86/mm: Introduce Remote Action Request From: Nadav Amit In-Reply-To: <20250520010350.1740223-8-riel@surriel.com> Date: Tue, 20 May 2025 14:29:44 +0300 Cc: Linux Kernel Mailing List , "open list:MEMORY MANAGEMENT" , the arch/x86 maintainers , kernel-team@meta.com, Dave Hansen , luto@kernel.org, peterz@infradead.org, Thomas Gleixner , Ingo Molnar , Borislav Petkov , "H. Peter Anvin" , Yu-cheng Yu Content-Transfer-Encoding: quoted-printable Message-Id: <4A879001-E213-4239-9D25-CDA8EC3E2CD9@gmail.com> References: <20250520010350.1740223-1-riel@surriel.com> <20250520010350.1740223-8-riel@surriel.com> To: Rik van Riel X-Mailer: Apple Mail (2.3826.500.181.1.5) X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 919951C000A X-Stat-Signature: d1ebmweshmin6rke4ik7maz4f64xu4jz X-Rspam-User: X-HE-Tag: 1747740601-516756 X-HE-Meta: U2FsdGVkX1+Z0cwW4f2FCxLe4ocb5ePGXLx7C48WkAaLguzf9Ywf6W55aSrdXuF7uED45pw1M7vhwPkOGGlRGphUU6q+M/R0aT17xWIhH0rSV8NBUbbkotEeRYS1+CHqqso4l8vOCLIZaKzhtRAWSbvg0Gh1SOad6DPv4x3AoaSxmMCQf27KXRo7DtFypAhL9YVGEwK+ET+LO+nfYDkrbsfJLBj3v8zTFL1+ZMZQg2cE4Z1eEGHKFDRSpp0QtrdDDLOF7gtKGSOyHOLlLTM2ekQ0MH9KK/DE6hjQZQX/pgZjg7kKYUCkppVsjPLtkymEMfkUC8UCVM9VpzWlCTD4bWjVz1Z3dyoO7dQu2IGeJiF0AXrVxc/n7fptKxMbvSv3KzCgpv9/KBe4nPOS+1FyOKRL0/u0I4CGhyzEKfm4DDRxupRqZtoHTuhfoYbdY8MriTdib0MuOW2tng1zwQ33dEK+7+ikKEnylGso7NY27GGwTJupZEURziBYXclXtr7u3vNsvOanO3/Q5Cnn1INFv7Agoq3A+H4UgmZd2nPi9/Bs4j4RwJ4qvlpgD7F3MCVpXG5EC0NPoBNUO9k5CIxc4ken6/zGspXuy64ArM1srCYT6WyZ8vnZEHJeppxWpMsXWQvMDQOITXUoVqoSbyVaq9ZGxuVtknOBzIFk5RUxmiM66zMDfiqJJAbp6Tv+iZrrlSXyCpxcQ35cIui7qFeMcjjDkT0xzxtLM9RRviSts2Ff6NFwaaPdNvk3EIh3dtdrtnho2R2A+3UXV+G5UxRzUxQragYGWd6dIYvv7M1BNj8Jll0dGuHbkuE5k19dEUUplLPewIFgo/LoxTRmTt7182gGGMs2rllTwAl2NrxuuqwvVKVdJblV277mH3ZHCOhrHHH1A+4rjqoz1wM38aS96F8fY5gYtUADEnMmnNV6B8dm1HSgpBglkbNd3hTpdo+PIlEXJNxr6kuY8lnZkAu 2i2+seM5 PmBMJkP4Xq1wjF+6IEMSu8n/KdWuxydv63K1JHi2AUdpgCADZ+w6rKm3Qd47mRieuQ9NK5daG4VfFUwjqjaPWWdf7dugtXil1yfVoC8mw1UMY7lB4x0xievezNaKyXIYp2Iim69a6aZ9cv5V6YEtQJEeFcrvkOeRQ4ywVZziy/XO25gWiXVHu2gg8Q4i6VwaPBBddNRghB3caOQqnhFR6R/sr+WJWYUUDkLKm/17kxs/aAHXQkln/HPUMbajVY9W5w8x0WIgufExuYSVqGasxIzpGxsMP6qHx/UIX5ORaxuLldUcJYx6D4j/WMvIqkV4lFewFeTCnTTbrjdMXE7cCFNqXLbVaT/ripx3ohHcH6RUsv3lyPFJ+RHeQBGAe3nItKca5hjXEi4DryNMR/swvs/HpHNnG5uVVjoWZx9RXwAu9khv5U9Yln8Qt02TMKprDzWZ780fc2cvUcP5f0uGZ+6ogdCD6R+eOixPk 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: Not a full review, but.. > On 20 May 2025, at 4:02, Rik van Riel wrote: >=20 > +/* > + * This is a modified version of smp_call_function_many() of = kernel/smp.c, The updated function names is smp_call_function_many_cond() and it is not aligned with smp_call_rar_many. I think the new version is = (suprisingly) better, so it=E2=80=99d be beneficial to bring smp_call_rar_many() to be = like the updated one in smp.c. > + * without a function pointer, because the RAR handler is the ucode. > + */ > +void smp_call_rar_many(const struct cpumask *mask, u16 pcid, > + unsigned long start, unsigned long end) > +{ > + unsigned long pages =3D (end - start + PAGE_SIZE) / PAGE_SIZE; > + int cpu, next_cpu, this_cpu =3D smp_processor_id(); > + cpumask_t *dest_mask; > + unsigned long idx; > + > + if (pages > RAR_INVLPG_MAX_PAGES || end =3D=3D TLB_FLUSH_ALL) > + pages =3D RAR_INVLPG_MAX_PAGES; > + > + /* > + * Can deadlock when called with interrupts disabled. > + * We allow cpu's that are not yet online though, as no one else = can > + * send smp call function interrupt to this cpu and as such = deadlocks > + * can't happen. > + */ > + WARN_ON_ONCE(cpu_online(this_cpu) && irqs_disabled() > + && !oops_in_progress && !early_boot_irqs_disabled); I thought you agreed to change it to make it use lockdep instead (so it = will be compiled out without LOCKDEP), like done in = smp_call_function_many_cond() > + > + /* Try to fastpath. So, what's a CPU they want? Ignoring this = one. */ > + cpu =3D cpumask_first_and(mask, cpu_online_mask); > + if (cpu =3D=3D this_cpu) > + cpu =3D cpumask_next_and(cpu, mask, cpu_online_mask); > + Putting aside the rest of the code, I see you don=E2=80=99t call = should_flush_tlb(). I think it is worth mentioning in commit log or comment the rationale = behind it (and maybe benchmarks to justify it).