From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: Re: [PATCH v3 07/32] xen/x86: fix arch_set_info_guest for HVM guests Date: Mon, 13 Jul 2015 15:01:53 +0100 Message-ID: <55A3E0F102000078000903B5@mail.emea.novell.com> References: <1435923310-9019-1-git-send-email-roger.pau@citrix.com> <1435923310-9019-8-git-send-email-roger.pau@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1ZEeIw-0007JV-NM for xen-devel@lists.xenproject.org; Mon, 13 Jul 2015 14:01:58 +0000 In-Reply-To: <1435923310-9019-8-git-send-email-roger.pau@citrix.com> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Roger Pau Monne Cc: Andrew Cooper , xen-devel@lists.xenproject.org List-Id: xen-devel@lists.xenproject.org >>> On 03.07.15 at 13:34, wrote: > --- a/xen/arch/x86/domain.c > +++ b/xen/arch/x86/domain.c > @@ -795,6 +795,15 @@ int arch_set_info_guest( > c.nat->fs_base || c.nat->gs_base_user)) ) > return -EINVAL; > } > + else if ( is_hvm_domain(d) ) > + { > + if ( c(ctrlreg[0]) || c(ctrlreg[1]) || c(ctrlreg[2]) || > + c(ctrlreg[3]) || c(ctrlreg[4]) || c(ctrlreg[5]) || > + c(ctrlreg[6]) || c(ctrlreg[7]) || c(ldt_base) || > + c(ldt_ents) || c(kernel_ss) || c(kernel_sp) || > + c(gdt_ents) ) > + return -EINVAL; > + } In addition to what Andrew said - is the use of c() here really correct considering compat = is_pv_32bit_domain(d); #define c(fld) (compat ? (c.cmp->fld) : (c.nat->fld)) near the beginning of the function? Jan