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 7A6DFC021B2 for ; Tue, 25 Feb 2025 14:41:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BA6546B0082; Tue, 25 Feb 2025 09:41:07 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id B56436B0085; Tue, 25 Feb 2025 09:41:07 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A1D426B0088; Tue, 25 Feb 2025 09:41:07 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 502776B0082 for ; Tue, 25 Feb 2025 09:41:07 -0500 (EST) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id B21B7161537 for ; Tue, 25 Feb 2025 14:41:06 +0000 (UTC) X-FDA: 83158729332.15.E2C6BAA Received: from mail-wm1-f54.google.com (mail-wm1-f54.google.com [209.85.128.54]) by imf03.hostedemail.com (Postfix) with ESMTP id 4D3E620006 for ; Tue, 25 Feb 2025 14:41:04 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=uP16NYCR; spf=pass (imf03.hostedemail.com: domain of jackmanb@google.com designates 209.85.128.54 as permitted sender) smtp.mailfrom=jackmanb@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740494464; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=uVPLkGH9fsfezCsdG/LPsCweWncjUk5oFN3XESRzpwA=; b=N1VvMk+A8CtDs58oCbucLnuxeCHg5HV2LhzPlFWUe/CK7zIrwiqmHxjnVi9ROwCL/M8dGq WMT4W/zjH+X6zGxuN7rpfhLPrBGqWDhq2CnOPTIBLfU4KmiHd2S7D/6Mjcdi/N4KqGt1hR r/+l14nGtl3FHJaxooDJ5hyoYZbXK68= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=uP16NYCR; spf=pass (imf03.hostedemail.com: domain of jackmanb@google.com designates 209.85.128.54 as permitted sender) smtp.mailfrom=jackmanb@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740494464; a=rsa-sha256; cv=none; b=XI1OVZ+A1VQpGFrqAJ3q6F9snm9QlSJCelksWYemj4+9FLfqLtQ+DGtRm7kSOuZdFl+S/O 8B/XhdMBsfc5uGwqLJxkkCtxvxEGLhBUUmg0HnqCGNDfe76GM5jEixnZnroQkpJPbjlIqk koGe1/02cMLX2yHZFQY1BjG4xaEJp7s= Received: by mail-wm1-f54.google.com with SMTP id 5b1f17b1804b1-438d9c391fcso57755e9.0 for ; Tue, 25 Feb 2025 06:41:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1740494462; x=1741099262; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=uVPLkGH9fsfezCsdG/LPsCweWncjUk5oFN3XESRzpwA=; b=uP16NYCRF7LMN5R4mZJjnSGq3YLVB0D95sPHCBZPth/KbVyazMG50eu59QqMsWuJIu kjPJr7la7L192eJNfOmS4DzmLGZl3yfdqLqS33ai0kmYNlXrpRcjcu/qTo6q1kzkHuGW huRFgkLje7InHuMyBOlu9mYmpYQcAf20Sh9nBRhf4cmyoLMkeQc/UXwkzwO+jj1W+HKv kNahqmkKRcRrQtR8RGVNfZeF7Ztaqun2v3zn0dUqrj3+/LzhQ/z7KBHxyW2FJzaSHxcf jmWTittYDVPO9VtnnA9u6kbZli6JcsDbWg5065wSH52bEYSCraAMksqwYA4zGV9IlSzZ ztqQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740494462; x=1741099262; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=uVPLkGH9fsfezCsdG/LPsCweWncjUk5oFN3XESRzpwA=; b=ZGG9ft55dKFJmb4yavd/+i/EfAhvVeBwkto+xf7gaxldYpGMtFLpwloASaNeUBNHGU wbCcQcIf1+hph4vMY8UnDHiQJoEgr/BQVTt0+q3QwrcERFAhZhxYxa8QR3ePKhMb89N8 Jrgmj5oGTBP9p2mPHcecCKty6OlalFouxZ0dbvPTFJG/4XW8HQzEmIqF4d5HtbttvSKN lmcUuz6ArqzydCyNTtSPWW8wM5wLUEUjCwA+wROX2xkhK4tC719WPPdKs1+eQhi4esy3 SPFwAWz5Rcdl8iK8PYU0NZFMEzgdpd7N4xHWxnOBbFmtU4/YblOrCKz1/ApUuYfYGSUl fcog== X-Forwarded-Encrypted: i=1; AJvYcCVCETosqsOzuOeCf5HT6+pBdhrphWAmvZRj30qJVG2res3jQTK+ynJ2o5cojhJMU6nxKdXTq1z9Dg==@kvack.org X-Gm-Message-State: AOJu0Yy8sCxb0qWN2pYp5u2jLbRfBsnF1VqzDLqPQIegCLyk77Kxc2VU HnBCdWfmNHVLFXJqSnD+X9wmotcCGiw0uhMfu/+0b6+Wvr8M2YzXz8hYOSFVEw== X-Gm-Gg: ASbGncs4jRzhcPl4UopSPyUhpMLpevX9w7myygdAk/kY/FMAxzSwrjtoz0pu0HAk1tz L2NKOuwpPp5Y1S/QNJk1iIazdsO8eXgRSmqSTFA3/Zg7gmglMOBe38/ZALvJyRHh0XCLY2ySoxQ RLk3kJlNWufwl2Z8Nvy3lbcJvn7rJxurgJSR8NIpJQcqUUu/ufApL23eaboNmsrUR0nMcdEBUTu R+M+XPyOOfmO6nrWUbkFXrC8jD5VUm6wNIE/MKaPfEaWzrze+/jvb1Pm53yCIgQXNHmIIio2uKG guvAS6/jT0+1My2BSWV04t49ADQbHp7xmj6SQchSWlBD9J4ko5XRMuZMPMmBQw== X-Google-Smtp-Source: AGHT+IEROKYwH4XYqQJNIbnck1s/CMsF0eGRyC7Wr1NndD22CRh76Vq1AamAbdm7v0Di489uZDA95w== X-Received: by 2002:a05:600c:2287:b0:439:8d84:32ff with SMTP id 5b1f17b1804b1-43ab101bf6amr1317125e9.3.1740494462367; Tue, 25 Feb 2025 06:41:02 -0800 (PST) Received: from google.com (44.232.78.34.bc.googleusercontent.com. [34.78.232.44]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-390cd8e7121sm2514621f8f.61.2025.02.25.06.41.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 25 Feb 2025 06:41:01 -0800 (PST) Date: Tue, 25 Feb 2025 14:40:57 +0000 From: Brendan Jackman To: Vlastimil Babka Cc: Johannes Weiner , Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 1/3] mm: page_alloc: don't steal single pages from biggest buddy Message-ID: References: <20250225001023.1494422-1-hannes@cmpxchg.org> <20250225001023.1494422-2-hannes@cmpxchg.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspam-User: X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: 4D3E620006 X-Stat-Signature: wwkxt54x9c63tdiuc1wrhcnzxk1gjqqw X-HE-Tag: 1740494464-795977 X-HE-Meta: U2FsdGVkX19tU93sasoihiNznw5nEP+qJwJDXOfIBfOCd793xQqNMaZhaq+VcfmlYKZoqNe4CWKH8SPCRd1BblOs3qpjfLM1nonkXByNgpLnVd4usxq+ATWUkLMpUf8VqieN5orLatoeytnxSkO/kdicp/wPSWQY0zQdJyfSvfXY89/fzW4XyXHpp/KOp/cKJAZJzreYZhnTWgRVTW2HRCQt+q1EPHAwOAkOn1SDkj9pDW8svGBzCPlhNCyJxRBwnoeHG5sEsZSlh49zC1Miz/2Pss1pwVNYh6Kugs1yyxwLKErtSeA4lt8hV99AuKKRVsZWdOxSmWiC19NJR0aTMDcLcjnG1jWMUXBGg9YKKqupEgFGTRET3n6NUCBGzRAcUfa0AMHa6R80x8qzTPegvSGigr/9Wmq4uqTjzOFq0LM1HCitSh7fE/Xj+FTvP+G59RH1COzqfz8ia1zFccj/krx5FFC4jF0roXQOwNPYqsP/IgzHHoUI+9c9OqqXwYSXwQxYYAnLDtEBQ7PI8alPzle0YSuE/BHNDpRNi0Mxiv2mCM78iFvKSEzw9xzCOWNFDIPc/6bWOGxeLk2xii3dQ8WHCK1dy4tgI9BO/fFXyA4Gn7TNm1lBPtj13fawl3DbI7pFkOL+b1PlGruEn32RSEqvkXSqAxLwc2GtEe5Yuhb7lVyeZia3lyQY+AzWoVbtBz6btOMiTaMeMLGZzj4+FTwNkFbvaVqBEJC/yIYZ4fJcNHg0DghzdNd4Nn4TYJX9cwfDR/aM+4jbET52M3mA6Eax6MM9Bdp8Q2lwxSm9nde6VU1EaPogDvE0jiKQEBTjCyyWIMasHQE/QBS7a2o8GiTYeQQahP0lyh01fQ3Ic+3vTzE7AsKMl8khFqWZ82x7fIHHWNhSdRa7bKNXkLI5pH7D56sFe2m9fXnJrDdqTwGAqcz+Uth4XXm8HSe/fJuMR52EjixRV2PpttzplZI WsKcnixQ XeajoLx5cr0liJDZ39MkWyFvancQYy+Kr3Ah508d9J90J4MLAZirL1JEghGlLlz7XORsRwaHwXFOuTL6FpUiquJeOs4tqcFegSZORz2FHg+0HGCucQ3w0TVqexh/0++TWw6vnl3ORBg76QJzNaDaGIpFRCN24L8aaWpznSAXdFhzYl3a+LjF6nProHg/JUe1nBJ1dGUMEfCZvaNxzF8xfFqcyLyv/w5EGiml4XMLWPDMdaINAnr6VxSs+z2nXYiI1ugI+sbPyWbbt0vxOuHh33nxcNo66xSuh7EV9oxp8ufSo73RRHwOWVYOPgl9SEW5mVoy0qAzrvSQFemYyJllgM6KEG+nm1oUTZKrlJnbli6EM4ZpkuUBDJ+zxUjssVAGIxgx4wMZ5QvTU+Vk= X-Bogosity: Ham, tests=bogofilter, spamicity=0.155436, 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 Tue, Feb 25, 2025 at 03:35:25PM +0100, Vlastimil Babka wrote: > >> - return NULL; > >> + if (alloc_flags & ALLOC_NOFRAGMENT) > >> + return NULL; > > > > Is this a separate change? Is it a bug that we currently allow > > stealing a from a fallback type when ALLOC_NOFRAGMENT? (I wonder if > > the second loop was supposed to start from min_order). > > It's subtle but not a new condition. Previously ALLOC_NOFRAGMENT would > result in not taking the "goto find_smallest" path because it means > searching >=pageblock_order only and that would always be can_steal == true > if it found a fallback. And failure to find fallback would reach an > unconditional return NULL here. Now we fall through the search below > (instead of the goto), but ALLOC_NOFRAGMENT must not do it so it's now > explicit here. Ahhhh yes, thank you for the help. The new explicit code is much better. Reviewed-by: Brendan Jackman