* AMD NPT support for Xen memory events
@ 2014-07-16 4:38 Abhiroop Dabral
2014-07-16 9:07 ` Andrew Cooper
0 siblings, 1 reply; 3+ messages in thread
From: Abhiroop Dabral @ 2014-07-16 4:38 UTC (permalink / raw)
To: xen-devel
[-- Attachment #1.1: Type: text/plain, Size: 652 bytes --]
Hi,
I was looking at the code for the memory events for guest domain in
"xen/arch/xen/mm/mem_event.c". In the function "mem_event_domctl()" for the
case "XEN_DOMCTL_MEM_EVENT_OP_ACCESS", there is a comment that "Currently
only EPT is supported" and then a check is made for the vmx presence and
control returns if it is not Intel VT with an error.
I am trying to make the memory events working on AMD SVM with NPT support.
My question is that is there a specific reason why AMD NPT is supported
there?
The things I should keep in mind/work on to support the memory events on
AMD NPT.
(Working on Xen 4.4 on HVM guests (windows XP 32 bit -PAE)
thanks
[-- Attachment #1.2: Type: text/html, Size: 3841 bytes --]
[-- Attachment #2: Type: text/plain, Size: 126 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: AMD NPT support for Xen memory events
2014-07-16 4:38 AMD NPT support for Xen memory events Abhiroop Dabral
@ 2014-07-16 9:07 ` Andrew Cooper
0 siblings, 0 replies; 3+ messages in thread
From: Andrew Cooper @ 2014-07-16 9:07 UTC (permalink / raw)
To: Abhiroop Dabral, xen-devel
[-- Attachment #1.1: Type: text/plain, Size: 1232 bytes --]
On 16/07/14 05:38, Abhiroop Dabral wrote:
> Hi,
>
> I was looking at the code for the memory events for guest domain in
> "xen/arch/xen/mm/mem_event.c". In the function "mem_event_domctl()"
> for the case "XEN_DOMCTL_MEM_EVENT_OP_ACCESS", there is a comment that
> "Currently only EPT is supported" and then a check is made for the vmx
> presence and control returns if it is not Intel VT with an error.
> I am trying to make the memory events working on AMD SVM with NPT
> support.
> My question is that is there a specific reason why AMD NPT is
> supported there?
> The things I should keep in mind/work on to support the memory events
> on AMD NPT.
> (Working on Xen 4.4 on HVM guests (windows XP 32 bit -PAE)
I am not aware of any technical reasons why AMD support could not be added.
I don't know why there is still a VMX check. c/s d928515d76 took out an
EPT check and that appears to have been fine.
Try it and see - it could be as easy as just deleting the vmx check.
It would certainly be nice to try and get some parity back in our
feature sets; a number of new features arrive as Intel-only because they
were developed on Intel systems, rather than a specific reason why the
feature wouldn't work on AMD.
~Andrew
[-- Attachment #1.2: Type: text/html, Size: 4735 bytes --]
[-- Attachment #2: Type: text/plain, Size: 126 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: AMD NPT support for Xen memory events
@ 2014-07-16 18:11 Aravindh Puthiyaparambil (aravindp)
0 siblings, 0 replies; 3+ messages in thread
From: Aravindh Puthiyaparambil (aravindp) @ 2014-07-16 18:11 UTC (permalink / raw)
To: Andrew Cooper; +Cc: Abhiroop Dabral, xen-devel@lists.xen.org
[-- Attachment #1.1: Type: text/plain, Size: 1865 bytes --]
I was looking at the code for the memory events for guest domain in "xen/arch/xen/mm/mem_event.c". In the function "mem_event_domctl()" for the case "XEN_DOMCTL_MEM_EVENT_OP_ACCESS", there is a comment that "Currently only EPT is supported" and then a check is made for the vmx presence and control returns if it is not Intel VT with an error.
I am trying to make the memory events working on AMD SVM with NPT support.
My question is that is there a specific reason why AMD NPT is supported there?
The things I should keep in mind/work on to support the memory events on AMD NPT.
(Working on Xen 4.4 on HVM guests (windows XP 32 bit -PAE)
I am not aware of any technical reasons why AMD support could not be added.
I don't know why there is still a VMX check. c/s d928515d76 took out an EPT check and that appears to have been fine.
Try it and see - it could be as easy as just deleting the vmx check.
Deleting the vmx check might not be sufficient w.r.t mem_access. The AMD NPT structure differs from the Intel EPT structures. NPT layout is more like a regular page-table. Whereas EPT has explicit R, W, X bits allowing for access permissions like execute only i.e. a page that the guest can only execute but not read. A guest read will cause a mem_event to be fired to the listener. I am not sure if this is possible easily with AMD but definitely a sub-set of the permissions is definitely possible. This is what I did in my RFC series for enabling mem_access for PV domains.
It would certainly be nice to try and get some parity back in our feature sets; a number of new features arrive as Intel-only because they were developed on Intel systems, rather than a specific reason why the feature wouldn't work on AMD.
I second this and it would certainly be good to have feature parity across AMD and Intel processors.
Thanks,
Aravindh
[-- Attachment #1.2: Type: text/html, Size: 5083 bytes --]
[-- Attachment #2: Type: text/plain, Size: 126 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2014-07-16 18:11 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-16 4:38 AMD NPT support for Xen memory events Abhiroop Dabral
2014-07-16 9:07 ` Andrew Cooper
-- strict thread matches above, loose matches on Subject: below --
2014-07-16 18:11 Aravindh Puthiyaparambil (aravindp)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).