Message ID | 1454508725-22786-2-git-send-email-huaitong.han@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
>>> On 03.02.16 at 15:12, <huaitong.han@intel.com> wrote: > This patch disables pkeys for guest in non-paging mode, However XEN always > uses > paging mode to emulate guest non-paging mode, To emulate this behavior, pkeys > needs to be manually disabled when guest switches to non-paging mode. > > Signed-off-by: Huaitong Han <huaitong.han@intel.com> > Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com> So I had been about to commit the first four patches of this series earlier today, when I noticed the missing VMX maintainers' ack here. You not Cc-ing them of course doesn't help progress. Jan
On Wed, 2016-02-03 at 08:19 -0700, Jan Beulich wrote: > > > > On 03.02.16 at 15:12, <huaitong.han@intel.com> wrote: > > This patch disables pkeys for guest in non-paging mode, However XEN > > always > > uses > > paging mode to emulate guest non-paging mode, To emulate this > > behavior, pkeys > > needs to be manually disabled when guest switches to non-paging > > mode. > > > > Signed-off-by: Huaitong Han <huaitong.han@intel.com> > > Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com> > > So I had been about to commit the first four patches of this > series earlier today, when I noticed the missing VMX maintainers' > ack here. You not Cc-ing them of course doesn't help progress. The first five version patches does Cc VMX maintainers, the patch is so simple that it does receive no comments. Because the CC-list is too long and it has reviewed-by Andrew, so...I should always Cc them. > > Jan >
>>> On 03.02.16 at 16:54, <huaitong.han@intel.com> wrote: > On Wed, 2016-02-03 at 08:19 -0700, Jan Beulich wrote: >> > > > On 03.02.16 at 15:12, <huaitong.han@intel.com> wrote: >> > This patch disables pkeys for guest in non-paging mode, However XEN >> > always >> > uses >> > paging mode to emulate guest non-paging mode, To emulate this >> > behavior, pkeys >> > needs to be manually disabled when guest switches to non-paging >> > mode. >> > >> > Signed-off-by: Huaitong Han <huaitong.han@intel.com> >> > Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com> >> >> So I had been about to commit the first four patches of this >> series earlier today, when I noticed the missing VMX maintainers' >> ack here. You not Cc-ing them of course doesn't help progress. > The first five version patches does Cc VMX maintainers, the patch is so > simple that it does receive no comments. Because the CC-list is too > long and it has reviewed-by Andrew, so...I should always Cc them. Part of your problem is that you Cc everyone on every patch. Instead you should vary the Cc lists depending on the code each individual patch touches. As to "so simple" - I don't think you can waive the need for an ack on that basis (at best it would be the committer to decide we can do without). Jan
> From: Huaitong Han > Sent: Wednesday, February 03, 2016 10:12 PM > > This patch disables pkeys for guest in non-paging mode, However XEN always uses > paging mode to emulate guest non-paging mode, To emulate this behavior, pkeys > needs to be manually disabled when guest switches to non-paging mode. > > Signed-off-by: Huaitong Han <huaitong.han@intel.com> > Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com> Acked-by: Kevin Tian <kevin.tian@intel.com>
diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c index 04dde83..a0d51cb 100644 --- a/xen/arch/x86/hvm/vmx/vmx.c +++ b/xen/arch/x86/hvm/vmx/vmx.c @@ -1368,12 +1368,13 @@ static void vmx_update_guest_cr(struct vcpu *v, unsigned int cr) if ( !hvm_paging_enabled(v) ) { /* - * SMEP/SMAP is disabled if CPU is in non-paging mode in hardware. - * However Xen always uses paging mode to emulate guest non-paging - * mode. To emulate this behavior, SMEP/SMAP needs to be manually - * disabled when guest VCPU is in non-paging mode. + * SMEP/SMAP/PKU is disabled if CPU is in non-paging mode in + * hardware. However Xen always uses paging mode to emulate guest + * non-paging mode. To emulate this behavior, SMEP/SMAP/PKU needs + * to be manually disabled when guest VCPU is in non-paging mode. */ - v->arch.hvm_vcpu.hw_cr[4] &= ~(X86_CR4_SMEP | X86_CR4_SMAP); + v->arch.hvm_vcpu.hw_cr[4] &= + ~(X86_CR4_SMEP | X86_CR4_SMAP | X86_CR4_PKE); } __vmwrite(GUEST_CR4, v->arch.hvm_vcpu.hw_cr[4]); break;