From mboxrd@z Thu Jan 1 00:00:00 1970 From: Scott Parish Subject: understanding __linear_l2_table and friends Date: Tue, 19 Apr 2005 23:03:51 +0000 Message-ID: <20050419230351.GA30256@us.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii 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@lists.xensource.com List-Id: xen-devel@lists.xenproject.org I was trying to understand the states behind domain creation, but i'm having troubles getting past this. Would someone mind saying a few words about what these are and (if still needed) why these calculations work for that? xen/include/asm-x86/page.h: #define linear_l1_table \ ((l1_pgentry_t *)(LINEAR_PT_VIRT_START)) #define __linear_l2_table \ ((l2_pgentry_t *)(LINEAR_PT_VIRT_START + \ (LINEAR_PT_VIRT_START >> (PAGETABLE_ORDER<<0)))) #define __linear_l3_table \ ((l3_pgentry_t *)(LINEAR_PT_VIRT_START + \ (LINEAR_PT_VIRT_START >> (PAGETABLE_ORDER<<0)) + \ (LINEAR_PT_VIRT_START >> (PAGETABLE_ORDER<<1)))) #define __linear_l4_table \ ((l4_pgentry_t *)(LINEAR_PT_VIRT_START + \ (LINEAR_PT_VIRT_START >> (PAGETABLE_ORDER<<0)) + \ (LINEAR_PT_VIRT_START >> (PAGETABLE_ORDER<<1)) + \ (LINEAR_PT_VIRT_START >> (PAGETABLE_ORDER<<2)))) Thanks! sRp -- Scott Parish