>>>> Boris Ostrovsky <boris.ostrov...@oracle.com> 08/07/17 4:16 PM >>>
>On 08/06/2017 01:41 PM, Jan Beulich wrote:
>>>>> Boris Ostrovsky <boris.ostrov...@oracle.com> 08/04/17 7:03 PM >>>
>>> +                /* See if any of the pages indeed need scrubbing. */
>>> +                if ( first_dirty != INVALID_DIRTY_IDX )
>>> +                {
>>> +                    if ( (1U << cur_order) > first_dirty )
>>> +                    {
>>> +                        for ( i = first_dirty ; i < (1U << cur_order); i++ 
>>> )
>>> +                            if ( test_bit(_PGC_need_scrub,
>>> +                                          &cur_head[i].count_info) )
>>> +                            {
>>> +                                idx = i;
>>> +                                break;
>>> +                            }
>> Why again do you need to look through all the pages here, rather than
>> simply marking the chunks as needing scrubbing simply based on first_dirty?
>> It seems to me that I've asked this before, which is a good indication that
>> such special behavior would better have a comment attached.
>
>We want to make sure that there are in fact dirty pages in the
>(sub-)buddy: first_dirty is only a hint there *may be* some.

But why is that needed? Iirc you don't go to such length when splitting a
buddy during allocation.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

Reply via email to