From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751873AbdB1Wf4 (ORCPT ); Tue, 28 Feb 2017 17:35:56 -0500 Received: from mail-sn1nam02on0070.outbound.protection.outlook.com ([104.47.36.70]:59104 "EHLO NAM02-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751465AbdB1Wfg (ORCPT ); Tue, 28 Feb 2017 17:35:36 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Thomas.Lendacky@amd.com; Subject: Re: [RFC PATCH v4 11/28] x86: Add support to determine the E820 type of an address To: Borislav Petkov References: <20170216154158.19244.66630.stgit@tlendack-t1.amdoffice.net> <20170216154430.19244.95519.stgit@tlendack-t1.amdoffice.net> <20170220200955.32e2wqxgulswnr55@pd.tnic> CC: , , , , , , , , , Rik van Riel , =?UTF-8?B?UmFkaW0gS3LEjW3DocWZ?= , Toshimitsu Kani , Arnd Bergmann , Jonathan Corbet , Matt Fleming , "Michael S. Tsirkin" , Joerg Roedel , Konrad Rzeszutek Wilk , Paolo Bonzini , Brijesh Singh , Ingo Molnar , Alexander Potapenko , Andy Lutomirski , "H. Peter Anvin" , Andrey Ryabinin , Thomas Gleixner , Larry Woodman , Dmitry Vyukov From: Tom Lendacky Message-ID: Date: Tue, 28 Feb 2017 16:34:39 -0600 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <20170220200955.32e2wqxgulswnr55@pd.tnic> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: BY2PR11CA0005.namprd11.prod.outlook.com (10.163.150.15) To CY4PR12MB1141.namprd12.prod.outlook.com (10.168.163.149) X-MS-Office365-Filtering-Correlation-Id: e53c5802-4112-4b38-348c-08d46029ff1b X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(48565401081);SRVR:CY4PR12MB1141; X-Microsoft-Exchange-Diagnostics: 1;CY4PR12MB1141;3:yVlLAgHGypHq9YO+dO54208xC5IJaz7IQ2MKwAxpCMF4PUDhd3Ls2x0uKWcuY2CtdbjYoLRhr4pBurg33gM6huWpyNALwDpz9lKgend0ieL/Tgt5mNuQgGhr2Whh4TIPNKLXP8WQnYelsPaZz76ajmoFsIHdyo+SzWIvXpj597ppZGMBVqwSLa3hB3dJ3AzhAa5s5D60tukmxGXcQDKAHDq69M+x92+dld9JQt2BLPT0FGcR9o0GSsqFfru69gWrVzaur0IGYghJaHooWHUidsi1gPYPQN9Y/BZe+l5aGlA=;25:/xbpDlCJl0WvgTVAWl30qvIV+/d2hzWICvLNN8/kUZeqc1P//NraFjmzcIa1UlE6aX6+2eYn7hJZTqF9T9gaNci4cvDVMOEJnxMjyWyo0l/v3zqlfTetzBo2Z3WcE/ZUn1flYXdfow+LbM/io+grbnwEKqGrPzSmvopNCLPamsuggZT4n6zpKdHewKQKiW4YyxA2dyDSTvWkqIAOtSXnPuD5I0DmThoRBuHBORrAwxx1g03vWoS0WNKwFapqwUUVuVMYg6pDxPBE7fUlqWbUraTv2OlL01mHgfZmiPvXV4+4r6ZsTE7bsrYlwsQ4R+Lb0Dd0lcFB6RMHyp0DrBxA47zUTR0/PEDRz4r+fDDMTq0l0mFYy7MwfREr+ecgVOI/R3X4O5gk8NiAbne9xTJnEabs7+GdWsuiZlvmbL74Twww3BlPkLL+qyQaZX1lOu5XO2bjGyYWOl7FHncJgkT4gw== X-Microsoft-Exchange-Diagnostics: 1;CY4PR12MB1141;31:ahPYzvNF+cXnMFzGQyfJIL89DNTxkJbD6+H/Xo1AjRsj/Pe9+UCzrWV6G83zrTfN3mIJwC3PXgb3Qq9cqKk3vrBURjLhf0V4MHhgUIucjIdgsFlQmiDlgX8kKIQDBbeExfPppCrMwq2RimCPd5t/DAxGXFF/oHMHcAictulwOywycHFT4fi6LJmd5TzCstlRSk0QGm+D2HCzv+tC04Evcr5njfGvt+zJQcIYBY1jMUjRH+Lko7wGIEp+q0SWDRkW;20:RtmF8Iozr3ohtM15/yOMW/efS6Y4D005IvsWqdTwEvy82i0MT4Xo8PBnOieHaaPSwUf0hpfHYUkUzzAc5RLJUFREYmQerXHJwOYgOMlHLWlnBAn3Ow9vxVBR15bOt/xpWDHVqC0I+7vKe75GpozR6hOf7g2mNere6oI774ueyL/KBQlVZDRb6klo9VggZIVYQ0888rxFaI58Bh15U9re2cfKmkirPseLmLO/WtYfJfEi62rjNNej8Qxtqf0pMD2TEACFN2ayyXNF7HgUiHjr3SmnBhMAkkVZYeoAoDSj8vJqMBXRUGrZWT5Piw+ysXlXVuks19pipkTUTrS918neGaB/51eU1kl7rMoX+LBAPXficzT+eMnMuYOQGCKpliWYdIkMxaVWQ7saZovLg8IsITrghHLKaMHaGcHeZxopzdqSTAZ2y1IqT0F3FLYS/0v+/Xp9rbwCZll1ihMGvpMF55chlfyO3UwHxQqiNF0GjSUvKjUjkJnnyRFcyEqdYgXq X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110)(17755550239193); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(6055026)(6041248)(20161123555025)(20161123560025)(20161123562025)(20161123564025)(20161123558025)(6072148);SRVR:CY4PR12MB1141;BCL:0;PCL:0;RULEID:;SRVR:CY4PR12MB1141; X-Microsoft-Exchange-Diagnostics: 1;CY4PR12MB1141;4:sMGcg+j+7n38SIn8g/tTZAGcgP0LDsElD39fZm5ESSFYyV3//6M1lBOBF7DD2tX47nsUcUNBHKTgkQT4+PYnRQVTZKG8SevalQrbARp7VnEDPnW7dUBPu13mLIlqFlZN73HqkZXXd5Q7Ty8Hxm1saz9pbZWN8bK8w64ESJRy0pLzBDf25k4rLKkGS3/9u+9fjb2/hBKdpUs5hyr/w1geKMbWAkgwhMXQIovW6Lrw9uSL50fvlyQQresODsJObUfdbnC7FE8xhjR+2YzzSpjwIEDBRVrDe/SjuPmAyduvFNKKT11ouott4WsdNbeHElrUIz+DKPhpzUOwnLFMGQ5k2ty6DZc3S+pBP6LKx+VQ6+6mtzA4+t8cFa3L/zodSz9vPI4IXM/wOqp8nR9fCWPRvWKpSidqVHaWE9NVpZ7SF6jH14fwrFGBhIg5gIpcAEhSHIZ7NCbkql6PZWdE+EbiAJpiiNSgp32eQy6WkZoaspBBcYvDAyNF0KCAEqvWfzQ2S7mYDrhlDWSIga53bZcubj8kK60uXplhbXv57BGg6epiSTqds2dSFzRNLnnKayz8EVjibD2FB5i7TPegYnZNBBGn++W9QLIclpUHF9ejrSbLdk+jUbi59zESp8f7qExBL1NyH8gKp5zEYlNTmdD6B8S+NIqtnWlSnP3CFtOsDzCRKia2enkl7xkqVUN8cZBjZi0SYZofsGi0iKZn3q310Q== X-Forefront-PRVS: 0232B30BBC X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6049001)(6009001)(7916002)(39410400002)(39850400002)(39840400002)(39860400002)(39450400003)(199003)(189002)(377454003)(24454002)(90366009)(38730400002)(575784001)(31696002)(77096006)(6486002)(23676002)(110136004)(54906002)(81156014)(8676002)(86362001)(5660300001)(25786008)(65806001)(81166006)(64126003)(47776003)(305945005)(53936002)(7736002)(6916009)(53546006)(229853002)(6666003)(83506001)(2950100002)(6246003)(33646002)(7416002)(230700001)(3846002)(6116002)(2906002)(31686004)(92566002)(54356999)(76176999)(106356001)(105586002)(101416001)(65826007)(68736007)(4001350100001)(66066001)(36756003)(97736004)(189998001)(50986999)(65956001)(42186005)(4326008)(50466002)(217873001);DIR:OUT;SFP:1101;SCL:1;SRVR:CY4PR12MB1141;H:[10.236.64.179];FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTRQUjEyTUIxMTQxOzIzOmtZYXZ2TnhsL3F2MlgyUEdLWDg5S0NzZU9G?= =?utf-8?B?eER5U2dTOWE2TUpOam1rc0QyaUhHbHJQSW9PL0g0WkVBcWNQK2hOQW52cGNV?= =?utf-8?B?WjlHRktGMEhLZ1gwT0tIRDFEM3ZyRndOU3NLVExjbjJUQkxuUyttMlFsRktG?= =?utf-8?B?OWtlcm10TkM3bGk5YmplTktselF4eFV3bnVKeUJCSzJVdFRYNTZ4elBzVEcr?= =?utf-8?B?NEUvZ2FQb3pTUFp5YXQxOGNQcWlFc0lGQmpveU9CaldrSFlMb2pmSnRWK1A4?= =?utf-8?B?M3lDckxVY2RTT1BnSjcwZWRuNDQwYzYxa1pidHVrK2ZTK1k2R1hYWDgrN3By?= =?utf-8?B?cGNZSDk1WkdiUHZRUmNTNGVyV3YvZkp1TG96UDUxUTY2TkdGeHh3elI2Tlov?= =?utf-8?B?YnJubjVDbW5WcE1qbDZ6QWRVSGhoZW9QWmtSTjhnVW1MRnpFekp0MFVsaEVM?= =?utf-8?B?cnVjYVBnWE1OTGswS2pxQmR0NXkzbFJGbnBHQ25SWlpWN0xuUGNPTFpTVzFM?= =?utf-8?B?VG9seDBiQzhjc3RZL0xrRUpsYTlObnlHV0dJek1aOE0wQ1dyMk10MGJSa1lL?= =?utf-8?B?bzR3cGRMdEVBVDdSd1YrcXY5dHVVWGNER0tKVHRraWlFaFVnODl1U043VkRl?= =?utf-8?B?KytDYlZCdHEwQ3hEb1lBbEpxdXN4NExDV0l6ZlJwT1l5aXVRbWFYRWR1STdB?= =?utf-8?B?cVcyOUhOZHYzUWdhTGNlNjVZb0NJUXZmcCtYNTZCTWhkNzBURFlRL25jajVJ?= =?utf-8?B?bU5RRFJnQWhxSTJQT2QzdHE1b1hnNlQ5L083Vm82UTlZZFcyM2QvSzdNWjV2?= =?utf-8?B?am44eld1bHlvVk5tUE1oVVNnU1hzUU1kWVdBQWlkT0I4aXlwcGNBcTRKbHha?= =?utf-8?B?MDJtOWZxOTFNeVg4UkJVcWJTeHVHTnlPdXVLY3Y5djlsVlgyZ2ZuLzNNSVpI?= =?utf-8?B?MWNZL1RxS2xrRVVvMlVrM2RweHhYRnc0NTNIMTFITzYwaUhub011bFB1SkR2?= =?utf-8?B?b0JHTmE4YUVSUkwreTdNeXVsM0NPQXlHQndqNHpkVFZFWVpaYjY5UU1PRTU3?= =?utf-8?B?endzWG4rbE43MUdubDF6TGY0bGJSSVlHUVlOR1RJZGxBS2M0VWFSQ2tEcVNZ?= =?utf-8?B?emFQNFJpczdSYXZhWllQdk9DTm1NMWVsMysrZm9LZFcvSWFvSTdjdEcvNFNF?= =?utf-8?B?cVVZbXBoK1lyMFJWZDBjU3dpbjUwdnZkZGZjT1ZibGFIdTJEUXJ5eHlYNHRC?= =?utf-8?B?M3ovY0RVQUFtTldGNG5CQVBPUCt2cktRSkR5b3Z1c3YyZFhOdmQ4ejJkWnJw?= =?utf-8?B?bStlWWozZERsY3ZFYnhFdzlRb0Q0L0ZrUGhQMnh1dEcxclZNR0s0NmR6RVpk?= =?utf-8?B?cVI2M2x6MjY2WW41MXRDTGxmUnRuTHdXaGEzODFqMU5RRDFEY1BvcTZNYWUv?= =?utf-8?B?YWF1dmlqZUpnMGUrcUJPclltcTdiWTc1ZDRVWU9CcEczT2l5VkZmOXUvS3Nt?= =?utf-8?B?UDc4VGVIQno5VVc5aXpzaGRnNy9RbkExZHd2V0dhNWNWeHIvRWtRcHlWUWxv?= =?utf-8?B?aTVadFlwaU4rSVFWWldkbFIrRW1rQ3FWK2YwZWdCWENrbWQ5NC9HcVdkbGZJ?= =?utf-8?B?MUl1TU0reUdQWHBoZng4bVhwU3k2RStGaWhvcUw1Z0JDZHdBOWJvVTBNdDgz?= =?utf-8?B?N1habGdBdzNLS2k2eFUwd05OelpsclFTNU9RNThCRHE3ai9ZVk1xR3Nab1p0?= =?utf-8?B?WG95OFZOdlZ6S1hqZkp6UWdCZUg4QklTTHFCSXhRMksvY1Z4UDF4Wms1NGVq?= =?utf-8?B?T292YU51c1MzNnIvRGtBTlFXNm1YMkNFaXRVc2g1aGY5M2liSUJXOVIwTkNO?= =?utf-8?B?REt2WHlKbWFoSEZJWXk4ZXpXUDVNeUdWYTBHbE1NS1FVS3cxZ1VOaE5uSFd4?= =?utf-8?B?Tk0veXkrcmJOTFI2ZS85UmxMVlFIcjA5dVlmR3ZmU2dVek5OTmo0KzhDSmhH?= =?utf-8?B?aUp5a3ZManpSVGgva3NUclMySERtSHVyaXBhdTlYZ1VBSUkrOFFQQnVTdlU4?= =?utf-8?B?cG9ndlNDUnhiRU5oeG5NWmVEU1doRWlnbU1OdDBBZ3VGdUZXejd6RUhkdzRF?= =?utf-8?Q?tR0gCug2eDg7+sb2fxFD+k9vDP6Yos3+VekWUigCpjC0?= X-Microsoft-Exchange-Diagnostics: 1;CY4PR12MB1141;6:KDss4qOuRlRgeqeFq8/q7UsdGJxSUb3Yuwvk4u6S2aK+vCoRENfPSG7LQ+DQKT1gcIuS9B7Teuyu8aplrKu60HKVLN6QPuCPbAxghi4IlM+qNHTbPKes3Ra3LFzJQHiX3RBesEGKG2QQwSHFGJmVfFEBwbxaI3cES0xOh2ngake2kiSqK61ESnskA3JV8McHnKnFVRS+7I+hSSOOy8QL3qe91+WkEaJG3IG5cwp9zMCjStdAHKr+kIdcQVddlbAdAXiC+UdflVqel6m5acdwOIok4InXzITrILhaa2pwncP6iQBzmDDGkkmHoWxN2VCoX2fzDsJiuxMoQug4SpFigE/8sCJSIaWsWr/oE2sFb/nIcKzZzxMpaKy6TyXoDsQzDOhchCm4T9RJ4BrZ66TZPWi7OP4LNdh5ifxR6EyeROc=;5:U03LUuqpJr/pQGCFU5G6boFPIqznq/kOxijpP7Ix/emlHZbvn6DYY+1K/zgq3k9USE2TdfX+j+kivD/PUzcXH0Zp4N2mUATa1KGYgZyc92EumKvwWe1bfp3kXuadhgJPnD56xsQvOmFGwKLwSbZLRA==;24:Ar81jIYDYEVTCoZgJroaVuuRFNdoBJjSGWZxbVPBs4p4wLPkoVewFtO7t0TY0n/aGeY3qXtTxldfFcY013b4+A1B0hwBLnBvIUz/TgRj0FI= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;CY4PR12MB1141;7:r/pp8hlzfbCd682pkR/lzqyLhcYXEWji0S4CXmSxy1LVWCul6Yn59OHwgTG8eh6d0h7bXEqiLBojr7BhSy2FbN7SVpOtuq3wpKrT4Lrjx5hPoWMgTXyKbA1ZlfiMRazwk6M8YpVyj17EkISqPotO5qlq6qyc46AXcM05yBFvuADmVBaLqV2EIv7wiiz6DjsI03Hqr8QTPuW0vm8SA1LqhWoFT5PtGcrn9JWnBBVuYAbBDm68QcyAnJ9MnNM4okRtvyB6Nu2iblWKWlebAMkv+TYdQiyqf4evLXGOORkrUfdC/kqJ5hSCwB47ub5QneGhQRA7SArQaUvZ+EWh4Q3qcQ==;20:Jj1EXOma/OgM4IKo+h3HNunSMBaPg+i+4s5lsysBpx8ftnKurMfli1AdS/gSP8Fw78lB1438PxfBrOq7Jvfw7FCFgbipsBqTClqv87NMNzorYMrkGucpTFzF+9sfA1BrVcSbDPgtclkM7hnCcrTOjKUjwIKhUko1m4RKegVleCYUHgB5j1hQYv2q5Te5njdGrre9Wv5SnjRFV/FDTh7bb7rWAu1lQwYTwT/a3Xr87+bz2ehCjcVDN0cq8UN/bDDZ X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Feb 2017 22:34:43.1630 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR12MB1141 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2/20/2017 2:09 PM, Borislav Petkov wrote: > On Thu, Feb 16, 2017 at 09:44:30AM -0600, Tom Lendacky wrote: >> This patch adds support to return the E820 type associated with an address > > s/This patch adds/Add/ > >> range. >> >> Signed-off-by: Tom Lendacky >> --- >> arch/x86/include/asm/e820/api.h | 2 ++ >> arch/x86/include/asm/e820/types.h | 2 ++ >> arch/x86/kernel/e820.c | 26 +++++++++++++++++++++++--- >> 3 files changed, 27 insertions(+), 3 deletions(-) >> >> diff --git a/arch/x86/include/asm/e820/api.h b/arch/x86/include/asm/e820/api.h >> index 8e0f8b8..7c1bdc9 100644 >> --- a/arch/x86/include/asm/e820/api.h >> +++ b/arch/x86/include/asm/e820/api.h >> @@ -38,6 +38,8 @@ >> extern void e820__reallocate_tables(void); >> extern void e820__register_nosave_regions(unsigned long limit_pfn); >> >> +extern enum e820_type e820__get_entry_type(u64 start, u64 end); >> + >> /* >> * Returns true iff the specified range [start,end) is completely contained inside >> * the ISA region. >> diff --git a/arch/x86/include/asm/e820/types.h b/arch/x86/include/asm/e820/types.h >> index 4adeed0..bf49591 100644 >> --- a/arch/x86/include/asm/e820/types.h >> +++ b/arch/x86/include/asm/e820/types.h >> @@ -7,6 +7,8 @@ >> * These are the E820 types known to the kernel: >> */ >> enum e820_type { >> + E820_TYPE_INVALID = 0, >> + > > Now this is strange - ACPI spec doesn't explicitly say that range type 0 > is invalid. Am I looking at the wrong place? > > "Table 15-312 Address Range Types12" in ACPI spec 6. > > If 0 is really the invalid entry, then e820_print_type() needs updating > too. And then the invalid-entry-add should be a separate patch. The 0 return (originally) was to indicate that an e820 entry for the range wasn't found. This series just gave it a name. So it's not that the type field held a 0. Since 0 isn't defined in the ACPI spec I don't see an issue with creating it and I can add a comment to the effect that this value is used for the type when an e820 entry isn't found. I could always rename it to E820_TYPE_NOT_FOUND if that would help. Or if we want to guard against ACPI adding a type 0 in the future, I could make the function return an int and then return -EINVAL if an e820 entry isn't found. This might be the better option. Thanks, Tom > >> E820_TYPE_RAM = 1, >> E820_TYPE_RESERVED = 2, >> E820_TYPE_ACPI = 3, >