On 24 Mar 2023, at 11:17, Michal Koutný wrote:
Hello.
On Mon, Mar 20, 2023 at 08:48:26PM -0400, Zi Yan zi.yan@sent.com wrote:
@@ -5746,8 +5746,8 @@ static void *make_alloc_exact(unsigned long addr, unsigned int order, struct page *page = virt_to_page((void *)addr); struct page *last = page + nr;
split_page_owner(page, 1 << order);
split_page_memcg(page, 1 << order);
split_page_owner(page, 1 << order, 1);
split_page_memcg(page, 1 << order, 1);
I think here should be
split_page_owner(page, order, 0);
split_page_memcg(page, 1 << order, 1);
because I was wondering why split_page_memcg() doesn't use orders too? (E.g. it wouldn't work well if nr % new_new != 0).
Thanks. Good point. I will make both use orders instead in next version.
-- Best Regards, Yan, Zi