|   | 
      | 
  
  
      | 
      | 
  
 
     | 
    | 
  
  
     | 
    | 
  
  
    |   | 
      | 
  
  
    | 
         
xen-devel
RE: [Xen-devel] Re: X86_emulate to be moved into qemu...
 
> -----Original Message-----
> From: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx 
> [mailto:xen-devel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of 
> Keir Fraser
> Sent: 17 May 2006 21:15
> To: Petersson, Mats
> Cc: Xen devel list
> Subject: [Xen-devel] Re: X86_emulate to be moved into qemu...
> 
> 
> On 17 May 2006, at 21:17, Petersson, Mats wrote:
> 
> > When using x86_emulate.c inside qemu, we'd need to feed in 
> the virtual 
> > address, but we also need to translate to (guest-)physical address. 
> > Any hints or tricks for this, or do I need to read the 
> page-table and 
> > get the info that way [and CAN I even do that]? [And I'm 
> sorry if this 
> > shows my complete and utter ignorance of how Xen and QEMU operates 
> > together, but I'm afraid that I'm still learning these things].
> 
> Yes, you could walk pagetables. But equally you can pass in 
> your translated CR2 value --- i.e., pass in a pseudophysical 
> address. That address will then be passed to the special 
> read/write hook functions, so you avoid needing to do the 
> translation inside those.
Hmm, yes. But we also want CS:rIP translated, which isn't too bad. And
for movs we have both the source and destination to take into account.
ES:rDI isn't bad, but xS:rSI isn't as trivial, since we'd have to scan
for segment overrides in that case - and now we're starting to look like
a bunch of decoding code in two places again... :-( [Admittedly not
quite as much] 
> 
> > Another interesting question is what we do with the dozen 
> or so "new"
> > include-files that are needed to make x86_emulate.c compile 
> inside the 
> > tools/ioemu directory. At the moment, I've just created directories 
> > inside tools/libxc and linked the necessary header files into those 
> > directories... Is that the proper solution?
> 
> What header files are those? It builds in tools/test/ without 
> so many header files.
'hg status' says:
M ioemu/target-i386-dm/Makefile
M ioemu/target-i386-dm/helper2.c
? ioemu/target-i386-dm/x86_emulate.c
? libxc/asm-x86/bitops.h
? libxc/asm-x86/cache.h
? libxc/asm-x86/config.h
? libxc/asm-x86/desc.h
? libxc/asm-x86/mm.h
? libxc/asm-x86/page.h
? libxc/asm-x86/processor.h
? libxc/asm-x86/regs.h
? libxc/asm-x86/rwlock.h
? libxc/asm-x86/spinlock.h
? libxc/asm-x86/string.h
? libxc/asm-x86/system.h
? libxc/asm-x86/types.h
? libxc/asm-x86/uaccess.h
? libxc/asm-x86/x86_emulate.h
? libxc/public/arch-x86_32.h
? libxc/public/arch-x86_64.h
? libxc/public/xen-compat.h
? libxc/public/xen.h
--
Mats
> 
>   -- Keir
> 
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel
> 
> 
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
 
 |   
 
| <Prev in Thread] | 
Current Thread | 
[Next in Thread>
 |  
- RE: [Xen-devel] Re: X86_emulate to be moved into qemu...,
Petersson, Mats <=
- RE: [Xen-devel] Re: X86_emulate to be moved into qemu..., Petersson, Mats
 
- RE: [Xen-devel] Re: X86_emulate to be moved into qemu..., Petersson, Mats
 
- RE: [Xen-devel] Re: X86_emulate to be moved into qemu..., Petersson, Mats
 
- RE: [Xen-devel] Re: X86_emulate to be moved into qemu..., Petersson, Mats
 
- RE: [Xen-devel] Re: X86_emulate to be moved into qemu..., Petersson, Mats
 
  
 
 
 |  
  
 | 
    | 
  
  
    |   | 
    |