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 3AF39CF9C71 for ; Tue, 24 Sep 2024 07:45:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A45246B00AB; Tue, 24 Sep 2024 03:45:51 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 9F3EA6B00B2; Tue, 24 Sep 2024 03:45:51 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 894716B00B1; Tue, 24 Sep 2024 03:45:51 -0400 (EDT) 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 674796B009A for ; Tue, 24 Sep 2024 03:45:51 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id D5DA5141932 for ; Tue, 24 Sep 2024 07:45:50 +0000 (UTC) X-FDA: 82598847660.20.E3FB36C Received: from mail-yb1-f174.google.com (mail-yb1-f174.google.com [209.85.219.174]) by imf28.hostedemail.com (Postfix) with ESMTP id D3169C0010 for ; Tue, 24 Sep 2024 07:45:48 +0000 (UTC) Authentication-Results: imf28.hostedemail.com; dkim=none; spf=pass (imf28.hostedemail.com: domain of geert.uytterhoeven@gmail.com designates 209.85.219.174 as permitted sender) smtp.mailfrom=geert.uytterhoeven@gmail.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1727163888; a=rsa-sha256; cv=none; b=0GnkQhz4wJ/i43EVy+ESESObZ1HdxhLhmMBAny7Sz9qfNCLtEwioqWmacUPxFM+Tem8QG2 qHGffq/VZ6BiIfV2poRRcZeN+R0RtXTWj0V4eQ/fLWniGxcWtshU6gjB4ORFBvqkHqc9m3 6w/EhY0phLZQj8ynUt39HWY5Gl0MRdk= ARC-Authentication-Results: i=1; imf28.hostedemail.com; dkim=none; spf=pass (imf28.hostedemail.com: domain of geert.uytterhoeven@gmail.com designates 209.85.219.174 as permitted sender) smtp.mailfrom=geert.uytterhoeven@gmail.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1727163888; 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; bh=HF4eApvG4Dr17TRVbWAn/oqbrhes5tsWNdoiUFvIyHk=; b=Vcm8vGU/rW525yR3y449+u9q6zp7pcq2p4oK54mIyLUx1Zk98zPT27c1sNh75p/KRCrsSb p5roVPZAy+V5R1m+o0qZNl0Xr9m3NLwNlDja5W7Uw283piFr/4d8VCZyBSy9GiG/QscBBr XuAA86dZjKPxWaySjFrMJtq/rYS8wEk= Received: by mail-yb1-f174.google.com with SMTP id 3f1490d57ef6-e03caab48a2so4440898276.1 for ; Tue, 24 Sep 2024 00:45:48 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1727163947; x=1727768747; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HF4eApvG4Dr17TRVbWAn/oqbrhes5tsWNdoiUFvIyHk=; b=SgVE8Xx5HpqUkcajTkjQE/AzalS5bHhIBsJGMtBc1CKiNXv+pO4hDvki5QyJnk9mFp THDYd6ChcsFzbRxmcRSeI4oqMPAvHQKEvqMyYfR0y3BWtsV28QBzS3XDzlOTIhTawSgN DcPsQyoz/pdJaCqQYzumD9jn9uAWMuJSaR8F1og6H8bSxYlEoSulC/gZfi+HaejKnsQh B8rQT/fz74+c8d65WCYfZUO5WKHOqJs1exnNU6vXohyfDSzUljV4CrcT1/u491WaSM0E j5I0S2jbUIKwWsp9b0EWiwe6TNK6DLB45JHfd8i8emJELP9yZoU7GKVs7vQsdDQgwfaX SK4A== X-Forwarded-Encrypted: i=1; AJvYcCUqyNK8DHP92e/PwQ1kCpsx/5EJqGLbTyC9cJ9A5kLif3fkMh7PzcCv4313qV3w7aPdvvhnexXnIQ==@kvack.org X-Gm-Message-State: AOJu0YxtxC5qPMTh903ge7DdW9+6ESjpg7Wzs4k29SelWkOmvBvYPHHR XKJzwBYgYM+TNGeoQqo3n/2rJDSDm+jtITOSZcyWTrggGLxsqgQ4wBoamxXp X-Google-Smtp-Source: AGHT+IFIIrQHGTM0Riy6UI/pdTY1WkVCHbRXjlSCLhsj4ICFff5pfQ3BQZJUln5hFsPQU8q06p0oRQ== X-Received: by 2002:a25:dcd3:0:b0:e16:4ca7:7acf with SMTP id 3f1490d57ef6-e24978877eemr1881007276.10.1727163947437; Tue, 24 Sep 2024 00:45:47 -0700 (PDT) Received: from mail-yw1-f175.google.com (mail-yw1-f175.google.com. [209.85.128.175]) by smtp.gmail.com with ESMTPSA id 3f1490d57ef6-e2499a24983sm165298276.0.2024.09.24.00.45.47 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 24 Sep 2024 00:45:47 -0700 (PDT) Received: by mail-yw1-f175.google.com with SMTP id 00721157ae682-6dddca05a60so54695437b3.0 for ; Tue, 24 Sep 2024 00:45:47 -0700 (PDT) X-Forwarded-Encrypted: i=1; AJvYcCWJ3OzzIFZxSJWDRAKaNIVmFtjypaKp++rfL04itRsrESwqcRhKcgUNDX/0EVzsWkcBvYBQsVeWdA==@kvack.org X-Received: by 2002:a05:690c:94:b0:6dd:ddf6:90aa with SMTP id 00721157ae682-6e2085653fbmr16769677b3.5.1727163946854; Tue, 24 Sep 2024 00:45:46 -0700 (PDT) MIME-Version: 1.0 References: <20240923142533.1197982-1-linux@roeck-us.net> <4c2cdf84-9794-4722-8417-cf924f890797@roeck-us.net> <203f0d01-d25e-4436-b769-b89edb1b57d9@roeck-us.net> In-Reply-To: <203f0d01-d25e-4436-b769-b89edb1b57d9@roeck-us.net> From: Geert Uytterhoeven Date: Tue, 24 Sep 2024 09:45:34 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH] mm: Make SPLIT_PTE_PTLOCKS depend on the existence of NR_CPUS To: Guenter Roeck Cc: David Hildenbrand , Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Masahiro Yamada , linux-kbuild Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Stat-Signature: sfc8c5ousm7ccm8s4958so7z4iu5n93h X-Rspamd-Queue-Id: D3169C0010 X-Rspam-User: X-Rspamd-Server: rspam10 X-HE-Tag: 1727163948-283189 X-HE-Meta: U2FsdGVkX19Go40hK0TjsDG4kl9l8r4hLW5+LHCNR1qh3uq9fK86yyhszdg8PjVRZywvOZghc5/YUy/r36NaQVbAR081GVkCo407fK/X8kr7vvUZOjkeCm1fgACPWBMBmVt0ly4bLgzJeXMsH19AujkGiL3gW68utAh0SMPRMHcExoIxpGR8SJiGnKoywNm5I6iytbYE5cADYy3P+P+MHOAagX80yhwXZngHpkYRHQXVDk5fE0r40UOEQ4CbKKDi/Tk9Kq80ZQQtrht/ggjd1+5rfTO+WRye2yOcONT45Q85OPUiO+MWMGL3LjD3FL4u6amEJ8s8fTjO2Q6k6tg0pimAzBbplCXmSxDr1KbBPG+OBb/uJ/Mtezj3WNT/ICd+x3DiB+/bUNfAKroLcO9/j1oGXT2ReGWBdenComETl9pNbyOY/Oz0utTPeVDXFgNlNTmLek3aPt/T9MYCcj37o6vJxYzV4Dm526tw/BQCq0HCrqC8dxNoQNpNpNbd4tXBewsMYH2rzkYTr4YhtPjoZjelie0zA8nsdVfcj3FWieS98FoUUMqpj5fgdx3+k6b5uENNhOZ1CrrfRHjxSaCYvbGG1woheN4+/qkziLM+q7JbVXnGrRdJQN1d90+HNJtPtE75dkBfL4WKldpGSAZwPjqHnMpa72VZZwM43apGkleOSrO9H5W5QDiFIelKVvkLKggwtI48d68dEjGqil75oVdYg4pdiICJGsE+0UVthERcNr37eLSjZgk+CdusVhFM75wBttdHz1r7ndUIKor0XuATmkpAB6W+YBVE68vHA0BxcmFcQSvybvPTpgKDg6U8u0m+HjKvwZFlzmIYVi/92jeqjMc5fuGelIJVh+rEiC7PcQYLGDHid5k3aDprRL0HW70+iDOBopGLiXUaZpUooqYXMg5TEw6Y8SWdoOc6xd2IKUvDJfsFVDwYUq4MzHVKepRm0QKfDzpKAm5jNn2 owjZW4zU nogzMs6lIKp/Yh/a9HBSoZKT0USY/PKNl58Q7b4CR4oqq2l0zWydFbh1RT2DMH+lA5IMIgxE+QZlAuNkwrdGE6l6eQL8J3N62lIEM2gcxKz2LazOqGfeq5+V7jtNsaxAGEXt6qYimBu2FPerh1ddNLWE7No2De1Zxyt8GYqA8pNt4nsoAIrCXDoRP0Fb9r61yr13ECuwIxXlYqZqZl4+wh4LPm7Go4Z2nsKOJ6+l1q7yM4HioAFzIjKTfERjZcmwlUSCIwIKWy12xvXgS3T9slEE41jLeGBzGJUn3eVd8t+XS9q6wpUJFtI29oENmLdcdGSDhVfew3CxnQR7Ww27M4A1pd8E0rS5CdywMjdOSC3rC4fHqD6C8ooTIBFUaGn/3f2s3jOxd2MFgcMgbW9LTUhxu1RxCcY0jGk8FW63raPt46JgUYdg9YykHwBneQqZeetTpH8BuBQxm0+r+hsrNBr3P/tpDu9bAQ9mMZki+uIArSfhhnNqS1HcQCVqZmHLDdaojhsVIo5tGstHMFylP/zQZmIVkb08QmJaA 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: Hi G=C3=BCnter, CC kbuild I have two comments... On Tue, Sep 24, 2024 at 1:52=E2=80=AFAM Guenter Roeck = wrote: > On 9/23/24 15:08, Guenter Roeck wrote: > > On 9/23/24 08:23, David Hildenbrand wrote: > >> On 23.09.24 16:25, Guenter Roeck wrote: > >>> SPLIT_PTE_PTLOCKS already depends on "NR_CPUS >=3D 4", but that evalu= ates > >>> to true if there is no NR_CPUS configuration option (such as for m68k= ). > >>> This results in CONFIG_SPLIT_PTE_PTLOCKS=3Dy for mac_defconfig. > >>> This in turn causes the m68k "q800" machine to crash in qemu. Should this be fixed in Kconfig (too)? > >> Oh, that's why my compile tests still worked ... I even removed the ad= ditional NR_CPUS check, assuming it's not required ... > >> > >> Thanks for debugging and fixing! > >> > >> Acked-by: David Hildenbrand > >> > > > > Apparently it wasn't that simple :-(. 0-day reports a build failure > > with s390 builds. > > > > arch/s390/mm/gmap.c:357:16: error: implicit declaration of function 'pm= d_pgtable_page'. > > > > Turns out that > > depends on NR_CPUS && NR_CPUS >=3D 4 > > > > doesn't work and disables SPLIT_PTE_PTLOCKS even if NR_CPUS _is_ define= d. > > I have no idea how to declare the dependency correctly. > > Sorry, I did not expect that. > > The only solution I found was to define NR_CPUS for m68k. That seems to b= e > the only architecture not defining it, so hopefully that is an acceptable > solution. I'll send v2 of the patch shortly. My first thought was to agree, as m68k is indeed the only architecture that does not define NR_CPUS. Upon closer look, most architectures have NR_CPUS depend on SMP, hence I assume the issue could happen for those too (although I didn't manage to create such a config on anything but m68k)? So the simple solution would be to add a dependency on SMP to SPLIT_PTE_PTLOCKS. BTW, the list of excluded architectures looks fragile to me: config SPLIT_PTE_PTLOCKS def_bool y depends on MMU depends on NR_CPUS >=3D 4 depends on !ARM || CPU_CACHE_VIPT depends on !PARISC || PA20 depends on !SPARC32 If this can't be handled in a generic way, perhaps this should be changed from opt-out to opt-in (i.e. select gate symbol in arch-specific Kconfig)? Gr{oetje,eeting}s, Geert --=20 Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k= .org In personal conversations with technical people, I call myself a hacker. Bu= t when I'm talking to journalists I just say "programmer" or something like t= hat. -- Linus Torvalds