Re: [Xen-devel] [PATCH v2 07/11] xen/hvmlite: Initialize context for secondary VCPUs

From: Boris Ostrovsky
Date: Tue Feb 02 2016 - 11:58:51 EST


On 02/02/2016 11:21 AM, David Vrabel wrote:
This needs some more description in the commit message.

--- a/arch/x86/xen/smp.c
+++ b/arch/x86/xen/smp.c
[...]
+ hctxt->cpu_regs.x86_32.cs_base = 0;
+ hctxt->cpu_regs.x86_32.cs_limit = ~0u;
+ hctxt->cpu_regs.x86_32.cs_ar = 0xc9b;
+ hctxt->cpu_regs.x86_32.ds_base = 0;
+ hctxt->cpu_regs.x86_32.ds_limit = ~0u;
+ hctxt->cpu_regs.x86_32.ds_ar = 0xc93;
+ hctxt->cpu_regs.x86_32.es_base = 0;
+ hctxt->cpu_regs.x86_32.es_limit = ~0u;
+ hctxt->cpu_regs.x86_32.es_ar = 0xc93;
+ hctxt->cpu_regs.x86_32.ss_base = 0;
+ hctxt->cpu_regs.x86_32.ss_limit = ~0u;
+ hctxt->cpu_regs.x86_32.ss_ar = 0xc93;
+ hctxt->cpu_regs.x86_32.tr_base = 0;
+ hctxt->cpu_regs.x86_32.tr_limit = 0xff;
+ hctxt->cpu_regs.x86_32.tr_ar = 0x8b;
Lots of hard-coded values here. Should this be #defined somewhere?

We also don't need to set bases to zero since hctxt is kzalloc'd. I'll remove that and add a comment.

As for macros --- I couldn't find the bits defined symbolically anywhere and since this is the only place this is used the macros would be local here.

-boris