From owner-svn-src-projects@FreeBSD.ORG Mon Nov 24 06:47:27 2008 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C69B6106568D; Mon, 24 Nov 2008 06:47:27 +0000 (UTC) (envelope-from kmacy@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id B0FDA8FC1E; Mon, 24 Nov 2008 06:47:27 +0000 (UTC) (envelope-from kmacy@FreeBSD.org) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id mAO6lRmE077101; Mon, 24 Nov 2008 06:47:27 GMT (envelope-from kmacy@svn.freebsd.org) Received: (from kmacy@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id mAO6lRI2077099; Mon, 24 Nov 2008 06:47:27 GMT (envelope-from kmacy@svn.freebsd.org) Message-Id: <200811240647.mAO6lRI2077099@svn.freebsd.org> From: Kip Macy Date: Mon, 24 Nov 2008 06:47:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r185245 - projects/release_6_3_xen/sys/i386/xen X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 Nov 2008 06:47:27 -0000 Author: kmacy Date: Mon Nov 24 06:47:27 2008 New Revision: 185245 URL: http://svn.freebsd.org/changeset/base/185245 Log: - ensure that all pages used as page tables are bzeroed and then mapped read-only - make sure that sysmaps->{CADDR1, CADDR2} are initialized Modified: projects/release_6_3_xen/sys/i386/xen/pmap.c projects/release_6_3_xen/sys/i386/xen/xen_machdep.c Modified: projects/release_6_3_xen/sys/i386/xen/pmap.c ============================================================================== --- projects/release_6_3_xen/sys/i386/xen/pmap.c Mon Nov 24 02:21:50 2008 (r185244) +++ projects/release_6_3_xen/sys/i386/xen/pmap.c Mon Nov 24 06:47:27 2008 (r185245) @@ -237,7 +237,7 @@ struct sysmaps { static struct sysmaps sysmaps_pcpu[MAXCPU]; pt_entry_t *CMAP1 = 0; static pt_entry_t *CMAP3; -caddr_t CADDR1 = 0, ptvmmap = 0; +caddr_t ptvmmap = 0; static caddr_t CADDR3; struct msgbuf *msgbufp = 0; @@ -438,14 +438,11 @@ pmap_bootstrap(firstaddr, loadaddr) mtx_init(&sysmaps->lock, "SYSMAPS", NULL, MTX_DEF); SYSMAP(caddr_t, sysmaps->CMAP1, sysmaps->CADDR1, 1) SYSMAP(caddr_t, sysmaps->CMAP2, sysmaps->CADDR2, 1) + PT_SET_MA(sysmaps->CADDR1, 0); + PT_SET_MA(sysmaps->CADDR2, 0); } - SYSMAP(caddr_t, CMAP1, CADDR1, 1) SYSMAP(caddr_t, CMAP3, CADDR3, 1) -#ifdef XEN - PT_SET_MA(CADDR3, 0); -#else - *CMAP3 = 0; -#endif + PT_SET_MA(CADDR3, 0); /* * Crashdump maps. */ @@ -470,12 +467,6 @@ pmap_bootstrap(firstaddr, loadaddr) mtx_init(&PMAP2mutex, "PMAP2", NULL, MTX_DEF); virtual_avail = va; -#ifdef XEN - PT_SET_MA(CADDR1, 0); -#else - *CMAP1 = 0; -#endif - #if !defined(XEN) #ifdef XBOX /* FIXME: This is gross, but needed for the XBOX. Since we are in such Modified: projects/release_6_3_xen/sys/i386/xen/xen_machdep.c ============================================================================== --- projects/release_6_3_xen/sys/i386/xen/xen_machdep.c Mon Nov 24 02:21:50 2008 (r185244) +++ projects/release_6_3_xen/sys/i386/xen/xen_machdep.c Mon Nov 24 06:47:27 2008 (r185245) @@ -1010,10 +1010,10 @@ initvalues(start_info_t *startinfo) * make sure that all the initial page table pages * have been zeroed */ - PT_SET_MA(cur_space_pt, + PT_SET_MA(cur_space, xpmap_ptom(VTOP(cur_space)) | PG_V | PG_RW); - bzero((char *)cur_space_pt, PAGE_SIZE); - PT_SET_MA(cur_space_pt, (vm_paddr_t)0); + bzero((char *)cur_space, PAGE_SIZE); + PT_SET_MA(cur_space, (vm_paddr_t)0); xen_pt_pin(xpmap_ptom(VTOP(cur_space))); xen_queue_pt_update((vm_paddr_t)(IdlePTDnewma[pdir] + curoffset*sizeof(vm_paddr_t)),