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

Re: About support for memory event on AMD CPUs


  • To: Jan Beulich <jbeulich@xxxxxxxx>
  • From: Untitled YAN <yanluyi2010@xxxxxxxxxxx>
  • Date: Wed, 24 Nov 2021 09:44:45 +0000
  • Accept-language: en-US, zh-CN
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=P6ZzSX0jwpua5Q5qnlesaYgkWmfuOxdrhjkJ6biGcp4=; b=B8SeYrykvuOWJ+uWaVDPAb/xqmI/CC04IXJv6J452ll2QLQYHiv0eBtsdXlC6XNg3UyT1hS6HoEWr/+ZJWH9T31gf/fipHJ9r1xRA7O/ByQTSc1ozyt0mkedn7ateUWuTmvqhZdqiWKK+269VizS9gBUazQujsOWaqapRz0swea4ZDVqTx6rwlV4rHktGxn3uvK5tSg+GuPSfsY3xaKE+jWQGVEWVC0SZ2xnxJlVA32CDBnHRmNL7sGtQLn0XKS+aJNO03XneVoWAU65cfZ9l2OFVslro4wHwNV1rb7SlC0A0t3412tu3nhv9Im/nXywVQ8/hJERq/IsDKpCw8+pFA==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KDTTQGsTQ/bdVKj3lGg61nvP6+9oV6V+5EVMYc3jKXi3G4z2ijAwk3/BA9wMMyDzfjTFjx1RctKLNNbj5aIwDNCy/Mgqhdp9JCTWso/fMuDg9uBrrWQ0embmoAMz0K1GHHoixYh8D/ALSFGmEn+nLpZJQwTrOpnrG69Yl77tS8AaxGWXXxYYHXtUj+Kvj3tFtZKbn/1RnXrVpbRbARp4x/nbWm5mQMXF3LjInuiJb53QcO+RN4yyQbDRtjcFVwbs+JrP0qCW5TaznH7Rt94AD8ihMYb5Cjpi9VSc2kOqbzTSMdBiajOERGrhmIzH8bjyCnafZUPoU+BFWxyOiPz1Kg==
  • Cc: "tamas@xxxxxxxxxxxxx" <tamas@xxxxxxxxxxxxx>, "aisaila@xxxxxxxxxxxxxxx" <aisaila@xxxxxxxxxxxxxxx>, "ppircalabu@xxxxxxxxxxxxxxx" <ppircalabu@xxxxxxxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Wed, 24 Nov 2021 09:46:05 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Suggested_attachment_session_id: 5644686d-2161-023e-26ab-b8a078e3416d
  • Thread-index: AQHX4Ivyto+Oc0SSQ0aRZryw/8JAG6wST82AgAAO3bCAAAtgAIAAATxX
  • Thread-topic: About support for memory event on AMD CPUs

Original email:

From: Jan Beulich <jbeulich@xxxxxxxx>
Sent: Wednesday, November 24, 2021 17:27
To: Untitled YAN <yanluyi2010@xxxxxxxxxxx>
Cc: tamas@xxxxxxxxxxxxx <tamas@xxxxxxxxxxxxx>; aisaila@xxxxxxxxxxxxxxx 
<aisaila@xxxxxxxxxxxxxxx>; ppircalabu@xxxxxxxxxxxxxxx 
<ppircalabu@xxxxxxxxxxxxxxx>; xen-devel@xxxxxxxxxxxxxxxxxxxx 
<xen-devel@xxxxxxxxxxxxxxxxxxxx>
Subject: Re: About support for memory event on AMD CPUs 
 
> On 24.11.2021 10:23, Untitled YAN wrote:
> > Original email:
> > 
> > From: Jan Beulich <jbeulich@xxxxxxxx>
> > Sent: Wednesday, November 24, 2021 15:54
> > To: YAN Untitled <yanluyi2010@xxxxxxxxxxx>
> > Cc: tamas@xxxxxxxxxxxxx <tamas@xxxxxxxxxxxxx>; aisaila@xxxxxxxxxxxxxxx 
> > <aisaila@xxxxxxxxxxxxxxx>; ppircalabu@xxxxxxxxxxxxxxx 
> > <ppircalabu@xxxxxxxxxxxxxxx>; xen-devel@xxxxxxxxxxxxxxxxxxxx 
> > <xen-devel@lists.x enproject.>org>
> > Subject: Re: About support for memory event on AMD CPUs 
> >  
> >> On 23.11.2021 18:14, YAN Untitled wrote:
> >>> Dear developers,
> >>>
> >>> Short version: is memory event supported on AMD CPUs or is it going to be
> >>> supported?
> >>>
> >>> Long version:
> >>>
> >>> Environment: LibVMI 0.15.0 + Xen 4.14.3 on an **AMD CPU** (5950x), 64-bit
> >>> Debian 11 Dom0.
> >>>
> >>> What I am trying to accomplish: register a **memory event** handler, so 
> >>> that
> >>> I can capture all memory accesses within a specific range issued by any 
> >>> thread,
> >>> or all memory accesses within any range issued by a specific thread.
> >>>
> >>> What I got instead: an error from LibVMI saying
> >>> "xc_hvm_set_mem_access failed with code: -1".
> >>>
> >>> Some investigation: by inspecting the source code of LibVMI, I find the 
> >>> direct
> >>> cause is one of the libxc functions, 1) xc_set_mem_access or
> >>> 2) xc_altp2m_set_mem_access, returned error code -1.
> >>>
> >>> After some searching, I found someone else having a similar problem [1]. 
> >>> I also
> >>> noted LibVMI says:
> >>>
> >>>> Currently only the Xen Hypervisor provides these features,
> >>>> and some of these are specifically only available on Intel CPUs
> >>>
> >>> However, I can't find the exact confirmation for the availability of 
> >>> memory
> >>> event on AMD CPUs from https://wiki.xenproject.org.
> >>
> >> Aiui underlying what you want is altp2m, which presently depends (in
> >> the hypervisor) on EPT being available (and in use for the guest in
> >> question).
> >>
> >> Jan
> > 
> > Dear Jan,
> > 
> > Thanks for your reply. I really appreciate the information. After some
> > searching with the keyword "EPT" I found [1]. So I checked on dom0 with
> > "xl dmesg | grep HAP", which says:
> > 
> >> (XEN) HVM: Hardware Assisted Paging (HAP) detected
> >> (XEN) HVM: HAP page sizes: 4kB, 2MB, 1GB
> > 
> > And the guest is an HVM guest running Debian 10 with kernel v4.16 built from
> > source. Most of the configuration of the guest is generated by virt-manager.
> > The "xl list -l" shows that there is no explicit configuration for EPT, RVI 
> > or
> > HAP, but it does say the "type" is "hvm".
> 
> HAP is the term covering EPT on the Intel side and NPT for AMD.
> 
> Jan

Dear Jan,

Yeah that's why I wanted to confirm if the HAP is enabled for the guest - it
turns out it is enabled but for some reason, xc_altp2m_set_mem_access failed.
I am trying to replicate my setup on an Intel machine to find out if it's a
configuration problem. Still don't know if it's implemented for AMD but thanks
for your help and information.


Untitled YAN



 


Rackspace

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