From mboxrd@z Thu Jan 1 00:00:00 1970 From: Abhiroop Dabral Subject: HVMLOADER test fails on AMD if CR3 write intercepts are enabled (XEN 4.4 stable) Date: Sun, 27 Jul 2014 19:03:35 -0600 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============3914441148504094586==" Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org --===============3914441148504094586== Content-Type: multipart/alternative; boundary=089e0160d10011380104ff367e24 --089e0160d10011380104ff367e24 Content-Type: text/plain; charset=UTF-8 Hi, The HVMLOADER test fails on AMD SVM with Nested Paging enabled **Only** when CR3 control registers write intercepts are enabled. (By default the CR3 write intercepts are disabled on HAP domains) The first test "rep_io" fails with the following output: Bad value at 0x00500000: saw 98765432 expected 987654ff Bad value at 0x00500ffc: saw 00000000 expected ff000000 Bad value at 0x00600000: saw 000000ff expected 00000000 Bad value at 0x00600ffc: saw ff000000 expected 00000000 The second test execution results in the triple fault. The paging is setup as writing to va 0x600000 a value of 98765432 works fine. (Since the test can see the same value at physical address 0x500000). But after that the insb mov to address are not writing the memory correctly. The only change made in the code is to enable CR3 intercepts on a similar lines as done in VMX counterpart. Seen in: Xen 4.4 stable, AMD SVM with HAP Can any one suggest what can be the issue behind this. thanks. --089e0160d10011380104ff367e24 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hi,

The HVMLOADER test fails on AMD SVM= with Nested Paging enabled **Only** when CR3 control registers write inter= cepts are enabled.
(By default the CR3 write intercepts are disab= led on HAP domains)

The first test "rep_io" fails with the follow= ing output:

Bad value at 0x00500000: saw 98765432 expected 987654ff

Bad value at 0x00500ffc: saw 00000000 expected ff000000

Bad value at 0x00600000: saw 00000= 0ff expected 00000000

Bad value at 0x00600ffc: saw ff000000 expected 00000000

The second test execution results = in the triple fault.

The paging is setup as writing to va 0x600000 a value of 98765432 works fin= e. (Since the test can see the same value at physical address 0x500000).

But after that th= e insb mov to address are not writing the memory correctly.

The only change ma= de in the code is to enable CR3 intercepts on a similar lines as done in VM= X counterpart.

Seen in:

Xen 4.= 4 stable, AMD SVM with HAP

Can any one suggest what can be the issue behind this.

thanks.

--089e0160d10011380104ff367e24-- --===============3914441148504094586== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel --===============3914441148504094586==--