[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 07/10] xen/arm: intruduce alloc_domstatic_pages
On 19/05/2021 08:52, Penny Zheng wrote: Hi Julien Hi Penny, -----Original Message----- From: Julien Grall <julien@xxxxxxx> Sent: Tuesday, May 18, 2021 8:13 PM To: Penny Zheng <Penny.Zheng@xxxxxxx>; Jan Beulich <jbeulich@xxxxxxxx> Cc: Bertrand Marquis <Bertrand.Marquis@xxxxxxx>; Wei Chen <Wei.Chen@xxxxxxx>; nd <nd@xxxxxxx>; xen-devel@xxxxxxxxxxxxxxxxxxxx; sstabellini@xxxxxxxxxx Subject: Re: [PATCH 07/10] xen/arm: intruduce alloc_domstatic_pages Hi Penny, On 18/05/2021 09:57, Penny Zheng wrote:-----Original Message----- From: Jan Beulich <jbeulich@xxxxxxxx> Sent: Tuesday, May 18, 2021 3:35 PM To: Penny Zheng <Penny.Zheng@xxxxxxx> Cc: Bertrand Marquis <Bertrand.Marquis@xxxxxxx>; Wei Chen <Wei.Chen@xxxxxxx>; nd <nd@xxxxxxx>; xen-devel@xxxxxxxxxxxxxxxxxxxx;sstabellini@xxxxxxxxxx; julien@xxxxxxx Subject: Re: [PATCH 07/10] xen/arm: intruduce alloc_domstatic_pages On 18.05.2021 07:21, Penny Zheng wrote:--- a/xen/common/page_alloc.c +++ b/xen/common/page_alloc.c @@ -2447,6 +2447,9 @@ int assign_pages( { ASSERT(page_get_owner(&pg[i]) == NULL); page_set_owner(&pg[i], d); + /* use page_set_reserved_owner to set its reserved domain owner.*/+ if ( (pg[i].count_info & PGC_reserved) ) + page_set_reserved_owner(&pg[i], d);Now this is puzzling: What's the point of setting two owner fields to the same value? I also don't recall you having introduced page_set_reserved_owner() for x86, so how is this going to build there?Thanks for pointing out that it will fail on x86. As for the same value, sure, I shall change it to domid_t domid to record itsreserved owner.Only domid is enough for differentiate. And even when domain get rebooted, struct domain may be destroyed, but domid will stays The same. Major user cases for domain on static allocation are referring to the whole system are static, No runtime creation.One may want to have static memory yet doesn't care about the domid. So I am not in favor to restrict about the domid unless there is no other way.The user case you bring up here is that static memory pool? No. The use case I am talking about is an user who wants to give a specific memory region to the guest but doesn't care about which domid was allocated to the guest. I read this as the admin would have to specify the domain ID in the Device-Tree. Is that what you meant?Right now, the user cases are mostly restricted to static system. If we bring runtime allocation, `xl` here, it will add a lot more complexity. But if the system has static behavior, the domid is also static. If so, then I don't see why we should mandate that. I would mind less if by static you mean the domid will be allocated by Xen and then not changed accross reboot. On rebooting domain from static memory pool, it brings up more discussion, like do we intend to give the memory back to static memory pool when rebooting, if so, ram could be allocated from different place compared with the previous one. You should have all the information in the Device-Tree to re-assign the correct regions. So why would it be allocated from a different place? Cheers, -- Julien Grall
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |