Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752713AbbKXB6b (ORCPT ); Mon, 23 Nov 2015 20:58:31 -0500 Received: from g9t5008.houston.hp.com ([15.240.92.66]:34636 "EHLO g9t5008.houston.hp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752588AbbKXB6a convert rfc822-to-8bit (ORCPT ); Mon, 23 Nov 2015 20:58:30 -0500 From: "Elliott, Robert (Persistent Memory)" To: "joseph.cihula@intel.com" , "richard.l.maliszewski@intel.com" , "gang.wei@intel.com" , "shane.wang@intel.com" CC: "tglx@linutronix.de" , "mingo@redhat.com" , "hpa@zytor.com" , "x86@kernel.org" , "tboot-devel@lists.sourceforge.net" , "linux-kernel@vger.kernel.org" , "Knippers, Linda" , "Kani, Toshimitsu" Subject: tboot: non-0 tboot_addr but it is not of type E820_RESERVED Thread-Topic: tboot: non-0 tboot_addr but it is not of type E820_RESERVED Thread-Index: AdEmVm9OrsXDbunoQrCj3oSGBvfyWw== Date: Tue, 24 Nov 2015 01:57:39 +0000 Message-ID: <94D0CD8314A33A4D9D801C0FE68B40295BE5000E@G9W0745.americas.hpqcorp.net> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [16.210.48.36] Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: 8BIT MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1800 Lines: 48 I noticed this being reported on our UEFI-based machines booting with grub2 (and not using trusted boot): [??? 0.000000] tboot: non-0 tboot_addr but it is not of type E820_RESERVED The alleged address is: ??????????????? 0x6b7369642065766f which is actually an ASCII string "ksid evo". That comes from arch/c86/kernel/tboot.c checking if the address is in the E820 table. Is that supposed to be initialized to 0 by the EFI boot stub in arch/x86/boot/compressed/eboot.c, and we're just lucky that it doesn't appear to be a valid address? void __init tboot_probe(void) { ??????? /* Look for valid page-aligned address for shared page. */ ??????? if (!boot_params.tboot_addr) ??????????????? return; ??????? /* ???????? * also verify that it is mapped as we expect it before calling ???????? * set_fixmap(), to reduce chance of garbage value causing crash ???????? */ ??????? if (!e820_any_mapped(boot_params.tboot_addr, ???????????????????????????? boot_params.tboot_addr, E820_RESERVED)) { ??????????????? pr_warning("non-0 tboot_addr but it is not of type E820_RESERVED\n"); ??????????????? return; ??????? } That's part of this structure: struct boot_params { ??????? struct screen_info screen_info;???????????????? /* 0x000 */ ???????struct apm_bios_info apm_bios_info;???????????? /* 0x040 */ ??????? __u8? _pad2[4];???????????????????????????????? /* 0x054 */ ??????? __u64? tboot_addr;????????????????????????????? /* 0x058 */ ??????? struct ist_info ist_info;??????????????????? ???/* 0x060 */ ... --- Robert Elliott, HPE Persistent Memory -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/