Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752083AbdI0O4Z (ORCPT ); Wed, 27 Sep 2017 10:56:25 -0400 Received: from mx2.suse.de ([195.135.220.15]:52411 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751828AbdI0O4Y (ORCPT ); Wed, 27 Sep 2017 10:56:24 -0400 Subject: Re: [PATCH v2] Call xen_cleanhighmap() with 4MB aligned for page tables mapping To: Boris Ostrovsky , Zhenzhong Duan , mingo@redhat.com, tglx@linutronix.de, hpa@zytor.com Cc: x86@kernel.org, xen-devel@lists.xenproject.org, srinivas.eeda@oracle.com, joe.jin@oracle.com, linux-kernel@vger.kernel.org References: <85bd42d5-b0d2-40f5-81a9-14cb51ec4503@default> <44ebc914-d1a3-06ac-9ec5-b866d5f04e0a@oracle.com> <9faf8d7b-227f-2ecd-26e6-44ae4270d469@suse.com> From: Juergen Gross Message-ID: <30c5a1f0-4425-6c8b-5017-a78710c0bd72@suse.com> Date: Wed, 27 Sep 2017 16:56:22 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1386 Lines: 35 On 27/09/17 16:48, Boris Ostrovsky wrote: > On 09/27/2017 10:33 AM, Juergen Gross wrote: >> On 27/09/17 15:38, Boris Ostrovsky wrote: >>> On 09/27/2017 05:43 AM, Juergen Gross wrote: >>>> On 27/09/17 11:41, Zhenzhong Duan wrote: >>>>> When bootup a PVM guest with large memory(Ex.240GB), XEN provided initial >>>>> mapping overlaps with kernel module virtual space. When mapping in this space >>>>> is cleared by xen_cleanhighmap(), in certain case there could be an 2MB mapping >>>>> left. This is due to XEN initialize 4MB aligned mapping but xen_cleanhighmap() >>>>> finish at 2MB boundary. >>> Does this mapping need to be 4MB-aligned? >> I guess you are questioning the alignment of addr to be 4MB? >> In this case you are right: the end of the mapping is 4MB aligned, as >> correctly stated in the comment added. > > Yes, and my question is why does it need to be aligned on 4MB. Doesn't > 2MB alignment suffice? I believe this has historical reasons. :-) For this patch the answer doesn't matter, as Xen does it this way and the kernel has to cope with the situation. This interface is specified in include/xen/interface/xen.h in the comment section just before struct start_info: /* * Start-of-day memory layout * * 1. The domain is started within contiguous virtual-memory region. * 2. The contiguous region begins and ends on an aligned 4MB boundary. ... Juergen