[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v2 for-4.14 1/3] xen/monitor: Control register values
On Tue, Jun 2, 2020 at 7:04 AM Jan Beulich <jbeulich@xxxxxxxx> wrote: > > On 02.06.2020 15:01, Roger Pau Monné wrote: > > On Tue, Jun 02, 2020 at 06:40:12AM -0600, Tamas K Lengyel wrote: > >> On Tue, Jun 2, 2020 at 5:08 AM Roger Pau Monné <roger.pau@xxxxxxxxxx> > >> wrote: > >>> On Wed, May 20, 2020 at 08:31:52PM -0600, Tamas K Lengyel wrote: > >>>> --- a/xen/arch/x86/hvm/hvm.c > >>>> +++ b/xen/arch/x86/hvm/hvm.c > >>>> @@ -2263,7 +2263,8 @@ int hvm_set_cr0(unsigned long value, bool > >>>> may_defer) > >>>> { > >>>> ASSERT(v->arch.vm_event); > >>>> > >>>> - if ( hvm_monitor_crX(CR0, value, old_value) ) > >>>> + if ( hvm_monitor_crX(CR0, value, old_value) && > >>>> + v->domain->arch.monitor.control_register_values ) > >>>> { > >>>> /* The actual write will occur in hvm_do_resume(), if > >>>> permitted. */ > >>>> v->arch.vm_event->write_data.do_write.cr0 = 1; > >>>> @@ -2362,7 +2363,8 @@ int hvm_set_cr3(unsigned long value, bool > >>>> may_defer) > >>>> { > >>>> ASSERT(v->arch.vm_event); > >>>> > >>>> - if ( hvm_monitor_crX(CR3, value, old) ) > >>>> + if ( hvm_monitor_crX(CR3, value, old) && > >>>> + v->domain->arch.monitor.control_register_values ) > >>>> { > >>>> /* The actual write will occur in hvm_do_resume(), if > >>>> permitted. */ > >>>> v->arch.vm_event->write_data.do_write.cr3 = 1; > >>>> @@ -2443,7 +2445,8 @@ int hvm_set_cr4(unsigned long value, bool > >>>> may_defer) > >>>> { > >>>> ASSERT(v->arch.vm_event); > >>>> > >>>> - if ( hvm_monitor_crX(CR4, value, old_cr) ) > >>>> + if ( hvm_monitor_crX(CR4, value, old_cr) && > >>>> + v->domain->arch.monitor.control_register_values ) > >>> > >>> I think you could return control_register_values in hvm_monitor_crX > >>> instead of having to add the check to each caller? > >> > >> We could, but this way the code is more consistent. > > > > OK, I guess it's a matter of taste. I would rather prefer those checks > > to be confined to hvm_monitor_crX because then the generic code is not > > polluted with monitor checks, but that's likely just my taste. > > +1 OK.
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |