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 D666DC27C6E for ; Fri, 14 Jun 2024 06:03:00 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EDA348D0002; Fri, 14 Jun 2024 02:02:59 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E8A7B8D0003; Fri, 14 Jun 2024 02:02:59 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D04738D0002; Fri, 14 Jun 2024 02:02:59 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 34E666B0101 for ; Fri, 14 Jun 2024 02:01:40 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id BFAC11604F1 for ; Fri, 14 Jun 2024 06:01:39 +0000 (UTC) X-FDA: 82228447518.21.21B7B1A Received: from mail-ed1-f45.google.com (mail-ed1-f45.google.com [209.85.208.45]) by imf25.hostedemail.com (Postfix) with ESMTP id 8EE71A0016 for ; Fri, 14 Jun 2024 06:01:37 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=IQ2dpAou; spf=pass (imf25.hostedemail.com: domain of jbeulich@suse.com designates 209.85.208.45 as permitted sender) smtp.mailfrom=jbeulich@suse.com; dmarc=pass (policy=quarantine) header.from=suse.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1718344896; 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=BR/byF0T5iDKCNBOsyArBXpm3tWlbtbt45AHnweARas=; b=M5eyGUWhtYH8EbJK0e09o8g9qOwb7H5Ia94e8jSyEi8vql/CglKmdlR/nYkfq8bzvU810K Pbd5DLdWeUEA9M2OQ91IQApw1WAdDFTEFMUfcTFBNcUToK4BPwIWCDKO8YCEJOUmXI4fux n+JvekT58WvrvMf81wT2+slEiXtSYdc= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1718344896; a=rsa-sha256; cv=none; b=W7HdI7sv/kcQQQ/aX7bBSOBuASHCYc9xqjYaRUr3qzrosjSdXcvCoWnWtmJwrg0tHIPOZ1 C+z18yrKcyAi+OYKbod+2yZiD85wFTLnF3vzJq9PzQq1TU9Skpx90nXgGyHmw1Si+ZEPyv JJ1UeP9MY9DyMKaloDeMbtb2f4KeDw4= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=suse.com header.s=google header.b=IQ2dpAou; spf=pass (imf25.hostedemail.com: domain of jbeulich@suse.com designates 209.85.208.45 as permitted sender) smtp.mailfrom=jbeulich@suse.com; dmarc=pass (policy=quarantine) header.from=suse.com Received: by mail-ed1-f45.google.com with SMTP id 4fb4d7f45d1cf-57c681dd692so1810526a12.3 for ; Thu, 13 Jun 2024 23:01:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1718344895; x=1718949695; darn=kvack.org; h=content-transfer-encoding:in-reply-to:autocrypt:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:from:to:cc:subject:date:message-id:reply-to; bh=BR/byF0T5iDKCNBOsyArBXpm3tWlbtbt45AHnweARas=; b=IQ2dpAou6zVjmyPrEUOnbHXGdoSvtOFFKUrJeaW+1/fbUgIY9V9+Ol7spZn3A7/2cm RCXyCRTDdWDImcBfE/3olfcMm0U7fzIA4T+fczsGNy7jcrC2pGWy/ypyyE57gGLaOG9U 8rmonE5h4A2/VC41usIL8FJBYVQ6xdss/U7p8cN+f0rPuuDnHOQ+f3Y1xBq677K2TXoM x7/GiZM2vLJgN4Jv+36DmAeoIBcUWYCvsQSh28gglTU4dcKL+YcBF+UAfgsbL9Xi2ud+ avczIjlSY6JwTF/onY5K7YOKFB6nv8MmqnhTLR27KfCuoaV3Rk/7K5dom01EBB2jTCye QfDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718344895; x=1718949695; h=content-transfer-encoding:in-reply-to:autocrypt:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=BR/byF0T5iDKCNBOsyArBXpm3tWlbtbt45AHnweARas=; b=UkqF3PL5Mh3+uUyY2aJ0AXO3scnIhOoy1C5uWjO/NexKzP4dKzciQQelf3xlsaCALP KrYMn9j/081KiHdiv8jNP36mSLT+sqUsvqqceQ8QUAB/tqLCpiRboBPcrrOCV8wrIqrk N/hgDVv6Mi7g1L0EWNNvstclyNQ+CD8LaDIXpl3FhvJr+UuSIMA8nEM8Yf2NL4V++Hs0 l7oxLix/CqlOBalKo/pPm+//sIs5TZgvbRpraBBas7EN2rkcGgEJQB5IfvcnlGoDtSW3 yN//Xwm4KoRJVwJEJmsKAcXc6A2UkYr+11h84hOFx9CwfBWjWna/eniDxTP3IJV1wi+H ZBXg== X-Forwarded-Encrypted: i=1; AJvYcCUPYZ8vLrNrKkgBT9BPPip8K2ZwDVBSrt9vQVqWrXwKxv3raKx/02+QroyjKWznFwRsZ6lkkbeA8Ck/S0xSpV/vU6Y= X-Gm-Message-State: AOJu0YyeGkhmKB3LCvKXWA7NJpxDdOvU4wbtmU3owCivqKAZFERAtISP 0S93GUOFbLuG3ErYmm7N9SPxG9VdwntZjcL36NP5y72B9urG0rJ2l+5+5y8TeA== X-Google-Smtp-Source: AGHT+IGi1nuaXOBHTFNEfd8j9olcUmrdZrQ3Kk5EJcl4kPMb4Lp5qx36F3lQSqP0EhlgHeqULoYJCA== X-Received: by 2002:a17:906:17d5:b0:a68:c6c1:cd63 with SMTP id a640c23a62f3a-a6f60cee916mr94169466b.13.1718344894795; Thu, 13 Jun 2024 23:01:34 -0700 (PDT) Received: from [10.156.60.236] (ip-037-024-206-209.um08.pools.vodafone-ip.de. [37.24.206.209]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a6f56ed0f2asm147572866b.131.2024.06.13.23.01.34 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 13 Jun 2024 23:01:34 -0700 (PDT) Message-ID: <663e80fc-6785-4ac5-ae74-e5f26d938f49@suse.com> Date: Fri, 14 Jun 2024 08:01:33 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [GIT PULL] memblock:fix validation of NUMA coverage To: Linus Torvalds Cc: Borislav Petkov , Narasimhan V , "Paul E. McKenney" , stable@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org, Mike Rapoport References: Content-Language: en-US From: Jan Beulich Autocrypt: addr=jbeulich@suse.com; keydata= xsDiBFk3nEQRBADAEaSw6zC/EJkiwGPXbWtPxl2xCdSoeepS07jW8UgcHNurfHvUzogEq5xk hu507c3BarVjyWCJOylMNR98Yd8VqD9UfmX0Hb8/BrA+Hl6/DB/eqGptrf4BSRwcZQM32aZK 7Pj2XbGWIUrZrd70x1eAP9QE3P79Y2oLrsCgbZJfEwCgvz9JjGmQqQkRiTVzlZVCJYcyGGsD /0tbFCzD2h20ahe8rC1gbb3K3qk+LpBtvjBu1RY9drYk0NymiGbJWZgab6t1jM7sk2vuf0Py O9Hf9XBmK0uE9IgMaiCpc32XV9oASz6UJebwkX+zF2jG5I1BfnO9g7KlotcA/v5ClMjgo6Gl MDY4HxoSRu3i1cqqSDtVlt+AOVBJBACrZcnHAUSuCXBPy0jOlBhxPqRWv6ND4c9PH1xjQ3NP nxJuMBS8rnNg22uyfAgmBKNLpLgAGVRMZGaGoJObGf72s6TeIqKJo/LtggAS9qAUiuKVnygo 3wjfkS9A3DRO+SpU7JqWdsveeIQyeyEJ/8PTowmSQLakF+3fote9ybzd880fSmFuIEJldWxp Y2ggPGpiZXVsaWNoQHN1c2UuY29tPsJgBBMRAgAgBQJZN5xEAhsDBgsJCAcDAgQVAggDBBYC AwECHgECF4AACgkQoDSui/t3IH4J+wCfQ5jHdEjCRHj23O/5ttg9r9OIruwAn3103WUITZee e7Sbg12UgcQ5lv7SzsFNBFk3nEQQCACCuTjCjFOUdi5Nm244F+78kLghRcin/awv+IrTcIWF hUpSs1Y91iQQ7KItirz5uwCPlwejSJDQJLIS+QtJHaXDXeV6NI0Uef1hP20+y8qydDiVkv6l IreXjTb7DvksRgJNvCkWtYnlS3mYvQ9NzS9PhyALWbXnH6sIJd2O9lKS1Mrfq+y0IXCP10eS FFGg+Av3IQeFatkJAyju0PPthyTqxSI4lZYuJVPknzgaeuJv/2NccrPvmeDg6Coe7ZIeQ8Yj t0ARxu2xytAkkLCel1Lz1WLmwLstV30g80nkgZf/wr+/BXJW/oIvRlonUkxv+IbBM3dX2OV8 AmRv1ySWPTP7AAMFB/9PQK/VtlNUJvg8GXj9ootzrteGfVZVVT4XBJkfwBcpC/XcPzldjv+3 HYudvpdNK3lLujXeA5fLOH+Z/G9WBc5pFVSMocI71I8bT8lIAzreg0WvkWg5V2WZsUMlnDL9 mpwIGFhlbM3gfDMs7MPMu8YQRFVdUvtSpaAs8OFfGQ0ia3LGZcjA6Ik2+xcqscEJzNH+qh8V m5jjp28yZgaqTaRbg3M/+MTbMpicpZuqF4rnB0AQD12/3BNWDR6bmh+EkYSMcEIpQmBM51qM EKYTQGybRCjpnKHGOxG0rfFY1085mBDZCH5Kx0cl0HVJuQKC+dV2ZY5AqjcKwAxpE75MLFkr wkkEGBECAAkFAlk3nEQCGwwACgkQoDSui/t3IH7nnwCfcJWUDUFKdCsBH/E5d+0ZnMQi+G0A nAuWpQkjM1ASeQwSHEeAWPgskBQL In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 8EE71A0016 X-Stat-Signature: xf9537fhrhfn9rxmmafyc9w1j933qeqk X-Rspamd-Server: rspam09 X-Rspam-User: X-HE-Tag: 1718344897-780996 X-HE-Meta: U2FsdGVkX19+IQ0is0+GbGCbmrST03qBXB7VqpWSus4GsSt9HSFyApOdagd872T9rbY+G5U7xES9CWOkBc8XufI8vnPaGKsjpLPHjRv/TRr/dN56Q0MOQX62Px9n81kt92QoNulpelY0p4wgjb69kK57shlXT+lhN3dMp8CeO/ZGv9eBSgn6pt8OzcvW0vTfeaskUasYx0I+jYJwcNgFxNrFR0bK41Uk2Sm3uYdEWYdV9WcEDBNcKEaZP2Ryk4e8DfwNOafAWzzvtoXCnB4G9CNoPwpQLA8K2Ln0Jqtii9AKcKb5I3CfaQueewqLxhDkzWjkn2p/Tldq2osFvLkixh5gwGW4MKrrwBbdq5wsRQL7UrEgbuShlzDnl+ZiObI0ieAeCEJCentJli14qqoMfnezzuC5fCyiGd4IOmENYvca7kR0nXp+YXNSDeodz0BXHFALxkpN1pexjMFJuoThWhkhANTVgVm8TyZmxwB5mjUraP71b+Jhg1m6PlZ6ptKVnHjBDgFNlWC0sA2YqQP7kC8NqZ1f5jvieWKiSx+yK+TKRH4lDrZDh9GFL0Uw2TFi7mG5ftTcKMoEQl97W6yKpVnhBt5vWWstBwD2Ncm2aK1aVUeexZ1Fsz7up1F/Zr5yoC5O80ihs5FhI8kpZdFvZbEAlGZ47twsthacernf8TPeB6Fcen0PvtOKw9wG3eG9ddf+NqLTrMVtLccJbvVDR7RJaNzDUP0/6l7IGkDt5Gf0k/BJ+DQ3k7O2zucAbpe2garFvL4UZklMYg8eJ/5Mn/7ofrWQA1hBh99KLGpymH7aFGYNGhLyZllU13ytT5WmIMGU8BMZsna5Hrpy32Cvw61aye1Q16Wx06bC/ayWbvTIjNvf4utivBfo+ZDbIFsFvbT+Y6wJU1z4bYI6AuRqJ6wENaZxVfufOwUZq0yU6PlPHlBiGrvdZ78Ek0eaS5HQ9TevYCHgKljg5wz48cg I5QKsuEg AbuXesKeeMrvPjbRFlv0pE4KFkvnxinYw4vfh4TAUz8md3ZdHOp39kY69fMgmRXwU1qKJl3nLMXqFHDyrMcuS2vWBRA29KNsLOxSMmnLMP6zS+1yHICYi7kBMMWTqr6P2t+LoUrK12S2xYFDCH9bC/SUO1jTCbuuV/DUgQgCKuHQ75slyCAhiZbtc7aKJL+LpQLNddNPsBO16yju+F3B4J+q6uvqqLsnvv4zgy2Uw4EMzBqLHpfbIo+q5zz59Elb4G2CTHxyzEMkoPeLK+4Tr5FwtVvn0S1/f/KfjjfFHHcUdfXdqgI7Kv1G602KTGgDX0ROmRZjg5qrUXsdDnm08v/XT0WLaZs7d/wdv 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 13.06.2024 19:38, Linus Torvalds wrote: > On Thu, 13 Jun 2024 at 10:09, Linus Torvalds > wrote: >> >> Is there some broken scripting that people have started using (or have >> been using for a while and was recently broken)? > > ... and then when I actually pull the code, I note that the problem > where it checked _one_ bogus value has just been replaced with > checking _another_ bogus value. > > Christ. > > What if people use a node ID that is simply outside the range > entirely, instead of one of those special node IDs? > > And now for memblock_set_node() you should apparently use NUMA_NO_NODE > to not get a warning, but for memblock_set_region_node() apparently > the right random constant to use is MAX_NUMNODES. > > Does *any* of this make sense? No. > > How about instead of having two random constants - and not having any > range checking that I see - just have *one* random constant for "I > have no range", call that NUMA_NO_NODE, Just to mention it - my understanding is that this is an ongoing process heading in this very direction. I'm not an mm person at all, so I can't tell why the conversion wasn't done / can't be done all in one go. Jan > and then have a simple helper > for "do I have a valid range", and make that be > > static inline bool numa_valid_node(int nid) > { return (unsigned int)nid < MAX_NUMNODES; } > > or something like that? Notice that now *all* of > > - NUMA_NO_NODE (explicitly no node) > > - MAX_NUMNODES (randomly used no node) > > - out of range node (who knows wth firmware tables do?) > > will get the same result from that "numa_valid_node()" function. > > And at that point you don't need to care, you don't need to warn, and > you don't need to have these insane rules where "sometimes you *HAVE* > to use NUMA_NO_NODE, or we warn, in other cases MAX_NUMNODES is the > thing". > > Please? IOW, instead of adding a warning for fragile code, then change > some caller to follow the new rules, JUST FIX THE STUPID FRAGILITY! > > Or hey, just do > > #define NUMA_NO_NODE MAX_NUMNODES > > and have two names for the *same* constant, instead fo having two > different constants with strange semantic differences that seem to > make no sense and where the memblock code itself seems to go > back-and-forth on it in different contexts. > > Linus