On 07/26/2016 06:23 PM, Liang Li wrote:
> +     for_each_migratetype_order(order, t) {
> +             list_for_each(curr, &zone->free_area[order].free_list[t]) {
> +                     pfn = page_to_pfn(list_entry(curr, struct page, lru));
> +                     if (pfn >= start_pfn && pfn <= end_pfn) {
> +                             page_num = 1UL << order;
> +                             if (pfn + page_num > end_pfn)
> +                                     page_num = end_pfn - pfn;
> +                             bitmap_set(bitmap, pfn - start_pfn, page_num);
> +                     }
> +             }
> +     }

Nit:  The 'page_num' nomenclature really confused me here.  It is the
number of bits being set in the bitmap.  Seems like calling it nr_pages
or num_pages would be more appropriate.

Isn't this bitmap out of date by the time it's send up to the
hypervisor?  Is there something that makes the inaccuracy OK here?

Reply via email to