>>> On 15.03.18 at 21:15, wrote:
> On 09/03/18 16:54, Jan Beulich wrote:
> On 09.03.18 at 14:18, wrote:
>>> --- a/xen/arch/x86/domain.c
>>> +++ b/xen/arch/x86/domain.c
>>> @@ -430,20 +430,37 @@ int arch_domain_create(struct domain *d,
On 09/03/18 16:54, Jan Beulich wrote:
On 09.03.18 at 14:18, wrote:
>> --- a/xen/arch/x86/domain.c
>> +++ b/xen/arch/x86/domain.c
>> @@ -430,20 +430,37 @@ int arch_domain_create(struct domain *d, unsigned int
>> domcr_flags,
>> struct
On Fri, Mar 09, 2018 at 01:18:40PM +, Andrew Cooper wrote:
> The only relevent initialisation for the idle domain is the context switch and
^ relevant
> poisoned pointers. Collect these bits together early in the function and exit
> when complete (although as a consequence, the
>>> On 09.03.18 at 14:18, wrote:
> --- a/xen/arch/x86/domain.c
> +++ b/xen/arch/x86/domain.c
> @@ -430,20 +430,37 @@ int arch_domain_create(struct domain *d, unsigned int
> domcr_flags,
> struct xen_arch_domainconfig *config)
> {
> bool
On Fri, Mar 09, 2018 at 01:18:40PM +, Andrew Cooper wrote:
> The only relevent initialisation for the idle domain is the context switch and
> poisoned pointers. Collect these bits together early in the function and exit
> when complete (although as a consequence, the e820 and vtsc lock
>
The only relevent initialisation for the idle domain is the context switch and
poisoned pointers. Collect these bits together early in the function and exit
when complete (although as a consequence, the e820 and vtsc lock
initialisation are moved forwards). This allows us to remove subsequent