On 09.03.2020 09:48, Paul Durrant wrote:
>> -----Original Message-----
>> From: Jan Beulich <jbeul...@suse.com>
>> Sent: 06 March 2020 17:17
>> To: Paul Durrant <xadimg...@gmail.com>
>> Cc: sstabell...@kernel.org; jul...@xen.org; volodymyr_babc...@epam.com; 
>> w...@xen.org;
>> konrad.w...@oracle.com; andrew.coop...@citrix.com; ian.jack...@eu.citrix.com;
>> george.dun...@citrix.com; xen-devel@lists.xenproject.org; 'David Woodhouse' 
>> <dw...@infradead.org>
>> Subject: Re: [PATCH 2/2] domain: use PGC_extra domheap page for shared_info
>>
>> On 06.03.2020 17:27, Paul Durrant wrote:
>>>> -----Original Message-----
>>>> From: Jan Beulich <jbeul...@suse.com>
>>>> Sent: 06 March 2020 13:46
>>>> To: Paul Durrant <xadimg...@gmail.com>
>>>> Cc: sstabell...@kernel.org; jul...@xen.org; volodymyr_babc...@epam.com; 
>>>> w...@xen.org;
>>>> konrad.w...@oracle.com; andrew.coop...@citrix.com; 
>>>> ian.jack...@eu.citrix.com;
>>>> george.dun...@citrix.com; xen-devel@lists.xenproject.org; 'David 
>>>> Woodhouse' <dw...@infradead.org>
>>>> Subject: Re: [PATCH 2/2] domain: use PGC_extra domheap page for shared_info
>>>>
>>>> On 06.03.2020 14:41, Paul Durrant wrote:
>>>>>> -----Original Message-----
>>>>>> From: Jan Beulich <jbeul...@suse.com>
>>>>>> Sent: 06 March 2020 13:36
>>>>>> To: Paul Durrant <xadimg...@gmail.com>
>>>>>> Cc: sstabell...@kernel.org; jul...@xen.org; volodymyr_babc...@epam.com; 
>>>>>> w...@xen.org;
>>>>>> konrad.w...@oracle.com; andrew.coop...@citrix.com; 
>>>>>> ian.jack...@eu.citrix.com;
>>>>>> george.dun...@citrix.com; xen-devel@lists.xenproject.org; 'David 
>>>>>> Woodhouse' <dw...@infradead.org>
>>>>>> Subject: Re: [PATCH 2/2] domain: use PGC_extra domheap page for 
>>>>>> shared_info
>>>>>>
>>>>>> On 06.03.2020 14:26, Paul Durrant wrote:
>>>>>>>> From: Xen-devel <xen-devel-boun...@lists.xenproject.org> On Behalf Of 
>>>>>>>> Jan Beulich
>>>>>>>> Sent: 06 March 2020 13:24
>>>>>>>>
>>>>>>>> On 06.03.2020 14:13, Paul Durrant wrote:
>>>>>>>>> My aim is to make the separation abundantly obvious by getting rid
>>>>>>>>> of shared xenheap pages (for non-system domains at least) but I
>>>>>>>>> can't do that before converting shared_info and grant shared/status
>>>>>>>>> frames to domheap.
>>>>>>>>
>>>>>>>> Following David's various replies - instead of going this route of
>>>>>>>> replacing the sharing of xenheap pages by different logic, the
>>>>>>>> same ought to be achievable by making the backing allocations come
>>>>>>>> from the correct pool?
>>>>>>>>
>>>>>>>
>>>>>>> I still prefer the simplification of not having to clean up the
>>>>>>> shared xenheap page list in domain_kill() so IMO it is still worth
>>>>>>> it for that alone.
>>>>>>
>>>>>> I don't see anything very special with the cleaning up in
>>>>>> domain_kill() / domain_relinquish_resources(). What I'd view as
>>>>>> more desirable in this regard is the general fact of needing
>>>>>> two lists. But you realize there's a downside to this as well?
>>>>>> dump_pageframe_info() will reliably show _all_ Xen heap pages
>>>>>> associated with a domain, but it will only ever show up to 10
>>>>>> pages on ->page_list for a domain that's not already being
>>>>>> cleaned up.
>>>>>
>>>>> That's not much of a downside though I don't think. The xenheap
>>>>> (or PGC_extra domheap pages) are 'special' and so info about
>>>>> them ought to be available via an alternate dump function anyway
>>>>> (and if not already, it can be added).
>>>>
>>>> Whatever you'd add, the logic would need to either traverse the
>>>> entire ->page_list (can take very long) or have/use out of band
>>>> information where such pages may have a record (fragile).
>>>>
>>>
>>> But the shared xenheap pages in question are only shared info, or
>>> grant table, so their information can be dumped separately.
>>> I guess it makes more sense to add another patch into the series
>>> to do explicit dump of shared_info and then exclude 'special'
>>> pages from dump_pageframe_info().
>>
>> Bu that's why I said "fragile" - new uses of such pages wouldn't
>> automatically be picked up, whereas them all landing on xenpage_list
>> made their dumping a reliable thing.
>>
> 
> But how useful is dumping xenheap pages this way? There's nothing
> that actually says what they are for so I can't see why it is
> particularly useful.

That's no different from the domheap page list dumping. The main
point of it - aiui - is to have a hook on finding where possible
leaks sit. For xenheap pages, actually, one can (currently) infer
what they are used for from their position on the list, I think.

> Having something that says 'This is the shared_info page' and
> 'These are the grant shared frames' seems much more desirable...
> and any new ones added would almost certainly merit similar dump
> functions.

Possibly, yet that's different (partly extended, partly
orthogonal) functionality. Doing such may indeed be useful.

Jan

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

Reply via email to