[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] stubdom: foreignmemory: Fix build after 0dbb4be739c5


  • To: Julien Grall <julien@xxxxxxx>
  • From: Jan Beulich <jbeulich@xxxxxxxx>
  • Date: Tue, 13 Jul 2021 17:52:07 +0200
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=T4kWRIDVcbNzl4v12lZZtVM45qrpJCA3fYxM+m53KQE=; b=NguPme7hxceHvAMu9QouzDnAzNDBikdbHS89v8RGVsTeB8YjSMLjaA4JNyda24Ul6LJxb5izuB1zdSrSxX8PMSG8osupsCo1THuKBV92wKuF/JCvEcQLx+PvITsyaguhN9DVi6qDy4RiwtB2Y2vxocqlYo/jJGs0puwsWTBNApjVAccJUO5beybqEr/zPd+EJ/ybbVWW8MsB3cz0kqDc8u3ZitY1jFqJatAwFQebzscTg6BYzmiCoH7fPKph03+MsD1YCkIIgICh5irRMWSlFjOUvqnXyTe7+oVm2V9+1XUSFpGbtlUsDtIKz973CX2NwDLwUBExcPmttNJsm83QqQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iERb2B4OeH35MQ8imk++0xJuVD4dOhQS//biFIIBJNhQ5Hw6vV2IzyY1vYBApooDRIbbOv638DDA2mraY6ndy2PGuvbYoBRgcVkC5YHmPZm2bHLzCXXFbnb+W1uGVgMvUgSrYkbejNH5FtW0ojfmrTy5czBuaHUisop+B/yb1XNaInNgB0SD92OUsR6U1j+K/NRjIxPAkBHHLvPuBSCUcUagWAFuAcytxbcvE/+mvm5k+vUTXZANJqVrCgqSVyGDjgTjarl+RjliwjBkAilADwU7qAVym2OlwdHVdRMcRlM14QODZhA+ZPIgJZdU4YucnVUxiL+NFvxXwxuT9jI6cg==
  • Authentication-results: suse.com; dkim=none (message not signed) header.d=none;suse.com; dmarc=none action=none header.from=suse.com;
  • Cc: Julien Grall <jgrall@xxxxxxxxxx>, Ian Jackson <iwj@xxxxxxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Costin Lupu <costin.lupu@xxxxxxxxx>, Juergen Gross <jgross@xxxxxxxx>
  • Delivery-date: Tue, 13 Jul 2021 15:52:22 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 13.07.2021 16:33, Julien Grall wrote:
> On 13/07/2021 15:23, Jan Beulich wrote:
>> On 13.07.2021 16:19, Julien Grall wrote:
>>> On 13/07/2021 15:14, Jan Beulich wrote:
>>>>> And I don't think it should be named XC_PAGE_*, but rather XEN_PAGE_*.
>>>>
>>>> Even that doesn't seem right to me, at least in principle. There shouldn't
>>>> be a build time setting when it may vary at runtime. IOW on Arm I think a
>>>> runtime query to the hypervisor would be needed instead.
>>>
>>> Yes, we want to be able to use the same userspace/OS without rebuilding
>>> to a specific hypervisor page size.
>>>
>>>> And thinking
>>>> even more generally, perhaps there could also be mixed (base) page sizes
>>>> in use at run time, so it may need to be a bit mask which gets returned.
>>>
>>> I am not sure to understand this. Are you saying the hypervisor may use
>>> at the same time different page size?
>>
>> I think so, yes. And I further think the hypervisor could even allow its
>> guests to do so.
> 
> This is already the case on Arm. We need to differentiate between the 
> page size used by the guest and the one used by Xen for the stage-2 page 
> table (what you call EPT on x86).
> 
> In this case, we are talking about the page size used by the hypervisor 
> to configure the stage-2 page table
> 
>> There would be a distinction between the granularity at
>> which RAM gets allocated and the granularity at which page mappings (RAM
>> or other) can be established. Which yields an environment which I'd say
>> has no clear "system page size".
> 
> I don't quite understand why you would allocate and etablish the memory 
> with a different page size in the hypervisor. Can you give an example?

Pages may get allocated in 16k chunks, but there may be ways to map
4k MMIO regions, 4k grants, etc. Due to the 16k allocation granularity
you'd e.g. still balloon pages in and out at 16k granularity.

Jan




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.