All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Kravetz <mike.kravetz@oracle.com>
To: Sidhartha Kumar <sidhartha.kumar@oracle.com>
Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org,
	akpm@linux-foundation.org, songmuchun@bytedance.com,
	willy@infradead.org, vbabka@suse.cz,
	william.kucharski@oracle.com, dhowells@redhat.com,
	peterx@redhat.com, arnd@arndb.de, ccross@google.com,
	hughd@google.com, ebiederm@xmission.com,
	kernel test robot <lkp@intel.com>
Subject: Re: [PATCH v3 6/6] mm/hugetlb: add folio_hstate()
Date: Mon, 19 Sep 2022 15:43:27 -0700	[thread overview]
Message-ID: <Yyjwj+0LjMbRNkYw@monkey> (raw)
In-Reply-To: <20220908193706.1716548-7-sidhartha.kumar@oracle.com>

On 09/08/22 12:37, Sidhartha Kumar wrote:
> Helper function to retrieve hstate information from a hugetlb folio.
> 
> Signed-off-by: Sidhartha Kumar <sidhartha.kumar@oracle.com>
> Reported-by: kernel test robot <lkp@intel.com>
> ---
>  include/linux/hugetlb.h | 14 ++++++++++++--
>  mm/migrate.c            |  2 +-
>  2 files changed, 13 insertions(+), 3 deletions(-)

Thanks,  Someday we will be able to remove page_hstate.

Reviewed-by: Mike Kravetz <mike.kravetz@oracle.com>
-- 
Mike Kravetz

> 
> diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h
> index 0bcaca694ab7..f59e8fb3f937 100644
> --- a/include/linux/hugetlb.h
> +++ b/include/linux/hugetlb.h
> @@ -850,10 +850,15 @@ static inline pte_t arch_make_huge_pte(pte_t entry, unsigned int shift,
>  }
>  #endif
>  
> +static inline struct hstate *folio_hstate(struct folio *folio)
> +{
> +	VM_BUG_ON_FOLIO(!folio_test_hugetlb(folio), folio);
> +	return size_to_hstate(folio_size(folio));
> +}
> +
>  static inline struct hstate *page_hstate(struct page *page)
>  {
> -	VM_BUG_ON_PAGE(!PageHuge(page), page);
> -	return size_to_hstate(page_size(page));
> +	return folio_hstate(page_folio(page));
>  }
>  
>  static inline unsigned hstate_index_to_shift(unsigned index)
> @@ -1057,6 +1062,11 @@ static inline struct hstate *hstate_vma(struct vm_area_struct *vma)
>  	return NULL;
>  }
>  
> +static inline struct hstate *folio_hstate(struct folio *folio)
> +{
> +	return NULL;
> +}
> +
>  static inline struct hstate *page_hstate(struct page *page)
>  {
>  	return NULL;
> diff --git a/mm/migrate.c b/mm/migrate.c
> index 6a1597c92261..55392a706493 100644
> --- a/mm/migrate.c
> +++ b/mm/migrate.c
> @@ -1589,7 +1589,7 @@ struct page *alloc_migration_target(struct page *page, unsigned long private)
>  		nid = folio_nid(folio);
>  
>  	if (folio_test_hugetlb(folio)) {
> -		struct hstate *h = page_hstate(&folio->page);
> +		struct hstate *h = folio_hstate(folio);
>  
>  		gfp_mask = htlb_modify_alloc_mask(h, gfp_mask);
>  		return alloc_huge_page_nodemask(h, nid, mtc->nmask, gfp_mask);
> -- 
> 2.31.1


      reply	other threads:[~2022-09-19 22:43 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-08 19:37 [PATCH v3 0/6] begin converting hugetlb code to folios Sidhartha Kumar
2022-09-08 19:37 ` [PATCH v3 1/6] mm/hugetlb: add folio support to hugetlb specific flag macros Sidhartha Kumar
2022-09-19 22:09   ` Mike Kravetz
2022-09-08 19:37 ` [PATCH v3 2/6] mm: add private field of first tail to struct page and struct folio Sidhartha Kumar
2022-09-19 22:14   ` Mike Kravetz
2022-09-08 19:37 ` [PATCH v3 3/6] mm/hugetlb: add hugetlb_folio_subpool() helper Sidhartha Kumar
2022-09-19 22:24   ` Mike Kravetz
2022-09-08 19:37 ` [PATCH v3 4/6] mm/hugetlb: add hugetlb_set_folio_subpool() helper Sidhartha Kumar
2022-09-19 22:26   ` Mike Kravetz
2022-09-08 19:37 ` [PATCH v3 5/6] hugetlbfs: convert hugetlb_delete_from_page_cache() to use folios Sidhartha Kumar
2022-09-19 22:33   ` Mike Kravetz
2022-09-08 19:37 ` [PATCH v3 6/6] mm/hugetlb: add folio_hstate() Sidhartha Kumar
2022-09-19 22:43   ` Mike Kravetz [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Yyjwj+0LjMbRNkYw@monkey \
    --to=mike.kravetz@oracle.com \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=ccross@google.com \
    --cc=dhowells@redhat.com \
    --cc=ebiederm@xmission.com \
    --cc=hughd@google.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=lkp@intel.com \
    --cc=peterx@redhat.com \
    --cc=sidhartha.kumar@oracle.com \
    --cc=songmuchun@bytedance.com \
    --cc=vbabka@suse.cz \
    --cc=william.kucharski@oracle.com \
    --cc=willy@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.