From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753446AbdEPVxt (ORCPT ); Tue, 16 May 2017 17:53:49 -0400 Received: from mail-bl2nam02on0071.outbound.protection.outlook.com ([104.47.38.71]:49376 "EHLO NAM02-BL2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751300AbdEPVxo (ORCPT ); Tue, 16 May 2017 17:53:44 -0400 Authentication-Results: google.com; dkim=none (message not signed) header.d=none;google.com; dmarc=none action=none header.from=amd.com; Subject: Re: [PATCH v5 14/32] efi: Add an EFI table address match function To: Borislav Petkov References: <20170418211612.10190.82788.stgit@tlendack-t1.amdoffice.net> <20170418211848.10190.65062.stgit@tlendack-t1.amdoffice.net> <20170515180913.lhma7xw52irrdtvr@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 , Larry Woodman , Brijesh Singh , Ingo Molnar , Andy Lutomirski , "H. Peter Anvin" , Andrey Ryabinin , Alexander Potapenko , Dave Young , Thomas Gleixner , Dmitry Vyukov From: Tom Lendacky Message-ID: <2364b148-5168-1583-51c2-0beaa7230235@amd.com> Date: Tue, 16 May 2017 16:53:33 -0500 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <20170515180913.lhma7xw52irrdtvr@pd.tnic> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [165.204.78.1] X-ClientProxiedBy: DM5PR12CA0062.namprd12.prod.outlook.com (10.175.83.152) To BN6PR12MB1140.namprd12.prod.outlook.com (10.168.226.142) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 952bc5e2-3f34-4690-4cb6-08d49ca602c6 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(48565401081)(201703131423075)(201703031133081);SRVR:BN6PR12MB1140; X-Microsoft-Exchange-Diagnostics: 1;BN6PR12MB1140;3:CyTupLczy06JIJ0/iR4dV/vVqkV5iSgt/Q0gX75hIfOhl1b/YcRTd1yLCUGmpCwhyusNQ4g/ygdKaA3aEe6Z6pjWGHmivA5IbdSYuLe6VZKAYXvJiNvjwpu/DT9R344ym8f71rf2hbBE/0YGyw6N4j8xepcXspOKAXQBFCxpoGbwbPd/1EXq3HGQxjZ072oSKy833h68uMaaCY8NG4fjYNeJAqK1rwKIrm+9pevJefWhjuDEY9QjGqMWib/l3vgFkT1WsjJ9N1/wNQdcy7uvZRJgknN6o7Jp4GQYkrr582EVsh4iimghzVHwAKsj6dsMYAY+JRY4mmmabXvUrTKlc0aY+ZB4e3HFVCxMmZc3+f8=;25:/VQRlyeKjWmnO6NuR8eVgJGFMC2JvZXJwUj4/ONwrm80QB8mAl/AznAPglSnfPvzAsr6NKV0fFfT4wMYDQwcarfyoVPX+WHEHFF0DMF/fxFJ+bzmCZd7uZGzrA1kqE1tpdqf7wTsejciwT7SsnE9v6V9uTo2Gc7Ku3x2QxU3RGBjmZEVRyNrV034Do0YW95kWSo1Qq+zqFFHQo0jxV1nVSr9DxgYLI8L+ITiKf9YhZa8IdEPQ9XNEcrwoOW0Hb0r6gI84S7I4A4PY56njQG0mVLTE642h4/t9YJHCZ+8SyeC4iKgX8gnnTpw8PP1c7J+cY6xm0EZTMZGeSYXyFQw4uYK/DIXQKnilU9VrB/a0EOumbfPlgs9bR+Jx8SwgHkZXUgBW3dIXqb5ML+P2gUJiEFJdCk6kd06BB81cUb7Pdx3g3ckcgQe1S7jjtYIvSzTNmM/41PpFwo4z9AeTY2Psx24NTjGl803ndMGtuK35NU= X-Microsoft-Exchange-Diagnostics: 1;BN6PR12MB1140;31:EVybPprmX/RheqhQfgKmncItCDIHNlIzaNAAjmbvZPrjPaC/ocGxe8B/lqUIC1xo18qooO91FftUqVKOXTLClCz1YeDFe1UjzJrRKzafnXLpEz9BA5C2Yn0u4WoHSo2tVhAziy1Vetk+sJyUppPkY0yLv5V8j80AfEat+2cSFz+vFLO8ucZvyOWIVFVNJOMm4WePQBgzqmeUfF/KQ/WPeY4hcxbvNE+GREnTFsUPE2+TEEyT4NA4W33t79wRFxZz+33VAR5s+nj7MACmlYQooA==;20:mD/FabHiux0nm2SKnr5kxEj5CsPQwNg9GlTPTT5fEkC0E4+P03Fyc3NaqyqzKQb9k14QjTv6Jx8R/VoA2aN/+JHvc8dxfVOxnYLa0wnzNRWok4wLM+N/HhI96lsgNTZi4d+rk88Nbza9SJwvcL9smRyI+y96TqCJqz/F2XfEN/wDCvCZI50fF7ftm4J7Gipl17qPQqWTK5+5YO/8+xfkE9UGL+LEB9EgFwYO2aeOSvr1PIVxYd1w0gEP20ZGz1HeQMgN17Z8Usbs9+emEDwqdUYH75aW5CnhniKp5TeOnlsGYBLZ/TKBXRIkGLdWRb1h0LJimMIvT37q6Q9TmK8nIEf+YzjivK2FyT/vtD0nRZ1v1g4uNCrkE/RKAWghNHZfZTc4Dts4qIE7lSudN2p0myCEBW/B4CeOzZGaQvscIleFVLw6ClG3RBnvf+rnJzAX6NUbrBWoN+GKU0p2LR0hxNpqHoyXOoSy+dWsCYvs0JyPOKLFthXvnPnpAV/PKnXY X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040450)(601004)(2401047)(8121501046)(5005006)(93006095)(93001095)(3002001)(10201501046)(6055026)(6041248)(20161123562025)(20161123558100)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123560025)(6072148);SRVR:BN6PR12MB1140;BCL:0;PCL:0;RULEID:;SRVR:BN6PR12MB1140; X-Microsoft-Exchange-Diagnostics: 1;BN6PR12MB1140;4:OeswX4FsZ0Y1L9/NXje1GItnJ8qV3Z+rtlctGWkMO+8SmeMu3FjVItRLSN03QoWj2O5K69/T1hjN80BYuCa4BcsiKlnnAOXo4sHPHKH9BSxvHlU5eKjWGCQCLtvVylyFZcznumoJrNGUncQq/PcPZoHqiVnnQmlU8aJ7cDFu1J/yBzJlLXSbvKnC8lVH+NOOTq/L3ofwqR37l9jULep+UJpXnCui+283PBA3h4E+cYgwe3CK92envSAD9JP2llV5rY+k1ynUkLcC4sNjammyuOkQKWTz2DAl7jBXkEvDPq+dqYHfphK6QkFIIk6XKlgwaHBuB3zdBuboiPSShMZ0ke1wgFAVVU1OYCHXJGBoC0XHYJ/j2znjjminVynRFRLwYaLQFJWTowMaTYQ4hjhp4Ny/PGkZ9LeggO5iP9sIq/hckWiCpSOSM8OwfC1f3ByA/MrOXPIam7bhAwbgth4/u9jiq7jJQUnYZa/uBl8d1wA2pqmrPv0kmQCoGORbWD9PhKdHQujVLSmsZQlpBU5DvUqR5OcnHU9/PWeHKFYq9ehsmEFgAkxMDdHyACJGFQ96CBRnDmdND1Dmb6OiReFzCGuNNQejCnDY5Upju1J0HOo1QatFTIOO1J7ZaelJ1pwzZQvI7DA6qZj4YNS0QhQISe8aERVuEABSGWJn4V2r1zk8Hg9Yf5UBhCZrkRiBUy3DUKOf+D+T9O+Wqrc4fD7X4FgscAZZFAssqyoqG/QLIluQE4X+3+eaifGnXXOdJ4ZzL9PSyYFj9Wc968e23JY7MvMbWIRIGrH+YzqsBwMXbDYEus+zSFyBrLdLZJ+SP/AFD6XGgshA2Ua1VxRO65x4og== X-Forefront-PRVS: 03094A4065 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6049001)(6009001)(39450400003)(39840400002)(39860400002)(39850400002)(39410400002)(39400400002)(377454003)(24454002)(8676002)(81166006)(90366009)(77096006)(6486002)(33646002)(54906002)(42186005)(31686004)(7406005)(83506001)(65826007)(305945005)(7736002)(7416002)(189998001)(31696002)(86362001)(47776003)(65956001)(66066001)(50466002)(72206003)(5660300001)(2906002)(53936002)(110136004)(6246003)(23676002)(50986999)(54356999)(76176999)(4326008)(53546009)(25786009)(36756003)(230700001)(4001350100001)(6916009)(38730400002)(229853002)(6666003)(478600001)(2950100002)(6116002);DIR:OUT;SFP:1101;SCL:1;SRVR:BN6PR12MB1140;H:[10.236.64.250];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCTjZQUjEyTUIxMTQwOzIzOjRTVUJzS3dNUXhGY3pNVDFCTU92TmJuKzZV?= =?utf-8?B?U0ZWVUttM3FzQzBMQ3RFRjNIUnNHVnFjNGpibzFuNkdQK21EV1AvZHpPSlVk?= =?utf-8?B?YTc0Sm83UDVUUUJpTDFMbXBudk1xRnA4SHFrcDdMM3kxdTJydCs3Qy81UEdi?= =?utf-8?B?ZjVFVFVBOWFVaFJoOHl6Zlg3ZnRrR21hOFg2ajhGdWFYNjFUZkN0WUtuZVg5?= =?utf-8?B?TXNLeDBURWJYUmFuVm1VRm9GaVpEbzBvU2pkNnpacmxQSjhSS3QwaEtlS1lV?= =?utf-8?B?UFhvWXp6SDhGOEhLUWFCTHR6eVFTU1U2Z2F2dU9LR01EOHk2NjJWcWQ1UGlC?= =?utf-8?B?ZVhOTnd3YW51dSsxazl2Sk83RFZlNVoraC9OTkt6N0RFbk5Rek4wbTBBdE9m?= =?utf-8?B?dnZESko4RW9Dem9XM3JpRytpeFU5KzFhYkdzY3VGSkhkQVZoS1V6QUd1Q3VB?= =?utf-8?B?WHVvRXF6dTJDYktRT1diYysySnVjT0JaN1BUU2M1OGJZdmZ5N3RGUXBzcEVv?= =?utf-8?B?VmNpSTRmdnpncVBRZkNwZHpVeVRNSXE5Zy95QU5xTUorVk5mY21VUjBlU0hi?= =?utf-8?B?QjFLTGtiUmxaYUpYWDFVYTRkYUFwTnZKSlBXMkpCcjV1Z1QzL3VacTFQRDFh?= =?utf-8?B?d3VqVFFDc1JSV1B2SlVyYmVIRzArS1ExclpwSW5ZNXRCK3NETlg0RkdMTUtw?= =?utf-8?B?RDRld2NXUDdsYzF3a0FVYnlIWWVDaXlmK08wSVNRV3U4a2t6aEc0SmhQaHBq?= =?utf-8?B?RjNBbjFwSkpsOHQ3aXVBU01FdzZZOGJjeFIvUmJraElZbzdMSmxySXpQNlZQ?= =?utf-8?B?amlRRzZsSS9YSzF6ckt5ZmZhaEhFZXd6cHRRc0dYNVZsVXlwdkRVd1ZFOVRJ?= =?utf-8?B?QThNSGNvQW45MTBBLzR1QVhuQU8zOVRKcGg5ODVEb2NmMTMyUnpycWFZNGdp?= =?utf-8?B?TlZHSTB1cERqK1k4MGJ1Ri9KV1V6UmpkNU5KOExDYTFxNXphRTFkVXA5TWVD?= =?utf-8?B?eE90ckJFT2g2NEhKckhPa2lMSHpLL1VoQkZkNjBCMTFyUklmd3Zpd2VObzBt?= =?utf-8?B?TERNTG4vUHhuRmVMRWRGd3Bad2hpWG1Fb3VoZGFzZUpOb05xNmwvZDNmaWJ2?= =?utf-8?B?Z0tHTWk5V0dkQ2xZNWt2VldWSjRqdHl4QWsyTFREWUtKakRWbUQvajlMcE5r?= =?utf-8?B?dXpwNG9Bc1Z0NUd0ZE9ua2hZZnpoRFFyZTB2ZkF1TkgydENqeUxXa0laMGZa?= =?utf-8?B?UUhDWGtKL3E4TUpmbEs0UGkxMHkzR1N1ZW1KeFZLU0pBckNHYytjRmJtb2hl?= =?utf-8?B?dzNmaFFjcVVZVWhRN1kzcjF0eUU5ekFMREdKSGhOSGVYTzVWTnlWTDVRWWkw?= =?utf-8?B?YjdJdHNNRzN2V0FQdUlxU2pOQ0hSSjVDSVprQkg1MDc1dzMvRGZRbGNUa0g4?= =?utf-8?B?c2ExVTNCREowYVFnS2tUS01ETVZGV0tYODdaUkpXTmFYc040Z25OU0loUWxE?= =?utf-8?B?KzdrMndYMnlUNDNnbTExOSs5bnhudmQ0QXR4YnEyRGtFVUlOSWZhczBMc0lB?= =?utf-8?B?cDBjWmZBNkZTbUgrZXVySlZwSmxPV09mdlE5RHRNWE5wOHROdWNjZlVhNWlO?= =?utf-8?B?MVFveE55VjgxMjVSNmdjMSttSExEWm5XemFPYUJkdzVYR2llVmJBVmhVc0Fr?= =?utf-8?B?eStjMkw3dUlDMDI2cEorR3JBR0liYzh0M243UHhFYng5VlZSRzAyL0w1d3c5?= =?utf-8?B?TTBBUWR6WUdnSElmQmFBdUhpWlEyU0psbjRJTWsvTkgySHZHeHI2ZFd3Zzkr?= =?utf-8?B?MHR2Y3R0d25nTndidUVlTDF0TUwzQVdINVpPdzBQSzl2U1dWMTZqQUxLczdq?= =?utf-8?Q?br1JJdmoSiE=3D?= X-Microsoft-Exchange-Diagnostics: 1;BN6PR12MB1140;6:BuFj/vXkbuiZ3kVy0mufYTpLy0gUnRcUZseslF8dcz7Q6krW1vQIoZmKDYP3tdz/StIRZZz9PSg1aQglzCKuYjMPwaK25JLrr8LgKKzFbKS7Nf3uxKs9C3Ofi3RJYG61BV7EA45Edr3ot5zDYvWW7S3PfJhP367I0bWOVj/jhOf98b0Yk7ugc+i0qApg6CJaI77P3VCOcMQUdgKbXFJUGyYBM8KeTY/wiwmgCeFkpUrwHgVbsVHsZQJmD0HmzhJFXnuj//DCQoZezJrSXDeQMjbipk9Lp9iQf951vg21qaSJYsal6yIn2wzyiR3dKjwnEtKmtDUKRJniap3Y6SKFEIbYPQvqQyHYOdEatnQke2qzk5Q1p4cGwmAXUxeLbMaNjYiZPlPkpJXUAWPSkeDUTu6gM5egpAIm/xSt+bGYfq23UCqLicytHsifPw6xI3vyOLH6RqPpdTLnawf+UtR3T4ebUojDoo8jp98Uq5OTj6GDTul+dsTkVHvdozWCyE0MAZQvGZokg8OTd+Nzf75TXs3WK3BTq35pdKsjR5Vv2+Y=;5:1Ge1DYMqBhSOsOx1mdo61W9whhja+cY9Qs+jhhkcabFc0yMgmOCJZPTUrrpewwLlzU7gemGy8QTMQSoW38rAQ0MifizOZq4XTdPDv2oAYPjPIHcGq9E6GWOMmVva1Lg9I8uKZUNeMHhrCdExS1rnjA==;24:IA3GuUOokZUVk06SpfMXkhVkwIX4vY5uR4ofYtASjgglWfFNOHiMorIqb+ht7hGeYqRWF9tc+z9nUxBQjbdAwYnrQkyPH0etS6lktXIocuU= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BN6PR12MB1140;7:4klmgt8IB9zMPLy/GKmDuaPleFQicLvd/xSYLv0bkALsc7uO4gOerrS/WXGzrymIiaXrWs9f5LXrB8Ih+d4NDo72jOiJHUUuxVduRz21Y6q5+wh9ORns6fe4EPIeXwg31Xg/H3cs5JJK/lfA5SvSeiVdNC4+oI/yviFKL2FqXjLMaFvovbKIoMTw6DrzXGs61c5SO0zbJ821XXaz7XlgzKkZZqlc8fcYWFyX5sFeGMafs35FS7z1yiyT8nqAvWQ0wdjZRkDd60rv9LSQLkrtjgF2idGQuiap48U9WkbtLFsI16hVEIzHaKWvz7qLbV9Kan1w7mtu0cjOSLOSXcHt1g==;20:F0xzel5IF/QtAg/doPwfoaj3c1OdKaB7f9Y6LfBeZqYX9SoeYzauJM1LtDEBiXWlvm/hN4EIjCIJNSCTdjmTQxh2yprpDsTA/xkRHQ0kKdH2/pAvtLiUp/3oaaBixGRruaTSjNJk8qO/gig9LJwalwW16C5TBgX877qY2+RjXHIQFNA1WUJX3AM15wbvUXKt3WGsORDxXahSsbzpPRNcdfKpG6QsjHN/aHObX5d2hbWbO4Rm/YcBmF5puvKU1qnU X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 May 2017 21:53:36.6336 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR12MB1140 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 5/15/2017 1:09 PM, Borislav Petkov wrote: > On Tue, Apr 18, 2017 at 04:18:48PM -0500, Tom Lendacky wrote: >> Add a function that will determine if a supplied physical address matches >> the address of an EFI table. >> >> Signed-off-by: Tom Lendacky >> --- >> drivers/firmware/efi/efi.c | 33 +++++++++++++++++++++++++++++++++ >> include/linux/efi.h | 7 +++++++ >> 2 files changed, 40 insertions(+) >> >> diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c >> index b372aad..8f606a3 100644 >> --- a/drivers/firmware/efi/efi.c >> +++ b/drivers/firmware/efi/efi.c >> @@ -55,6 +55,25 @@ struct efi __read_mostly efi = { >> }; >> EXPORT_SYMBOL(efi); >> >> +static unsigned long *efi_tables[] = { >> + &efi.mps, >> + &efi.acpi, >> + &efi.acpi20, >> + &efi.smbios, >> + &efi.smbios3, >> + &efi.sal_systab, >> + &efi.boot_info, >> + &efi.hcdp, >> + &efi.uga, >> + &efi.uv_systab, >> + &efi.fw_vendor, >> + &efi.runtime, >> + &efi.config_table, >> + &efi.esrt, >> + &efi.properties_table, >> + &efi.mem_attr_table, >> +}; >> + >> static bool disable_runtime; >> static int __init setup_noefi(char *arg) >> { >> @@ -854,6 +873,20 @@ int efi_status_to_err(efi_status_t status) >> return err; >> } >> >> +bool efi_table_address_match(unsigned long phys_addr) > > efi_is_table_address() reads easier/better in the code. Will do. Thanks, Tom >