* [PATCH mm-stable] mm/hugetlb: set head flag before setting compound_order in __prep_compound_gigantic_folio
@ 2022-12-12 22:55 Sidhartha Kumar
2022-12-13 8:42 ` David Hildenbrand
0 siblings, 1 reply; 2+ messages in thread
From: Sidhartha Kumar @ 2022-12-12 22:55 UTC (permalink / raw)
To: linux-kernel, linux-mm
Cc: akpm, songmuchun, mike.kravetz, willy, tsahu, jhubbard, david,
Sidhartha Kumar
folio_set_compound_order() checks if the passed in folio is a large folio.
A large folio is indicated by the PG_head flag. Call __folio_set_head()
before setting the order.
Signed-off-by: Sidhartha Kumar <sidhartha.kumar@oracle.com>
Reported-by: David Hildenbrand <david@redhat.com>
---
Hi David,
I tested this by doing:
echo 10 > /sys/kernel/mm/hugepages/hugepages-1048576kB/nr_hugepages
echo 0 > /sys/kernel/mm/hugepages/hugepages-1048576kB/nr_hugepages
and checking dmesg. Let me know if there are other ways of testing
you would like to see run.
Hi Andrew,
This can be folded into d1c6095572d0cf00c0cd30378639ff9387b34edd
mm/hugetlb: convert hugetlb prep functions to folios.
However, there is still ongoing discussion with this patch series,
specifically with patch 1 9fd330582b2f mm: add folio dtor and order setter
functions, so I'm not sure if this series should be a part of the 6.2 merge
window. I am planning to send a v6 within the next few days to implement
the suggested changes.
mm/hugetlb.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index 8c6fe2286814..7cdbcc22587b 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -1805,10 +1805,10 @@ static bool __prep_compound_gigantic_folio(struct folio *folio,
int nr_pages = 1 << order;
struct page *p;
- /* we rely on prep_new_hugetlb_folio to set the destructor */
- folio_set_compound_order(folio, order);
__folio_clear_reserved(folio);
__folio_set_head(folio);
+ /* we rely on prep_new_hugetlb_folio to set the destructor */
+ folio_set_compound_order(folio, order);
for (i = 0; i < nr_pages; i++) {
p = folio_page(folio, i);
--
2.38.1
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH mm-stable] mm/hugetlb: set head flag before setting compound_order in __prep_compound_gigantic_folio
2022-12-12 22:55 [PATCH mm-stable] mm/hugetlb: set head flag before setting compound_order in __prep_compound_gigantic_folio Sidhartha Kumar
@ 2022-12-13 8:42 ` David Hildenbrand
0 siblings, 0 replies; 2+ messages in thread
From: David Hildenbrand @ 2022-12-13 8:42 UTC (permalink / raw)
To: Sidhartha Kumar, linux-kernel, linux-mm
Cc: akpm, songmuchun, mike.kravetz, willy, tsahu, jhubbard
On 12.12.22 23:55, Sidhartha Kumar wrote:
> folio_set_compound_order() checks if the passed in folio is a large folio.
> A large folio is indicated by the PG_head flag. Call __folio_set_head()
> before setting the order.
>
> Signed-off-by: Sidhartha Kumar <sidhartha.kumar@oracle.com>
> Reported-by: David Hildenbrand <david@redhat.com>
> ---
> Hi David,
> I tested this by doing:
>
> echo 10 > /sys/kernel/mm/hugepages/hugepages-1048576kB/nr_hugepages
> echo 0 > /sys/kernel/mm/hugepages/hugepages-1048576kB/nr_hugepages
Thanks, that should be good enough.
>
> and checking dmesg. Let me know if there are other ways of testing
> you would like to see run.
>
> Hi Andrew,
> This can be folded into d1c6095572d0cf00c0cd30378639ff9387b34edd
> mm/hugetlb: convert hugetlb prep functions to folios.
>
> However, there is still ongoing discussion with this patch series,
> specifically with patch 1 9fd330582b2f mm: add folio dtor and order setter
> functions, so I'm not sure if this series should be a part of the 6.2 merge
> window. I am planning to send a v6 within the next few days to implement
> the suggested changes.
Whatever is in mm-stable is supposed to go upstream as-is and even the
commit ids will remain stable, meaning we an only queue fixes on top.
Therefore, mm-stable now contains:
commit c45bc55a99957b20e4e0333bcd42e12d1833a7f5 (mm/mm-stable)
Author: Sidhartha Kumar <sidhartha.kumar@oracle.com>
Date: Mon Dec 12 14:55:29 2022 -0800
mm/hugetlb: set head flag before setting compound_order in __prep_compound_gigantic_folio
folio_set_compound_order() checks if the passed in folio is a large folio.
A large folio is indicated by the PG_head flag. Call __folio_set_head()
before setting the order.
Link: https://lkml.kernel.org/r/20221212225529.22493-1-sidhartha.kumar@oracle.com
Fixes: d1c6095572d0 ("mm/hugetlb: convert hugetlb prep functions to folios")
Signed-off-by: Sidhartha Kumar <sidhartha.kumar@oracle.com>
Reported-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
So, best send any future changes against mm-stable instead of sending out a v6.
--
Thanks,
David / dhildenb
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2022-12-13 8:42 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-12 22:55 [PATCH mm-stable] mm/hugetlb: set head flag before setting compound_order in __prep_compound_gigantic_folio Sidhartha Kumar
2022-12-13 8:42 ` David Hildenbrand
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox