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 X-Spam-Level: X-Spam-Status: No, score=-23.3 required=3.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_IN_DEF_DKIM_WL autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2712DC4361B for ; Mon, 7 Dec 2020 17:29:02 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id AD1512388D for ; Mon, 7 Dec 2020 17:29:01 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org AD1512388D Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=google.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 1568B8D0007; Mon, 7 Dec 2020 12:29:01 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 0DFC28D0001; Mon, 7 Dec 2020 12:29:01 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EE9A38D0007; Mon, 7 Dec 2020 12:29:00 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0070.hostedemail.com [216.40.44.70]) by kanga.kvack.org (Postfix) with ESMTP id D41A38D0001 for ; Mon, 7 Dec 2020 12:29:00 -0500 (EST) Received: from smtpin06.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay04.hostedemail.com (Postfix) with ESMTP id 9B9F91EE6 for ; Mon, 7 Dec 2020 17:29:00 +0000 (UTC) X-FDA: 77567171640.06.birds19_4e166c2273e0 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin06.hostedemail.com (Postfix) with ESMTP id 74330100414FD for ; Mon, 7 Dec 2020 17:29:00 +0000 (UTC) X-HE-Tag: birds19_4e166c2273e0 X-Filterd-Recvd-Size: 5003 Received: from mail-lj1-f195.google.com (mail-lj1-f195.google.com [209.85.208.195]) by imf14.hostedemail.com (Postfix) with ESMTP for ; Mon, 7 Dec 2020 17:28:59 +0000 (UTC) Received: by mail-lj1-f195.google.com with SMTP id q8so15790567ljc.12 for ; Mon, 07 Dec 2020 09:28:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=BbFZ9/aJq6+MRerHGTSlgnWQbD0N46Qq1m/62tax3Q0=; b=FrTRSLmtoCaBB+p8XGyT5sms3TPD14eQAkpc8U34a38NA6wO7e6EHfZ3U7rsNMinmd vuNPZx22yX9OSQZEM6lAcnpTdNF+m/sTgimRK+EgpJhR1HMD76izF4sZwK21tAx1fttl ZCh5qLnwtfr2lfNajRlpFN43cs0eLphShP5SyIgXUw1fZdrxR6vVrf7na9OFEVXli4M5 vC0zg9ijnyVx0koTGb7EiOXZxe/w4pivFk7inhtU80clXFpdwipjWdRA2526YOBBXE0D gQGBZO23AaeJ/kaaHSvfP//RPVxL0Axbu2PIOuwtmj0A/ONTOj/Gs3Nctf1FrsPI+cz6 Lm4w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=BbFZ9/aJq6+MRerHGTSlgnWQbD0N46Qq1m/62tax3Q0=; b=omD3RQ7kJYAHtT0fUu4LWgYJ0yxQYy1mzvi0hJlIZEfK0i6xYsFRHBKhv0MwiT5aqc drLpdnU2RyzjYlrJDoPAmtILOn9Frln5N7K91Ycfd4kiUNk2aQ1Cxvhy0iujFS4aohyA OcrK92BGHOXg2t0fnC/zvqB/kLFeJaKCwjSfvXyHFD5DQRADmg7PjNb06o71p/17/B/e vtvWmAu5q7UtKGny0i3YlV/tkdEOOhZ9zMC1hCAj7jlFL7tHHP9Q5r9XgZNRli8DRL3i jqJP7vlfkdOXfdH5/fc3EC2V6B9gPZz/pLoCpQjGloid3+zXmLDz/tKPJR1BjxtnmS85 PrRQ== X-Gm-Message-State: AOAM531LZ3PMTs1mii23ROj/U+H0slpRGNIFPH/A9Mnn4Uzy4xROYZr7 PlwouVSolWc6bo0XwI1iiHNB/IOrQnjveuPM7KEpBQ== X-Google-Smtp-Source: ABdhPJy28XMxrw04eVdjjzg7k8ZRJbkzlBNFitQCJs8TqSimrJHuDOVi6Y+r40mvWP61BqZLIDzwW789n1EaxQBah70= X-Received: by 2002:a2e:8416:: with SMTP id z22mr324668ljg.347.1607362138096; Mon, 07 Dec 2020 09:28:58 -0800 (PST) MIME-Version: 1.0 References: <20201207142204.GA18516@rlk> In-Reply-To: <20201207142204.GA18516@rlk> From: Shakeel Butt Date: Mon, 7 Dec 2020 09:28:46 -0800 Message-ID: Subject: Re: [PATCH] mm/page_alloc: simplify kmem cgroup charge/uncharge code To: Hui Su Cc: Andrew Morton , Linux MM , LKML , Muchun Song Content-Type: text/plain; charset="UTF-8" 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 Mon, Dec 7, 2020 at 6:22 AM Hui Su wrote: > > Since the commit 60cd4bcd6238 ("memcg: localize memcg_kmem_enabled() > check"), we have supplied the api which users don't have to explicitly > check memcg_kmem_enabled(). > > Signed-off-by: Hui Su > --- > mm/page_alloc.c | 12 ++++++------ > 1 file changed, 6 insertions(+), 6 deletions(-) > > diff --git a/mm/page_alloc.c b/mm/page_alloc.c > index eaa227a479e4..dc990a899ded 100644 > --- a/mm/page_alloc.c > +++ b/mm/page_alloc.c > @@ -1214,8 +1214,8 @@ static __always_inline bool free_pages_prepare(struct page *page, > * Do not let hwpoison pages hit pcplists/buddy > * Untie memcg state and reset page's owner > */ > - if (memcg_kmem_enabled() && PageKmemcg(page)) > - __memcg_kmem_uncharge_page(page, order); > + if (PageKmemcg(page)) > + memcg_kmem_uncharge_page(page, order); > reset_page_owner(page, order); > return false; > } > @@ -1244,8 +1244,8 @@ static __always_inline bool free_pages_prepare(struct page *page, > } > if (PageMappingFlags(page)) > page->mapping = NULL; > - if (memcg_kmem_enabled() && PageKmemcg(page)) > - __memcg_kmem_uncharge_page(page, order); > + if (PageKmemcg(page)) > + memcg_kmem_uncharge_page(page, order); > if (check_free) > bad += check_free_page(page); > if (bad) > @@ -4965,8 +4965,8 @@ __alloc_pages_nodemask(gfp_t gfp_mask, unsigned int order, int preferred_nid, > page = __alloc_pages_slowpath(alloc_mask, order, &ac); > > out: > - if (memcg_kmem_enabled() && (gfp_mask & __GFP_ACCOUNT) && page && > - unlikely(__memcg_kmem_charge_page(page, gfp_mask, order) != 0)) { > + if ((gfp_mask & __GFP_ACCOUNT) && page && > + unlikely(memcg_kmem_charge_page(page, gfp_mask, order) != 0)) { > __free_pages(page, order); > page = NULL; > } The reason to keep __memcg_kmem_[un]charge_page functions is that they were called in the very hot path. Can you please check the performance impact of your change and if the generated code is actually same or different.