All of lore.kernel.org
 help / color / mirror / Atom feed
From: Razvan Cojocaru <rzvncj@gmail.com>
To: "xen-devel@lists.xen.org" <xen-devel@lists.xen.org>
Subject: RIP register value in p2m_mem_access_check()
Date: Wed, 06 Mar 2013 12:55:11 +0200	[thread overview]
Message-ID: <5137208F.7000901@gmail.com> (raw)

Hello again,

simple test case: added the following statement in 
xen/arch/x86/mm/p2m.c, in function p2m_mem_access_check():

printk("v->arch.user_regs.eip: 0x%016lx, __vmread(GUEST_RIP): 
0x%016lx\n", v->arch.user_regs.eip, __vmread(GUEST_RIP));

(where v is current) which dutifully prints out (at the first page fault):

(XEN) v->arch.user_regs.eip: 0xfffff80002c13a7b, __vmread(GUEST_RIP): 
0xfffff8000269ec0a

They're not equal, and furthermore __vmread(GUEST_RIP) is the correct 
one (the same value returned by xc_domain_hvm_getcontext_partial()).

The questions:

1. What's the Xen-friendliest way to retrieve the _correct_ values for 
RIP and all the other registers usually put in a struct hvm_hw_cpu 
instance, in p2m_mem_access_check()?

2. What's the explanation for why things run as they do now?


Thanks,
Razvan Cojocaru

             reply	other threads:[~2013-03-06 10:55 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-06 10:55 Razvan Cojocaru [this message]
2013-03-06 11:15 ` RIP register value in p2m_mem_access_check() Jan Beulich
2013-03-06 11:35   ` Razvan Cojocaru
2013-03-06 13:22     ` Jan Beulich
2013-03-06 13:25       ` Razvan Cojocaru
2013-03-06 13:49       ` Razvan Cojocaru
2013-03-06 14:26         ` Razvan Cojocaru
2013-03-06 14:33         ` Jan Beulich
2013-03-06 14:47           ` Razvan Cojocaru
2013-03-07 16:49           ` Tim Deegan
2013-03-07 17:04             ` Jan Beulich
2013-03-07 17:31             ` Razvan Cojocaru

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5137208F.7000901@gmail.com \
    --to=rzvncj@gmail.com \
    --cc=xen-devel@lists.xen.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.