From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754459AbdBQAhg (ORCPT ); Thu, 16 Feb 2017 19:37:36 -0500 Received: from mga14.intel.com ([192.55.52.115]:7165 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753186AbdBQAhd (ORCPT ); Thu, 16 Feb 2017 19:37:33 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.35,170,1484035200"; d="gz'50?scan'50,208,50";a="46689960" Date: Fri, 17 Feb 2017 08:37:07 +0800 From: kbuild test robot To: Thomas Garnier Cc: kbuild-all@01.org, Thomas Gleixner , Ingo Molnar , "H . Peter Anvin" , Jonathan Corbet , Thomas Garnier , Kees Cook , Lorenzo Stoakes , Juergen Gross , Andy Lutomirski , "Rafael J . Wysocki" , Len Brown , Pavel Machek , Jiri Kosina , Matt Fleming , Ard Biesheuvel , Boris Ostrovsky , Rusty Russell , Borislav Petkov , Christian Borntraeger , Brian Gerst , He Chen , "Luis R . Rodriguez" , Stanislaw Gruszka , Arnd Bergmann , Peter Zijlstra , Dave Hansen , Vitaly Kuznetsov , Paul Gortmaker , Josh Poimboeuf , Tim Chen , Andi Kleen , Jiri Olsa , Michael Ellerman , Joerg Roedel , Paolo Bonzini , Radim =?utf-8?B?S3LEjW3DocWZ?= , Andy Lutomirski , x86@kernel.org, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, linux-pm@vger.kernel.org, linux-efi@vger.kernel.org, xen-devel@lists.xenproject.org, lguest@lists.ozlabs.org, kvm@vger.kernel.org, kernel-hardening@lists.openwall.com Subject: Re: [PATCH v4 1/4] x86/mm: Adapt MODULES_END based on Fixmap section size Message-ID: <201702170838.wHH6l1CC%fengguang.wu@intel.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="J2SCkAp4GZ/dPZZf" Content-Disposition: inline In-Reply-To: <20170216215438.126111-1-thgarnie@google.com> User-Agent: Mutt/1.5.23 (2014-03-12) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: fengguang.wu@intel.com X-SA-Exim-Scanned: No (on bee); SAEximRunCond expanded to false Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --J2SCkAp4GZ/dPZZf Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi Thomas, [auto build test ERROR on next-20170216] [also build test ERROR on v4.10-rc8] [cannot apply to tip/x86/core kvm/linux-next tip/auto-latest v4.9-rc8 v4.9-rc7 v4.9-rc6] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Thomas-Garnier/x86-mm-Adapt-MODULES_END-based-on-Fixmap-section-size/20170217-072759 config: x86_64-randconfig-h0-02170640 (attached as .config) compiler: gcc-4.9 (Debian 4.9.4-2) 4.9.4 reproduce: # save the attached .config to linux build tree make ARCH=x86_64 All error/warnings (new ones prefixed by >>): >> arch/x86/mm/dump_pagetables.c:87:2: error: implicit declaration of function '__fix_to_virt' [-Werror=implicit-function-declaration] { MODULES_END, "End Modules" }, ^ In file included from arch/x86/include/asm/pgtable_types.h:240:0, from arch/x86/include/asm/paravirt_types.h:44, from arch/x86/include/asm/ptrace.h:71, from arch/x86/include/asm/math_emu.h:4, from arch/x86/include/asm/processor.h:11, from arch/x86/include/asm/cpufeature.h:4, from arch/x86/include/asm/thread_info.h:52, from include/linux/thread_info.h:25, from arch/x86/include/asm/preempt.h:6, from include/linux/preempt.h:59, from include/linux/spinlock.h:50, from include/linux/wait.h:8, from include/linux/fs.h:5, from include/linux/debugfs.h:18, from arch/x86/mm/dump_pagetables.c:15: >> arch/x86/include/asm/pgtable_64_types.h:71:37: error: '__end_of_fixed_addresses' undeclared here (not in a function) #define MODULES_END __fix_to_virt(__end_of_fixed_addresses + 1) ^ >> arch/x86/mm/dump_pagetables.c:87:4: note: in expansion of macro 'MODULES_END' { MODULES_END, "End Modules" }, ^ cc1: some warnings being treated as errors vim +/__fix_to_virt +87 arch/x86/mm/dump_pagetables.c 926e5392b Arjan van de Ven 2008-04-17 9 * This program is free software; you can redistribute it and/or 926e5392b Arjan van de Ven 2008-04-17 10 * modify it under the terms of the GNU General Public License 926e5392b Arjan van de Ven 2008-04-17 11 * as published by the Free Software Foundation; version 2 926e5392b Arjan van de Ven 2008-04-17 12 * of the License. 926e5392b Arjan van de Ven 2008-04-17 13 */ 926e5392b Arjan van de Ven 2008-04-17 14 fe770bf03 H. Peter Anvin 2008-04-17 @15 #include fe770bf03 H. Peter Anvin 2008-04-17 16 #include 84e629b66 Paul Gortmaker 2016-07-13 17 #include 146fbb766 Andrey Ryabinin 2017-02-10 18 #include 926e5392b Arjan van de Ven 2008-04-17 19 #include 926e5392b Arjan van de Ven 2008-04-17 20 926e5392b Arjan van de Ven 2008-04-17 21 #include 926e5392b Arjan van de Ven 2008-04-17 22 926e5392b Arjan van de Ven 2008-04-17 23 /* 926e5392b Arjan van de Ven 2008-04-17 24 * The dumper groups pagetable entries of the same type into one, and for 926e5392b Arjan van de Ven 2008-04-17 25 * that it needs to keep some state when walking, and flush this state 926e5392b Arjan van de Ven 2008-04-17 26 * when a "break" in the continuity is found. 926e5392b Arjan van de Ven 2008-04-17 27 */ 926e5392b Arjan van de Ven 2008-04-17 28 struct pg_state { 926e5392b Arjan van de Ven 2008-04-17 29 int level; 926e5392b Arjan van de Ven 2008-04-17 30 pgprot_t current_prot; 926e5392b Arjan van de Ven 2008-04-17 31 unsigned long start_address; 926e5392b Arjan van de Ven 2008-04-17 32 unsigned long current_address; fe770bf03 H. Peter Anvin 2008-04-17 33 const struct addr_marker *marker; 3891a04aa H. Peter Anvin 2014-04-29 34 unsigned long lines; ef6bea6dd Borislav Petkov 2014-01-18 35 bool to_dmesg; e1a58320a Stephen Smalley 2015-10-05 36 bool check_wx; e1a58320a Stephen Smalley 2015-10-05 37 unsigned long wx_pages; 926e5392b Arjan van de Ven 2008-04-17 38 }; 926e5392b Arjan van de Ven 2008-04-17 39 fe770bf03 H. Peter Anvin 2008-04-17 40 struct addr_marker { fe770bf03 H. Peter Anvin 2008-04-17 41 unsigned long start_address; fe770bf03 H. Peter Anvin 2008-04-17 42 const char *name; 3891a04aa H. Peter Anvin 2014-04-29 43 unsigned long max_lines; fe770bf03 H. Peter Anvin 2008-04-17 44 }; 926e5392b Arjan van de Ven 2008-04-17 45 92851e2fc Andres Salomon 2010-07-20 46 /* indices for address_markers; keep sync'd w/ address_markers below */ 92851e2fc Andres Salomon 2010-07-20 47 enum address_markers_idx { 92851e2fc Andres Salomon 2010-07-20 48 USER_SPACE_NR = 0, 92851e2fc Andres Salomon 2010-07-20 49 #ifdef CONFIG_X86_64 92851e2fc Andres Salomon 2010-07-20 50 KERNEL_SPACE_NR, 92851e2fc Andres Salomon 2010-07-20 51 LOW_KERNEL_NR, 92851e2fc Andres Salomon 2010-07-20 52 VMALLOC_START_NR, 92851e2fc Andres Salomon 2010-07-20 53 VMEMMAP_START_NR, 8a5a5d153 Mathias Krause 2014-09-07 54 # ifdef CONFIG_X86_ESPFIX64 3891a04aa H. Peter Anvin 2014-04-29 55 ESPFIX_START_NR, 8a5a5d153 Mathias Krause 2014-09-07 56 # endif 92851e2fc Andres Salomon 2010-07-20 57 HIGH_KERNEL_NR, 92851e2fc Andres Salomon 2010-07-20 58 MODULES_VADDR_NR, 92851e2fc Andres Salomon 2010-07-20 59 MODULES_END_NR, 92851e2fc Andres Salomon 2010-07-20 60 #else 92851e2fc Andres Salomon 2010-07-20 61 KERNEL_SPACE_NR, 92851e2fc Andres Salomon 2010-07-20 62 VMALLOC_START_NR, 92851e2fc Andres Salomon 2010-07-20 63 VMALLOC_END_NR, 92851e2fc Andres Salomon 2010-07-20 64 # ifdef CONFIG_HIGHMEM 92851e2fc Andres Salomon 2010-07-20 65 PKMAP_BASE_NR, 92851e2fc Andres Salomon 2010-07-20 66 # endif 92851e2fc Andres Salomon 2010-07-20 67 FIXADDR_START_NR, 92851e2fc Andres Salomon 2010-07-20 68 #endif 92851e2fc Andres Salomon 2010-07-20 69 }; 92851e2fc Andres Salomon 2010-07-20 70 fe770bf03 H. Peter Anvin 2008-04-17 71 /* Address space markers hints */ fe770bf03 H. Peter Anvin 2008-04-17 72 static struct addr_marker address_markers[] = { fe770bf03 H. Peter Anvin 2008-04-17 73 { 0, "User Space" }, fe770bf03 H. Peter Anvin 2008-04-17 74 #ifdef CONFIG_X86_64 fe770bf03 H. Peter Anvin 2008-04-17 75 { 0x8000000000000000UL, "Kernel Space" }, 0483e1fa6 Thomas Garnier 2016-06-21 76 { 0/* PAGE_OFFSET */, "Low Kernel Mapping" }, 0483e1fa6 Thomas Garnier 2016-06-21 77 { 0/* VMALLOC_START */, "vmalloc() Area" }, 0483e1fa6 Thomas Garnier 2016-06-21 78 { 0/* VMEMMAP_START */, "Vmemmap" }, 8a5a5d153 Mathias Krause 2014-09-07 79 # ifdef CONFIG_X86_ESPFIX64 3891a04aa H. Peter Anvin 2014-04-29 80 { ESPFIX_BASE_ADDR, "ESPfix Area", 16 }, 8a5a5d153 Mathias Krause 2014-09-07 81 # endif 8266e31ed Mathias Krause 2014-09-21 82 # ifdef CONFIG_EFI 8266e31ed Mathias Krause 2014-09-21 83 { EFI_VA_END, "EFI Runtime Services" }, 8266e31ed Mathias Krause 2014-09-21 84 # endif fe770bf03 H. Peter Anvin 2008-04-17 85 { __START_KERNEL_map, "High Kernel Mapping" }, 9a79cf9c1 Yinghai Lu 2008-03-07 86 { MODULES_VADDR, "Modules" }, 9a79cf9c1 Yinghai Lu 2008-03-07 @87 { MODULES_END, "End Modules" }, fe770bf03 H. Peter Anvin 2008-04-17 88 #else fe770bf03 H. Peter Anvin 2008-04-17 89 { PAGE_OFFSET, "Kernel Mapping" }, fe770bf03 H. Peter Anvin 2008-04-17 90 { 0/* VMALLOC_START */, "vmalloc() Area" }, :::::: The code at line 87 was first introduced by commit :::::: 9a79cf9c1aa671325fa5ba37576c2cee23823d04 x86: sort address_markers for dump_pagetables :::::: TO: Yinghai Lu :::::: CC: Ingo Molnar --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation --J2SCkAp4GZ/dPZZf Content-Type: application/gzip Content-Disposition: attachment; filename=".config.gz" Content-Transfer-Encoding: base64 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 kVhhsLoL72+mDPoHZO1lBqN7AQA= --J2SCkAp4GZ/dPZZf-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: kbuild test robot Subject: Re: [PATCH v4 1/4] x86/mm: Adapt MODULES_END based on Fixmap section size Date: Fri, 17 Feb 2017 08:37:07 +0800 Message-ID: <201702170838.wHH6l1CC%fengguang.wu@intel.com> References: <20170216215438.126111-1-thgarnie@google.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="J2SCkAp4GZ/dPZZf" Return-path: Content-Disposition: inline In-Reply-To: <20170216215438.126111-1-thgarnie@google.com> Sender: linux-pm-owner@vger.kernel.org Cc: kbuild-all@01.org, Thomas Gleixner , Ingo Molnar , "H . Peter Anvin" , Jonathan Corbet , Thomas Garnier , Kees Cook , Lorenzo Stoakes , Juergen Gross , Andy Lutomirski , "Rafael J . Wysocki" , Len Brown , Pavel Machek , Jiri Kosina , Matt Fleming , Ard Biesheuvel , Boris Ostrovsky , Rusty Russell , Borislav Petkov , Christian Borntraeger , Brian Gerst List-Id: linux-efi@vger.kernel.org --J2SCkAp4GZ/dPZZf Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi Thomas, [auto build test ERROR on next-20170216] [also build test ERROR on v4.10-rc8] [cannot apply to tip/x86/core kvm/linux-next tip/auto-latest v4.9-rc8 v4.9-rc7 v4.9-rc6] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Thomas-Garnier/x86-mm-Adapt-MODULES_END-based-on-Fixmap-section-size/20170217-072759 config: x86_64-randconfig-h0-02170640 (attached as .config) compiler: gcc-4.9 (Debian 4.9.4-2) 4.9.4 reproduce: # save the attached .config to linux build tree make ARCH=x86_64 All error/warnings (new ones prefixed by >>): >> arch/x86/mm/dump_pagetables.c:87:2: error: implicit declaration of function '__fix_to_virt' [-Werror=implicit-function-declaration] { MODULES_END, "End Modules" }, ^ In file included from arch/x86/include/asm/pgtable_types.h:240:0, from arch/x86/include/asm/paravirt_types.h:44, from arch/x86/include/asm/ptrace.h:71, from arch/x86/include/asm/math_emu.h:4, from arch/x86/include/asm/processor.h:11, from arch/x86/include/asm/cpufeature.h:4, from arch/x86/include/asm/thread_info.h:52, from include/linux/thread_info.h:25, from arch/x86/include/asm/preempt.h:6, from include/linux/preempt.h:59, from include/linux/spinlock.h:50, from include/linux/wait.h:8, from include/linux/fs.h:5, from include/linux/debugfs.h:18, from arch/x86/mm/dump_pagetables.c:15: >> arch/x86/include/asm/pgtable_64_types.h:71:37: error: '__end_of_fixed_addresses' undeclared here (not in a function) #define MODULES_END __fix_to_virt(__end_of_fixed_addresses + 1) ^ >> arch/x86/mm/dump_pagetables.c:87:4: note: in expansion of macro 'MODULES_END' { MODULES_END, "End Modules" }, ^ cc1: some warnings being treated as errors vim +/__fix_to_virt +87 arch/x86/mm/dump_pagetables.c 926e5392b Arjan van de Ven 2008-04-17 9 * This program is free software; you can redistribute it and/or 926e5392b Arjan van de Ven 2008-04-17 10 * modify it under the terms of the GNU General Public License 926e5392b Arjan van de Ven 2008-04-17 11 * as published by the Free Software Foundation; version 2 926e5392b Arjan van de Ven 2008-04-17 12 * of the License. 926e5392b Arjan van de Ven 2008-04-17 13 */ 926e5392b Arjan van de Ven 2008-04-17 14 fe770bf03 H. Peter Anvin 2008-04-17 @15 #include fe770bf03 H. Peter Anvin 2008-04-17 16 #include 84e629b66 Paul Gortmaker 2016-07-13 17 #include 146fbb766 Andrey Ryabinin 2017-02-10 18 #include 926e5392b Arjan van de Ven 2008-04-17 19 #include 926e5392b Arjan van de Ven 2008-04-17 20 926e5392b Arjan van de Ven 2008-04-17 21 #include 926e5392b Arjan van de Ven 2008-04-17 22 926e5392b Arjan van de Ven 2008-04-17 23 /* 926e5392b Arjan van de Ven 2008-04-17 24 * The dumper groups pagetable entries of the same type into one, and for 926e5392b Arjan van de Ven 2008-04-17 25 * that it needs to keep some state when walking, and flush this state 926e5392b Arjan van de Ven 2008-04-17 26 * when a "break" in the continuity is found. 926e5392b Arjan van de Ven 2008-04-17 27 */ 926e5392b Arjan van de Ven 2008-04-17 28 struct pg_state { 926e5392b Arjan van de Ven 2008-04-17 29 int level; 926e5392b Arjan van de Ven 2008-04-17 30 pgprot_t current_prot; 926e5392b Arjan van de Ven 2008-04-17 31 unsigned long start_address; 926e5392b Arjan van de Ven 2008-04-17 32 unsigned long current_address; fe770bf03 H. Peter Anvin 2008-04-17 33 const struct addr_marker *marker; 3891a04aa H. Peter Anvin 2014-04-29 34 unsigned long lines; ef6bea6dd Borislav Petkov 2014-01-18 35 bool to_dmesg; e1a58320a Stephen Smalley 2015-10-05 36 bool check_wx; e1a58320a Stephen Smalley 2015-10-05 37 unsigned long wx_pages; 926e5392b Arjan van de Ven 2008-04-17 38 }; 926e5392b Arjan van de Ven 2008-04-17 39 fe770bf03 H. Peter Anvin 2008-04-17 40 struct addr_marker { fe770bf03 H. Peter Anvin 2008-04-17 41 unsigned long start_address; fe770bf03 H. Peter Anvin 2008-04-17 42 const char *name; 3891a04aa H. Peter Anvin 2014-04-29 43 unsigned long max_lines; fe770bf03 H. Peter Anvin 2008-04-17 44 }; 926e5392b Arjan van de Ven 2008-04-17 45 92851e2fc Andres Salomon 2010-07-20 46 /* indices for address_markers; keep sync'd w/ address_markers below */ 92851e2fc Andres Salomon 2010-07-20 47 enum address_markers_idx { 92851e2fc Andres Salomon 2010-07-20 48 USER_SPACE_NR = 0, 92851e2fc Andres Salomon 2010-07-20 49 #ifdef CONFIG_X86_64 92851e2fc Andres Salomon 2010-07-20 50 KERNEL_SPACE_NR, 92851e2fc Andres Salomon 2010-07-20 51 LOW_KERNEL_NR, 92851e2fc Andres Salomon 2010-07-20 52 VMALLOC_START_NR, 92851e2fc Andres Salomon 2010-07-20 53 VMEMMAP_START_NR, 8a5a5d153 Mathias Krause 2014-09-07 54 # ifdef CONFIG_X86_ESPFIX64 3891a04aa H. Peter Anvin 2014-04-29 55 ESPFIX_START_NR, 8a5a5d153 Mathias Krause 2014-09-07 56 # endif 92851e2fc Andres Salomon 2010-07-20 57 HIGH_KERNEL_NR, 92851e2fc Andres Salomon 2010-07-20 58 MODULES_VADDR_NR, 92851e2fc Andres Salomon 2010-07-20 59 MODULES_END_NR, 92851e2fc Andres Salomon 2010-07-20 60 #else 92851e2fc Andres Salomon 2010-07-20 61 KERNEL_SPACE_NR, 92851e2fc Andres Salomon 2010-07-20 62 VMALLOC_START_NR, 92851e2fc Andres Salomon 2010-07-20 63 VMALLOC_END_NR, 92851e2fc Andres Salomon 2010-07-20 64 # ifdef CONFIG_HIGHMEM 92851e2fc Andres Salomon 2010-07-20 65 PKMAP_BASE_NR, 92851e2fc Andres Salomon 2010-07-20 66 # endif 92851e2fc Andres Salomon 2010-07-20 67 FIXADDR_START_NR, 92851e2fc Andres Salomon 2010-07-20 68 #endif 92851e2fc Andres Salomon 2010-07-20 69 }; 92851e2fc Andres Salomon 2010-07-20 70 fe770bf03 H. Peter Anvin 2008-04-17 71 /* Address space markers hints */ fe770bf03 H. Peter Anvin 2008-04-17 72 static struct addr_marker address_markers[] = { fe770bf03 H. Peter Anvin 2008-04-17 73 { 0, "User Space" }, fe770bf03 H. Peter Anvin 2008-04-17 74 #ifdef CONFIG_X86_64 fe770bf03 H. Peter Anvin 2008-04-17 75 { 0x8000000000000000UL, "Kernel Space" }, 0483e1fa6 Thomas Garnier 2016-06-21 76 { 0/* PAGE_OFFSET */, "Low Kernel Mapping" }, 0483e1fa6 Thomas Garnier 2016-06-21 77 { 0/* VMALLOC_START */, "vmalloc() Area" }, 0483e1fa6 Thomas Garnier 2016-06-21 78 { 0/* VMEMMAP_START */, "Vmemmap" }, 8a5a5d153 Mathias Krause 2014-09-07 79 # ifdef CONFIG_X86_ESPFIX64 3891a04aa H. Peter Anvin 2014-04-29 80 { ESPFIX_BASE_ADDR, "ESPfix Area", 16 }, 8a5a5d153 Mathias Krause 2014-09-07 81 # endif 8266e31ed Mathias Krause 2014-09-21 82 # ifdef CONFIG_EFI 8266e31ed Mathias Krause 2014-09-21 83 { EFI_VA_END, "EFI Runtime Services" }, 8266e31ed Mathias Krause 2014-09-21 84 # endif fe770bf03 H. Peter Anvin 2008-04-17 85 { __START_KERNEL_map, "High Kernel Mapping" }, 9a79cf9c1 Yinghai Lu 2008-03-07 86 { MODULES_VADDR, "Modules" }, 9a79cf9c1 Yinghai Lu 2008-03-07 @87 { MODULES_END, "End Modules" }, fe770bf03 H. Peter Anvin 2008-04-17 88 #else fe770bf03 H. Peter Anvin 2008-04-17 89 { PAGE_OFFSET, "Kernel Mapping" }, fe770bf03 H. Peter Anvin 2008-04-17 90 { 0/* VMALLOC_START */, "vmalloc() Area" }, :::::: The code at line 87 was first introduced by commit :::::: 9a79cf9c1aa671325fa5ba37576c2cee23823d04 x86: sort address_markers for dump_pagetables :::::: TO: Yinghai Lu :::::: CC: Ingo Molnar --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation --J2SCkAp4GZ/dPZZf Content-Type: application/gzip Content-Disposition: attachment; filename=".config.gz" Content-Transfer-Encoding: base64 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 kVhhsLoL72+mDPoHZO1lBqN7AQA= --J2SCkAp4GZ/dPZZf-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: kbuild test robot Subject: Re: [PATCH v4 1/4] x86/mm: Adapt MODULES_END based on Fixmap section size Date: Fri, 17 Feb 2017 08:37:07 +0800 Message-ID: <201702170838.wHH6l1CC%fengguang.wu@intel.com> References: <20170216215438.126111-1-thgarnie@google.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="J2SCkAp4GZ/dPZZf" Cc: kbuild-all@01.org, Thomas Gleixner , Ingo Molnar , "H . Peter Anvin" , Jonathan Corbet , Thomas Garnier , Kees Cook , Lorenzo Stoakes , Juergen Gross , Andy Lutomirski , "Rafael J . Wysocki" , Len Brown , Pavel Machek , Jiri Kosina , Matt Fleming , Ard Biesheuvel , Boris Ostrovsky , Rusty Russell , Borislav Petkov , Christian Borntraeger , Brian Gerst Return-path: Content-Disposition: inline In-Reply-To: <20170216215438.126111-1-thgarnie@google.com> Sender: linux-pm-owner@vger.kernel.org List-Id: kvm.vger.kernel.org --J2SCkAp4GZ/dPZZf Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi Thomas, [auto build test ERROR on next-20170216] [also build test ERROR on v4.10-rc8] [cannot apply to tip/x86/core kvm/linux-next tip/auto-latest v4.9-rc8 v4.9-rc7 v4.9-rc6] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Thomas-Garnier/x86-mm-Adapt-MODULES_END-based-on-Fixmap-section-size/20170217-072759 config: x86_64-randconfig-h0-02170640 (attached as .config) compiler: gcc-4.9 (Debian 4.9.4-2) 4.9.4 reproduce: # save the attached .config to linux build tree make ARCH=x86_64 All error/warnings (new ones prefixed by >>): >> arch/x86/mm/dump_pagetables.c:87:2: error: implicit declaration of function '__fix_to_virt' [-Werror=implicit-function-declaration] { MODULES_END, "End Modules" }, ^ In file included from arch/x86/include/asm/pgtable_types.h:240:0, from arch/x86/include/asm/paravirt_types.h:44, from arch/x86/include/asm/ptrace.h:71, from arch/x86/include/asm/math_emu.h:4, from arch/x86/include/asm/processor.h:11, from arch/x86/include/asm/cpufeature.h:4, from arch/x86/include/asm/thread_info.h:52, from include/linux/thread_info.h:25, from arch/x86/include/asm/preempt.h:6, from include/linux/preempt.h:59, from include/linux/spinlock.h:50, from include/linux/wait.h:8, from include/linux/fs.h:5, from include/linux/debugfs.h:18, from arch/x86/mm/dump_pagetables.c:15: >> arch/x86/include/asm/pgtable_64_types.h:71:37: error: '__end_of_fixed_addresses' undeclared here (not in a function) #define MODULES_END __fix_to_virt(__end_of_fixed_addresses + 1) ^ >> arch/x86/mm/dump_pagetables.c:87:4: note: in expansion of macro 'MODULES_END' { MODULES_END, "End Modules" }, ^ cc1: some warnings being treated as errors vim +/__fix_to_virt +87 arch/x86/mm/dump_pagetables.c 926e5392b Arjan van de Ven 2008-04-17 9 * This program is free software; you can redistribute it and/or 926e5392b Arjan van de Ven 2008-04-17 10 * modify it under the terms of the GNU General Public License 926e5392b Arjan van de Ven 2008-04-17 11 * as published by the Free Software Foundation; version 2 926e5392b Arjan van de Ven 2008-04-17 12 * of the License. 926e5392b Arjan van de Ven 2008-04-17 13 */ 926e5392b Arjan van de Ven 2008-04-17 14 fe770bf03 H. Peter Anvin 2008-04-17 @15 #include fe770bf03 H. Peter Anvin 2008-04-17 16 #include 84e629b66 Paul Gortmaker 2016-07-13 17 #include 146fbb766 Andrey Ryabinin 2017-02-10 18 #include 926e5392b Arjan van de Ven 2008-04-17 19 #include 926e5392b Arjan van de Ven 2008-04-17 20 926e5392b Arjan van de Ven 2008-04-17 21 #include 926e5392b Arjan van de Ven 2008-04-17 22 926e5392b Arjan van de Ven 2008-04-17 23 /* 926e5392b Arjan van de Ven 2008-04-17 24 * The dumper groups pagetable entries of the same type into one, and for 926e5392b Arjan van de Ven 2008-04-17 25 * that it needs to keep some state when walking, and flush this state 926e5392b Arjan van de Ven 2008-04-17 26 * when a "break" in the continuity is found. 926e5392b Arjan van de Ven 2008-04-17 27 */ 926e5392b Arjan van de Ven 2008-04-17 28 struct pg_state { 926e5392b Arjan van de Ven 2008-04-17 29 int level; 926e5392b Arjan van de Ven 2008-04-17 30 pgprot_t current_prot; 926e5392b Arjan van de Ven 2008-04-17 31 unsigned long start_address; 926e5392b Arjan van de Ven 2008-04-17 32 unsigned long current_address; fe770bf03 H. Peter Anvin 2008-04-17 33 const struct addr_marker *marker; 3891a04aa H. Peter Anvin 2014-04-29 34 unsigned long lines; ef6bea6dd Borislav Petkov 2014-01-18 35 bool to_dmesg; e1a58320a Stephen Smalley 2015-10-05 36 bool check_wx; e1a58320a Stephen Smalley 2015-10-05 37 unsigned long wx_pages; 926e5392b Arjan van de Ven 2008-04-17 38 }; 926e5392b Arjan van de Ven 2008-04-17 39 fe770bf03 H. Peter Anvin 2008-04-17 40 struct addr_marker { fe770bf03 H. Peter Anvin 2008-04-17 41 unsigned long start_address; fe770bf03 H. Peter Anvin 2008-04-17 42 const char *name; 3891a04aa H. Peter Anvin 2014-04-29 43 unsigned long max_lines; fe770bf03 H. Peter Anvin 2008-04-17 44 }; 926e5392b Arjan van de Ven 2008-04-17 45 92851e2fc Andres Salomon 2010-07-20 46 /* indices for address_markers; keep sync'd w/ address_markers below */ 92851e2fc Andres Salomon 2010-07-20 47 enum address_markers_idx { 92851e2fc Andres Salomon 2010-07-20 48 USER_SPACE_NR = 0, 92851e2fc Andres Salomon 2010-07-20 49 #ifdef CONFIG_X86_64 92851e2fc Andres Salomon 2010-07-20 50 KERNEL_SPACE_NR, 92851e2fc Andres Salomon 2010-07-20 51 LOW_KERNEL_NR, 92851e2fc Andres Salomon 2010-07-20 52 VMALLOC_START_NR, 92851e2fc Andres Salomon 2010-07-20 53 VMEMMAP_START_NR, 8a5a5d153 Mathias Krause 2014-09-07 54 # ifdef CONFIG_X86_ESPFIX64 3891a04aa H. Peter Anvin 2014-04-29 55 ESPFIX_START_NR, 8a5a5d153 Mathias Krause 2014-09-07 56 # endif 92851e2fc Andres Salomon 2010-07-20 57 HIGH_KERNEL_NR, 92851e2fc Andres Salomon 2010-07-20 58 MODULES_VADDR_NR, 92851e2fc Andres Salomon 2010-07-20 59 MODULES_END_NR, 92851e2fc Andres Salomon 2010-07-20 60 #else 92851e2fc Andres Salomon 2010-07-20 61 KERNEL_SPACE_NR, 92851e2fc Andres Salomon 2010-07-20 62 VMALLOC_START_NR, 92851e2fc Andres Salomon 2010-07-20 63 VMALLOC_END_NR, 92851e2fc Andres Salomon 2010-07-20 64 # ifdef CONFIG_HIGHMEM 92851e2fc Andres Salomon 2010-07-20 65 PKMAP_BASE_NR, 92851e2fc Andres Salomon 2010-07-20 66 # endif 92851e2fc Andres Salomon 2010-07-20 67 FIXADDR_START_NR, 92851e2fc Andres Salomon 2010-07-20 68 #endif 92851e2fc Andres Salomon 2010-07-20 69 }; 92851e2fc Andres Salomon 2010-07-20 70 fe770bf03 H. Peter Anvin 2008-04-17 71 /* Address space markers hints */ fe770bf03 H. Peter Anvin 2008-04-17 72 static struct addr_marker address_markers[] = { fe770bf03 H. Peter Anvin 2008-04-17 73 { 0, "User Space" }, fe770bf03 H. Peter Anvin 2008-04-17 74 #ifdef CONFIG_X86_64 fe770bf03 H. Peter Anvin 2008-04-17 75 { 0x8000000000000000UL, "Kernel Space" }, 0483e1fa6 Thomas Garnier 2016-06-21 76 { 0/* PAGE_OFFSET */, "Low Kernel Mapping" }, 0483e1fa6 Thomas Garnier 2016-06-21 77 { 0/* VMALLOC_START */, "vmalloc() Area" }, 0483e1fa6 Thomas Garnier 2016-06-21 78 { 0/* VMEMMAP_START */, "Vmemmap" }, 8a5a5d153 Mathias Krause 2014-09-07 79 # ifdef CONFIG_X86_ESPFIX64 3891a04aa H. Peter Anvin 2014-04-29 80 { ESPFIX_BASE_ADDR, "ESPfix Area", 16 }, 8a5a5d153 Mathias Krause 2014-09-07 81 # endif 8266e31ed Mathias Krause 2014-09-21 82 # ifdef CONFIG_EFI 8266e31ed Mathias Krause 2014-09-21 83 { EFI_VA_END, "EFI Runtime Services" }, 8266e31ed Mathias Krause 2014-09-21 84 # endif fe770bf03 H. Peter Anvin 2008-04-17 85 { __START_KERNEL_map, "High Kernel Mapping" }, 9a79cf9c1 Yinghai Lu 2008-03-07 86 { MODULES_VADDR, "Modules" }, 9a79cf9c1 Yinghai Lu 2008-03-07 @87 { MODULES_END, "End Modules" }, fe770bf03 H. Peter Anvin 2008-04-17 88 #else fe770bf03 H. Peter Anvin 2008-04-17 89 { PAGE_OFFSET, "Kernel Mapping" }, fe770bf03 H. Peter Anvin 2008-04-17 90 { 0/* VMALLOC_START */, "vmalloc() Area" }, :::::: The code at line 87 was first introduced by commit :::::: 9a79cf9c1aa671325fa5ba37576c2cee23823d04 x86: sort address_markers for dump_pagetables :::::: TO: Yinghai Lu :::::: CC: Ingo Molnar --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation --J2SCkAp4GZ/dPZZf Content-Type: application/gzip Content-Disposition: attachment; filename=".config.gz" Content-Transfer-Encoding: base64 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 kVhhsLoL72+mDPoHZO1lBqN7AQA= --J2SCkAp4GZ/dPZZf-- From mboxrd@z Thu Jan 1 00:00:00 1970 Date: Fri, 17 Feb 2017 08:37:07 +0800 From: kbuild test robot Message-ID: <201702170838.wHH6l1CC%fengguang.wu@intel.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="J2SCkAp4GZ/dPZZf" Content-Disposition: inline In-Reply-To: <20170216215438.126111-1-thgarnie@google.com> Subject: [kernel-hardening] Re: [PATCH v4 1/4] x86/mm: Adapt MODULES_END based on Fixmap section size To: Thomas Garnier Cc: kbuild-all@01.org, Thomas Gleixner , Ingo Molnar , "H . Peter Anvin" , Jonathan Corbet , Kees Cook , Lorenzo Stoakes , Juergen Gross , Andy Lutomirski , "Rafael J . Wysocki" , Len Brown , Pavel Machek , Jiri Kosina , Matt Fleming , Ard Biesheuvel , Boris Ostrovsky , Rusty Russell , Borislav Petkov , Christian Borntraeger , Brian Gerst , He Chen , "Luis R . Rodriguez" , Stanislaw Gruszka , Arnd Bergmann , Peter Zijlstra , Dave Hansen , Vitaly Kuznetsov , Paul Gortmaker , Josh Poimboeuf , Tim Chen , Andi Kleen , Jiri Olsa , Michael Ellerman , Joerg Roedel , Paolo Bonzini , Radim =?utf-8?B?S3LEjW3DocWZ?= , Andy Lutomirski , x86@kernel.org, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, linux-pm@vger.kernel.org, linux-efi@vger.kernel.org, xen-devel@lists.xenproject.org, lguest@lists.ozlabs.org, kvm@vger.kernel.org, kernel-hardening@lists.openwall.com List-ID: --J2SCkAp4GZ/dPZZf Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi Thomas, [auto build test ERROR on next-20170216] [also build test ERROR on v4.10-rc8] [cannot apply to tip/x86/core kvm/linux-next tip/auto-latest v4.9-rc8 v4.9-rc7 v4.9-rc6] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Thomas-Garnier/x86-mm-Adapt-MODULES_END-based-on-Fixmap-section-size/20170217-072759 config: x86_64-randconfig-h0-02170640 (attached as .config) compiler: gcc-4.9 (Debian 4.9.4-2) 4.9.4 reproduce: # save the attached .config to linux build tree make ARCH=x86_64 All error/warnings (new ones prefixed by >>): >> arch/x86/mm/dump_pagetables.c:87:2: error: implicit declaration of function '__fix_to_virt' [-Werror=implicit-function-declaration] { MODULES_END, "End Modules" }, ^ In file included from arch/x86/include/asm/pgtable_types.h:240:0, from arch/x86/include/asm/paravirt_types.h:44, from arch/x86/include/asm/ptrace.h:71, from arch/x86/include/asm/math_emu.h:4, from arch/x86/include/asm/processor.h:11, from arch/x86/include/asm/cpufeature.h:4, from arch/x86/include/asm/thread_info.h:52, from include/linux/thread_info.h:25, from arch/x86/include/asm/preempt.h:6, from include/linux/preempt.h:59, from include/linux/spinlock.h:50, from include/linux/wait.h:8, from include/linux/fs.h:5, from include/linux/debugfs.h:18, from arch/x86/mm/dump_pagetables.c:15: >> arch/x86/include/asm/pgtable_64_types.h:71:37: error: '__end_of_fixed_addresses' undeclared here (not in a function) #define MODULES_END __fix_to_virt(__end_of_fixed_addresses + 1) ^ >> arch/x86/mm/dump_pagetables.c:87:4: note: in expansion of macro 'MODULES_END' { MODULES_END, "End Modules" }, ^ cc1: some warnings being treated as errors vim +/__fix_to_virt +87 arch/x86/mm/dump_pagetables.c 926e5392b Arjan van de Ven 2008-04-17 9 * This program is free software; you can redistribute it and/or 926e5392b Arjan van de Ven 2008-04-17 10 * modify it under the terms of the GNU General Public License 926e5392b Arjan van de Ven 2008-04-17 11 * as published by the Free Software Foundation; version 2 926e5392b Arjan van de Ven 2008-04-17 12 * of the License. 926e5392b Arjan van de Ven 2008-04-17 13 */ 926e5392b Arjan van de Ven 2008-04-17 14 fe770bf03 H. Peter Anvin 2008-04-17 @15 #include fe770bf03 H. Peter Anvin 2008-04-17 16 #include 84e629b66 Paul Gortmaker 2016-07-13 17 #include 146fbb766 Andrey Ryabinin 2017-02-10 18 #include 926e5392b Arjan van de Ven 2008-04-17 19 #include 926e5392b Arjan van de Ven 2008-04-17 20 926e5392b Arjan van de Ven 2008-04-17 21 #include 926e5392b Arjan van de Ven 2008-04-17 22 926e5392b Arjan van de Ven 2008-04-17 23 /* 926e5392b Arjan van de Ven 2008-04-17 24 * The dumper groups pagetable entries of the same type into one, and for 926e5392b Arjan van de Ven 2008-04-17 25 * that it needs to keep some state when walking, and flush this state 926e5392b Arjan van de Ven 2008-04-17 26 * when a "break" in the continuity is found. 926e5392b Arjan van de Ven 2008-04-17 27 */ 926e5392b Arjan van de Ven 2008-04-17 28 struct pg_state { 926e5392b Arjan van de Ven 2008-04-17 29 int level; 926e5392b Arjan van de Ven 2008-04-17 30 pgprot_t current_prot; 926e5392b Arjan van de Ven 2008-04-17 31 unsigned long start_address; 926e5392b Arjan van de Ven 2008-04-17 32 unsigned long current_address; fe770bf03 H. Peter Anvin 2008-04-17 33 const struct addr_marker *marker; 3891a04aa H. Peter Anvin 2014-04-29 34 unsigned long lines; ef6bea6dd Borislav Petkov 2014-01-18 35 bool to_dmesg; e1a58320a Stephen Smalley 2015-10-05 36 bool check_wx; e1a58320a Stephen Smalley 2015-10-05 37 unsigned long wx_pages; 926e5392b Arjan van de Ven 2008-04-17 38 }; 926e5392b Arjan van de Ven 2008-04-17 39 fe770bf03 H. Peter Anvin 2008-04-17 40 struct addr_marker { fe770bf03 H. Peter Anvin 2008-04-17 41 unsigned long start_address; fe770bf03 H. Peter Anvin 2008-04-17 42 const char *name; 3891a04aa H. Peter Anvin 2014-04-29 43 unsigned long max_lines; fe770bf03 H. Peter Anvin 2008-04-17 44 }; 926e5392b Arjan van de Ven 2008-04-17 45 92851e2fc Andres Salomon 2010-07-20 46 /* indices for address_markers; keep sync'd w/ address_markers below */ 92851e2fc Andres Salomon 2010-07-20 47 enum address_markers_idx { 92851e2fc Andres Salomon 2010-07-20 48 USER_SPACE_NR = 0, 92851e2fc Andres Salomon 2010-07-20 49 #ifdef CONFIG_X86_64 92851e2fc Andres Salomon 2010-07-20 50 KERNEL_SPACE_NR, 92851e2fc Andres Salomon 2010-07-20 51 LOW_KERNEL_NR, 92851e2fc Andres Salomon 2010-07-20 52 VMALLOC_START_NR, 92851e2fc Andres Salomon 2010-07-20 53 VMEMMAP_START_NR, 8a5a5d153 Mathias Krause 2014-09-07 54 # ifdef CONFIG_X86_ESPFIX64 3891a04aa H. Peter Anvin 2014-04-29 55 ESPFIX_START_NR, 8a5a5d153 Mathias Krause 2014-09-07 56 # endif 92851e2fc Andres Salomon 2010-07-20 57 HIGH_KERNEL_NR, 92851e2fc Andres Salomon 2010-07-20 58 MODULES_VADDR_NR, 92851e2fc Andres Salomon 2010-07-20 59 MODULES_END_NR, 92851e2fc Andres Salomon 2010-07-20 60 #else 92851e2fc Andres Salomon 2010-07-20 61 KERNEL_SPACE_NR, 92851e2fc Andres Salomon 2010-07-20 62 VMALLOC_START_NR, 92851e2fc Andres Salomon 2010-07-20 63 VMALLOC_END_NR, 92851e2fc Andres Salomon 2010-07-20 64 # ifdef CONFIG_HIGHMEM 92851e2fc Andres Salomon 2010-07-20 65 PKMAP_BASE_NR, 92851e2fc Andres Salomon 2010-07-20 66 # endif 92851e2fc Andres Salomon 2010-07-20 67 FIXADDR_START_NR, 92851e2fc Andres Salomon 2010-07-20 68 #endif 92851e2fc Andres Salomon 2010-07-20 69 }; 92851e2fc Andres Salomon 2010-07-20 70 fe770bf03 H. Peter Anvin 2008-04-17 71 /* Address space markers hints */ fe770bf03 H. Peter Anvin 2008-04-17 72 static struct addr_marker address_markers[] = { fe770bf03 H. Peter Anvin 2008-04-17 73 { 0, "User Space" }, fe770bf03 H. Peter Anvin 2008-04-17 74 #ifdef CONFIG_X86_64 fe770bf03 H. Peter Anvin 2008-04-17 75 { 0x8000000000000000UL, "Kernel Space" }, 0483e1fa6 Thomas Garnier 2016-06-21 76 { 0/* PAGE_OFFSET */, "Low Kernel Mapping" }, 0483e1fa6 Thomas Garnier 2016-06-21 77 { 0/* VMALLOC_START */, "vmalloc() Area" }, 0483e1fa6 Thomas Garnier 2016-06-21 78 { 0/* VMEMMAP_START */, "Vmemmap" }, 8a5a5d153 Mathias Krause 2014-09-07 79 # ifdef CONFIG_X86_ESPFIX64 3891a04aa H. Peter Anvin 2014-04-29 80 { ESPFIX_BASE_ADDR, "ESPfix Area", 16 }, 8a5a5d153 Mathias Krause 2014-09-07 81 # endif 8266e31ed Mathias Krause 2014-09-21 82 # ifdef CONFIG_EFI 8266e31ed Mathias Krause 2014-09-21 83 { EFI_VA_END, "EFI Runtime Services" }, 8266e31ed Mathias Krause 2014-09-21 84 # endif fe770bf03 H. Peter Anvin 2008-04-17 85 { __START_KERNEL_map, "High Kernel Mapping" }, 9a79cf9c1 Yinghai Lu 2008-03-07 86 { MODULES_VADDR, "Modules" }, 9a79cf9c1 Yinghai Lu 2008-03-07 @87 { MODULES_END, "End Modules" }, fe770bf03 H. Peter Anvin 2008-04-17 88 #else fe770bf03 H. Peter Anvin 2008-04-17 89 { PAGE_OFFSET, "Kernel Mapping" }, fe770bf03 H. Peter Anvin 2008-04-17 90 { 0/* VMALLOC_START */, "vmalloc() Area" }, :::::: The code at line 87 was first introduced by commit :::::: 9a79cf9c1aa671325fa5ba37576c2cee23823d04 x86: sort address_markers for dump_pagetables :::::: TO: Yinghai Lu :::::: CC: Ingo Molnar --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation --J2SCkAp4GZ/dPZZf Content-Type: application/gzip Content-Disposition: attachment; filename=".config.gz" Content-Transfer-Encoding: base64 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 kVhhsLoL72+mDPoHZO1lBqN7AQA= --J2SCkAp4GZ/dPZZf--