Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753100AbcLHSc0 (ORCPT ); Thu, 8 Dec 2016 13:32:26 -0500 Received: from mail-io0-f180.google.com ([209.85.223.180]:33194 "EHLO mail-io0-f180.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752399AbcLHScR (ORCPT ); Thu, 8 Dec 2016 13:32:17 -0500 MIME-Version: 1.0 In-Reply-To: <1481183765-4166-1-git-send-email-bhe@redhat.com> References: <1481183765-4166-1-git-send-email-bhe@redhat.com> From: Kees Cook Date: Thu, 8 Dec 2016 10:31:47 -0800 X-Google-Sender-Auth: XDagZKIakfB1OfHH8aAEJTe92d0 Message-ID: Subject: Re: [PATCH 0/2] Determine kernel text mapping size at runtime for x86_64 To: Baoquan He Cc: LKML , Thomas Gleixner , "H. Peter Anvin" , Ingo Molnar , "x86@kernel.org" , Yinghai Lu , Borislav Petkov , Thomas Garnier , Alexander Kuleshov , Andy Lutomirski , Dave Anderson , Dave Young , Xunlei Pang Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1827 Lines: 51 On Wed, Dec 7, 2016 at 11:56 PM, Baoquan He wrote: > Dave Anderson ever told in Crash utility he makes judgement whether it's > a kaslr kernel by size of KERNEL_IMAGE_SIZE. As long as it's 1G, it's > recognized as kaslr. Then the current upstream kernel has a wrong behaviour, > it sets KERNEL_IMAGE_SIZE as 1G as long as CONFIG_RANDOMIZE_BASE is enabled, > though people specify "nokaslr" into cmdline to disable kaslr explicitly. I'm not sure that's the correct solution to the Crash utility -- the kaslr-ness of a kernel should be already exposed in the dump with the kaslr_enabled variable yes? > So in this patchset, made changes to determine the size of kernel text mapping > area at runtime. If "nokaslr" specified, kernel mapping size is 512M though > CONFIG_RANDOMIZE_BASE is enabled. This seems to make the non-KASLR case more consistent, so I'm fine with the idea. Once the build-bots are happy with everything, consider the series: Acked-by: Kees Cook Thanks! -Kees > > Baoquan He (2): > x86/64: Make kernel text mapping always take one whole page table in > early boot code > x86/KASLR/64: Determine kernel text mapping size at runtime > > arch/x86/boot/compressed/kaslr.c | 15 ++++++++++----- > arch/x86/include/asm/kaslr.h | 1 + > arch/x86/include/asm/page_64_types.h | 20 ++++++++++++-------- > arch/x86/include/asm/pgtable_64_types.h | 2 +- > arch/x86/kernel/head64.c | 11 ++++++----- > arch/x86/kernel/head_64.S | 16 +++++++++------- > arch/x86/mm/dump_pagetables.c | 3 ++- > arch/x86/mm/init_64.c | 2 +- > arch/x86/mm/physaddr.c | 6 +++--- > 9 files changed, 45 insertions(+), 31 deletions(-) > > -- > 2.5.5 > -- Kees Cook Nexus Security