From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kip Macy Subject: recent changes to writable page tables on -unstable and xend Date: Thu, 28 Apr 2005 16:12:46 -0700 Message-ID: Reply-To: Kip Macy Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Return-path: Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel List-Id: xen-devel@lists.xenproject.org Any thought on which of the recent writable pagetable changes could be causing an update to fail where it succeeded on xen 6 days ago? (XEN) DOM5: (file=3Dmm.c, line=3D2834) ptwr: Could not update pte at fe2ffc= 04 Timer ISR/1: Time went backwards: delta=3D-69992000 cpu_delta=3D1780008000 = shadow=3D 1510880000000 off=3D9000 processed=3D1510950000000 cpu_processed=3D15091000= 00000 0: 1510950000000 1: 1509100000000 In my current changeset this comes from: /* Finally, make the p.t. page writable by the guest OS. */ l1e_add_flags(&pte, _PAGE_RW); if ( unlikely(__copy_to_user(&linear_pg_table[addr>>PAGE_SHIFT], &pte, sizeof(pte))) ) { MEM_LOG("ptwr: Could not update pte at %p", (unsigned long *) &linear_pg_table[addr>>PAGE_SHIFT]); /* Toss the writable pagetable state and crash. */ I've added show_guest_stack to determine that I'm in the process of mapping a page read-write in order for it to be zeroed. This isn't an emergency as disabling writable pagetables allows me to get running again. On -testing xend always reaps a domain immediately after it has crashed. On -unstable up until today it would wait to reap the guest until I ran 'xm list'. Now it appears that I have to explicitly run xm destroy on a guest even after it has crashed.