From mboxrd@z Thu Jan 1 00:00:00 1970 From: HANNAS YAYA Issa Subject: about cr3 register Date: Wed, 01 Apr 2015 16:37:04 +0200 Message-ID: <84e75c11446044541a3643b725743b26@inp-toulouse.fr> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit 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 Hi I am working on memory management in xen. I encounter a problem that I hope you can help me to solve it. I modified the struct mmu_update in xen and linux source code. I add two fields cr3 and addr which respectively contains the current cr3 value and the current address of the process associated with the pte to be updated. the struct mmu_update is sent to the hyervisor via hypercall HYPERVISOR_do_mmu_update. In the handler of this hypercall (I mean do_mmu_update) when I read the value of cr3 via the method read_cr3 it is different from the value I stored before in the struct mmu_update. I wonder why?