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 B9891E7716D for ; Wed, 4 Dec 2024 11:03:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 395F96B007B; Wed, 4 Dec 2024 06:03:36 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 31F0C6B0082; Wed, 4 Dec 2024 06:03:36 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 171BC6B0083; Wed, 4 Dec 2024 06:03:36 -0500 (EST) 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 E81AA6B007B for ; Wed, 4 Dec 2024 06:03:35 -0500 (EST) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 8B989120EFD for ; Wed, 4 Dec 2024 11:03:35 +0000 (UTC) X-FDA: 82856990496.11.9366381 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.223.130]) by imf05.hostedemail.com (Postfix) with ESMTP id BD73910000E for ; Wed, 4 Dec 2024 11:03:05 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=T2DAC0ui; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=wMng8gz4; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=T2DAC0ui; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=wMng8gz4; dmarc=none; spf=pass (imf05.hostedemail.com: domain of vbabka@suse.cz designates 195.135.223.130 as permitted sender) smtp.mailfrom=vbabka@suse.cz ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1733310207; 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=2tWLD5uTV/f19rlD9loI2uxWLUmGUKNpb73xu/2Q+Oc=; b=l60WrnAr1hsc7n+dqnHjbPA4BB+pmmxKy00jRtrzhBG6nzmmrOf1INfkZb6Q+YQS3UfTP2 bOxRbYzgN/ovsrZljeUNOpOMCWYE1A46hIPmiLYO0+7Xhq99z9Y5UIxg+3XuTnY9mOBYAP kDuoFXdnQEFoV3eDBdh7p99cRlyPhHw= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1733310207; a=rsa-sha256; cv=none; b=5lYZXHSbkRNw76sDih/dz3i/vmu8PUqWpTzbYZDVvcINZCy1aAxpy5heCtB/OIWKXrVI5L ErSxE1nwzRACYkgN+rC54VGTWws2xupgmPbUpzE5qYM4O1QGh4dGzUV3KqfdJ/4hokAJkF teF4Yzi0Pfplm5BZ9Uwnt85b01ReR6Y= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=T2DAC0ui; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=wMng8gz4; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=T2DAC0ui; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=wMng8gz4; dmarc=none; spf=pass (imf05.hostedemail.com: domain of vbabka@suse.cz designates 195.135.223.130 as permitted sender) smtp.mailfrom=vbabka@suse.cz Received: from imap1.dmz-prg2.suse.org (imap1.dmz-prg2.suse.org [IPv6:2a07:de40:b281:104:10:150:64:97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 6ADD0210F4; Wed, 4 Dec 2024 11:03:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1733310211; h=from:from:reply-to: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=2tWLD5uTV/f19rlD9loI2uxWLUmGUKNpb73xu/2Q+Oc=; b=T2DAC0uirGVegantqgoLySUOCnSCXno/PEyt6UEiKeXmj1wwO/LYdvuUtsJSXZOAqXl+Sb B5xP73UjMU1hmp4zg1TlcYePyZgzCx02JjXFR7DhOruVFXjN/RvwkkS1wcxD2bfXKNlFlV Spv5ZKJvrlezzBjC1dv7whVqaEVlWc0= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1733310211; h=from:from:reply-to: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=2tWLD5uTV/f19rlD9loI2uxWLUmGUKNpb73xu/2Q+Oc=; b=wMng8gz4H8+5djktO7s86wOJe1JsAlv/D3FBrgm4BQ93C/7IjncssNj+gARNhyi3T1tTCV eDMnYdjyGh3rpVAA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1733310211; h=from:from:reply-to: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=2tWLD5uTV/f19rlD9loI2uxWLUmGUKNpb73xu/2Q+Oc=; b=T2DAC0uirGVegantqgoLySUOCnSCXno/PEyt6UEiKeXmj1wwO/LYdvuUtsJSXZOAqXl+Sb B5xP73UjMU1hmp4zg1TlcYePyZgzCx02JjXFR7DhOruVFXjN/RvwkkS1wcxD2bfXKNlFlV Spv5ZKJvrlezzBjC1dv7whVqaEVlWc0= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1733310211; h=from:from:reply-to: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=2tWLD5uTV/f19rlD9loI2uxWLUmGUKNpb73xu/2Q+Oc=; b=wMng8gz4H8+5djktO7s86wOJe1JsAlv/D3FBrgm4BQ93C/7IjncssNj+gARNhyi3T1tTCV eDMnYdjyGh3rpVAA== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 5BB181396E; Wed, 4 Dec 2024 11:03:31 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id jpAUFgM3UGfrCwAAD6G6ig (envelope-from ); Wed, 04 Dec 2024 11:03:31 +0000 Message-ID: <7dd41461-3142-46c8-9feb-2407519946ef@suse.cz> Date: Wed, 4 Dec 2024 12:03:31 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v3 12/15] mm/page_alloc: Move set_page_refcounted() to end of __alloc_pages() Content-Language: en-US To: "Matthew Wilcox (Oracle)" , Andrew Morton Cc: linux-mm@kvack.org, David Hildenbrand References: <20241125210149.2976098-1-willy@infradead.org> <20241125210149.2976098-13-willy@infradead.org> From: Vlastimil Babka In-Reply-To: <20241125210149.2976098-13-willy@infradead.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Rspamd-Action: no action X-Stat-Signature: qgj9pxaztnhq85n7jniadx3mffqx5ej6 X-Rspamd-Queue-Id: BD73910000E X-Rspam-User: X-Rspamd-Server: rspam01 X-HE-Tag: 1733310185-319658 X-HE-Meta: U2FsdGVkX180PGWivtI60sopRed84tvEJMJBMluswY5fDqcBjg9mR0dyLHiKHwB9KYJiKG63vdle+lU6Vk6MoIKiqmoHjenGt52N/mjXqkp/Z0eAW83y76GW5v8uZk0IvTUtA6LmXQsG3ksEixRvNX06x+THwuIOdFwKzOo5nhhH+9k7m6NJG7+2VqfpD+GYgS2cXyNK7XaDqxaGhxKVY9iJOIlVtrWCRtrKSSoopf4i8POD3Fg0LLBZ61tCtsvAte3xlHUTNhFZFhEEF81RLlogz3pzsvmDT4/44soDjSJqa45S0SpO3FbOmqJ97FRYZdo2Wf+JWnFXST/BTid5gVC2BrrLwR+bvYiCqQMqJuJM8htuOxxmWfyU9Z8Zu6nHXK9UBlRoLqpLfu2OiBqHQT0pAPs3PlYZ7qqBuDUnO8sDzf2IPDkzmDtmPpm0u4J0rAByAnrKejtEbQAnS+jaDSp10Zbcd6C0OjTjp+qkI2UHGjYjHZmlu6IL1fO+EJ5Q/f1jibO2C/ESUu0wdu50Tv4iSsCjopqLLhZXlem4SGPJ74re5281kcqs2YDeBzzvIB1ub5Phd4oJW0YeaCd/gTCAMpNMm+SmGWdU+p9je2GQQ4OlIE9F3kHfU+x23xXj7ElOOC+JkxvV80Crl8UKA2BenBvbA8XMjsMQrWB+WLnPqtIdrh+C6YA/yffkDtl3RjrsMk0Dj+PoEmvheRWiXxcSR2eRjD0OY4cj7icBwHEuB+fabeIfwuADs946OiDTti4PqTMFfg0XHUHDiT/fhM1cCCbGCnVOd9VUDZoA51qLMZsHyEXbEd2dM/AAFZgM5/ltJp5eRn2TtHGRehjRbSoLOFGYPNW2Vm9BAFXzI0xTk25SBfGNvePnnXWs7UtFSkvySp0ja7ev2bfk9tyOfNDdo/xuBtnktrkghlFwcUHT6LdEPNwo6/W7sbmKGfMelZButphlfvYWbEz8SEo LHNxzxrb WRniXqpD2aCNv5TAFdjFPIXzlaaaCawdzyMjsD7TR8DEsJFKwnVcXEAK8b2U+zSB8OgiFCQOgRTIs7Zjwj/9pydQTnkVoG1yRtxuRJzJLHoPWd2Va73B8NrK1wDZ+WLr01diir+aHJlxFIJr+NU9ZdngyJZdfW0fYPN+eWY5AK9DFLl3USe+gk6nVmDukoqJD79bTl5pVjq6THDSPgMytpn3iWfXN0qXPLr8xqH7si4AB/cR2EYs7YwAoDchTqviukJRz73o1H7cHLiQqA0vvFhJI9m0w3LQkEE/fcZS5vBk1rbvViscQO7UFSS4mC0AmzBcS/iyLs/yQ6wogVxVnZuQi6CU5nSSu/CisLhDx9uRbim2ed+Bdqtxq/LIgc4qkslMfgkS7J9Njzyg= 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 11/25/24 22:01, Matthew Wilcox (Oracle) wrote: > Remove some code duplication by calling set_page_refcounted() at the > end of __alloc_pages() instead of after each call that can allocate > a page. That means that we free a frozen page if we've exceeded the > allowed memcg memory. > > Signed-off-by: Matthew Wilcox (Oracle) Reviewed-by: Vlastimil Babka > --- > mm/page_alloc.c | 10 ++++------ > 1 file changed, 4 insertions(+), 6 deletions(-) > > diff --git a/mm/page_alloc.c b/mm/page_alloc.c > index c219d2471408..35fb45b8b369 100644 > --- a/mm/page_alloc.c > +++ b/mm/page_alloc.c > @@ -4784,10 +4784,8 @@ struct page *__alloc_pages_noprof(gfp_t gfp, unsigned int order, > > /* First allocation attempt */ > page = get_page_from_freelist(alloc_gfp, order, alloc_flags, &ac); > - if (likely(page)) { > - set_page_refcounted(page); > + if (likely(page)) > goto out; > - } > > alloc_gfp = gfp; > ac.spread_dirty_pages = false; > @@ -4799,15 +4797,15 @@ struct page *__alloc_pages_noprof(gfp_t gfp, unsigned int order, > ac.nodemask = nodemask; > > page = __alloc_pages_slowpath(alloc_gfp, order, &ac); > - if (page) > - set_page_refcounted(page); > > out: > if (memcg_kmem_online() && (gfp & __GFP_ACCOUNT) && page && > unlikely(__memcg_kmem_charge_page(page, gfp, order) != 0)) { > - __free_pages(page, order); > + free_frozen_pages(page, order); > page = NULL; > } > + if (page) > + set_page_refcounted(page); > > trace_mm_page_alloc(page, order, alloc_gfp, ac.migratetype); > kmsan_alloc_page(page, order, alloc_gfp);