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 3844BC00A8F for ; Tue, 24 Oct 2023 17:40:04 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C8C6B6B02D4; Tue, 24 Oct 2023 13:40:03 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C3DA66B02D5; Tue, 24 Oct 2023 13:40:03 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B2CA36B02D6; Tue, 24 Oct 2023 13:40:03 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id A3F536B02D4 for ; Tue, 24 Oct 2023 13:40:03 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 7F12A80566 for ; Tue, 24 Oct 2023 17:40:03 +0000 (UTC) X-FDA: 81381068286.08.78AFDCA Received: from mail-pj1-f51.google.com (mail-pj1-f51.google.com [209.85.216.51]) by imf13.hostedemail.com (Postfix) with ESMTP id B6AE72001F for ; Tue, 24 Oct 2023 17:40:01 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=UtJVuiXe; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf13.hostedemail.com: domain of shy828301@gmail.com designates 209.85.216.51 as permitted sender) smtp.mailfrom=shy828301@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1698169201; 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=0jqecopWEo5Tu0tYTbEKGg8fX65wX9DmJTQg6zHcs64=; b=456f6/D41ZQGNbdrpXkhq8DbFFAsKm6qG+y/lYnicieaVgBfom1gOkHIPj14+G/3lW/WAt XYMGgzsY/XhJ7aXnqUYTrbAUfPSGVr+ccxGqYbzciRCVSq3969Vo6kF/BGKZayv33/rlc0 +r/7sJxsD6ZnKO72Y/zWvO15clvCf4M= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=UtJVuiXe; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf13.hostedemail.com: domain of shy828301@gmail.com designates 209.85.216.51 as permitted sender) smtp.mailfrom=shy828301@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1698169201; a=rsa-sha256; cv=none; b=G2wt9ZSV0/cxdgG6+3LT2o5dHZDYm3+kHxfG4jMRoh+6yrUH8lvx/WbOLCUzGbeVzIqmAp w6UGlldMMwlUoA24oiq9LawEngaBKgb+3HL6ph4YMA+JNjFOnQgZkxJ8SXIGIumLU0KX7K KFyJlWRK7izYT4gCH6G1XBSb5BpajzI= Received: by mail-pj1-f51.google.com with SMTP id 98e67ed59e1d1-27d104fa285so4063942a91.2 for ; Tue, 24 Oct 2023 10:40:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1698169200; x=1698774000; 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=0jqecopWEo5Tu0tYTbEKGg8fX65wX9DmJTQg6zHcs64=; b=UtJVuiXeJEouvFjKhIgRa9ZjqAyLkOsA9+qa9i+70XN5OIK1Lwbg6hHsghBUTpxXhu iLFyBbW3dxodJRgks4UZVts3I2ofC67LOw/gRjIcRo3sEBucIymAP982D5TK70Rx4w5v C7eHH2iQmNSRnJTXbS+PbGGfpjodVqaCaJeqxh4bkpoWGD41nuN6VoROLagzmf6iYNAv ab0AZflfywPF6XR+X1XNZ4DZ7kOwO9zSVmgChQmcd2DDq6mcO+460WINOPzkqCg7httv 84gXJegESdg73G8/vsH+dsj8+O8VTiLgP3uZ8Y2EdaHMyU+RhCmNk3SjzWGDF55fqNTR 5Xcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1698169200; x=1698774000; 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=0jqecopWEo5Tu0tYTbEKGg8fX65wX9DmJTQg6zHcs64=; b=TKpyDdCuSy408zP9umX5a8hW1GaZsvCn5Y4AcK8Op3/Aowb8kkzPoAYSSyClxdC5Q8 g7b7oVvpUJlbeaT9UH4G+q08DlUu2vIXcDRrYyMdM88yYZjq+6KZ1mayzLfFShDp76do 8Xfd1P2XIxfyY9ADxKAq4lk+3em0JnrxT9eKcAaEn5SlYPMJq3VQGI7JTOVKn3Wpp2Rw xNU5dbCoIhGJwvDvt7Lq6riE1Sv6eRlsXC4Hz2igyc9MyVsuUJrzUaYK2oEkl4ZHuM8T eQMSB/bs+DpMkTSSjZSwcxmKzM/s9BGRqURgygtZKgUFoiLeQnEoQcBzqu1AZdgQjpkn E3XQ== X-Gm-Message-State: AOJu0YxEi8nzxP5JlLTRoPwLsEeHFSn2ulb5HIjIad0seENT+/VnJCaN D5UQy4tDtbnWpNDM6yAqSro5AYSPyfBkssPq0xuixuT6 X-Google-Smtp-Source: AGHT+IE5ZgEF8eQPaKMnM8EC8El5a/KEonFn7iMq+f2p/cMBtJfWHu4pQe4ORYUeIhxTXVkEJkBlyyNue4O/gkCFHkI= X-Received: by 2002:a17:90a:2ec5:b0:27d:97e5:f3fa with SMTP id h5-20020a17090a2ec500b0027d97e5f3famr13021834pjs.29.1698169200572; Tue, 24 Oct 2023 10:40:00 -0700 (PDT) MIME-Version: 1.0 References: <20231020183331.10770-1-vishal.moola@gmail.com> <20231020183331.10770-5-vishal.moola@gmail.com> In-Reply-To: <20231020183331.10770-5-vishal.moola@gmail.com> From: Yang Shi Date: Tue, 24 Oct 2023 10:39:48 -0700 Message-ID: Subject: Re: [PATCH v3 4/5] mm/khugepaged: Convert alloc_charge_hpage() to use folios To: "Vishal Moola (Oracle)" Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, akpm@linux-foundation.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: B6AE72001F X-Stat-Signature: 3hcfk9xyswmtdy91dp74esu4w56xmpgx X-HE-Tag: 1698169201-317073 X-HE-Meta: U2FsdGVkX18IMyGkldjZ5scj99PBBEXQh4oqtEH9FgU3kS/0rISWANxlZIZh+VwIuyO9eXB+IRxbjtrSGQiNz9H2q0p1W5I/gOPM2uF/W9dQZUKNs3+f1rsih1Z0AdjR2n6XtxNADRUa9dTEYqsuBNKxMj87l0kgL07Of+CHzkRfmoROJRUeA7TM/8K3PrJzYBFX3ybn/eI9zhCiJzeK+1lTeLaxdX7g+RvE9Yn0skKF726glx0ld5oShFhtxVt4fnwOmw4VTkFbwkuvk1XM2988fvyxYIXB8jV4uU77l1Nu8GIqzVRuNrFHif9wzfdeJy1nZYFx/9QQyX3coP/1WE58vndn8CFBUncuzkww8xtgPvoAhu81ZzCQY08FF8dKrtLiUgOafPOmnkQ/42yvMHCRJjL5lKnI9dWD0zwFD+LMPbOigAyNjX/oY4/NH7NS4TX0QZxdIZmg5xE4zEbcgoGjGiMG2ubr3qVYEpYwpsro6y51GDeRzVTlpgkBQDbcrd607n+xlKvGZ+Uf3tHWqtHSHQkoE10PYmsLiJdO4PxCOCiVGI8iD0nLqFQL767bIrjE97ohb0jsbPa5jAXJhRaDsvSiJI8bjLcnIxvGVqz9m8SjmR1d7LsW5IBQ88+S+Y6MB9OnTBdW54scbeJ44S60eO52MHYvka2AxxWeDUYsUWW3Z8z+q8Ia+BRS5XijzyaRNHWGTM18FBiq50hPTNJQ+d2neHha7Swp2L9fvHRhIEyLdB2AJgur/9s4rRrU0WCawnwlplBR2CiSw2dtKqyioPgcQ9f1cVgFQt6KH/cLG3Iz4BcaFZJAbeip6Cblud7jU3uK9F5r7AYeER/9FWFPCOUzVf1ibk4+Q7hu4PFUOel+zuc7pWqP1T+fLInxQ0HTJ1tRb7xjcdMbePzDwYKNpnEjOUC2ak7TGGS8WWg8/hSUZBcZqlIwpXTBi+9Fnv2hmVEecgnPNE46Xgp 2oSNFPQe puQe3DPeG4ObnYMVby9gMsLW2ieUbGj8JmShYIc16NZM4CMCYJ+b/K9pTUEz03MqkWNTp8+7Re/W4+CJFXMBf2BqrnZOf7tts3q7oa08turBYSMnihnqXSs4eJK28H2Mv1yajivMd/nnFReWSor1cBVg5vC8qWZV/+bWqMO8A1iHJlWK/Avxn20x6tClTI5nJ/njDVuBRSS+dw0NroSXiF4MMC7Fp27zrrSA/f2m2OtMX1tKP0d6rd5tJxqqLqOh4wuM+BunGbhHzv7QI5hg/HBe4H+5ELhIyvLLDsR1+uwRHoeEj6XTB9nvfWjIwPD87QwIkl2VLWwptEq86r03Q2QxCiEzPlBXl8Eaf013OaNRLmNG/id6OsehnLNPvNpddTzIGcHzvjUji1OdJdMZcEHKOw1z2oKXxePl0TInprsSUMNpJWqwj4jsXvC6e4EvaPCPCKros0NnEhQc1DNWKFb2gQY0H5hIEYNAkCQRoqO9bakg= 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, Oct 20, 2023 at 11:34=E2=80=AFAM Vishal Moola (Oracle) wrote: > > Also remove count_memcg_page_event now that its last caller no longer use= s > it and reword hpage_collapse_alloc_page() to hpage_collapse_alloc_folio()= . > > This removes 1 call to compound_head() and helps convert khugepaged to > use folios throughout. > > Signed-off-by: Vishal Moola (Oracle) Reviewed-by: Yang Shi > --- > include/linux/memcontrol.h | 14 -------------- > mm/khugepaged.c | 17 ++++++++++------- > 2 files changed, 10 insertions(+), 21 deletions(-) > > diff --git a/include/linux/memcontrol.h b/include/linux/memcontrol.h > index ab94ad4597d0..3126bde982e8 100644 > --- a/include/linux/memcontrol.h > +++ b/include/linux/memcontrol.h > @@ -1080,15 +1080,6 @@ static inline void count_memcg_events(struct mem_c= group *memcg, > local_irq_restore(flags); > } > > -static inline void count_memcg_page_event(struct page *page, > - enum vm_event_item idx) > -{ > - struct mem_cgroup *memcg =3D page_memcg(page); > - > - if (memcg) > - count_memcg_events(memcg, idx, 1); > -} > - > static inline void count_memcg_folio_events(struct folio *folio, > enum vm_event_item idx, unsigned long nr) > { > @@ -1565,11 +1556,6 @@ static inline void __count_memcg_events(struct mem= _cgroup *memcg, > { > } > > -static inline void count_memcg_page_event(struct page *page, > - int idx) > -{ > -} > - > static inline void count_memcg_folio_events(struct folio *folio, > enum vm_event_item idx, unsigned long nr) > { > diff --git a/mm/khugepaged.c b/mm/khugepaged.c > index 9efd8ff68f06..6a7184cd291b 100644 > --- a/mm/khugepaged.c > +++ b/mm/khugepaged.c > @@ -888,16 +888,16 @@ static int hpage_collapse_find_target_node(struct c= ollapse_control *cc) > } > #endif > > -static bool hpage_collapse_alloc_page(struct page **hpage, gfp_t gfp, in= t node, > +static bool hpage_collapse_alloc_folio(struct folio **folio, gfp_t gfp, = int node, > nodemask_t *nmask) > { > - *hpage =3D __alloc_pages(gfp, HPAGE_PMD_ORDER, node, nmask); > - if (unlikely(!*hpage)) { > + *folio =3D __folio_alloc(gfp, HPAGE_PMD_ORDER, node, nmask); > + > + if (unlikely(!*folio)) { > count_vm_event(THP_COLLAPSE_ALLOC_FAILED); > return false; > } > > - folio_prep_large_rmappable((struct folio *)*hpage); > count_vm_event(THP_COLLAPSE_ALLOC); > return true; > } > @@ -1064,17 +1064,20 @@ static int alloc_charge_hpage(struct page **hpage= , struct mm_struct *mm, > int node =3D hpage_collapse_find_target_node(cc); > struct folio *folio; > > - if (!hpage_collapse_alloc_page(hpage, gfp, node, &cc->alloc_nmask= )) > + if (!hpage_collapse_alloc_folio(&folio, gfp, node, &cc->alloc_nma= sk)) { > + *hpage =3D NULL; > return SCAN_ALLOC_HUGE_PAGE_FAIL; > + } > > - folio =3D page_folio(*hpage); > if (unlikely(mem_cgroup_charge(folio, mm, gfp))) { > folio_put(folio); > *hpage =3D NULL; > return SCAN_CGROUP_CHARGE_FAIL; > } > - count_memcg_page_event(*hpage, THP_COLLAPSE_ALLOC); > > + count_memcg_folio_events(folio, THP_COLLAPSE_ALLOC, 1); > + > + *hpage =3D folio_page(folio, 0); > return SCAN_SUCCEED; > } > > -- > 2.40.1 >