On Tue 03-09-19 21:30:30, William Kucharski wrote: > > > > On Sep 3, 2019, at 5:57 AM, Michal Hocko <mhocko@xxxxxxxxxx> wrote: > > > > On Mon 02-09-19 03:23:40, William Kucharski wrote: > >> Add an 'order' argument to __page_cache_alloc() and > >> do_read_cache_page(). Ensure the allocated pages are compound pages. > > > > Why do we need to touch all the existing callers and change them to use > > order 0 when none is actually converted to a different order? This just > > seem to add a lot of code churn without a good reason. If anything I > > would simply add __page_cache_alloc_order and make __page_cache_alloc > > call it with order 0 argument. > > All the EXISTING code in patch [1/2] is changed to call it with an order > of 0, as you would expect. > > However, new code in part [2/2] of the patch calls it with an order of > HPAGE_PMD_ORDER, as it seems cleaner to have those routines operate on > a page, regardless of the order of the page desired. > > I certainly can change this as you request, but once again the question > is whether "page" should MEAN "page" regardless of the order desired, > or whether the assumption will always be "page" means base PAGESIZE. > > Either approach works, but what is the semantic we want going forward? I do not have anything against handling page as compound, if that is the question. All I was interested in whether adding a new helper to _allocate_ the comound page wouldn't be easier than touching all existing __page_cache_alloc users. -- Michal Hocko SUSE Labs