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

[Xen-ia64-devel] RE: PATCH: merge iva



The reason that there are two groups of privileged registers,
one in privregs (directly accessible by the guest) and one
in arch_vcpu (not directly accesible) is that arch_vcpu is
for registers that are not performance-sensitive AND might
otherwise need to be validated before every use.  For
example, iva is used every time an interruption is reflected
to a guest, which happens many thousands of times/second.
If the guest could randomly (maliciously or accidentally)
change iva, Xen should re-validate it before using it (e.g.
to ensure that it is not in Xen address space, to ensure
it is not an I/O address etc.)  By allowing it to be changed
only via the privileged instruction (trapped/emulated), it
need only be validated when set (once at boot time for Linux).

I realize validation may not be fully implemented (and there may
be some registers in the wrong place), but that's the intent.

> -----Original Message-----
> From: Tristan Gingold [mailto:Tristan.Gingold@xxxxxxxx] 
> Sent: Tuesday, June 13, 2006 7:54 AM
> To: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx; Magenheimer, Dan (HP 
> Labs Fort Collins); Williamson, Alex (Linux Kernel Dev)
> Subject: PATCH: merge iva
> 
> Hi,
> 
> this patch removes the iva field of arch_vcpu and use the iva 
> field of 
> privregs instead.
> 
> Tested by booting dom0.
> 
> Tristan.
> 

_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel


 


Rackspace

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