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 5E0A8C369CB for ; Fri, 18 Apr 2025 11:40:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 51057280156; Fri, 18 Apr 2025 07:40:46 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4C01F280132; Fri, 18 Apr 2025 07:40:46 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2EB38280156; Fri, 18 Apr 2025 07:40:46 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 0E8B3280132 for ; Fri, 18 Apr 2025 07:40:46 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id C62EE1A1C53 for ; Fri, 18 Apr 2025 11:40:45 +0000 (UTC) X-FDA: 83346972450.28.E92084B Received: from mail-ed1-f49.google.com (mail-ed1-f49.google.com [209.85.208.49]) by imf29.hostedemail.com (Postfix) with ESMTP id D31A012000F for ; Fri, 18 Apr 2025 11:40:43 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=RolJEnrG; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf29.hostedemail.com: domain of ioworker0@gmail.com designates 209.85.208.49 as permitted sender) smtp.mailfrom=ioworker0@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1744976444; 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=vkRjZE5uaIJfPFmn5rKYrxKOhaaT1kGuIn7UK1e/USo=; b=LEFXaM7OL8UlyxP8x0+WI8cXXSUJSNdmuGmKzSDXKULgTFaTobqnGuSfp0WiW9fV3VyWMz znOJUM55m17KWbmqPQqiqL1wjvysAjTfU2lidhyhnNHkqgLmA9daq7lGzHJuewIrJgPr5l NqFWYsu7CK6y25XTlsGhD2KpuTF/3WQ= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=RolJEnrG; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf29.hostedemail.com: domain of ioworker0@gmail.com designates 209.85.208.49 as permitted sender) smtp.mailfrom=ioworker0@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1744976444; a=rsa-sha256; cv=none; b=4f17Ea64j5SFiEMk0QPAEnQAcYwYcGqhJvaY4cd/mVI0GMp4N91InPpUwAC+FOvuGjAGO1 MMNtafMrdw7iOzhUUfqb+5n+OjYUoMK6pS2KeEncqisx+XhTnNMtwgMibBcuCQ2u8UxmN4 AzdNaUo1sOtzjGeMafSHyhPwHs3ZJag= Received: by mail-ed1-f49.google.com with SMTP id 4fb4d7f45d1cf-5f435c9f2f9so2744393a12.1 for ; Fri, 18 Apr 2025 04:40:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1744976442; x=1745581242; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=vkRjZE5uaIJfPFmn5rKYrxKOhaaT1kGuIn7UK1e/USo=; b=RolJEnrG+5auGiq/bR3zo0NVJvKb6CACqN0h0ARX52SGP6YHW6/Dx9pLs2ZV/vP+8e p2Wef277naqfYUbc5oh96zf4+6Hap+OTH/0yyttrih6NvsGrkJkaKwOslGA9vgT3zrQn Sts+BKXrf3ocjAMQmyA3fHXZ87TcEgrA3OB4SM67fB6em/wKe1qHS+YpyKLkFRugSzdp 5wHkl0mnykJGD/p/1tEIdphvh339EGhyY2y10US0IbctgaAcybyptaFlLCs5SvP2EgJR ftFHkP3+XM4WB5xO22UEqAwQN1ZGLsOwRmkw2OMiopr+U5Xph3WNRY+pD9O2kWhgrA1T 7myg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744976442; x=1745581242; 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=vkRjZE5uaIJfPFmn5rKYrxKOhaaT1kGuIn7UK1e/USo=; b=XX8insyiPCosT8dya012cNDrB8IFrZCSeR2usFUdpej3tj55admETFj3/fBS0sNU5x 0S+wlvKbUgEpUL2ons2IKZAol3HnmiCLXbsCgTsRQbppSPfOodYYURI7p/vuLnd1vfep J7QIFqAwskHcSh1iH3TndFy4MFvJxSOSNzu+3fZTJeM158CPBndP7jvHLmzqfYXqYK2l 2b4sKp6ezCTAEeP3O4OEtYGLWZeUUu223qwSSzw7iKmcOdWyiliDSQaVFlhNZu1jzivR ojTG6pBi9qPBDkZfTcscb86FyDRYbhHbE1ZAaC/maJ7/aEhPEXqvlQZtNXphi84B4KhH MTlw== X-Forwarded-Encrypted: i=1; AJvYcCUAykJYEMjwSYdRs+nICwcqSNFcJR1aoeO8BIfw0aGcK8aKe4cDlotPo1efgTPi/AUp3OMwWQL6OQ==@kvack.org X-Gm-Message-State: AOJu0YydFYxkYnPnz/fDxOh1e0TL8zvaON3BtpJHdLBdxnItj2UJd0g/ wkMuh64cxX8+v9g93dVVdbm+Il4NX2OVFWUI78K6gOoNgJD86xFwocAN1v82i6ju5WrHEv7W2Q0 z1f0rqy6y5FZgp2XJvXpp3tDOca8= X-Gm-Gg: ASbGnculXJbfF2XAMPTeqKW/D0j5ZThZ6+JnxI6LLtnjGx08co1ZLIN6Gjy8DEwSlt0 Ky1QgekiuBwiRgtGuxGlyuJwPF4VZQ5iKzxkWVHEfK7lSs3rRWR29RGqEY+O0Ub180XTIr3qGvF k/ro30YA0ooMrgtnOWxi+ZSRqDNG3bVj9j X-Google-Smtp-Source: AGHT+IF+QKKkOc6nEoaAOnVO7evTJZw2eZgtbS2yCrRNa1lPqT61GmJ+upDhqIbpwgEmMNJBuyIKgJXC+P6xJHhCw78= X-Received: by 2002:a17:906:c154:b0:aca:a162:8707 with SMTP id a640c23a62f3a-acb74ad9629mr203403666b.7.1744976441838; Fri, 18 Apr 2025 04:40:41 -0700 (PDT) MIME-Version: 1.0 References: <20250417124908.58543-1-ioworker0@gmail.com> <20250417150237.ba3bbb3f55f992c692932841@linux-foundation.org> <413657ae-8271-4a5a-9507-e9161d1f08c2@redhat.com> In-Reply-To: <413657ae-8271-4a5a-9507-e9161d1f08c2@redhat.com> From: Lance Yang Date: Fri, 18 Apr 2025 19:40:05 +0800 X-Gm-Features: ATxdqUEKPGWluWfGztcJ-llCSTg63sxpZ8Hw9sQZZhSMXFi2W3YycPKsD6a7JIw Message-ID: Subject: Re: [PATCH 1/1] mm/rmap: add CONFIG_MM_ID guard for folio_test_large_maybe_mapped_shared() To: David Hildenbrand Cc: Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Mingzhe Yang Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Stat-Signature: tqizbzfs6bw57ahoxdusdmxnmj8aq4wc X-Rspamd-Queue-Id: D31A012000F X-Rspam-User: X-Rspamd-Server: rspam05 X-HE-Tag: 1744976443-36748 X-HE-Meta: U2FsdGVkX1+ustxLy1mBUbDAaI9JXEcRTjlhVbtL3eNjytGVfnyYNWah5CngjCXopr+Emwq/evFj6WP49lEehq5Ip3eJoqKiRL7adcvpMkEhjuFi/aH5zfjimiWVNOvrdgeUDj3E2VkuGs1C0xd6vRNRx7Yxn0GhMSeT8IkO79Z6VQFUq9WwHwSaU0EpcTxPQK+T7DWbyGtPUNse4haALmsJNf9mE7cvM3SMGUlU5gbFY/urFPi9GNckS51mZuVyQjsGT5J7mWkI1g4slH3p+nR7ngda98p2qulCXqaIhBiqfiIG42BJnIhtVTShVreSwIgk0h6Q7A1adOgkyB6PM5sFUz0oTAIPohtY4lnIbd/0p/CUapWoi+SyqmBcR1rzd5dd5i9QXkMz6DlUtSxDfdC6gBCSw9bMOYG4VMJ+NknKGNnwzGq7T90T3m0HjorAaMgQnGtYZT6pqxLcvEJEdU4RhtG5RXU/fNe4chNavGOHZu0HnAEDKbClaimlYKhIPZB8+iTubN7+GMVIsF1WEajp11O8lfFGlDEcPQuhed20S3RZP21K9hKqMNFJO9Foqnvh/olQxTIO3cELP7Sr7DBh0VDWhuvZ5Dsr+FGjuiKbjNH3S5/gEVDwkqRlOtuk9wcQDdGisSDN/8fObTrjVjVV44RJyqid33lsCQzMr2k0xTbmfq6R02mMmA01jhZOZxbx9dOjZO3YHC/8emaHgg2vDKsGMoMQJx0Qt31XZqSBsN2KK1gzNIQQfeOSJJQjwPTUaSN3NQ6uUJhdpsv08OAB5PjdUEpdzpewMVEN1EOQSJPOaSVvnQl5zRE2glyF2RktWyzm5sNvHqz0tT7fvpRw/d2QngQ9u9guXk7PjtPf+vy+44r+ZeUA2gitAMu4JIaE+5iz48tNxkfjS3Oz8HX4kB+IaCQsih0J20pQYEY9hYwlfVRANSAk/WVc2NjAfShqVaZ7v/rqM6pvEIO TNl9vvQG V+PYjbaHOJGq0NaXeJM89pdD6GVumQS+zL1Iz1tZV9XifLz/dD1kFE/hvolGlNbf6NEGrOqkzgEQCyJyCuYaSuN5Bht7+Dbhm2ZsxFAmn97s45KAP7khyDJAJOQc1kOzPCL6g+T5JAUWGD4gN5v1rwUsbNCjS1gv7TK/bUmKMn0Q2IR4ZrPrZfO8WNhjEADYq3+rz2iAIunTI+DGCvsqwnInY8pavglRHnILWyy67qxoJLNFe3SkksSbvKNyaZ+SUhYHUsMqco+cxaczbyN4N2DTTNP4/nSLvsqdfLTXgqiRx9KMd09z1ft/h/uZtyuNeJwVrlFABUemsmM6UiqtFLd6fkmUl8ihXgzHuKDEDPjhs4moX8WyokEL9OsfSZBHt2t2oLku0xCP2NFIjFlKnyjirhrVyf5u8A0SNulcGg5i9dzu3LljfmIyYgLmMJPlFY4o79gDDHULVJIrbdrwWc4SsTg== 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 Fri, Apr 18, 2025 at 6:38=E2=80=AFPM David Hildenbrand wrote: > > On 18.04.25 09:26, Lance Yang wrote: > > Hi Andrew, > > > > Thanks for taking the time to review! > > > > On Fri, Apr 18, 2025 at 6:02=E2=80=AFAM Andrew Morton wrote: > >> > >> On Thu, 17 Apr 2025 20:49:08 +0800 Lance Yang wr= ote: > >> > >>> Add a compile-time check to make sure folio_test_large_maybe_mapped_s= hared() > >>> is only used with CONFIG_MM_ID enabled, as it directly accesses the _= mm_ids > >>> field that only works under CONFIG_MM_ID. > >>> > >>> ... > >>> > >>> --- a/include/linux/page-flags.h > >>> +++ b/include/linux/page-flags.h > >>> @@ -1232,6 +1232,8 @@ static inline int folio_has_private(const struc= t folio *folio) > >>> > >>> static inline bool folio_test_large_maybe_mapped_shared(const struc= t folio *folio) > >>> { > >>> + /* This function should never be called without CONFIG_MM_ID en= abled. */ > >>> + BUILD_BUG_ON(!IS_ENABLED(CONFIG_MM_ID)); > >>> return test_bit(FOLIO_MM_IDS_SHARED_BITNUM, &folio->_mm_ids); > >>> } > >>> #undef PF_ANY > >> > >> I don't get it. Sounds like we're adding a compile-time check to chec= k > >> for a compilation error which would have happened anyway. > >> > >> If folio_test_large_maybe_mapped_shared() is only used with > >> CONFIG_MM_ID enabled, then do > >> > >> #ifdef CONFIG_MM_ID > >> static inline bool folio_test_large_maybe_mapped_shared(...) > >> { > >> } > >> #endif > >> > >> ? > > > > Hmm... we considered using '#ifdef CONFIG_MM_ID' for > > folio_test_large_maybe_mapped_shared(), > > but since this function should never be called without CONFIG_MM_ID > > enabled, compile-time errors might be the way to go -- and a compile-ti= me > > check here does the trick ;) > > Yeah, I deliberately used plenty of IS_ENABLED to avoid a #ifdef mess > all over the place. > > Maybe clarify in the patch description that we want to prevent the > function from getting used without CONFIG_MM_ID, and we don't want to > use #ifdef because then we'd have to add even more #ifdef in callers > that use IS_ENABLED(CONFIG_MM_ID). Agreed, the patch description could be clearer. I'll update it to better explain what it does and why we are avoiding #ifdef ;) Thanks for your suggestion, Lance > > -- > Cheers, > > David / dhildenb >