From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Google-Smtp-Source: ACJfBotjSz5UCPo+m5bgzTJF7XTan9NIZwpkToWzE+SkQoToB9FhbIMyqBtf5jhi8/dz80pZPabm ARC-Seal: i=1; a=rsa-sha256; t=1516209685; cv=none; d=google.com; s=arc-20160816; b=bY800TeA2AysMkWJAq8p1T3GuQqSl3hHwCL9v01eHOcS+yJYn+VmgltRdpat0g0g4l 3gfXLFj7amYdeZFWrqlBADu48uMNbDM0ufVfUbHLKVXv/lQVmCxSauYf6A+ggne4S/t4 EEqpEjhzfqq5TtyKt8bzh/pSQLDh1afINI1C79OLj2+o2pHdq8iy+cRSK4TULoWRZasC ZUg4kT9Py4IVzwcuhTgWwf1aSZHWquLjxCrUeqHHabV/cWMl8hLed5nqUcetGchHzm0n kzwwduOy7156CT2d1Z4IJR0YiSt0jMX6jYeWROilZJHc2aSlhmha7mDHLCVLkH3sQRCH p8YQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=spamdiagnosticmetadata:spamdiagnosticoutput :content-transfer-encoding:content-language:in-reply-to:mime-version :user-agent:date:message-id:from:references:cc:to:subject :dkim-signature:arc-authentication-results; bh=j88aILWao2P/EopoA36i42qO9573bt+VgPDxeukKczs=; b=hb+3Dy7+TTzWRS/W9guTL/3GtKkS4f7SO2RPCtPsVEvdV1mVKMBEv7goBB8RzMGT6C UjoYN+dx/BL7uAl2CJMQ+PJiAjd5XvxVGGLYooo6lADxqx0aCboTE5XvU1qZvgKvAGjN 704qWS1MAJdNY3mVf1AtIu+ycSPq2evO4TXHFUJu2hVuXShWnVSAvHrlVofhN2MqnX55 Y2wtEbu992B2ayRODkwOpfT/ezfUXGWSutwHe0fpEVV8n6h5aXFg36IUYkJaI9lxIw4o 1luFd5Bsr3VU3j0Rk7rWI/UiANBTvYYEdO6iJrwMs++FW0HaIMEEBEPalHrr6f54TLxW b1tQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amdcloud.onmicrosoft.com header.s=selector1-amd-com header.b=jDU5dFeX; spf=neutral (google.com: 104.47.42.87 is neither permitted nor denied by best guess record for domain of thomas.lendacky@amd.com) smtp.mailfrom=Thomas.Lendacky@amd.com Authentication-Results: mx.google.com; dkim=pass header.i=@amdcloud.onmicrosoft.com header.s=selector1-amd-com header.b=jDU5dFeX; spf=neutral (google.com: 104.47.42.87 is neither permitted nor denied by best guess record for domain of thomas.lendacky@amd.com) smtp.mailfrom=Thomas.Lendacky@amd.com Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Thomas.Lendacky@amd.com; Subject: Re: [tip:x86/pti] x86/cpu/AMD: Use LFENCE_RDTSC instead of MFENCE_RDTSC To: Paolo Bonzini , "Dr. David Alan Gilbert" , Andrew Cooper Cc: Thomas Gleixner , bp@alien8.de, dwmw@amazon.co.uk, gregkh@linux-foundation.org, pjt@google.com, mingo@kernel.org, linux-kernel@vger.kernel.org, hpa@zytor.com, tim.c.chen@linux.intel.com, torvalds@linux-foundation.org, peterz@infradead.org, Dave Hansen References: <20180105160756.23786.4220.stgit@tlendack-t1.amdoffice.net> <1b179b8b-6cc8-d736-81dc-2445be4baf02@citrix.com> <4d9a1f0d-a401-3f0f-9ee2-dd42f4b4716a@amd.com> <929a34a1-e3bc-b1c8-4c71-196610c0d02a@citrix.com> <20180108164803.GF2462@work-vm> <0be27b7e-7285-b23b-7eda-55a70338d16c@redhat.com> From: Tom Lendacky Message-ID: Date: Wed, 17 Jan 2018 11:21:18 -0600 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 MIME-Version: 1.0 In-Reply-To: <0be27b7e-7285-b23b-7eda-55a70338d16c@redhat.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit X-Originating-IP: [165.204.78.1] X-ClientProxiedBy: BN6PR21CA0018.namprd21.prod.outlook.com (10.173.197.28) To CY4PR12MB1141.namprd12.prod.outlook.com (10.168.163.149) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 0c6b6502-e9ee-4984-0f8f-08d55dcebc40 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(2017052603307)(7153060)(7193020);SRVR:CY4PR12MB1141; X-Microsoft-Exchange-Diagnostics: 1;CY4PR12MB1141;3:QMU2RxLRg6YVfiOjeuybqPoFLtiUfc8asYGMFavSFk17yfswV6EjO5Cbq284wAZ6eE/+5NK6V1vyo0b07riQasfqMwl6VzkHbP6xupv6Krv2PbNCKdT921KsLN+HMQoDrLOpwdmi0hOgUGlmKi3Sjv9ADilc/+IMScwyoBtHR9Hp3Ju6O8khi9xopMSsZ3RjXiqEVxu9vk3wKe0Ua82uZH0F7FILzAnKenU/7CtTmC1XnX/dgIsVnzk86b/iYCgL;25:h+dYjUeYhyNMC5aGK8q7FZzS8Rkrtm6GFy59hYPekebZ7mxnlEc+z9euN2ecB56t5PP36+cPZ1To4qVvCXqKMC7S3tYX1bWQ1ARcyvEbNLXGant/vEI3e5gxyF5IrwiBKFu1sxfZnoiRm733oSyuKBx3GgfMv6ri45p8PTyuVgYy7B0tj9ouiGhudJbcA01/x9UDndNsDF00qWDUuF3NyTv4HqDvC9gOffIpk9CWsEh++lVCRqcoAVAf4sthLwg9nmJGK/+FL9lpmvjwXbg5m5V0YjxcHyKfbNEIUPExIBCO5f127zBth6wVjtuHLV/2pYnNhrvYvPY06/4E5r6cOg==;31:SYeO3EK3+kwed863QtofC/jgGJPqyHcW117uST/jwzJvdUNSr9n1bUFso1+2dsYcUIHxazaqPafswlKAR/3IbHg4bITupnNWR3esSowdpnjxOMNGNMghc2YdFttMOyZTwuerjmu/B2VMU2uF/uTiy+6EcHE5VBKKcTk7l0IkhOHZX5HzirkqX9uoz/nQRwRuj5KEBSAwPcKNIoHX2tiJf/MaoZYIn0SHZAgvaZnG7Io= X-MS-TrafficTypeDiagnostic: CY4PR12MB1141: X-Microsoft-Exchange-Diagnostics: 1;CY4PR12MB1141;20:ltIPYPzjoBOqbI+tTWkBlUJV9lNrBeB0XoHHfzVB6EzFXanTh9rZP7OhSh68YnCLwv3T+wGDgo0OfqUzM74gtFvktuaWUb24b31YY1VMnOaUzjAR6My8tWZhQ/6pY6439K28W+JdOLfzuLu/gPU65Q012AS4U8DgPYuWgTMbU1bBy1Si9dHRT1BVikPe4ai4IBf07MvdOYBE/lJrDpfC96rfCI+JCyClxf/z6m+zEdYbopt23eOm3eNCLut7LbhnLgs/NqPZ364nxkuXeX5zDrZwzga3Qhkr+mq9DCQ6fHQovUvFjcfg+n+ACBVRrfU+JXwFAV4uQEpOPUECF4lz5u1sikyfFjbPjWwdAw1YmN2f1FH0ePcMXJzlimg6cx8bkWEXbudC321nDRrKlujUjHId7so995qD4dErErxjpjuofXjjIBdgzOiwcMDbzSDUtJnVrHF8AP8mbYKGdr4tOxZ7zBX4WPY1dm3DsFvC3TCJHX5tBZ8i1R2mAN5RAtcz;4:rtNaRLQF5kNM1IziLm3q12Dz6hn2WzKly3al5zm/IsuNR1TwpCHPjBJf5o7MZu6ipm1k4TtjAA9Y8mQeNwFI+RF+GitfWpjqCpBwCDb+tqCxaj1a7ljz4WzfCIYsFZV2T/ljdCyGoP8cYHs8NpP+2fDiNRGg0Ti9nYWLI8DkWYLw3URb1f2q4w2v+d8zNjIUlIIVipiNqa1XEItc6qoZpIyWc1TvdjxF41wB458lwlMqu9zvVqSWUiGsQVD0udcXUfillPecJv8EimDUedGajw== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040470)(2401047)(5005006)(8121501046)(93006095)(93001095)(3231023)(944501161)(10201501046)(3002001)(6055026)(6041268)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123564045)(20161123558120)(20161123560045)(6072148)(201708071742011);SRVR:CY4PR12MB1141;BCL:0;PCL:0;RULEID:(100000803101)(100110400095);SRVR:CY4PR12MB1141; X-Forefront-PRVS: 0555EC8317 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6049001)(39380400002)(366004)(39860400002)(346002)(396003)(376002)(24454002)(199004)(189003)(86362001)(305945005)(83506002)(59450400001)(8676002)(7736002)(16576012)(65826007)(105586002)(6246003)(316002)(6486002)(52146003)(52116002)(23676004)(2486003)(8936002)(2870700001)(65956001)(50466002)(64126003)(77096006)(478600001)(16526018)(66066001)(90366009)(81166006)(53936002)(2906002)(25786009)(97736004)(31686004)(5660300001)(36756003)(81156014)(106356001)(8666007)(31696002)(4326008)(110136005)(65806001)(54906003)(229853002)(68736007)(53546011)(72206003)(76176011)(26005)(47776003)(2950100002)(6666003)(386003)(3260700006)(7416002)(3846002)(93886005)(6116002)(58126008);DIR:OUT;SFP:1101;SCL:1;SRVR:CY4PR12MB1141;H:[10.236.65.116];FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTRQUjEyTUIxMTQxOzIzOnY0d3RpUHM3WEZzemtXOVNGVjVHSGYvMFR2?= =?utf-8?B?ZSsrdUhhWi9rZ0tkMk4yZGlIQVduZTczZFI1bzVmM0JmMFI5SUdpVXFqMnB5?= =?utf-8?B?eFRMVXJac05XRFV4aGlXWVFaUHFWV3MrSktQdmt5UEl1T3FqaC92YWw1bXQw?= =?utf-8?B?ejJVNXE1SGwrd2I4elViSkRjZ2NVMkV1RXcrZ3lEaWswQmhxMEVZZFVidk0x?= =?utf-8?B?OTdkdXdWR1NGMno4bkhoYm9pcGdjeCtLQndyWVJVYm9IN21LYkYxRFdoSHRC?= =?utf-8?B?TDkwWHJnY0FzaWJNVXVoNmw0T1kydER3ZzBTM1hVRGZ4dUlhSFF1eWR2SnA4?= =?utf-8?B?OFNlc0RFTndpOVdobGJnSC9EMUFzVDBwTURsVHdwdmVTc1NmOWNKa1pTQTN4?= =?utf-8?B?SmJieWYyQXQ4L09Nb1Z6TlRyMC9YZ210WFpqcFRuYjlVZU9YdFNZbkdRS0Zu?= =?utf-8?B?S0pIbGdnMWVCaXAyT29XZG4zbnMxbXJsMTNacXFuZ0RFRVN0eDVMNGpHT2l4?= =?utf-8?B?L2MwL3U5bHRJcVJVZWpRZWVJU28wcllCc29iWTBTS3N1VWkvY2hSc0ZaTDRW?= =?utf-8?B?eExMaUJtUnd6bDh3KzQxbWUrSUk1N2xuUW56MHRjOXdqeEVuK1VhaDZRK0dk?= =?utf-8?B?T3N0QjFJTnpSR2tCR2NXVlVyVkl2UTNpWmMwVWtHbGJXNlNZdENrZEc3bk54?= =?utf-8?B?LzlMRExuUFRzeWkvVjhDMlhlRk5HbDVQOC9GS1cxc29KdmZyRWJPRzc5SHRv?= =?utf-8?B?aTd1cjlEM1MrdjlTeGhZYzFJU01aRHZWUEdEeUlyMWVLQVJMdXdyVDlQaEJP?= =?utf-8?B?ZjY5V2ZZUGM3R2RkYkYwU2FqRTNEMWpkYkxLZXl5VzhQcGczTkw1RDlwSlg5?= =?utf-8?B?Wkk1N0ZyZHdnaER4aXdhWlVoYm0zLzhUdnB0ZnVPK2hGcWROd2VOcTFQdjcv?= =?utf-8?B?NllmWWJXVTRSSVU2REsrMTBOUVlzY29oKzd3QjFDVU9wUHJMSDdBOUw4M0c0?= =?utf-8?B?cVB3NjhBQTd4WXBRZHk5UjdqK3lWR3RBQmI4UHBJSHVKT2NPZUZDMzNpN3g4?= =?utf-8?B?MENMMHJMQldPdlJIUUVHMWRrc0JqSU9HUitZdlQrQTdWR2ZqeFkxeFdYU3Jw?= =?utf-8?B?azNFQm1aRUJUakthYkFjVm1ZNTZ5RlRKOUcxS3ZCcTRpeGd2UDFyVlRLSHVL?= =?utf-8?B?T0MwdUJSYW9RTkI1d29jUkN1bnRoY2FsSHdidjNtZU9lWk5uK3AxK3RxcnhY?= =?utf-8?B?VThwL3BWUkpIbGc1blJnS2Y0eFE2MFBsOUF4VGdQVEVtalEzMSsyK3NvOThq?= =?utf-8?B?emxCOHE1NlZSUng1emRSZlY0dG1PWmM1VjdTSEMxU04zazZJWE5VVkVNMGM5?= =?utf-8?B?a0M1VElrd2lrMklmSzZWdmw5aFlwSkhwUGtPeWIwQ0ZER1JnWjZHVnU2dGha?= =?utf-8?B?YzNkMEVZNlQrN0RXaWh2VTI3Unp6REpnSnd3dmIrNWhYaGNncy9GMjEyM0Ez?= =?utf-8?B?UHdvZFNLamxhKzB0QVhJS2ludEg1YmV5NTJ1VnNYRUJXYVVFRDBWSFl0U0ly?= =?utf-8?B?QmpWT2I2ZjFlOWJtTzloQmZuWWFKbmZUSmhzWGRCbzBMQUFCM1BzZFlkLy9X?= =?utf-8?B?ZXQvd2xzVFRUM2ZVSHF2bHNTZ3U1MXI0MjlBTE5vNmwraHA1Wk91Y2NGUm5Q?= =?utf-8?B?ZnArVnRmZWcrUFRKcHB3MGsvWGp2TnJ0d204bHQ4aTVCRURlR1JTbFFwSlI0?= =?utf-8?B?VysvQzFISzhxNGc4Uk1wWi9XdFJNdlI5cmpsMWJjenFNY1R2UG9DL3ovMDU5?= =?utf-8?B?SFBzUXJZL01VL29ORFRpMnNSbTVVbWh6Z3VmYThMM1kvWXZYYkdFT1FYdWxS?= =?utf-8?B?NGIrS3Z2OWxRMUkwYUc3dTlpcGRzRGY1Y1hIU01hd1U0eGZQTE1mZUZyMHhw?= =?utf-8?B?eWtNLzJCNURYclM2WjRqRjFBcE04eEZsQ1FvYitGbUtRM2RpdFBWQlR5Umtk?= =?utf-8?B?RDB6cHl0a2VUZXozWWNQM09lekpBSUpiZ3U0dysvMzdIQjBTTWI5NUp2SDVU?= =?utf-8?B?Ry9wZ09LMmNpSXVqLzVrRmRUdzZyOGNNV3VobzFUUUxvRDhZUlNwMXhoem5R?= =?utf-8?B?NVE9PQ==?= X-Microsoft-Exchange-Diagnostics: 1;CY4PR12MB1141;6:1yeK5FnFQdlITV/TmSxk33qDVCqArYEjzdZmEr8K64XU68Y2nnW1+zB0lH9pS7Z0jnRF+8yL8pzPDaMbYTDnYU1wsc89XhzQNTKVpoJ6Vc/GVhm77mWXGl+7ZcxBqHiuimsVRSxzrLo6VZle9qPlwmzMO8DsNy2Bc8/7buuFxOlLi2av7qpKsOU4j2At890qP5ejNBUUDP4NBIoBTWaDc4VIboBbklpXWTbUrx8w4dqRS1oUdwW3IW0oJblmRx2ePvdUS2cmDIG8IGsEVkXjnSNGsNid6FLk58rV3FlCyp59W2nzxSaghh2IdIx7hPEUA8lYmwgAqjNlCayyEaMYuQGyHJCYMJD7Bg5czcUt1Cs=;5:QsJ82e+gghZ/0r0QvTOXhCFYDnoO7bSMNeOaCMTl/6JmnXBjiUvpZR9Ib2NSLD19GPNsxlA/3lMD1UcQWHmIEbWa/QkxiMuFAZQMJnt8xgzGnwmA+5v5BEq199hd7Uia9pxNheOatQuk6UME81BHupbrayrecRSN+NcUsDpBEIk=;24:K1jQDSXw0hnxUHwfaLuDEFA15ifdIEuv9Zk/tam3OPvv95/DfkqEPeWWqvHPFOxcxvx3k6CkI3BYBhLGL9F/vPa9VuZ9t4jTHKX4tMSqJYI=;7:SHso71f4mano+JJv6oMeZ/w0foSqn+5GTpgof1HI5xypx+VL1pjejCqo0qbhtbaNPpZqsYlDF/5zjWjm2qbY35Hf6v7h51c881VmcuL5MnpqQmtEbrAF5gcsNdZO/HfrGUMX0Uh2Z1T8Wyv4zfRLR8IvJtbrY7+HSCDFtJ5z4fFXiOTL/whTEp9noTDvb2JvmQS6OcEN8NNo5o+N7uxM8t4BhgVsXhqbhCe221WAvPKMdgWKAPqNT8mu5vis9Oyv SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;CY4PR12MB1141;20:B7kcQ27peDD6KLcc7l1ZZAE4th1KjKZv3LqApIHbSOsVBA/tVUnjwGeZEeok85CT1N6TuURZ0hHFh5XnocvMtnrhn9f8eV/xHquPeUKTLr1h9jx/Mgvf+w2BcKHrQlLElmecQDOYfM+aL05gZisiV1jTwbONAOxLm8lmy1a6/Sq+cKAZ6GluUeKk6NMUU3J0Mx4CmQA+LCX6AjdYPy6V8r903pdtddvgR8fmcuNaE8llePwoQJn1y7wrL3MwGhu0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Jan 2018 17:21:22.8566 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0c6b6502-e9ee-4984-0f8f-08d55dcebc40 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR12MB1141 X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: =?utf-8?q?1588769307376446817?= X-GMAIL-MSGID: =?utf-8?q?1589861087286827415?= X-Mailing-List: linux-kernel@vger.kernel.org List-ID: On 1/8/2018 11:01 AM, Paolo Bonzini wrote: > On 08/01/2018 17:48, Dr. David Alan Gilbert wrote: >>> If your hypervisor is lying to you about the primary family, then all >>> bets are off.  I don't expect there will be any production systems doing >>> this. >> It's not that an unusual thing to do on qemu/kvm - to specify the lowest >> common denominator of the set of CPUs in your data centre (for any one >> vendor); it does tend to get some weird combinations. > > Agreed. But on a hypervisor we pretty much know that: > > - the MSR_AMD64_DE_CFG doesn't exist unless you have a fix > > - setting the MSR_AMD64_DE_CFG bit to 1 if you have a fix can be done > independent of the family > > So all KVM needs is a X86_FEATURE_LFENCE_SERIALIZE, it doesn't matter if > it's because of the family or because Linux has set MSR_F10H_DE_CFG. > The guest will either try setting the MSR bit and #GP, or it will find > it already set and do nothing. > > Of course no code for this has been written yet. > Hi Paolo, What would be the best way to approach the MSR support? I was thinking of just recognizing a write to that MSR but not actually doing anything and, on read, just returning a value with the single bit set if LFENCE is serializing and not worrying about the full contents of the MSR. Or I could save the value so that it could also be host initiated and only allow the LFENCE serialization bit to be set if the LFENCE_RDTSC feature is enabled. Thanks, Tom > Paolo >