On 29.03.23 03:17, Zi Yan wrote:
From: Zi Yan ziy@nvidia.com
To split a THP to any lower order pages, we need to reform THPs on subpages at given order and add page refcount based on the new page order. Also we need to reinitialize page_deferred_list after removing the page from the split_queue, otherwise a subsequent split will see list corruption when checking the page_deferred_list again.
It has many uses, like minimizing the number of pages after truncating a huge pagecache page. For anonymous THPs, we can only split them to order-0 like before until we add support for any size anonymous THPs.
Because I'm currently looking into something that would also not be compatible with order-1 for now:
You should make it clear that order-1 is not supported, like:
"mm: thp: split huge page to any lower order pages (except order 1)"
And clarify in the subject why that is the case.