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 mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 99F21C433F5 for ; Thu, 14 Oct 2021 07:16:11 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 4885C61152 for ; Thu, 14 Oct 2021 07:16:11 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 4885C61152 Authentication-Results: mail.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kvack.org Received: by kanga.kvack.org (Postfix) id BEEB794001D; Thu, 14 Oct 2021 03:16:10 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B9E4494001C; Thu, 14 Oct 2021 03:16:10 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A8E4294001D; Thu, 14 Oct 2021 03:16:10 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0030.hostedemail.com [216.40.44.30]) by kanga.kvack.org (Postfix) with ESMTP id 96F9A94001C for ; Thu, 14 Oct 2021 03:16:10 -0400 (EDT) Received: from smtpin03.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay04.hostedemail.com (Postfix) with ESMTP id BC7A53209B for ; Thu, 14 Oct 2021 07:16:08 +0000 (UTC) X-FDA: 78694184016.03.D396F2A Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.220.29]) by imf28.hostedemail.com (Postfix) with ESMTP id 3E11A900009F for ; Thu, 14 Oct 2021 07:16:08 +0000 (UTC) Received: from relay2.suse.de (relay2.suse.de [149.44.160.134]) by smtp-out2.suse.de (Postfix) with ESMTP id E700B20285; Thu, 14 Oct 2021 07:16:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=susede1; t=1634195766; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=psDL5nan6SZCy/ZgVLbapa/8v4HIAOlEqUtXE6YYjOI=; b=ZtNJuUPQ0p6nym5BoNWMIVPfO/mXnStoFPNKokOO/JFTZ9io30gEh7DhAICNABbrvjr8hx RtFXUn0KBjSiUJHxZra5XdLtPbcvgswlq4KIpSpjK6BprtvbIGbNBUJrOzbOfQ2dUyiaoq pO+FgmBolTc78KoobQwspZnzuD5cx5w= Received: from suse.cz (unknown [10.100.201.86]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by relay2.suse.de (Postfix) with ESMTPS id 6B021A3B89; Thu, 14 Oct 2021 07:16:06 +0000 (UTC) Date: Thu, 14 Oct 2021 09:16:04 +0200 From: Michal Hocko To: Shakeel Butt Cc: Johannes Weiner , Mel Gorman , Uladzislau Rezki , Vasily Averin , Roman Gushchin , Andrew Morton , cgroups@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] memcg: page_alloc: skip bulk allocator for __GFP_ACCOUNT Message-ID: References: <20211013194338.1804247-1-shakeelb@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20211013194338.1804247-1-shakeelb@google.com> X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 3E11A900009F X-Stat-Signature: 9hc98e6z8ex13ezi436ajhdd9pwm5xie Authentication-Results: imf28.hostedemail.com; dkim=pass header.d=suse.com header.s=susede1 header.b=ZtNJuUPQ; spf=pass (imf28.hostedemail.com: domain of mhocko@suse.com designates 195.135.220.29 as permitted sender) smtp.mailfrom=mhocko@suse.com; dmarc=pass (policy=quarantine) header.from=suse.com X-HE-Tag: 1634195768-765935 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: On Wed 13-10-21 12:43:38, Shakeel Butt wrote: [...] > diff --git a/mm/page_alloc.c b/mm/page_alloc.c > index 668edb16446a..b3acad4615d3 100644 > --- a/mm/page_alloc.c > +++ b/mm/page_alloc.c > @@ -5215,6 +5215,10 @@ unsigned long __alloc_pages_bulk(gfp_t gfp, int preferred_nid, > unsigned int alloc_flags = ALLOC_WMARK_LOW; > int nr_populated = 0, nr_account = 0; > > + /* Bulk allocator does not support memcg accounting. */ > + if (unlikely(gfp & __GFP_ACCOUNT)) > + goto out; Did you mean goto failed here? This would break some which do not have any fallback. E.g. xfs_buf_alloc_pages but likely more. Sorry I could have been more specific when talking about bypassing the bulk allocator. It is quite confusing because the bulk allocator interface consists of the bulk allocator and the fallback to the normal page allocator. > + > /* > * Skip populated array elements to determine if any pages need > * to be allocated before disabling IRQs. > -- > 2.33.0.882.g93a45727a2-goog -- Michal Hocko SUSE Labs