From mboxrd@z Thu Jan 1 00:00:00 1970 From: Razvan Cojocaru Subject: Re: RIP register value in p2m_mem_access_check() Date: Wed, 06 Mar 2013 15:25:30 +0200 Message-ID: <513743CA.805@gmail.com> References: <5137208F.7000901@gmail.com> <5137335602000078000C3815@nat28.tlf.novell.com> <513729E8.2060007@gmail.com> <5137512C02000078000C394B@nat28.tlf.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <5137512C02000078000C394B@nat28.tlf.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Jan Beulich Cc: "xen-devel@lists.xen.org" List-Id: xen-devel@lists.xenproject.org >> Thank you for your answer. Isn't it possible that emulation is indeed >> involved, since in p2m_mem_access_check() a page fault has occured, and >> RIP might point to _after_ the offending instruction? > > That wouldn't match your observation (the two values were > much farther apart), unless a call or jump got emulated. I've noticed that, and have indeed assumed that it was something like a call. > Further, after emulation, the user_regs.eip value should be the > canonical one. > > And finally, you said you took this right after a page fault > occurred, and - just like for any fault - the RIP the fault refers > to is the faulting instruction, not the one following it. Fair enough. Will debug the issue. Thanks, Razvan Cojocaru