On 02.12.20 17:12, Vitaly Kuznetsov wrote: > 'alloc_unit' in alloc_balloon_pages() is either '512' for 2M allocations or > '1' for 4k allocations. So > > 1 << get_order(alloc_unit << PAGE_SHIFT) > > equals to 'alloc_unit' and the for loop basically sets all them offline. > Simplify the math to improve the readability. > > Signed-off-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx> > --- > drivers/hv/hv_balloon.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/hv/hv_balloon.c b/drivers/hv/hv_balloon.c > index eb56e09ae15f..da3b6bd2367c 100644 > --- a/drivers/hv/hv_balloon.c > +++ b/drivers/hv/hv_balloon.c > @@ -1238,7 +1238,7 @@ static unsigned int alloc_balloon_pages(struct hv_dynmem_device *dm, > split_page(pg, get_order(alloc_unit << PAGE_SHIFT)); > > /* mark all pages offline */ > - for (j = 0; j < (1 << get_order(alloc_unit << PAGE_SHIFT)); j++) > + for (j = 0; j < alloc_unit; j++) > __SetPageOffline(pg + j); > > bl_resp->range_count++; > Right, alloc_unit is multiples of 4k pages, such that it can directly be used for page ranges in deflation/inflation paths. Reviewed-by: David Hildenbrand <david@xxxxxxxxxx> -- Thanks, David / dhildenb