On 27/06/2022 11:03, Penny Zheng wrote:
Hi jan
-----Original Message-----
put_static_pages, that is, adding pages to the reserved list, is only for
freeing static
pages on runtime. In static page initialization stage, I also use
free_statimem_pages,
and in which stage, I think the domain has not been constructed at all. So I
prefer
the freeing of staticmem pages is split into two parts: free_staticmem_pages and
put_static_pages
AFAIU, all the pages would have to be allocated via
acquire_domstatic_pages(). This call requires the domain to be allocated
and setup for handling memory.
Therefore, I think the split is unnecessary. This would also have the
advantage to remove one loop. Admittly, this is not important when the
order 0, but it would become a problem for larger order (you may have to
pull the struct page_info multiple time in the cache).
Cheers,
--
Julien Grall