[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v2 04/18] x86/traps: move all PV emulation code to pv/emulate_ops.h



On Thu, May 11, 2017 at 11:18:39AM +0100, Andrew Cooper wrote:
> On 05/05/17 15:48, Wei Liu wrote:
> > Move the following emulation code from traps.c:
> >
> > 1. invalid op
> > 2. rdtsc
> > 3. privilege instructions
> > 4. gate operation
> > 5. pv cpuid emulation
> >
> > Export the emulate_* functions via pv/traps.h.
> >
> > No functional change.
> >
> > Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx>
> 
> As you are moving all emulation code, arch/x86/x86_64/gpr_switch.S
> should move along as well.
> 

Sure. An extra patch it is.

> > ---
> >  xen/arch/x86/pv/Makefile       |    1 +
> >  xen/arch/x86/pv/emulate_ops.c  | 1929 
> > ++++++++++++++++++++++++++++++++++++++++
> >  xen/arch/x86/traps.c           | 1880 
> > +--------------------------------------
> >  xen/include/asm-x86/pv/traps.h |   54 ++
> >  4 files changed, 1985 insertions(+), 1879 deletions(-)
> >  create mode 100644 xen/arch/x86/pv/emulate_ops.c
> >  create mode 100644 xen/include/asm-x86/pv/traps.h
> >
> > diff --git a/xen/arch/x86/pv/Makefile b/xen/arch/x86/pv/Makefile
> > index 489a9f59cb..ef3cecc463 100644
> > --- a/xen/arch/x86/pv/Makefile
> > +++ b/xen/arch/x86/pv/Makefile
> > @@ -3,3 +3,4 @@ obj-y += traps.o
> >  
> >  obj-bin-y += dom0_build.init.o
> >  obj-y += domain.o
> > +obj-y += emulate_ops.o
> > diff --git a/xen/arch/x86/pv/emulate_ops.c b/xen/arch/x86/pv/emulate_ops.c
> > new file mode 100644
> > index 0000000000..5f0965e05b
> > --- /dev/null
> > +++ b/xen/arch/x86/pv/emulate_ops.c
> 
> Why emulate_ops?  What about just plain emulate.c ?
> 
> >
> > <snip>
> >
> > +    return X86EMUL_UNHANDLEABLE;
> > +}
> > +
> > +#include "../x86_64/mmconfig.h"
> 
> Please can this be moved sensibly to the head of the file?
> 

I m fine with both suggestion.

> ~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.