Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755667AbcJNSx6 (ORCPT ); Fri, 14 Oct 2016 14:53:58 -0400 Received: from aserp1040.oracle.com ([141.146.126.69]:25766 "EHLO aserp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750922AbcJNSxu (ORCPT ); Fri, 14 Oct 2016 14:53:50 -0400 Subject: Re: [Xen-devel] [PATCH 4/8] xen/pvh: Bootstrap PVH guest To: Andrew Cooper , david.vrabel@citrix.com, JGross@suse.com References: <1476468318-24422-1-git-send-email-boris.ostrovsky@oracle.com> <1476468318-24422-5-git-send-email-boris.ostrovsky@oracle.com> <81d91a68-baf6-06b1-3352-73bea05a2738@citrix.com> Cc: Matt Fleming , xen-devel@lists.xenproject.org, linux-kernel@vger.kernel.org, roger.pau@citrix.com From: Boris Ostrovsky Message-ID: <87039f16-ab7d-d091-a28a-2e2a1a5b81fe@oracle.com> Date: Fri, 14 Oct 2016 14:55:30 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 MIME-Version: 1.0 In-Reply-To: <81d91a68-baf6-06b1-3352-73bea05a2738@citrix.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Source-IP: aserv0022.oracle.com [141.146.126.234] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 648 Lines: 26 On 10/14/2016 02:38 PM, Andrew Cooper wrote: >> + jmp *%rax >> + >> +#else /* CONFIG_X86_64 */ >> + >> + call setup_pgtable_32 >> + >> + mov $_pa(initial_page_table), %eax >> + movl %eax, %cr3 >> + >> + movl %cr0, %eax >> + orl $(X86_CR0_PG | X86_CR0_PE), %eax >> + movl %eax, %cr0 >> + >> + ljmp $__BOOT_CS,$1f >> +1: >> + call xen_prepare_pvh > Why does xen_prepare_pvh need paging? I can't spot anything which > should need it, and it feels conceptually wrong. xen_prepare_pvh() deals with virtual addresses. How can we run without paging? (Also, startup_64, which is where we jump from here in 64-bit mode expects paging to be on). -boris