From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751388AbdKUPFh (ORCPT ); Tue, 21 Nov 2017 10:05:37 -0500 Received: from mail-sn1nam02on0083.outbound.protection.outlook.com ([104.47.36.83]:45819 "EHLO NAM02-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751226AbdKUPFf (ORCPT ); Tue, 21 Nov 2017 10:05:35 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Yazen.Ghannam@amd.com; From: Yazen Ghannam To: stable@vger.kernel.org Cc: x86@kernel.org, linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org, bp@suse.de, tony.luck@intel.com Subject: [PATCH] x86/MCE/AMD: Always give panic severity for UC errors in kernel context Date: Tue, 21 Nov 2017 09:05:19 -0600 Message-Id: <20171121150519.38814-1-Yazen.Ghannam@amd.com> X-Mailer: git-send-email 2.14.1 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [165.204.78.1] X-ClientProxiedBy: BN6PR08CA0078.namprd08.prod.outlook.com (10.172.143.144) To BN6PR1201MB0131.namprd12.prod.outlook.com (10.174.114.144) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: cca5e494-1fe6-4c79-4b5e-08d530f14fa7 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(48565401081)(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(2017052603199);SRVR:BN6PR1201MB0131; X-Microsoft-Exchange-Diagnostics: 1;BN6PR1201MB0131;3:l6gdYkq3pi2FxlrqyGExpWeZ9DXKkGtuiUTPtK6jjiBW/kaIl26u9U/o5XsOYHIm28ZpPpVmcXEp+GVyVuQ1fGHliPOOVx7XZVpTqB/R1WIS+SuUW/MkCTqewl/p6BySGScwv9QQIarIFlhniqKFllWysV+XiTHLSI6fth0WmBAqc6wLqGfFEFAqwofQ8KHe2arezr4skxIykzEuK0rnaHSjmJtYFmXjHbotYFoMUWmINcyvBWOqADnuMj21xsf/;25:x6rAk0aYDkqmiFqss7ke56BWG30uZ7MxkTMOv9vcduIpwFJzdYhYM/nguBJwV7532k9MKgffCKSLLFQStpq3LKoYS7DozOivbyZkGPw/jV/RdSkJgnukCYatnsoiKYGycBtvuBuT7eVAjBW9oLk+4ZARYb75/iygz2kL4pOs49T3ynDg6ZOx+SvRGO1t4zgrQ0rfBrw1OFwWKBJlYKa1NahSMSTUHkREs+I4J2amRTEknYaC/AA5+lQQWvJuTqF3XtWFBZl5RM1jZSSmxTRls0msMhrrcd5KKullAJC9ZYql7Vi8cBLz23vXydEuoHlQSxeMZh8txUwijIowTBg57g==;31:+hDuYSE8ronSjyfHZpDzS3JtINqjXQlQ+OI+97NTcjiPxajb1d6fhEMo+MBiuu0ny/V94gPYKMc2WaLvxzGpOpvbyF9oc95o4Hd/rxx/CIyNzFfRdFB7uMWqVK2A+Tzbb1RpTTfcSJTmAHHpBpTzCBhxULb+rczX6zBPLl565I3NFAAuXFxukGodciYFi4Cyr6oz7mN6jlA900SnkxpqN8oXfQUMKhV7PJBhrDMQvb0= X-MS-TrafficTypeDiagnostic: BN6PR1201MB0131: X-Microsoft-Exchange-Diagnostics: 1;BN6PR1201MB0131;20:C+L8TEMW5FqzSggDCAH4exOjTWzdjm0kJpXSW78n7tFdRTCQ0nRnX3kIVq38RcYXCLT96THebItxb5wrldwTeppfRifDQp5rI6w+52TzfbVjatmM5Z3vHA9wJQvkIFsNZskDC3p+NZyA9OG1plZndBx1QrJll4HkoFdVMY/N1LsImqMgrtmc9FwHCTjkxnfImKSYiKAohAU3MW2lUcPFmXrrDJITl86KPPagz30DkWahdX6ZMCHNhz5ACNs6T2z//j4pyEfnWFsgWs0XSVm8TvT74Wu6TF93WnIfeM/Io4eifyU266/eFnfkgAxI6iVXnzDHp0X02kOUrm6ZvtNOtbVnkilzuQJgOXXoqYgaJNPwY5MDMOt4V8ataI0qI3OjDmVfYwEqHR9xsJPFEYLPMI+7lfuuG0RMtuNHVQ8sekjNDNYT7f4L3CvkS7LUL823zGCizloJB05nO63pz6ziyn7sC4GbI2Ytp3wsVc/z5EmCQkliK77j46XYUS6796OM;4:XTeJpSQgsRAfKjhYXpCnt7NGzQgwJc81xh/A39fB+spyEROzm6dCz7mQAJVXREYuQjGPLmt9rBEUtJAldaigcOUqU2/X/+Qtrb84CHLjh7blHLdAmYQ//bfcyw4SIIPEmXoMsZJSy1w5pu9yx1LJt1Ke6y127pbqX29U2QigoNOcazzk7fYnjoPAcqsw4J07MgZOxLbP59gSRjoVUhZUPvjynMdQrXuzLLM7la0gAjWVwLPk5d4ioBsQfzpdMe/hgJB260/0+OsjGVdhXYQtBLucRRikUFIDl4bLxRcA2Z8O9ARUga/TTMMr1W9Jg2NGatCNGx/bbNHdhdu5gPOMMQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(9452136761055)(767451399110); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(8121501046)(5005006)(93006095)(93001095)(3231022)(10201501046)(100000703101)(100105400095)(3002001)(6055026)(6041248)(20161123560025)(20161123555025)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123564025)(20161123558100)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:BN6PR1201MB0131;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:BN6PR1201MB0131; X-Forefront-PRVS: 049897979A X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6009001)(376002)(346002)(39860400002)(199003)(189002)(6916009)(48376002)(6666003)(50466002)(16526018)(53936002)(2906002)(68736007)(305945005)(50986999)(105586002)(72206003)(5660300001)(36756003)(478600001)(97736004)(189998001)(101416001)(575784001)(86362001)(6486002)(16586007)(81156014)(6116002)(3846002)(316002)(47776003)(81166006)(5003940100001)(8676002)(53416004)(25786009)(8936002)(2351001)(106356001)(66066001)(1076002)(2361001)(4326008)(7736002)(50226002);DIR:OUT;SFP:1101;SCL:1;SRVR:BN6PR1201MB0131;H:yaz-diesel.amd.com;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BN6PR1201MB0131;23:NDTJbQcQp9dnDNy6w6WgvTT5P0ajv6wMXIEqzW/?= =?us-ascii?Q?oEpxmIUcRjtFHUKwiz4tk0O8goX7ke/tR7BW2G6vphV40B6LlikZb6eXSj41?= =?us-ascii?Q?lihAxlbiiT2wS4ENQJpwqfHrRV1A6a9PXfaERvfEiCeeKuPCYzg+CV7unLRm?= =?us-ascii?Q?/qDfhpy4wBYGkILjMEvAjoDnuPFLU28cnJCqXKEF6UKvH55GPPpxCT5+jt7f?= =?us-ascii?Q?xvhZ8SUqucEGd+k+nhYsJ1mnrurkpwjzqjbqqDdC9yElC64Lrz9FK1Ho2ywG?= =?us-ascii?Q?VEDu+03SEnOPwl9kKttt2ozF1t4izbYaRgpCxqZg4pF7icO7D4JFI6KnmRQC?= =?us-ascii?Q?jKvXwooD3gH/W8kz1mk2fd07xAvZdGx5YeUTsx5YN1ZGvNIOn0LK6dlvsyjw?= =?us-ascii?Q?+I3jM5O1WkmTk22EB8t0bNH1Q4nSca5VTC4a09uC44P9IYvHEDmaKzIZGdpj?= =?us-ascii?Q?G2pa+Y6Y637Ih8y4M1qPD9OV6JUKePuWSRJ+l2Tfpe9YMhUg6v4wV5JVjsva?= =?us-ascii?Q?LerKMyJC98i5zQlX8H1jgaC49zYdtoRCs8gUb5zpj4Qz6uI65VdGBSF9ESDN?= =?us-ascii?Q?xvvV6nYgplAibkt6ZfIppIvPAuZ/SzFIRuhfPDXeTK9ypzz5nT+Adc+pYj6D?= =?us-ascii?Q?CBmFmoPGO9WXljDtU/6rwJxupvnR4P+XGH1ITfaegFOtaWFsJztwkQLPgof3?= =?us-ascii?Q?7xzpUtYdC4D8BhKs6jlwICZlF7TlEMxu3/a5H6ldqUVusMLtpZ745VlxRZhr?= =?us-ascii?Q?n/rOYwjiwUT0sNQrvr664C3SVeLYSk7Ya1zl45MiERPrCK2n3r0QwdndVSmO?= =?us-ascii?Q?nOjkX0oXAQh+X6C0SDBSMqP+xzmfFXx6DlR+Xasg7Vfi9//oBpCgXm9D4IcT?= =?us-ascii?Q?RfqAcLes90f+qRnRMgnqkr82/lWgwIGRxQGumIyuTNfnzsIc8iFArYwfWAar?= =?us-ascii?Q?HO05KtNf/zPCR0wZ/LHz8G4PvgNMBtUEyYVDqjzmcJJQ9LhCHDIMZL8GY1Mu?= =?us-ascii?Q?wXyAyNABEqi1ierKW9rISwwPQeZlzeZODv58WXzXPnELaOAQl7Db3Suym2O4?= =?us-ascii?Q?juY10q5bD9uoAtfTnroxv22eHJnM14m82HoLlebbcX2wNjaMY7g=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;BN6PR1201MB0131;6:WZQ+YjQJaF9SSkAoF5z4NvmpZ672+nWnGUP/FadPq8+POZA79qB5L+KonNMLDtRT4uw0L2nKi9/eQyiYU2fwp8geIYQkM7aRQ6lik4mCeF6MzHZklQngpz2bsXZuFX2xu8y19YCoY917lap4KJPjhDz43yJ/m1paPsGCiizXhCMh7f0NRlx4Zr3ymyhTQo2OMriPdOPuxjUGbGfxg+JWjUj0/jkevAONpRs6JI/TCi9zNGpWz7LTtfltgdaBI86KiLSKoOmYzE+XPzwwarTaw2wubKpkLjnZEiZGonvE0SOIll838JGAKb96/VA5oQ6xz0TUcASLR7T0Ibj+EzbarZfpCwhHo/RmlvN1ak0NH+M=;5:++XKpMFHMe3vOFOjHCDXIewN/gatG59keTbn9mDTNlarKJNkD29WyBhqbZhy5aNEFP+5pGyE2Xbi8CQMbSHoDOwhxpAC2y4yzlTHhiLR0ERy6CTbJUoWCpA0lr/HNB4sggjbPcLBKLjCybnORehWYoqe4N3sRm8lLFptMPOfeIw=;24:dqQlz9O2Mfwu6CYqvcVayTgQOZZuNhRCTA4M56Jmt2HCOTSrcee93/8SCydPNb+e8V9waJgbylFlC/HvjYyzG2r0Bh3nt3kkZdPwdzpIkjg=;7:zPNC2oax+EplBgStWR5HeUpEzy/REO0ii/H1e9TfaKYnojlrF/I2FIqsgfbUG7KXJqJeMA6oSMqrnxHby5mpmhtPP5QnltxV0fHYF1aFgLwlHrJQoxF3Kg2HsZP0ech49QS3L83SHmCfVtEynej17m1D1IqFvUvoggcjgdq0DAUn6IPmckInFIr8u9fJtBougBPObZo81iDa8D+z8a4KX6ELkZVRf/s5pcjARpQVWzOlQSvxggoUCnQ0vU+A0VbZ SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BN6PR1201MB0131;20:MIHT5q++MgXMLQMnX/89o1WVWGDKjgt1mrNDOnjUQV9TsbK7KMufikrM6Q8XsyiIbHUS4yNHT2U6H7Es+kTLnb+Ey1SbpuThINsXO8YvZECacejdnROAOyel1nrcmpHrhuCpSdsdJ8Jb6vc2Tuks+wNEFJ5E/0XxgYiqpY+gPpLQqFO+xE/g9kUKfT91ZL44f7jJvYgKhpOMkLHnAFO7n95o9OFy8i6KlIClcPkn+EiDeEY6crtXPoE+sO1idBx8 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Nov 2017 15:05:32.0658 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: cca5e494-1fe6-4c79-4b5e-08d530f14fa7 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR1201MB0131 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Yazen Ghannam [Upstream commit d65dfc81bb3894fdb68cbc74bbf5fb48d2354071] The AMD severity grading function was introduced in kernel 4.1. The current logic can possibly give MCE_AR_SEVERITY for uncorrectable errors in kernel context. The system may then get stuck in a loop as memory_failure() will try to handle the bad kernel memory and find it busy. Return MCE_PANIC_SEVERITY for all UC errors IN_KERNEL context on AMD systems. After: b2f9d678e28c ("x86/mce: Check for faults tagged in EXTABLE_CLASS_FAULT exception table entries") was accepted in v4.6, this issue was masked because of the tail-end attempt at kernel mode recovery in the #MC handler. However, uncorrectable errors IN_KERNEL context should always be considered unrecoverable and cause a panic. Signed-off-by: Yazen Ghannam Cc: # 4.1.x, 4.4.x Fixes: bf80bbd7dcf5 (x86/mce: Add an AMD severities-grading function) --- Same as d65dfc81bb38 ("x86/MCE/AMD: Always give panic severity for UC errors in kernel context") but fixed up to apply to v4.1 and v4.4 stable branches. arch/x86/kernel/cpu/mcheck/mce-severity.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/arch/x86/kernel/cpu/mcheck/mce-severity.c b/arch/x86/kernel/cpu/mcheck/mce-severity.c index 9c682c222071..a9287f0f06f2 100644 --- a/arch/x86/kernel/cpu/mcheck/mce-severity.c +++ b/arch/x86/kernel/cpu/mcheck/mce-severity.c @@ -200,6 +200,9 @@ static int mce_severity_amd(struct mce *m, int tolerant, char **msg, bool is_exc if (m->status & MCI_STATUS_UC) { + if (ctx == IN_KERNEL) + return MCE_PANIC_SEVERITY; + /* * On older systems where overflow_recov flag is not present, we * should simply panic if an error overflow occurs. If @@ -207,10 +210,6 @@ static int mce_severity_amd(struct mce *m, int tolerant, char **msg, bool is_exc * to at least kill process to prolong system operation. */ if (mce_flags.overflow_recov) { - /* software can try to contain */ - if (!(m->mcgstatus & MCG_STATUS_RIPV) && (ctx == IN_KERNEL)) - return MCE_PANIC_SEVERITY; - /* kill current process */ return MCE_AR_SEVERITY; } else { -- 2.14.1