[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2eab8e20-a87d-a5be-5d55-cdaa0b377b1d@redhat.com>
Date: Thu, 11 Jul 2019 12:52:19 -0400
From: Nitesh Narayan Lal <nitesh@...hat.com>
To: Dave Hansen <dave.hansen@...el.com>, kvm@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-mm@...ck.org,
pbonzini@...hat.com, lcapitulino@...hat.com, pagupta@...hat.com,
wei.w.wang@...el.com, yang.zhang.wz@...il.com, riel@...riel.com,
david@...hat.com, mst@...hat.com, dodgen@...gle.com,
konrad.wilk@...cle.com, dhildenb@...hat.com, aarcange@...hat.com,
alexander.duyck@...il.com, john.starks@...rosoft.com,
mhocko@...e.com
Subject: Re: [RFC][Patch v11 1/2] mm: page_hinting: core infrastructure
On 7/11/19 12:45 PM, Dave Hansen wrote:
> On 7/11/19 9:36 AM, Nitesh Narayan Lal wrote:
>>>>>> +struct zone_free_area {
>>>>>> + unsigned long *bitmap;
>>>>>> + unsigned long base_pfn;
>>>>>> + unsigned long end_pfn;
>>>>>> + atomic_t free_pages;
>>>>>> + unsigned long nbits;
>>>>>> +} free_area[MAX_NR_ZONES];
>>>>> Why do we need an extra data structure. What's wrong with putting
>>>>> per-zone data in ... 'struct zone'?
>>>> Will it be acceptable to add fields in struct zone, when they will only
>>>> be used by page hinting?
>>> Wait a sec... MAX_NR_ZONES the number of zone types not the maximum
>>> number of *zones* in the system.
>>>
>>> Did you test this on a NUMA system?
>> Yes, I tested it with a guest having 2 and 3 NUMA nodes.
> How can this *possibly* have worked?
>
> Won't each same-typed zone just use the same free_area[] entry since
> zone_idx(zone1)==zone_idx(zone2) if zone1 and zone2 are (for example)
> both ZONE_NORMAL?
Yes. However, the base_pfn and end_pfn will be updated with the zone1's
base and zone2s end_pfn value from page_hinting_enable(). Isn't?
--
Thanks
Nitesh
Powered by blists - more mailing lists