From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752366AbdFUNzW (ORCPT ); Wed, 21 Jun 2017 09:55:22 -0400 Received: from mail-bl2nam02on0044.outbound.protection.outlook.com ([104.47.38.44]:43968 "EHLO NAM02-BL2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751093AbdFUNzN (ORCPT ); Wed, 21 Jun 2017 09:55:13 -0400 Authentication-Results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=amd.com; Subject: Re: [PATCH v7 07/36] x86/mm: Don't use phys_to_virt in ioremap() if SME is active To: Thomas Gleixner Cc: linux-arch@vger.kernel.org, linux-efi@vger.kernel.org, kvm@vger.kernel.org, linux-doc@vger.kernel.org, x86@kernel.org, kexec@lists.infradead.org, linux-kernel@vger.kernel.org, kasan-dev@googlegroups.com, xen-devel@lists.xen.org, linux-mm@kvack.org, iommu@lists.linux-foundation.org, Brijesh Singh , Toshimitsu Kani , =?UTF-8?B?UmFkaW0gS3LEjW3DocWZ?= , Matt Fleming , Alexander Potapenko , "H. Peter Anvin" , Larry Woodman , Jonathan Corbet , Joerg Roedel , "Michael S. Tsirkin" , Ingo Molnar , Andrey Ryabinin , Dave Young , Rik van Riel , Arnd Bergmann , Konrad Rzeszutek Wilk , Borislav Petkov , Andy Lutomirski , Boris Ostrovsky , Dmitry Vyukov , Juergen Gross , Paolo Bonzini References: <20170616184947.18967.84890.stgit@tlendack-t1.amdoffice.net> <20170616185104.18967.7867.stgit@tlendack-t1.amdoffice.net> From: Tom Lendacky Message-ID: <859437c0-d190-240e-6aa5-5edb0b63aa9e@amd.com> Date: Wed, 21 Jun 2017 08:54:57 -0500 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [165.204.78.1] X-ClientProxiedBy: BN6PR11CA0017.namprd11.prod.outlook.com (10.172.17.27) To MWHPR12MB1149.namprd12.prod.outlook.com (10.169.204.13) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: dd8b8700-f837-44d7-afea-08d4b8ad1f7a X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(300000500055)(300135000095)(300000501055)(300135300095)(300000502055)(300135100095)(22001)(300000503055)(300135400095)(48565401081)(201703131423075)(201703031133081)(300000504055)(300135200095)(300000505055)(300135600095);SRVR:MWHPR12MB1149; X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1149;3:HBt2gLoc453jNzC8SMRrG1tRDmJySRowbtrje4Ek2IA/YAEWpKuW1/kIS/Oo8QYrJH34u6m5P9UlwweZ8EOjZO0xxgzuRUK+0FXvYnSZrntZGEc7onOFngezvSLLflw41S+0dYtV3XyryjT205+VWlPbO9cf2kSSIxkZldNqMpdbwB0Hh1pLL/+O/Z5jYNYMNRlkdvmQIUc4DbKTAOHtZKpVaHlLfLvNdeeeTSvok+p0Cq+yehgYZWTXEl8qMT6pRHuZBhqxBFwtrp/6rzV2eeAYREEda00W9+tdQzcOdyun+zAo33KavrOq1CxAGZ9aMZPuG8wu7ifUzDGG5U1rlMXcOC2BxtdI23CWxIWtaKJOT2RME6oQ3sy+4qqXzzX6bXtwvWJ4NU9HycbDYklTJTAX3Koio8hgT5NqYuWbnxW2kmjHwv5UX+/WUi7A3RHCz8XTt9oWcmYdu2euV+5IIpnZdhxU44+ejNS/B0O7Boxy8mg3KQ3YpeJ6LXbXq2mzuSl+evb/VT/i9BT+Qak7iMq61Vj1beIdp26RB9X6Oha3Nrvk1dCFMdn/I0nKwEFZRin40r2mOVGbVjfO51vqo34T/YEhJu09/eDgRiJiycSBJXvrT1nNMRlvZn/F0Jjm2DFboMUh0aClak8PJfE9dC37T8RV83+W5QO+rH+eXOBu09lyT2w38ijcoBVwX2dwGt/wsR6E2RhcaLXAc84yRQ== X-MS-TrafficTypeDiagnostic: MWHPR12MB1149: X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1149;25:/NQ3TxeKzbb52ueZiDodrK5B9Mri4q7BXKjP8vmlgHu+8DmbgMwKrF9wbPhb4M4Jo4b5VGgpHPgUZ0HoJY8VSOH7RcyyF69NeQ8YllqZu/whavagJAVR0YVQGXcztTzlRclI0yD1U0FhSUSFP47r1xvrPt6fLmZ9Tw2XCHnA2UuiQLdfqN9JpHyRw5dseZMduQGx6gBwtVXDMOpqOu9m2TT+Fr2Mohf85Df31gtuMbcZsOWV4pjAYlApDzhuqyQacJKuY24QfYZU8t9ihbLO5fgDsl0bYXFc+nzWhm4PFjxvCTEGxwo7zGRKnpH08MObHe/auE4IKyRhqVBCkW5CbEoEuGgx9eirJGwF41IApRPRZJ1lwFXYlYVv+cB4ORct4eiNqSCv1mW71B+B1Amf+uOtoZwHrLqY/8b30PuvxW0HYAovgZHjzV3IE2p04hDsntr7V+ZA7hZWoAxS+YrrIrDJo3rRiO1W5K9j8v+wcTPiuk7ooijY4R9qsShv3WqCj8yAaXIF33DMHA8Pu9JiL+XKb2RnYtlUeJSek8mUPxPCfjkI+eCLE4jXBfD1drbroX04KieURbWBf9wCMJmlXWBaUDP1OsrnvZGkL79vEjnLlucFN7jWQynGvks12iNuVDXWqMSZP2C0/QUIwkwZxH15vTJ4Ypu9TAn/NuJVK8rfGZNIFOJDyXmwFFlUnguDt5txZ0CyN3miajibQirFLkwTU4da1yIO2yS19vmgu5J89sskPxvHwcLO0NTwJ6rY7rJOuekylJestGcU3pEZdPt2QyhCPfaePDD4QJ+E0jn2ktCgd/oE1fV7TFJnt68QcHVH/e3QAhPwPlsq6NsZKDrzwXL6TAojZ3KjX+jtWYaNiZw39v5D2NZ8GdmlAb4YquTKizBqxVCdwCXTvEdxtV8+bYen9xgt+I1CIKC7NEg= X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1149;31:d6mSkQIbokK7Cs3grX1/tM8VtIF018iQVY7Bk5mEEMG7zVdN56GzyoRwF2DxK1/SZOLhV707WdB7cC/3B0Z87sAvjDnCWA2+a+uLElfp1Ft3TajUtPQNjg9k0Q4UvetQzkbXVt0sDCmZI1zcYCtkxrkMTiIicpAp2UylFClX/hOrWltsDyUGYTI1nMJgQsidP2NnYGEV7GfdiQ5xVeG1ysj5cMqAhb+37rIi9JjO9yv5szH/dE1BJtDh2zFXcORwV5WKH2DlWEToL5e6UNgp3mc+iLNS34pbfJxFKzGZIWeKRUzQCI7CTSlPi5RvZXQ5QjKfzYAFkEU/NXpi4nVrK9yJAXZwLXvsyfUL8hQuMDF3EyfcyUr7vB25Jkc7A2EFLUmqbt4vtOn0y/iTbP0uEcPMZ8pKkrZ9YCvIgkWOzyfPzSp4H2XilfEkECIdjlQbHtX3vLq55FnkktHel1+uCyY2NYmpQRGVB3fCukj7LzUC4EzW2dJP8wVrJlOjlFdgZyq4dZv44mwTjxxA8I8OVVxYqfC0wDQy7KmU0Cgz4EmRho9t6T6fd2mHdwk9E9+Et148+3a0X9td0ZwvdV3FeFFO37+IZCGNj7I5nJlItSVtxvt9zIYOuBLH0aHTMFM7aK9ccN54DwUBv5fCBFDblvtuLWBJe91DZ2maJcLONPQ= X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1149;20:3cQV7SiWe2l3/dM4Luw3G1DEzSAR2z4aQ1ED3jyj+3e8bCpa7QeVweHWIzSscv96jqyE5CnksZXCeM9L68toldROUYIP0Omkwiij9WuferRDfXEi4MtFRrRFUFpYH1w5wvjcq1zqAJywb3JXJZY88jCR5pC30R8qft8lsNx9IcOUKqvJj7+/iuHYE10sNScH2aosm9krak6zIRGp1oTjCn/KukdNt1cyAI9B5xM/bo0PtmaGjvM9T3pVOIZzgPiFoS9z9ceq6gB7Y/OgBo9iDIjkPE26WEN8AYiMCXkxt5kZLQaVaZENKAcEEoMNBX12kFicT1B4mGVGH+bxFTWJFbsatbDHM1RpAw4bg5z9M3hClI4OEMqIJWGv2eI2JOWzdH+rWecL+kxey954WStMy3VBmx3LFmy2Db+Bg1N3JsaN3JbP9wijSZ0oUP4qFvluvFbHGu+B8K2alUDgMiQhYbjT1qapF3bK5njXj9lRNbx11Pt2J/jhgrzVOjysJaLp X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(10201501046)(100000703101)(100105400095)(93006095)(93001095)(3002001)(6055026)(6041248)(20161123560025)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123564025)(20161123562025)(20161123555025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:MWHPR12MB1149;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:MWHPR12MB1149; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtNV0hQUjEyTUIxMTQ5OzQ6eE5LRllhT25YeUtrdzVuYTJVa0c2Q1ZyaFBN?= =?utf-8?B?T1BwSzF2SllrRUlYVldabmorTVhJcXpRcWdKWjZDOVZsRnBMSkwyd1ZMcGJC?= =?utf-8?B?NitVdVhnMVRDbVdKdWtGT0FqUGJKUzdEWWNrVDJRaC96K29kMllNQ0pDeFJO?= =?utf-8?B?QVUra2pOYmxZcnhQQ3JtVXdobDRCSjJrOFI5M0sreTE5Wjc0Y1Z1QWQ5OW1S?= =?utf-8?B?dmZSb1NOUjdTdDVxanFXbDlZR29VbExpMDd5VHcyYkVWZFFxMVRDVzdaakVX?= =?utf-8?B?NE9nUjR0MUR5d3BHZkZ4YUQyWWwzRTlaRTlVbmUwSFd3dzUyQVVyR3JVR0dy?= =?utf-8?B?aHhPQ1JEVWZkRCs0MFVrZjBLVS9pZ015SGhqQlBSR0p5aCt5OG5vVm1pd2JS?= =?utf-8?B?RzJMc0RyZDFLQTVHOVRjWGpSdEZiTE4xRjRkUEhzcWlLTHlJK3hzR0ZneWlC?= =?utf-8?B?OFB3cUJGL3ZINVFhL1FPTFljeFpWR1hvbDNhaklYY3JQaEZCdjNVZ0pNYk5M?= =?utf-8?B?Vlh5M1pOeDBKQ0syTkczRWVyRFlPSHpnRUtLRmw3b0o1blBqV05RS2RqT2JW?= =?utf-8?B?cHFpclJReFZoOUhCbks2clRTSTJ5cXR3UVh5TG5LVWxIb2hkL212NHllVGY5?= =?utf-8?B?ZkxQeHNrVTFCck5lSjFMM2JwSklRSEJ1UHlla3NwZjY4Sk14TmphS2wyWGVs?= =?utf-8?B?ZElCQXhnVUMzTklWWHA0QW8vdDVXNnVURUlNRExzdWdFY0RFM2dKMmxuZ2Y4?= =?utf-8?B?NWRaS3F1UUhHTGFOV0VZalA2R1Y2V29CdUdXUGtPbGdTQ3l6K1kyYlBJYnhn?= =?utf-8?B?Q2MvdXdvNXQrZmh0SW1WWkVsbkl5aGVZQTM2VnJjNUZsYjNrOVlRZW1LWWZP?= =?utf-8?B?WkJoN3lXK3duVml5ejErSGVSeXNrNkZQV3BnRDcyNEUwNEhZbHkyT01HQ2tF?= =?utf-8?B?ck9FUkRMV2hZcExDanFKRERpb21ERVQvcExMZkkvL0ZBdDhhUEhYNDZnd2E3?= =?utf-8?B?V0kzbm00WmVVUnJDbUxtdW55TW42RCtrd0MzNm4xbWRubGdOYXExbnN5R202?= =?utf-8?B?bzZHVjhnU0Q3cjNHZk0wQ1J1NCtpdlQ0VmI4ME1OcFJqcUp0Zk9lRjRnOWwr?= =?utf-8?B?YXFlN28xUGE0M0Z3SzM1QnZ2dEVtQ1V0UFdhWEpDdVdzZlRiTmx2VDJvTE5M?= =?utf-8?B?TUtzOEthWWdGTEM3RjFTVDlrbzJzSmcvY2ZHdVFPNnBsTm5DSlplRDZNY1pr?= =?utf-8?B?UVBkQmdvUkpKQ3FGTkl5U2tST2NPZSs2aG44amJGNTRjSUo0bmNtRU1TMTRB?= =?utf-8?B?dTd3b3ZKSk1zOENjZ3JOQTlPWWpmbytRU25GYzdVbjZwV1NrNHBrYTFuczRh?= =?utf-8?B?dmREeGN5QitxQ29HaUVVaVlMdnBnU3dIWC9wZ3RZd2JRazZkWVRjb1JRQW5D?= =?utf-8?B?WndSSUI1N2dSMVlTSVZUZmhyNVppUVBZL2tnV0hhQS9maGNxUFVpdi9NMVlw?= =?utf-8?B?aXFqWXdyZHN0Y2dNTTJrQTgydzNGTFdwS0hMZ3JmRjhyZy9CY2c1S01HSUx0?= =?utf-8?B?TXY1aW1JMkttb0REcE5ha01YSk1LRkErQ1RZMEJxb0lMckNDVGRwL2tHdjBr?= =?utf-8?Q?9HvcwbFTFj9q5C25WOS?= X-Forefront-PRVS: 0345CFD558 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6049001)(6009001)(39400400002)(39410400002)(39850400002)(39860400002)(39840400002)(39450400003)(377454003)(24454002)(54906002)(7406005)(47776003)(7416002)(72206003)(4326008)(65956001)(81166006)(65806001)(478600001)(8676002)(66066001)(77096006)(54356999)(76176999)(42186005)(6246003)(50466002)(6486002)(33646002)(64126003)(110136004)(36756003)(50986999)(31686004)(23676002)(38730400002)(4001350100001)(229853002)(305945005)(6666003)(189998001)(5660300001)(7736002)(6116002)(2906002)(3846002)(31696002)(3260700006)(86362001)(83506001)(25786009)(230700001)(53936002)(6916009)(53546010)(2950100002);DIR:OUT;SFP:1101;SCL:1;SRVR:MWHPR12MB1149;H:[10.236.64.250];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtNV0hQUjEyTUIxMTQ5OzIzOmExV3haeWNsbmZLK2xXa2sxYlU3V01JckUv?= =?utf-8?B?R1VMQzJpamkwelZXcnYrbFczVHIweUxINUl5UkFpclJkSUduMFJ0Nmhsdk1i?= =?utf-8?B?cjRVRFJaL09hRWRkVUV0NnNHLzFNMmVoNXpRWmE5cVVIelo0RmpFQmpKaFU3?= =?utf-8?B?TnNiTVNsdEZab1BZYWkvSVFjZ01YN3BwZ3I5N21kWEd5SUY2WEY0NTV4d3RO?= =?utf-8?B?anBPbDZIbjVWWUNYbjI0YnE3dS9acmVxbDVnNUozTXAxRFpFbWpuZW92QzBx?= =?utf-8?B?U1NxbFdyQlFlTjAvSC80SWMzemsyRkViZjdSMllaZFRyM2dRVzFjVEtOMTdm?= =?utf-8?B?eGMyVzVBRmRzM1pURXdkVkxTRWxwREF2YXBVeDRWQXFWUTYzSEtGeWJrVCt1?= =?utf-8?B?Y2ltKytQb3hSWWs2R2dySW9xV0pZTTY3REtOdVZTelEvdXc0blRkeDR3U0hn?= =?utf-8?B?S1JHWlNGc2w5K084SmFiWjc0NWdHUWVPdW91RUZkMGMycngzZmFMbmZiRjJ4?= =?utf-8?B?YTYzS1dyUkVFTkNUanZISlZ3VzFSVDNKbW1SSFFrV3diTXU0VlJXYXppMVU3?= =?utf-8?B?VU9lZEFGSVpzV0FOZTZvQmF1cE9nUk5nR0kxajZmdGx0NDU3Vjdjdm93T3oy?= =?utf-8?B?cUt5MVBiYmI0NE8rTUd5SkpwdmJldUVCNmZGLzUwamFBRHU1UWt1UHFTRHZ5?= =?utf-8?B?YmpaVmZWUTFQcGxNY1FJYXZIUUlCUDE3MVRrYWs2dk5zUFFnL3FDazB4ZXhH?= =?utf-8?B?MjZTczNsRS90NHk2QnZTZnExbDdON2loaW82TTlsUVVPVjdhNEp5VlBKZGpE?= =?utf-8?B?bEZoOXZnSTR1OVlMaDR4eU1OYzNhWGw1c2pWMVFza2hPa1lvZW55YTQ3QW9t?= =?utf-8?B?UlFQdDhGT2p1MFJidWZCNTNVeHFIWnZwbmdOY2EwQUpSRDc0RzNkb0pxZUFJ?= =?utf-8?B?ZHlwTW9ZcHNDcUhPVmpGSy8xK3NTaVJVZFNGQ0JrQ2VmcWdnTmJ5SlRISVB1?= =?utf-8?B?SFBRMk9xUGV5T05BdmRHS2xvTjBaa1FFK3liUkE2cXRESDdWVW9sOWpyU1Z1?= =?utf-8?B?R3hXRytzaWM4aDJ0RFZSQkx1bmJ4NGswSE1ZY0hEcXJYVncxbSs5Uy9URVBC?= =?utf-8?B?bTlwNUNZRFk2QjNyWmdBSFRGaDR4NHFNTVc1cWFDNnFiS2xqTEdEc2VQMndQ?= =?utf-8?B?U0F2Sk5qWXF2M1lnU2RxZE1EZVFuckh1VzNNS3BhUjYzVmVNcG82cHNvcG10?= =?utf-8?B?RE9wZUNYTEdWM2N6M3JNOHpGRmlENTl5ZmJxWHkrbm5NYVF3R2Z6U3NnYkVm?= =?utf-8?B?M0pJNmJEdm8zYUsvUEJmaitaejBsOUR0cm5NWkt0ZWRmNlBoY2RTM0plbUV1?= =?utf-8?B?RG1ZT3RFTkRMUy9URjdGZmRRdzZmMFpkeGtSeHorNkkrNEpyTVVodXU2eFRn?= =?utf-8?B?R1JUSXE2VG54U0JnUHh3UGRTQk93S0IvQ2FCOWRJeUMza3VtVmlnMGhpeVlJ?= =?utf-8?B?R1dmcVBOdnlsaGJSTjR4K1lBWStIUnpVYkVqY3dlczJQMFRhb1pOeFE0SWlR?= =?utf-8?B?ZVVkazlHdVdVcVlrY0Y0Y2ZQZlVmUENDYWs4Y2loV3Zuc2F0U1I1OWxEK3Ra?= =?utf-8?B?WGpyRnZEZ0krUklic2pvN1NVV0R1dUY2NEh0K01iWXJsRVFFU1pZRkNXbFBi?= =?utf-8?B?eFRFc1UyczMvQ090SmFQb3B0dFJ1c2pzMmpsQ2w4Q01zQmFsVUhjeUVuNTRO?= =?utf-8?B?bW5YMjFFRmNqZlE0TmU1RnBNK3lmbVRGWDNuUE5XYjNXZkJPYi9EaC9yQXRl?= =?utf-8?B?UW9oZ2Rxb2tJajZUR2xUY3dYWnNOMWJteHd3SDhudktqYUF6eDJmaHFXRmN5?= =?utf-8?B?R0xUMjh6Q2NvRGEwNWZuakNPTkw2bjhsZUFESmlpcUVzeDc0b0dIR3hYT2w1?= =?utf-8?B?YXN5UXprRGlRPT0=?= X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtNV0hQUjEyTUIxMTQ5OzY6UWYxTVpBZVZld0tPNFpXMi91K2R4OFNqcGNB?= =?utf-8?B?Z2I0K0hlM2JGcUw3QzVhTVJLR1hYRGROaDg3aVUyL0NBeExxTkZXczBnazd5?= =?utf-8?B?TTNCbU5GV3B3SldOaWEvTUJBSG9BUnVxZVQvTHB4Nm5DQzkzNEdBSGdvbWtx?= =?utf-8?B?d20zMGtvdTVsSnVTU0lzZmlwbnA3NGdJY2xLc1VKc013MWpOd0lFU1k5NGhJ?= =?utf-8?B?Yzg2MlFZcGswYmdmUDFHbktFdlU0bjkvQ1cwN0g5MkUwdTF3Sk9HQUhHU1o3?= =?utf-8?B?UThoOWZVQVIwYzg3QWN1Nm56OCtOaVh5UFdFMnNlVWw4cnV3UEJWWkRMQ1Y3?= =?utf-8?B?WFlsS3VqU01EcVl6Q0JuQjRzNi92Q2lWSU1aaVBhc2tiWmtRMDdKTEt3ZjB2?= =?utf-8?B?UzY4WkNNTXpWWmYvYmd3MExHdGk3VHRoVGxPbHlzS21ydGdOR3RaKzZ2a0Ns?= =?utf-8?B?UFlmTXJBbFI5bzEzUEl5VzVGblVuMGY5VW5MdVljWHVCN0JLYjZvYngzSmdP?= =?utf-8?B?SkEya0V3MUNuKzAvMURoOWFUMTBQaTVNdG5yQU51U2F0WUdKTEF0bUhWQUxl?= =?utf-8?B?aldsZ1FMZWZtb3dzNVdMU2cvT240OTRYMkRmTHJyeTRYRWNWVjVjMkZpZ0xx?= =?utf-8?B?K1A3T01tQWN0c0tiUTFIRUwwYnI5VE1zanM0azQ4d3E4UDRZYlJiVG5sRURE?= =?utf-8?B?WE0vYnJhd0lWN0ZtTnpvSmVvMFREeGpvMk9LZEJWZG5sbDNXY1BKNWp4V3dJ?= =?utf-8?B?am9ZUFBRUUU5Y3BJYVdBOVBobkYvQUNVbG9ERVN5ZnBoeURsWVdUS013UUxm?= =?utf-8?B?R01iUHNHUWVFN2VaVExnMWx4VkROSnBsd1o3NENtRU13WG5WR1BPdDZTYnND?= =?utf-8?B?NDVTNzFEaDFMMDRGcHlHaVFsYXlFZlR4VFBJbU5jdW85ZXdVTm9hMXRqdlRp?= =?utf-8?B?aGhjSG5mb0RDZmRaQnZKOE95RjNPbDUrVVBIaGJuZ0FLdE5LdE9DQXFPT0po?= =?utf-8?B?VklWWlptanlsKzluL1ZOR0pHNlU1M2hURW9JN3JqYVNDekF3N2hzUS9TM004?= =?utf-8?B?VEtZSEJrK2k0Z1FMVUU5aU1aZUd6ZHYzTnU5MEJVQmcxSHBCRVp6NTUrekxP?= =?utf-8?B?OEZGNHhzRXkxc0xxUzA5TndodlZzcUpoRUZyMWNRMlRtaUxXV0E0eG4yWWI1?= =?utf-8?B?aFVwTmlVeUs3T0dBOXI2V2NpYm1vanVEQjBCaHVBbGh1SThKQ3dSZmN1dVlv?= =?utf-8?B?WnpCRVorc21ENCthakRPZVBJM29aZGR1T1lObFBOSmN2QTBuYzNqVGhEaEVa?= =?utf-8?B?NnljWHhuamFBUFp1NUk0MmwrUDdsVlpxRUdhTEYwemR5VnNOTThXKzhBMHow?= =?utf-8?Q?NVXLYbt?= X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1149;5:NajSTvCHpR9BzLgaKmlqenPytpvXZD89wMkH9wd1fjjEoM8Dor/8fYnpiE/kk5XL0P9TsypQKj8jvJpnds+/1xDJAQvjrzOCfVyW1xGnHbtTEjhRtH0tt44KcOvHq/T4u7AIjbTerndYBMm8kyJHbvIi/61NibL5xSr+5cyCFq02qi9LTOoYIGhBuCBu1RWLw8xUw+z8ARCXl4ZYE1Uvhg2TMfGgsaKvT4DxZv1/ZkmmvfCvz1tx6LzMlnd8fkjIZnN/skggfy3noyhXFo4HSOvYRyVk8zgJ6JXUgFC/o2BCowKj49kRQ3NC/DdQXg3UPGndUSNqzM90awG5zipYnO0Q6iSG2k/E1dujmY6gzpsb91WsePG+hSQraO1nQukxmKK2KPp41iyN7Fz+AhNUJvIYF6V+0yDwutm1BGRz/BLHWPIhRGwUO+oIioMP06le1iYAGdv66ikYZT5+mUlALdmRKn1LVZbsyllAIETyXeu18WqBTeCECI1DFxgpNq/j;24:FHLiinshwRmPnWHUSoPSFBpzDgsczh8TL/sRLUPnCZmrY91NMAWFPTilKECh0a/ktqyDPgtB0SfHjw9Q9tmGACVdZ7Qf27U3IhYjeDqF+Zc= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1149;7:zueles3U1XslyydrTCymZY5hn8q3aTRppqyv+t2fl+KJbO2Qx2zmxQxcP3LvTGVN9xtkUVwqu6fwKxmj4HwB0jfLvKg1HXk0Q1MlSUpt5MO2/CfSx5dRoWWZ10WglsPJQUaeorwpUzFjE6TB9NYpCq4AzaSn55CT4ykL+SHPuciYdDwxKRaDacfSKFWk12ButD37ZPHg1b/XK5fBwMHHpIcBJTL8d6i9ttBprcvNk+++SgvrRXZcka/WJwbkHqzolbZiHOAIs2iG6gedNhtJoVjxMUBnMmKSm7kXKRb5UsndhsFZ2yPaIOCnOwhhANXDH1znl6pOoeWiGRJCj3P+CkFYHT7AJ2StY1tMzdTVYc2XaQLZQuVqkbSUhgyfjGwPvAbK07NC9LTFZqpcqEoPcz/hDnwEHetThj7z1u/HDfonVffH+QJCw90exESH/+FV+KGB/PTPA2KxUltrHpb0px8FCObIOKbKbRqpRF+CfiDk8VkiCGnmALDRXYTX0Www5y/bsmiYi7GXwBg/vsSiLW1LteDMMwNVkjVEhrP0qQ4g7ptffOxRMXuVHUZko9PVWK8aRIO3VmW7LAQRze7u3gJrkOf3QAZA9lQ0eibB+93Y4eSmRyYzmbq+mZw+Nm6aXj7E+jTVvO8j7I9lPZ9RTtPQf4mbO6KyIgNsISZ1zSYqKxG8cJ+ysrdbOxUi55cOdJ5u0RWqSckVSM3lsNCLkEreC5VT5ANQ29qyLWi5dDTnfhOFpsh8738t8teDfHNk41549stp0vrijkowBjMQKIW1HmJUezte7gTC+S3Prhg= X-Microsoft-Exchange-Diagnostics: 1;MWHPR12MB1149;20:YN7eXPomWJZSPgre8FbND1kFCOJ+JqZ8V3apPHq8Exp7hgmQgMzeQroZCOm3BZzEb2LBsaIupXWj47uHwjdixpcDiHjLBe7CP0lSO9ORLmoITYZIXEwxvh7cw2lchRgoAkOgnFDqR6rUOlDz53iLLcvENU8uNdzXQR6P5jsIUfhoU5RUWBtbX0KHWEa4tffj+uZ7Z8cVEcH+4wfoLCL6gGLPtUy7+/Bhp4TFiBqYLNeZtzsIWdzDUGhaxwUbMxZz X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Jun 2017 13:55:01.4878 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR12MB1149 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 6/21/2017 2:37 AM, Thomas Gleixner wrote: > On Fri, 16 Jun 2017, Tom Lendacky wrote: >> Currently there is a check if the address being mapped is in the ISA >> range (is_ISA_range()), and if it is then phys_to_virt() is used to >> perform the mapping. When SME is active, however, this will result >> in the mapping having the encryption bit set when it is expected that >> an ioremap() should not have the encryption bit set. So only use the >> phys_to_virt() function if SME is not active >> >> Reviewed-by: Borislav Petkov >> Signed-off-by: Tom Lendacky >> --- >> arch/x86/mm/ioremap.c | 7 +++++-- >> 1 file changed, 5 insertions(+), 2 deletions(-) >> >> diff --git a/arch/x86/mm/ioremap.c b/arch/x86/mm/ioremap.c >> index 4c1b5fd..a382ba9 100644 >> --- a/arch/x86/mm/ioremap.c >> +++ b/arch/x86/mm/ioremap.c >> @@ -13,6 +13,7 @@ >> #include >> #include >> #include >> +#include >> >> #include >> #include >> @@ -106,9 +107,11 @@ static void __iomem *__ioremap_caller(resource_size_t phys_addr, >> } >> >> /* >> - * Don't remap the low PCI/ISA area, it's always mapped.. >> + * Don't remap the low PCI/ISA area, it's always mapped. >> + * But if SME is active, skip this so that the encryption bit >> + * doesn't get set. >> */ >> - if (is_ISA_range(phys_addr, last_addr)) >> + if (is_ISA_range(phys_addr, last_addr) && !sme_active()) >> return (__force void __iomem *)phys_to_virt(phys_addr); > > More thoughts about that. > > Making this conditional on !sme_active() is not the best idea. I'd rather > remove that whole thing and make it unconditional so the code pathes get > always exercised and any subtle wreckage is detected on a broader base and > not only on that hard to access and debug SME capable machine owned by Joe > User. Ok, that sounds good. I'll remove the check and usage of phys_to_virt() and update the changelog with additional detail about that. Thanks, Tom > > Thanks, > > tglx > From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tom Lendacky Subject: Re: [PATCH v7 07/36] x86/mm: Don't use phys_to_virt in ioremap() if SME is active Date: Wed, 21 Jun 2017 08:54:57 -0500 Message-ID: <859437c0-d190-240e-6aa5-5edb0b63aa9e@amd.com> References: <20170616184947.18967.84890.stgit@tlendack-t1.amdoffice.net> <20170616185104.18967.7867.stgit@tlendack-t1.amdoffice.net> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: Content-Language: en-US Sender: owner-linux-mm@kvack.org To: Thomas Gleixner Cc: linux-arch@vger.kernel.org, linux-efi@vger.kernel.org, kvm@vger.kernel.org, linux-doc@vger.kernel.org, x86@kernel.org, kexec@lists.infradead.org, linux-kernel@vger.kernel.org, kasan-dev@googlegroups.com, xen-devel@lists.xen.org, linux-mm@kvack.org, iommu@lists.linux-foundation.org, Brijesh Singh , Toshimitsu Kani , =?UTF-8?B?UmFkaW0gS3LEjW3DocWZ?= , Matt Fleming , Alexander Potapenko , "H. Peter Anvin" , Larry Woodman , Jonathan Corbet , Joerg Roedel , "Michael S. Tsirkin" , Ingo Molnar , Andrey Ryabinin , Dave Young , Rik van Riel , Arnd Bergmann , Konrad Rzeszutek Wilk List-Id: linux-efi@vger.kernel.org On 6/21/2017 2:37 AM, Thomas Gleixner wrote: > On Fri, 16 Jun 2017, Tom Lendacky wrote: >> Currently there is a check if the address being mapped is in the ISA >> range (is_ISA_range()), and if it is then phys_to_virt() is used to >> perform the mapping. When SME is active, however, this will result >> in the mapping having the encryption bit set when it is expected that >> an ioremap() should not have the encryption bit set. So only use the >> phys_to_virt() function if SME is not active >> >> Reviewed-by: Borislav Petkov >> Signed-off-by: Tom Lendacky >> --- >> arch/x86/mm/ioremap.c | 7 +++++-- >> 1 file changed, 5 insertions(+), 2 deletions(-) >> >> diff --git a/arch/x86/mm/ioremap.c b/arch/x86/mm/ioremap.c >> index 4c1b5fd..a382ba9 100644 >> --- a/arch/x86/mm/ioremap.c >> +++ b/arch/x86/mm/ioremap.c >> @@ -13,6 +13,7 @@ >> #include >> #include >> #include >> +#include >> >> #include >> #include >> @@ -106,9 +107,11 @@ static void __iomem *__ioremap_caller(resource_size_t phys_addr, >> } >> >> /* >> - * Don't remap the low PCI/ISA area, it's always mapped.. >> + * Don't remap the low PCI/ISA area, it's always mapped. >> + * But if SME is active, skip this so that the encryption bit >> + * doesn't get set. >> */ >> - if (is_ISA_range(phys_addr, last_addr)) >> + if (is_ISA_range(phys_addr, last_addr) && !sme_active()) >> return (__force void __iomem *)phys_to_virt(phys_addr); > > More thoughts about that. > > Making this conditional on !sme_active() is not the best idea. I'd rather > remove that whole thing and make it unconditional so the code pathes get > always exercised and any subtle wreckage is detected on a broader base and > not only on that hard to access and debug SME capable machine owned by Joe > User. Ok, that sounds good. I'll remove the check and usage of phys_to_virt() and update the changelog with additional detail about that. Thanks, Tom > > Thanks, > > tglx > -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-io0-f199.google.com (mail-io0-f199.google.com [209.85.223.199]) by kanga.kvack.org (Postfix) with ESMTP id E88796B03FE for ; Wed, 21 Jun 2017 09:55:12 -0400 (EDT) Received: by mail-io0-f199.google.com with SMTP id k93so3822537ioi.1 for ; Wed, 21 Jun 2017 06:55:12 -0700 (PDT) Received: from NAM03-DM3-obe.outbound.protection.outlook.com (mail-dm3nam03on0075.outbound.protection.outlook.com. [104.47.41.75]) by mx.google.com with ESMTPS id i186si1404979ioi.150.2017.06.21.06.55.11 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 21 Jun 2017 06:55:11 -0700 (PDT) Subject: Re: [PATCH v7 07/36] x86/mm: Don't use phys_to_virt in ioremap() if SME is active References: <20170616184947.18967.84890.stgit@tlendack-t1.amdoffice.net> <20170616185104.18967.7867.stgit@tlendack-t1.amdoffice.net> From: Tom Lendacky Message-ID: <859437c0-d190-240e-6aa5-5edb0b63aa9e@amd.com> Date: Wed, 21 Jun 2017 08:54:57 -0500 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: owner-linux-mm@kvack.org List-ID: To: Thomas Gleixner Cc: linux-arch@vger.kernel.org, linux-efi@vger.kernel.org, kvm@vger.kernel.org, linux-doc@vger.kernel.org, x86@kernel.org, kexec@lists.infradead.org, linux-kernel@vger.kernel.org, kasan-dev@googlegroups.com, xen-devel@lists.xen.org, linux-mm@kvack.org, iommu@lists.linux-foundation.org, Brijesh Singh , Toshimitsu Kani , =?UTF-8?B?UmFkaW0gS3LEjW3DocWZ?= , Matt Fleming , Alexander Potapenko , "H. Peter Anvin" , Larry Woodman , Jonathan Corbet , Joerg Roedel , "Michael S. Tsirkin" , Ingo Molnar , Andrey Ryabinin , Dave Young , Rik van Riel , Arnd Bergmann , Konrad Rzeszutek Wilk , Borislav Petkov , Andy Lutomirski , Boris Ostrovsky , Dmitry Vyukov , Juergen Gross , Paolo Bonzini On 6/21/2017 2:37 AM, Thomas Gleixner wrote: > On Fri, 16 Jun 2017, Tom Lendacky wrote: >> Currently there is a check if the address being mapped is in the ISA >> range (is_ISA_range()), and if it is then phys_to_virt() is used to >> perform the mapping. When SME is active, however, this will result >> in the mapping having the encryption bit set when it is expected that >> an ioremap() should not have the encryption bit set. So only use the >> phys_to_virt() function if SME is not active >> >> Reviewed-by: Borislav Petkov >> Signed-off-by: Tom Lendacky >> --- >> arch/x86/mm/ioremap.c | 7 +++++-- >> 1 file changed, 5 insertions(+), 2 deletions(-) >> >> diff --git a/arch/x86/mm/ioremap.c b/arch/x86/mm/ioremap.c >> index 4c1b5fd..a382ba9 100644 >> --- a/arch/x86/mm/ioremap.c >> +++ b/arch/x86/mm/ioremap.c >> @@ -13,6 +13,7 @@ >> #include >> #include >> #include >> +#include >> >> #include >> #include >> @@ -106,9 +107,11 @@ static void __iomem *__ioremap_caller(resource_size_t phys_addr, >> } >> >> /* >> - * Don't remap the low PCI/ISA area, it's always mapped.. >> + * Don't remap the low PCI/ISA area, it's always mapped. >> + * But if SME is active, skip this so that the encryption bit >> + * doesn't get set. >> */ >> - if (is_ISA_range(phys_addr, last_addr)) >> + if (is_ISA_range(phys_addr, last_addr) && !sme_active()) >> return (__force void __iomem *)phys_to_virt(phys_addr); > > More thoughts about that. > > Making this conditional on !sme_active() is not the best idea. I'd rather > remove that whole thing and make it unconditional so the code pathes get > always exercised and any subtle wreckage is detected on a broader base and > not only on that hard to access and debug SME capable machine owned by Joe > User. Ok, that sounds good. I'll remove the check and usage of phys_to_virt() and update the changelog with additional detail about that. Thanks, Tom > > Thanks, > > tglx > -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mail-dm3nam03on0051.outbound.protection.outlook.com ([104.47.41.51] helo=NAM03-DM3-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux)) id 1dNg6X-0008G8-0N for kexec@lists.infradead.org; Wed, 21 Jun 2017 13:55:34 +0000 Subject: Re: [PATCH v7 07/36] x86/mm: Don't use phys_to_virt in ioremap() if SME is active References: <20170616184947.18967.84890.stgit@tlendack-t1.amdoffice.net> <20170616185104.18967.7867.stgit@tlendack-t1.amdoffice.net> From: Tom Lendacky Message-ID: <859437c0-d190-240e-6aa5-5edb0b63aa9e@amd.com> Date: Wed, 21 Jun 2017 08:54:57 -0500 MIME-Version: 1.0 In-Reply-To: Content-Language: en-US List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: "kexec" Errors-To: kexec-bounces+dwmw2=infradead.org@lists.infradead.org To: Thomas Gleixner Cc: linux-efi@vger.kernel.org, Brijesh Singh , Toshimitsu Kani , linux-doc@vger.kernel.org, Matt Fleming , x86@kernel.org, linux-mm@kvack.org, =?UTF-8?B?UmFkaW0gS3LEjW3DocWZ?= , Alexander Potapenko , "H. Peter Anvin" , Larry Woodman , linux-arch@vger.kernel.org, kvm@vger.kernel.org, Jonathan Corbet , Joerg Roedel , "Michael S. Tsirkin" , kasan-dev@googlegroups.com, Ingo Molnar , Andrey Ryabinin , Dave Young , Rik van Riel , Arnd Bergmann , Konrad Rzeszutek Wilk , Borislav Petkov , Andy Lutomirski , Boris Ostrovsky , Dmitry Vyukov , Juergen Gross , kexec@lists.infradead.org, linux-kernel@vger.kernel.org, xen-devel@lists.xen.org, iommu@lists.linux-foundation.org, Paolo Bonzini On 6/21/2017 2:37 AM, Thomas Gleixner wrote: > On Fri, 16 Jun 2017, Tom Lendacky wrote: >> Currently there is a check if the address being mapped is in the ISA >> range (is_ISA_range()), and if it is then phys_to_virt() is used to >> perform the mapping. When SME is active, however, this will result >> in the mapping having the encryption bit set when it is expected that >> an ioremap() should not have the encryption bit set. So only use the >> phys_to_virt() function if SME is not active >> >> Reviewed-by: Borislav Petkov >> Signed-off-by: Tom Lendacky >> --- >> arch/x86/mm/ioremap.c | 7 +++++-- >> 1 file changed, 5 insertions(+), 2 deletions(-) >> >> diff --git a/arch/x86/mm/ioremap.c b/arch/x86/mm/ioremap.c >> index 4c1b5fd..a382ba9 100644 >> --- a/arch/x86/mm/ioremap.c >> +++ b/arch/x86/mm/ioremap.c >> @@ -13,6 +13,7 @@ >> #include >> #include >> #include >> +#include >> >> #include >> #include >> @@ -106,9 +107,11 @@ static void __iomem *__ioremap_caller(resource_size_t phys_addr, >> } >> >> /* >> - * Don't remap the low PCI/ISA area, it's always mapped.. >> + * Don't remap the low PCI/ISA area, it's always mapped. >> + * But if SME is active, skip this so that the encryption bit >> + * doesn't get set. >> */ >> - if (is_ISA_range(phys_addr, last_addr)) >> + if (is_ISA_range(phys_addr, last_addr) && !sme_active()) >> return (__force void __iomem *)phys_to_virt(phys_addr); > > More thoughts about that. > > Making this conditional on !sme_active() is not the best idea. I'd rather > remove that whole thing and make it unconditional so the code pathes get > always exercised and any subtle wreckage is detected on a broader base and > not only on that hard to access and debug SME capable machine owned by Joe > User. Ok, that sounds good. I'll remove the check and usage of phys_to_virt() and update the changelog with additional detail about that. Thanks, Tom > > Thanks, > > tglx > _______________________________________________ kexec mailing list kexec@lists.infradead.org http://lists.infradead.org/mailman/listinfo/kexec