From nobody Tue Jun 23 14:06:00 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 86269C433EF for ; Thu, 3 Mar 2022 16:28:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234989AbiCCQ3E (ORCPT ); Thu, 3 Mar 2022 11:29:04 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59586 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234775AbiCCQ25 (ORCPT ); Thu, 3 Mar 2022 11:28:57 -0500 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 29CA376659 for ; Thu, 3 Mar 2022 08:28:12 -0800 (PST) Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 223FFeHH011426; Thu, 3 Mar 2022 16:27:46 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2021-07-09; bh=ZgkuZ8r/VymLdhLJB2PMa9DE7jwyd1kzggyTkOXJs4M=; b=LbOYsPhRQ77HEGflxIK/gU0GHxpxWyXlTJarZFQk3LHIvrBACEde/wCulczWn5h3LPg/ uNVZ0Aetc//y4qQS0PaZHoQLK+EXqJ3dNxYT/HULOw2x6Rx94JarUkU5AVEjpEkuhBXH l4bnjnzejdDiVSEEyqvVLvKMlOCsAVD+fWO/QrfS3Hlx3a9hXAoyw9yy7ATb9T/pTDPM wN8rRD/is27/JKHBB93ArFkOoks2WEqsCBKEasikX28jADkcs6+KGfz2CP2Rch+BwR/B VFhcnj0/ACJTmK6mg7cXfL8uQd4GZS1PI91W1Dys6/OBZzXGYqi+MSWP3k4Rg76H/N2J HQ== Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by mx0b-00069f02.pphosted.com with ESMTP id 3ehdayymyn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:27:46 +0000 Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 223GGxW9100083; Thu, 3 Mar 2022 16:27:45 GMT Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2177.outbound.protection.outlook.com [104.47.55.177]) by aserp3020.oracle.com with ESMTP id 3efc18yyxf-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:27:45 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=g1EvM1U4pU+f6yyPoY1uLR4mghViJ5uPY3OLcFEgA2p4TnrNIaELBPSoVSwmdEp0f6JOjlBltWVnaWWZ3nSDuP7dQHzSaQU7oGaWjrIHW+CMQGBuMJ3fn3YrB5BmldCNQQSc2ttp+megyR895ZYetV/hhrOlHOCGPM1XYdtZRIIMuAUDg83HiDTkQL8tTJhFWVaXFM4ZIvGq+RvM7ph03shPIXpTP1hhsSgUH4hQF9zkJ3fPMHbQTCAhDOOuW2U9F6FLMAxDMk4K8eH9XsugPPEUtMlgzm0AYb/g7/T2DbKfzXSJQaPMhUeIJE/X6blOu3CVGTWpZfoo4ONa1KkAmA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ZgkuZ8r/VymLdhLJB2PMa9DE7jwyd1kzggyTkOXJs4M=; b=iE4Ybuqn+5Pf4pdA6VeDdRkk0lb9R9PDZs6nAkmS/IiLER5IpmtQQRffuccSBecWkYG74qMqKlPFRZ7OgFvi3Dtos3xM3XYbqZF3X05neTL6UmKLFiQT46c9dMJjwwVzBrEwpRgxspfhtyW0qQN1239s0ugAEjAXjdm+SAHtFffW7Xdhj2/pIvoYzRIbxdd4grUnXvKfh0p/KjAQIsWbxAMfmxwJHbzjYRvlZS2WEItPSFOnt5+tCJVwrTbgTXoloN1dmAs+bchWaeuUA/qHpqW1BDsM6crA//51cUaSbVlkX1hFeTQ+dSHb7kQru0323DLpIggbKhw3G9xefhMdLQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZgkuZ8r/VymLdhLJB2PMa9DE7jwyd1kzggyTkOXJs4M=; b=qhBNuDIegcgBL6hOlx5OFu782WWYRe7QWv/RQNE6vXTmjqqvT+zP2oQSI8F1q6cf4TeNGuS3YmNaCgQJ/1uAr/KbHwDmZ9ouIGIPtTGxIGtlG4qUwIJO2eyyuFuqo2jbdQywOfV62ZkvWx8/0Z25br1d+nnuCw7SMdDbserfZZU= Received: from CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) by SJ0PR10MB4704.namprd10.prod.outlook.com (2603:10b6:a03:2db::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.14; Thu, 3 Mar 2022 16:27:43 +0000 Received: from CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac]) by CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac%7]) with mapi id 15.20.5038.015; Thu, 3 Mar 2022 16:27:43 +0000 From: Eric DeVolder To: linux-kernel@vger.kernel.org, x86@kernel.org, kexec@lists.infradead.org, ebiederm@xmission.com, dyoung@redhat.com, bhe@redhat.com, vgoyal@redhat.com Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, hpa@zytor.com, nramas@linux.microsoft.com, thomas.lendacky@amd.com, robh@kernel.org, efault@gmx.de, rppt@kernel.org, david@redhat.com, konrad.wilk@oracle.com, boris.ostrovsky@oracle.com, eric.devolder@oracle.com Subject: [PATCH v5 1/8] x86/crash: fix minor typo/bug in debug message Date: Thu, 3 Mar 2022 11:27:18 -0500 Message-Id: <20220303162725.49640-2-eric.devolder@oracle.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20220303162725.49640-1-eric.devolder@oracle.com> References: <20220303162725.49640-1-eric.devolder@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SN7PR04CA0214.namprd04.prod.outlook.com (2603:10b6:806:127::9) To CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: cf2a8357-04c4-4560-9e78-08d9fd32be04 X-MS-TrafficTypeDiagnostic: SJ0PR10MB4704:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: NlZs6cI0iAraYl7iFtV7uEDY1H3NAN+sx6Fq/6vemiLVHjCShn2L8GE655ZNvvMhoECAJ2QcKRr4OR3iwuFIqzpW5OFEdjH+7qOcgR4Btbwpj3w+aUgiAvFr1pE18DBzBW2psOIv3J3LsYxsQ6aptSJic30qDWfOetzjOYpv5BV0AJ5MVs4HXjGK6w0YDsjIp0U8qQNuMDr618FdmcmR1Rd/Kd+5qxHCGpIahstG5z4shY1qPinrsJ6DGMLHR1iweIfx0aUbUUqO13SuO4vu4xL2CsHOLuCOOJMZbBbNSL7rcNQZxNSZNUrMcXTgd7ij74LksII/GuewI9qjneJNDQdbJ37QIArEVo4ZbjxQDqnbwOyr9BddkhTlTKvgwvJEO72uw8c/8NcBtTfhDAkPI0f8VLajuKVbJlx+TxG+U3y4Kh0WPq4pm18i0XKSs5OVDRWYfANpT8Xmx1xSNI5xBdRNiRz7JYjNXb7OzdQQ/EE0Wze0GhstQenJV9WLg3KOZn7iD3dwInuGklTLk4f7v1lwrG8R1iHHmbv/V5Svm3n14e9rHYNIR3xTCQ+WUtcRe2zVLfI6ZzqeLvWbX2H7v6TUHqhRJjOSr8Yl2ve6FPIFYyRmw7rH2YSa2bGzAsOMdtlE9ZmxhFbOlC+nDnG2ECyuZajFCtV6bru+YkOZKmQhtaFp3CYX540gkA90CRGZprtzAnVuiWOM+9qlyLkYNw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR10MB4531.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(7416002)(5660300002)(38100700002)(38350700002)(8936002)(1076003)(26005)(186003)(107886003)(2616005)(6506007)(52116002)(6666004)(6486002)(6512007)(4326008)(66476007)(8676002)(66556008)(66946007)(316002)(83380400001)(2906002)(86362001)(36756003)(4744005)(508600001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?p9HB6xf2bIhUy2zdbS4sSY6bPB2OcO15LRa2FTcBBoWBDLu/04sxv5JbINKG?= =?us-ascii?Q?VO3a7fCmqL6RdCP7b1gU4wM8nNvCZO2eOoFVQ3B5/ex6KyjR2Iq4cGvEwWeo?= =?us-ascii?Q?Bk2YU9eXsCDa9d4U1899uZReqcHpDEtTJy9HYn0QaY+dlf565x0/q60W/MkH?= =?us-ascii?Q?hgSvmYHRM36vZ/K2/wmR/1SP6Nnjfd8f/oTrKPzopuLnjNESbvF78BAgNO2P?= =?us-ascii?Q?miME+T+ARLO+SwnmJYFRds/AvjOfI0bDDZNw2UUz04nNBweV9jefaCMOaruo?= =?us-ascii?Q?+eN2NQJfK+50M0w4HIbs/Sm+arsm0f4oKS+WJbQMcdVuk4Dx01FE793oOV2D?= =?us-ascii?Q?rnXcgDYvnzx1dSGEnl2QgaNHfJAcn/RCYTEaAK/UpXxRV+dN0HW06jWmTJqk?= =?us-ascii?Q?zBBgkWAQrK4IUhl9fQcWOYqYhnomNROuZR9aY+7VzDEFloG3S+BxtIZ70+L1?= =?us-ascii?Q?7rN+7MjfjNNmP5okEAPbeDVMOt3Skzuwzim2h3ng0aspuriyntGvor9AbHZG?= =?us-ascii?Q?OaXydNqDu7pSCRRANlijeJ0G14xFYGkV4SnFkXmUgQ9AfSI/dMX6o1zVXcRz?= =?us-ascii?Q?Fo/qji5EZNUB6CH5m2iD3ac24p4vDF8LokqW6vCbOiLoE4IQU2Q9SR7DqGzh?= =?us-ascii?Q?vmVF1XYjojmw+jmm6pBaGLvUlErvtpBdHZR5khSp5M6AzIPzPq4GFdLI2C/g?= =?us-ascii?Q?BhT0OQ5qRcHaPpVQjMPvqp0Bh3xiMiBm7RiT+fjvry+0GgDVul3d2DdA/JyD?= =?us-ascii?Q?qJq3Jcwa1i9cTeyxEMd9uyDjBS351hb5RsF5DWGaAg2WhhEbXV1kM+OVlhBL?= =?us-ascii?Q?GOj9HPR9gjRpKjV53dnQytbN7idxw5fugM2SC3KNWvGvgqnPJaUZd4990LJe?= =?us-ascii?Q?gnhgfTz73gdQboIn7omstlAth6hZm1BMGEfJr/8LVUwVR1GoC8acj5D3VvzB?= =?us-ascii?Q?vz8A+DVeLP6H/RbXry4pXPq5AWqKiJ6IKSv7rS6RxNHNGj0uYmjjmNaJP/Po?= =?us-ascii?Q?RB+9oykhJMn/IU4XUjyz/bk7z3HdqwS+FmfwpXIBuVN0WHUqokcng8oaD90y?= =?us-ascii?Q?vwlxfV6zr9yjE4AJDk5MbFK7fNCHNW3PPRS8YLyvLaAHb8t/gpqUb8VGyPAK?= =?us-ascii?Q?3h4AlnActSScO9owYZ/2V76dAdyAWo4/FaX92rSW3yOAoxxx8tWVk4b+G49R?= =?us-ascii?Q?AnT1QJon+E5/2yOP0vYRzJQ+mASlc8yKOqmdSfKd1BXsbk/buCeVGFSUZ4b9?= =?us-ascii?Q?RyvSmjOInE0owUc/ikO0E9yUC7f8eEvSki2Q4SoeTG/IpV3Zx6vRWroxiYoo?= =?us-ascii?Q?QYTrL/E8t2AcCi8+dQvAVTB5P8wOzvoz1Ar3abOCej9LvZ+j3+9uNRNtmYSp?= =?us-ascii?Q?2tD/7UWby1NO+tNgxbc5sCcQqokHkM7GjSMbb1AXGZafFBHhx+VI8pISCRcU?= =?us-ascii?Q?DGsMIZvdj+8P7WzjG6/qnUoMV/mFNnXTohwIR1I4F66zre3BuR2DEeFDHnUk?= =?us-ascii?Q?gBBY/UQ5oIXiYxvjnY2A9gMkKQX7TArpLCPgJh3QBSUCc3tkcjDp7bFMpAhf?= =?us-ascii?Q?I+PFcdCWLE0fT0D57+J94UCwSElocsW/vK9M3hUtnl8dKqLq33yHNHToAHNQ?= =?us-ascii?Q?Yi+ZEnFoSKn9tW5ZQEwMlcw0zsZIQEL1fjGCvapo/jyRvPVxpDEReqbvG29V?= =?us-ascii?Q?46QUwg=3D=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: cf2a8357-04c4-4560-9e78-08d9fd32be04 X-MS-Exchange-CrossTenant-AuthSource: CO1PR10MB4531.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Mar 2022 16:27:42.9832 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: w5vLFa2q68sRSwelYGQyZUM3I6owz3FCk3WMKNGM0dZdeGBla/PjzPGXaH192ZSLWZlsqNsmLQ4BoRO7tbHmzpk66TaNgPqD1DHPu58A6lA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB4704 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10275 signatures=686983 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 mlxscore=0 phishscore=0 bulkscore=0 adultscore=0 spamscore=0 suspectscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2201110000 definitions=main-2203030079 X-Proofpoint-GUID: HqFM4eGigeboitHGTOTTvQfRpvFnQ0D1 X-Proofpoint-ORIG-GUID: HqFM4eGigeboitHGTOTTvQfRpvFnQ0D1 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" The pr_debug() intends to display the memsz member, but the parameter is actually the bufsz member (which is already displayed). Correct this to display memsz value. Signed-off-by: Eric DeVolder Acked-by: Baoquan He --- arch/x86/kernel/crash.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/x86/kernel/crash.c b/arch/x86/kernel/crash.c index e8326a8d1c5d..9730c88530fc 100644 --- a/arch/x86/kernel/crash.c +++ b/arch/x86/kernel/crash.c @@ -407,7 +407,7 @@ int crash_load_segments(struct kimage *image) } image->elf_load_addr =3D kbuf.mem; pr_debug("Loaded ELF headers at 0x%lx bufsz=3D0x%lx memsz=3D0x%lx\n", - image->elf_load_addr, kbuf.bufsz, kbuf.bufsz); + image->elf_load_addr, kbuf.bufsz, kbuf.memsz); =20 return ret; } --=20 2.27.0 From nobody Tue Jun 23 14:06:00 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5154DC433EF for ; Thu, 3 Mar 2022 16:28:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234501AbiCCQ25 (ORCPT ); Thu, 3 Mar 2022 11:28:57 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59416 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231447AbiCCQ2z (ORCPT ); Thu, 3 Mar 2022 11:28:55 -0500 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 550B76E4DC for ; Thu, 3 Mar 2022 08:28:08 -0800 (PST) Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 223EuRTT009253; Thu, 3 Mar 2022 16:27:49 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2021-07-09; bh=//Nm0GyKPJLXDlLr4gVG1UR9DIkq2h+ZjG4yMtgNS00=; b=J3dep3DLA7Z3DdiSb9PeoP4BH2QgELIjaeeXlgEGo4qR5lonoB6ZLx7bA1PJRY2rPPpG qxOgPjvdnQ3dZQdfIwPCbu0Br+Wq7KzHlNfWlFk+k4Ocz96Oi3Q9/+pSp/Hw2d9ovLhT 7+79Q5SO0Rn8PXjHyTk1brf1td4TtHKKJK0hhebec7NFbki+9eivhCYJB6sZUHXPjzsg 57OqTimtdIpke0TsVV5g4R45ftYUi6hT/vJltmXUDQPM3afyYeyt9Yqn8fyLDmGoQZlx 75L58O8AblnKUrM2JjetT3RERlcgoSxitwnTVvKhTL+c+1z4na6rcOOoMkQVFEVqT4Xu 4w== Received: from userp3020.oracle.com (userp3020.oracle.com [156.151.31.79]) by mx0b-00069f02.pphosted.com with ESMTP id 3ehbk9fwxm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:27:49 +0000 Received: from pps.filterd (userp3020.oracle.com [127.0.0.1]) by userp3020.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 223GFS6G176004; Thu, 3 Mar 2022 16:27:48 GMT Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2106.outbound.protection.outlook.com [104.47.70.106]) by userp3020.oracle.com with ESMTP id 3efdnt01a8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:27:48 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Q60BFnlYBTiGUQTK3F6U8Rd7j+MmKRZ661tpJYnSHojq1lrMDncggDOoPT9frjuB/oJht87maZatiUtOSJAyUmLMI6AUIDv/jWmhiE9OiVQ5uWAWq6j4tlXF0e7rP8HEKSafAjZQKQsawP4WvlW/hKw1Bng3btrud9cIlU/bZJSSe9Egk91pXjefwf3DONS3qcWHuTa+8YNqQ3yITwGQ4P7JEzejuT7s5JzgoFJiZ1Pvs4Fk8ZXwS+jOLE12MUT9LxnvUg08iwYtlMK6L08GKAIxnhHOE3LseTDNA29ZUnE5ghaMgnKXzMoH+xi/WvOXSqtibWCNc2pvscJt/uWJhA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=//Nm0GyKPJLXDlLr4gVG1UR9DIkq2h+ZjG4yMtgNS00=; b=SjPjop2HCUZpF5Fx6yU2U/NXTwbDWnLR1+dnQ/AG1XD4v/kiCAPoUyMQQLM391ETAy9wyXlAFELnn+JUVCNeUDkh4ijL7H2kBw5ZzSrRcX3rpXBoIifIuW93auNWNtryFIqD7H73BPWvRfp4nQ5LkiHawHJCH63fz2nGduYMWOx5Y1nRso86MMDSIrCcU998VPEnmAWudcLlsGArInyGBFSkYPFSofyZXRSScv7q2UHqCw6kvUTy1pxW6sm7VY3pDgtELw3/dJUybGz8ezXuujIe8+wqPaGnKwUriJaOZa1+urUTQraSco+Q53ou8n+8mcoB9uvWDxX+xnX92snhBw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=//Nm0GyKPJLXDlLr4gVG1UR9DIkq2h+ZjG4yMtgNS00=; b=yCNfA0hKdXG8wWPB8/zshRMatABNH7iGTM0N5QxTGlF9EH9fiOaafpXTfClvsjEsmUgeowsbA8RfhzG71lRte2KZU7sXZdu/Jnw4Arnzzcm8Hg5YTBfmHHhwn0PbjFrEOkA+/Ir2739wH4Ztu8aleR8ZKjJd8q1kTiH/WSZAwMY= Received: from CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) by SJ0PR10MB4704.namprd10.prod.outlook.com (2603:10b6:a03:2db::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.14; Thu, 3 Mar 2022 16:27:46 +0000 Received: from CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac]) by CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac%7]) with mapi id 15.20.5038.015; Thu, 3 Mar 2022 16:27:45 +0000 From: Eric DeVolder To: linux-kernel@vger.kernel.org, x86@kernel.org, kexec@lists.infradead.org, ebiederm@xmission.com, dyoung@redhat.com, bhe@redhat.com, vgoyal@redhat.com Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, hpa@zytor.com, nramas@linux.microsoft.com, thomas.lendacky@amd.com, robh@kernel.org, efault@gmx.de, rppt@kernel.org, david@redhat.com, konrad.wilk@oracle.com, boris.ostrovsky@oracle.com, eric.devolder@oracle.com Subject: [PATCH v5 2/8] x86/crash hp: Introduce CRASH_HOTPLUG configuration options Date: Thu, 3 Mar 2022 11:27:19 -0500 Message-Id: <20220303162725.49640-3-eric.devolder@oracle.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20220303162725.49640-1-eric.devolder@oracle.com> References: <20220303162725.49640-1-eric.devolder@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SN7PR04CA0214.namprd04.prod.outlook.com (2603:10b6:806:127::9) To CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 472245ab-abe8-472a-6181-08d9fd32bfc0 X-MS-TrafficTypeDiagnostic: SJ0PR10MB4704:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: AcasB77rKKamq+WKm6bXjMAUzls/IzdSSbpY40JgU3a68nobqMin1Foc8wzTF0CVwSRxZfNVSv4Av4Ftaz+gyJxpFAHrlWArU92EYjyMhgb1CClneQG9MAPve+VB6DApG/ogfCSFm14VUPT6ZNQsx9NL54kascoKYCJkwmd1jPe8S/XID+aIzGSvskHNLQcvzHh14B2T8zhWhD8KcZOJ2Y4MbPnEjnFzQHiGhvvJ8fmSq73/mrxHg72xrcQf2NniwFMRFd9F4U17xPA9CVVWddD3cpeXkpMFrRSDHKy59LomsVVAM/VGEmXrLHxnNepiOlgpokqIZIjTW7TgYteVgf7yurh2GpMpWhuwf8kWxvDQTOA+WmrVbAUYDoq6LG8WhhVGKxAgczln/BBGHIkJORvJMLvk1jqawrjY+W3vxoCgTRHnpIDSKmmTIM8kFaETVA8UHdtWIQ/iO+WqX5BUKBWHj8uLLBftWgZLxHks/DZbIDEGBfkE2OdrGZNMHL1yr+EMiuogJcE/i7O4UM1yiIiU5AzUALJRNRbNUvlzhhgSnNPl+MyWfueoMeF2j+L8sEmdsqbR2n6AMgIYVaUJXIirAaOnAafgt2z3++nbp95IDa5a3hmw5IYJ/z7onXSQUdVUK1biiYQZfYd1vbS2UC7s76y2gtzOO31yQGLwQ9ACsHIlCHTtp7QGl98HDiIYZku3j/4zOAVkmkOzbnAvlA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR10MB4531.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(7416002)(5660300002)(38100700002)(38350700002)(8936002)(1076003)(26005)(186003)(107886003)(2616005)(6506007)(52116002)(6666004)(6486002)(6512007)(4326008)(66476007)(8676002)(66556008)(66946007)(316002)(83380400001)(2906002)(86362001)(36756003)(508600001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?OVQhVc4cFy80+HdjiCwicEtLIdrHegItY+CiPXetWz25JGBtFPiZ9c0PMG0D?= =?us-ascii?Q?8/UFiIJN3csg3Km6Kwykgjc/QU0bzLIGCVHORVQRCpXTIVg8D+v3c8QSgHdz?= =?us-ascii?Q?njhS8L7cxfZZPKsYv42EelenDQob9HIzivQIJQSlDT1iYDZRfKf5VbYckglV?= =?us-ascii?Q?Jr0GccgkNfRm4urBgdURTc5OhO5XfCFPRjrvzuyoGj3ogUTgvPGt+hkKAWw4?= =?us-ascii?Q?IPJVfoTpVoRF3++YX2Q8MC9b/q0jqYVe2KH01ulVWzdsn7dvm5nHFknYdr0r?= =?us-ascii?Q?ZCmpWkUP86u6UI7vQ08UKXDh0i37Zf4B+JeS99OldmfcvOSEf5m2clERwLsE?= =?us-ascii?Q?1sk1jDk3eIPKjj0HwnaK5kev8QJQt5MeqU6ZbxxrPx++BZNuXRJWc+BNHUjN?= =?us-ascii?Q?BNMthRNV5f5ZWJJG2Dqvl7cEYi03WpGgQYb3Ufvi6ud734eUBADNokRf+Xvi?= =?us-ascii?Q?nXe2oSPT/F199Xg4K9KslOSVk31LqU4I9vTnNEsN+TZDQZqPzCQkZOquDDXU?= =?us-ascii?Q?Gb3KvAG38M7ZBZnaT82UpKnsxS9K69TJZspgSlBJY3j0FnRRhiSN/gwIhPTe?= =?us-ascii?Q?w66cpcJ+BF3f9gaaBVh4Is9suZmmL5lwizhbxbAqh57IU2ZrFfP801TA00pZ?= =?us-ascii?Q?VfEYWYbkfzblS/MIU/A0+86yuataIRO8ZxAPPm/vLKJORcbJKmTsXBpLdrOl?= =?us-ascii?Q?IMhjUa6bqJDOlpZJBK8B3wYXhWVRII+Mx6SpSo8MmqEoBfWtDgXOyD6KwM9D?= =?us-ascii?Q?qPnHDpnegdyEmUxZ7471IJwZlwx43yEzVITzeNMczkUYkvmCvP/0AF93h1lS?= =?us-ascii?Q?JKyZPmFpdKg7Q6TBrG5+26Z3Mlc7ug4H4hfWtLhcBCRlA2fTomaQoDf0tbYJ?= =?us-ascii?Q?3vjugYIPq0ckQfxvjA9skxH2S2YHCncYwMINlQ0VQkSv2F1ewEiKoWJgh5mz?= =?us-ascii?Q?pbLwCcf56qsm05Yev/fhnPvTw0cXC8mbOMu401RjjIBVUhkoFHiM7gSX+cVr?= =?us-ascii?Q?MbLyDfRu6fzHVVws+uXOn/lrQo9rJY0NE06XGb9Kv1aYPujJ9mlK9JaWJR94?= =?us-ascii?Q?hIsOSN5glD93z/U9lR/h+53k2YmlawhNryM7eCBVjvcLY435YB0nR05m/Vo6?= =?us-ascii?Q?qvK+pnvNmb57tUB0vBkPticF8UXmOPMDokHaw0+hVndonbDqUcF/7+IdcVk/?= =?us-ascii?Q?7W3rI0M/lhxUtkz8RCsGdfCKflAvtBOwrantHQDvM8Lap1LffskNaDqofvMv?= =?us-ascii?Q?NNbcI+NlrQ+BOONf5FqGovy/2D6bm7kHGYL+Es4X+FvEJ8Ay/3GSMwfM+ifo?= =?us-ascii?Q?Oc7248wo2rFKqK/NK4ZSdID09cAaJ7C9Prjh2DkXqeiHnOHJfBBmBL3Czanp?= =?us-ascii?Q?qwLDx6K9VSmNylpqXFu47eXFkMK62yY/kPR1MF8f+a6zpqWtKY4p+TqB3lGv?= =?us-ascii?Q?eUWtNkq1CFGmJ4AfpF3OdKiJmzcl+iVat9Jz2BrJf9PmT7Uj3WFvDrWnYPK5?= =?us-ascii?Q?YENIS0O8HtcPcuOnMGmAlFi9tPw1xQanJKv1BRhXNQxBIS5Z8/NriCVr6i+M?= =?us-ascii?Q?VecB7JjeRdbkypSt71UgPV6lDhG27sLXWOZDQj1LW8MucQwES6gBm6fuZqtU?= =?us-ascii?Q?GBGM64hWyObwtmLzfMeuFOyTngsvw16GyIpJK+7Z9OaBBNWF5Uq+LHFgsRkV?= =?us-ascii?Q?Xseo/g=3D=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 472245ab-abe8-472a-6181-08d9fd32bfc0 X-MS-Exchange-CrossTenant-AuthSource: CO1PR10MB4531.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Mar 2022 16:27:45.9071 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Bh98kMrw0I8VCiL3vaZp16cPbT7/02FcExdBVCm96rfVRQS/IQD5ykFv9B78qjJjsQwRlWFm6HWgw9ruZUpX1RIpb4O/Gxz3b3s4wNsRnHs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB4704 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10275 signatures=686983 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 bulkscore=0 adultscore=0 phishscore=0 spamscore=0 suspectscore=0 malwarescore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2201110000 definitions=main-2203030079 X-Proofpoint-GUID: RTKFlRMymYJQ8GDYEg4chjO1LPbERjYP X-Proofpoint-ORIG-GUID: RTKFlRMymYJQ8GDYEg4chjO1LPbERjYP Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Support for CPU and memory hotplug for crash is controlled by the CRASH_HOTPLUG configuration option, introduced by this patch. The CRASH_HOTPLUG_ELFCOREHDR_SZ related configuration option is also introduced with this patch. Signed-off-by: Eric DeVolder --- arch/x86/Kconfig | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 9f5bd41bf660..37eb26563f07 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -2061,6 +2061,32 @@ config CRASH_DUMP (CONFIG_RELOCATABLE=3Dy). For more details see Documentation/admin-guide/kdump/kdump.rst =20 +config CRASH_HOTPLUG + bool "kernel updates of crash elfcorehdr" + depends on CRASH_DUMP && (HOTPLUG_CPU || MEMORY_HOTPLUG) && KEXEC_FILE + help + Enable the kernel to update the crash elfcorehdr (which contains + the list of CPUs and memory regions) directly when hot plug/unplug + of CPUs or memory. Otherwise userspace must monitor these hot + plug/unplug change notifications via udev in order to + unload-then-reload the crash kernel so that the list of CPUs and + memory regions is kept up-to-date. Note that the udev CPU and + memory change notifications still occur (however, userspace is not + required to monitor for crash dump purposes). + +config CRASH_HOTPLUG_ELFCOREHDR_SZ + depends on CRASH_HOTPLUG + int + default 131072 + help + Specify the maximum size of the elfcorehdr buffer/segment. + The 128KiB default is sized so that it can accommodate 2048 + Elf64_Phdr, where each Phdr represents either a CPU or a + region of memory. + For example, this size can accommodate a machine with up to 1024 + CPUs and up to 1024 memory regions, eg. as represented by the + 'System RAM' entries in /proc/iomem. + config KEXEC_JUMP bool "kexec jump" depends on KEXEC && HIBERNATION --=20 2.27.0 From nobody Tue Jun 23 14:06:00 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id B7C06C433F5 for ; Thu, 3 Mar 2022 16:28:26 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234979AbiCCQ3K (ORCPT ); Thu, 3 Mar 2022 11:29:10 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59750 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234980AbiCCQ27 (ORCPT ); Thu, 3 Mar 2022 11:28:59 -0500 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 065B682D2B for ; Thu, 3 Mar 2022 08:28:13 -0800 (PST) Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 223EuRTV009253; Thu, 3 Mar 2022 16:27:52 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2021-07-09; bh=dAHduroJWRmJvbEGqqRIGWm4ONUR+9W7wjI+BQNzhUg=; b=k5bcoo3/LV4HajoJW/BAWtYLohufuo1Y/tlaETKBvRGZggWef4qYUk0mOV8BxMyPjmDL uEIT2pzZgObjbYXyWi+Iwvd02zJfSMQ5isAob1SW3YilcsWJgzLGuU4OmYDCct5DiUmn XB3ccgWGQGZGYOXrnbDBcIfY0BTbEW/nBh7DA5dkcxj+p/JgkZS8LEeuIyuiAu9WLA0F zNPiNkMgKmjuKRAFaEztoO9MmM150Gr1ManpsYDcfZIJF8ae6XkG0Ux+xKP7rh8gEnh2 y+7nUTEijJ6JpOIVrwI7wnyaYIiDmG7Ofnnq8Rz7fvxjvS4NT/oFVg2aJ1nbXS00QEM7 TA== Received: from aserp3030.oracle.com (aserp3030.oracle.com [141.146.126.71]) by mx0b-00069f02.pphosted.com with ESMTP id 3ehbk9fwxs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:27:51 +0000 Received: from pps.filterd (aserp3030.oracle.com [127.0.0.1]) by aserp3030.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 223GHOxZ084121; Thu, 3 Mar 2022 16:27:50 GMT Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2102.outbound.protection.outlook.com [104.47.70.102]) by aserp3030.oracle.com with ESMTP id 3efa8jf0y7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:27:50 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YtiMkHOQUd5ql7N4R6Q/QrInbjI3sghsdeWGvZ0uxHsbCbFW7R82dGiW6fD+xxkUFPTUPhOjJzItVSRRoAhnj5x8lzbNryLR0BxrIOKR2LUPZPRtxvoJz2Tt8/Goy7UWnNMxkBK28I+MRRltDXctN1UYTMQYiL2UlBssXXk4ARBvvcvoL6KykbAKj0fZFI51OtALkKGwT/WrqT+N+3jO1NfgGC5y1Il3zl9AqoEiuX+/uUUr0BZYrxQgSupxmyt8JXIShEYWbosr3Z7ZITmt1lG01UQWnjMxfAd5G35wmOQgRnHXkdjjuB09joEYcUA1Ftsk/tlPSpukNvambn9e0Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=dAHduroJWRmJvbEGqqRIGWm4ONUR+9W7wjI+BQNzhUg=; b=XRmKF/OuEe8SS7W/EjlTUjYajN8Qy3W8uEyALQiKu4umqyjmtyrNcmTufFX8tsO+78lUDqmV0Nng9xn0HX9HWNgWcfRirBoUTCb+dVQ7WdLVCu5bVvz5v8xQyC0qV/88pJmTo+Xx1NiWKXVvW0DXW85k0U0h3WdgQSr7vZlow/Mww4oTmGlkAwfxp0TxN3+mqExf6p5Cv3fE8hpNr82SWO49MzR0V9n/OwWNzQ23kYDtvKkUmLIpaqmA3olZeE9NdKsAd6DE0QD2JoVM93RddF3a1NiR/MDPLL+WAKUexyoB1zDXcO8rcHZ3R+i5WS5T9FXXfQhhhLOU8rQf2gpqfw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=dAHduroJWRmJvbEGqqRIGWm4ONUR+9W7wjI+BQNzhUg=; b=mwygbd2Abd95g85YVhbKz9mvetuC+Gth8nFe7aXrHH7G1MJ6PtwGu/tsNjTgH67Swc0m2DXOURJdVpnonh3gY2DtB6w42PECBDg3kqYtQEHRMI97peK673E81NYfPOtg+Brxpx7JpaJA13TpoUurkgQFbBadd6R99PfCkZioMLI= Received: from CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) by SJ0PR10MB4704.namprd10.prod.outlook.com (2603:10b6:a03:2db::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.14; Thu, 3 Mar 2022 16:27:48 +0000 Received: from CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac]) by CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac%7]) with mapi id 15.20.5038.015; Thu, 3 Mar 2022 16:27:48 +0000 From: Eric DeVolder To: linux-kernel@vger.kernel.org, x86@kernel.org, kexec@lists.infradead.org, ebiederm@xmission.com, dyoung@redhat.com, bhe@redhat.com, vgoyal@redhat.com Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, hpa@zytor.com, nramas@linux.microsoft.com, thomas.lendacky@amd.com, robh@kernel.org, efault@gmx.de, rppt@kernel.org, david@redhat.com, konrad.wilk@oracle.com, boris.ostrovsky@oracle.com, eric.devolder@oracle.com Subject: [PATCH v5 3/8] crash: prototype change for crash_prepare_elf64_headers Date: Thu, 3 Mar 2022 11:27:20 -0500 Message-Id: <20220303162725.49640-4-eric.devolder@oracle.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20220303162725.49640-1-eric.devolder@oracle.com> References: <20220303162725.49640-1-eric.devolder@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SN7PR04CA0214.namprd04.prod.outlook.com (2603:10b6:806:127::9) To CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: ff990a19-1fce-4bd3-47e9-08d9fd32c15a X-MS-TrafficTypeDiagnostic: SJ0PR10MB4704:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: a2lhpsfcUMtmnhNt7Cgv3KkVyeTtdw+3+1dSaGRAHCbP+lAf4S8nmLtrIR5/HMtzdiZvHhfJBDIRWuWZyUdrg6dqq7lXw+xyksW5YBEe5YcI5Ty9MfxvoyBmrBHdY3LqRo+sEp/FD/c3pWj5DX9xKFJj8ogL+PkBTc4dCpPsZDlZa2piDrypCutbp36fjHM1iLOFlIl8iLw80L442r1bIuJDOwB5EO/GkRr25SCGa+jPgfsB/BxDA5EtQ+dAbSismZuhkJscQndcNbaGR5mUvWu4D2eohROCWaty2vrPQ9D/X8eRU3NVBilyvyW4d/OMbMZAR3ckW6MLsnIW6vCXMwpQqrrxy0NPedegMgvozTuYT0EaWetSA6y6RxwqSb4/38lGmR1FqJbCTVM4fAEWPsqLFrHmdfTajxccQlK9ja3FxH5jzRPT4PMOwE1qGs4b5KOq5bJGzdU+M8h8sW1ZUbfHM6gXiP2EDsVYijARJtw0m8RnvKqeeQlaoWxGXbJWZTH9Mmc6d277/wjMePhFYSq9MkNvkjYTQRErI04nqbWNjtbmlpG8I8TziqtVWS3EvO7FE6qf6RLx/H/8adp0/F+KWRaombIzlX7+qAF6ZXWzqrHtk868cFr24ukLzvVeq10WsahWzPfaNHKGIkwk3w+VcWojJIXZQjglf2D2JheX14h5qa8orr8D7+ESjelCfTFvR2lYwmcwpNA4zL+nCA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR10MB4531.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(7416002)(5660300002)(38100700002)(38350700002)(8936002)(1076003)(26005)(186003)(107886003)(2616005)(6506007)(52116002)(6666004)(6486002)(6512007)(4326008)(66476007)(8676002)(66556008)(66946007)(316002)(83380400001)(2906002)(86362001)(36756003)(508600001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?eIrL4ipovvwNptjDbWQSZRFf+M/6hs34k5M2fYfKgu7Wp6wn8WsBEE3iAiaK?= =?us-ascii?Q?eeslqpiOsdaJfV+yyywvpD9Bf6y0FIUFtzF9h1sDMRoIJWarXdIyfMDvfoFc?= =?us-ascii?Q?bEBKnBp/VjMBIVxK97ntf35RnJy4RPBJ6xlAY7+8Due6B2f2bi+g+mk0QwAY?= =?us-ascii?Q?M3w/GqNZQ/Dn0w4H/WtrZVZKydEg18TLRySTMON0UlS2wnCUBkfeEo+RKQzQ?= =?us-ascii?Q?5qrHUd5LmVyTfdeWT9nR3dTvcA6GNL+QkSPTdV3CQy0KHRHLoHwQcz/MlJkQ?= =?us-ascii?Q?YPnFaj4Ky0sOHzv9T+edX3aLPIj5rMp7n2K3zyhXoAKdZIdkj801gFdkK2/i?= =?us-ascii?Q?PyITBhiGa6piYeQ8i83uEhqdbvffhylr7xYaiFtw9LGswQFr6p2x6AI5cEE4?= =?us-ascii?Q?MOWmNwSYiLkoSXq20jNbV3FSNMmqybopQMBBUm6Vq+sD8yAiI0gVuudhAe5D?= =?us-ascii?Q?O0TJSooLwuIUywPgm+FuyHrDof70W0m8HS13ThLaEQX1R/GebIzGiBCjBTFl?= =?us-ascii?Q?FiErWfdH3wjiL4Wmmx33EFm+CEqQoGRK2G3110VyXTt8FNNZjFW7HYXEETzs?= =?us-ascii?Q?RstKHmNa2JmVOeItQcFkdyFxY8RjsKVnRzeO3qcBqDJ78iCePMZVydPMmroJ?= =?us-ascii?Q?10tvFbKHAQGBGpm9JiPu4PnBnKjoydfnEm5pgME68g9Xdaqr3ARMow435Jo/?= =?us-ascii?Q?8GmNPAhpsSD6Oplim1SD6cJYdRQ+Z2WtbDsDl51U5dzdWCVe4JO1OIXiiqHR?= =?us-ascii?Q?5BbFw4WpsDIRKmk8xHRKvOEp3tQsnleZUXqYZdR4QkF5JNgdl9soqsLhuBjj?= =?us-ascii?Q?7bkAgQqVog6LHqvUW+FidOr9bocvmSM49H8CzsnZCiMfZaOYRq4eiPtwDiK7?= =?us-ascii?Q?RXqCynRLjD9QqBJ+jyBoZQBpYTIKZRXziMlEC8clC5WLYXIFqqTJVbFn4COZ?= =?us-ascii?Q?mZVvOpaR0j7tx2aQSLqpkuETfWSv6hO6s7Wy0rqDTuVqAd8d1Hs4q6eNWaeL?= =?us-ascii?Q?yk1Gl/iYWmJNbndfH7jRcWHRNGydmftAeDCWc2Sjr6tQwvxX7pXX114p+RQY?= =?us-ascii?Q?MzDbgzLsf/3al3JUD0GbxOW5Krr2HOcguq16P1TWbD/8+7EKCTcfc0GW5qgp?= =?us-ascii?Q?W8Jq2HvXUgACDtWnwvzL9E32VGT0MyMY2qV6Ht3xGENItI0uvrZLZWU9vix5?= =?us-ascii?Q?tUMiDQ18FzLVtB5UZe/RL+8aoDMFNbCDloaG58fb3/VKQDgsxRzmZ6DytET8?= =?us-ascii?Q?s56NYVpVBbZPnIPiDLjiyOmOwl0fGQsy1VEuXF936xYRVOAD8FyZE4YkK3U1?= =?us-ascii?Q?urtkq/+o7WmYrTLj5Gt8qxeQQJLu7+kVqfpnxqd+nTl2jjxGnzQMJ+phyM8/?= =?us-ascii?Q?s7tUtSUACjJ8THNbKsGd9MvuhoPT2SrKFn9CLVteT6xveOW1TK9RzWK6//L2?= =?us-ascii?Q?ODW5HIDKxx+8uryG+ekzxt5I/fUcsqBS6+6H5hRhz7qDLUoNOTmfMPmrPKUT?= =?us-ascii?Q?GTNECNg78Va295OPwKN2stjL9W4MX3M1s863goYiYfgbz3AlZ7ZF/7gmLw9+?= =?us-ascii?Q?s2C4X6kqkri8Kn391UVAxVt6D0inA3HkoI994qxXQ9bUYQT5URVX20L683jM?= =?us-ascii?Q?UxtZHn98RC1ksFvvume/le8mGzxgjxum26zEoshxcilTdwCG7lVJE1c8wcY7?= =?us-ascii?Q?PnPhUA=3D=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: ff990a19-1fce-4bd3-47e9-08d9fd32c15a X-MS-Exchange-CrossTenant-AuthSource: CO1PR10MB4531.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Mar 2022 16:27:48.5465 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: LgsPH31bMDe6TY8mvt9e9QiKNBosUeuj4mh7vtbosXabmAJr7iUNhNKzEuZVl6RdXYQ+5evkI1+HBjY4rOK51Y7uzlqAwT3SNt5oWjSLx1I= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB4704 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10275 signatures=686983 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 bulkscore=0 phishscore=0 malwarescore=0 mlxscore=0 suspectscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2201110000 definitions=main-2203030079 X-Proofpoint-GUID: cmvkYO9S-ydGadcsrFjkryA7LKjb2fad X-Proofpoint-ORIG-GUID: cmvkYO9S-ydGadcsrFjkryA7LKjb2fad Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From within crash_prepare_elf64_headers() there is a need to reference the struct kimage hotplug members. As such, this change passes the struct kimage as a parameter to the crash_prepare_elf64_headers(). This is preparation for later patch, no functionality change. Signed-off-by: Eric DeVolder Acked-by: Baoquan He --- arch/arm64/kernel/machine_kexec_file.c | 6 +++--- arch/powerpc/kexec/file_load_64.c | 2 +- arch/x86/kernel/crash.c | 3 ++- include/linux/kexec.h | 5 +++-- kernel/kexec_file.c | 4 ++-- 5 files changed, 11 insertions(+), 9 deletions(-) diff --git a/arch/arm64/kernel/machine_kexec_file.c b/arch/arm64/kernel/mac= hine_kexec_file.c index 59c648d51848..7dbafb42ecf2 100644 --- a/arch/arm64/kernel/machine_kexec_file.c +++ b/arch/arm64/kernel/machine_kexec_file.c @@ -39,7 +39,7 @@ int arch_kimage_file_post_load_cleanup(struct kimage *ima= ge) return kexec_image_post_load_cleanup_default(image); } =20 -static int prepare_elf_headers(void **addr, unsigned long *sz) +static int prepare_elf_headers(struct kimage *image, void **addr, unsigned= long *sz) { struct crash_mem *cmem; unsigned int nr_ranges; @@ -67,7 +67,7 @@ static int prepare_elf_headers(void **addr, unsigned long= *sz) ret =3D crash_exclude_mem_range(cmem, crashk_res.start, crashk_res.end); =20 if (!ret) - ret =3D crash_prepare_elf64_headers(cmem, true, addr, sz); + ret =3D crash_prepare_elf64_headers(image, cmem, true, addr, sz); =20 kfree(cmem); return ret; @@ -96,7 +96,7 @@ int load_other_segments(struct kimage *image, =20 /* load elf core header */ if (image->type =3D=3D KEXEC_TYPE_CRASH) { - ret =3D prepare_elf_headers(&headers, &headers_sz); + ret =3D prepare_elf_headers(image, &headers, &headers_sz); if (ret) { pr_err("Preparing elf core header failed\n"); goto out_err; diff --git a/arch/powerpc/kexec/file_load_64.c b/arch/powerpc/kexec/file_lo= ad_64.c index b4981b651d9a..07da6bf1cf24 100644 --- a/arch/powerpc/kexec/file_load_64.c +++ b/arch/powerpc/kexec/file_load_64.c @@ -797,7 +797,7 @@ static int load_elfcorehdr_segment(struct kimage *image= , struct kexec_buf *kbuf) goto out; =20 /* Setup elfcorehdr segment */ - ret =3D crash_prepare_elf64_headers(cmem, false, &headers, &headers_sz); + ret =3D crash_prepare_elf64_headers(image, cmem, false, &headers, &header= s_sz); if (ret) { pr_err("Failed to prepare elf headers for the core\n"); goto out; diff --git a/arch/x86/kernel/crash.c b/arch/x86/kernel/crash.c index 9730c88530fc..9db41cce8d97 100644 --- a/arch/x86/kernel/crash.c +++ b/arch/x86/kernel/crash.c @@ -265,7 +265,8 @@ static int prepare_elf_headers(struct kimage *image, vo= id **addr, goto out; =20 /* By default prepare 64bit headers */ - ret =3D crash_prepare_elf64_headers(cmem, IS_ENABLED(CONFIG_X86_64), add= r, sz); + ret =3D crash_prepare_elf64_headers(image, cmem, + IS_ENABLED(CONFIG_X86_64), addr, sz); =20 out: vfree(cmem); diff --git a/include/linux/kexec.h b/include/linux/kexec.h index 0c994ae37729..d7b59248441b 100644 --- a/include/linux/kexec.h +++ b/include/linux/kexec.h @@ -221,8 +221,9 @@ struct crash_mem { extern int crash_exclude_mem_range(struct crash_mem *mem, unsigned long long mstart, unsigned long long mend); -extern int crash_prepare_elf64_headers(struct crash_mem *mem, int kernel_m= ap, - void **addr, unsigned long *sz); +extern int crash_prepare_elf64_headers(struct kimage *image, + struct crash_mem *mem, int kernel_map, + void **addr, unsigned long *sz); #endif /* CONFIG_KEXEC_FILE */ =20 #ifdef CONFIG_KEXEC_ELF diff --git a/kernel/kexec_file.c b/kernel/kexec_file.c index 8347fc158d2b..801d0d0a5012 100644 --- a/kernel/kexec_file.c +++ b/kernel/kexec_file.c @@ -1260,8 +1260,8 @@ int crash_exclude_mem_range(struct crash_mem *mem, return 0; } =20 -int crash_prepare_elf64_headers(struct crash_mem *mem, int kernel_map, - void **addr, unsigned long *sz) +int crash_prepare_elf64_headers(struct kimage *image, struct crash_mem *me= m, + int kernel_map, void **addr, unsigned long *sz) { Elf64_Ehdr *ehdr; Elf64_Phdr *phdr; --=20 2.27.0 From nobody Tue Jun 23 14:06:00 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5616CC433F5 for ; Thu, 3 Mar 2022 16:29:26 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234999AbiCCQaK (ORCPT ); Thu, 3 Mar 2022 11:30:10 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35368 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235024AbiCCQaC (ORCPT ); Thu, 3 Mar 2022 11:30:02 -0500 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 5EC8E11AA20 for ; Thu, 3 Mar 2022 08:29:16 -0800 (PST) Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 223EpJrq013834; Thu, 3 Mar 2022 16:27:55 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2021-07-09; bh=UGV6RFlCT4eNTBHTaM/O6/MEW4rP+HUfelNDqPiHLso=; b=U6atab9uLITE94zmGmRksiC/Ddci1QDJrpgGblDkCsu9bBYYjsD7w6jVGcvug9t4EN87 goVGywdkxdyxZrrABuv4sbm6O3aoM0jvluHBQlHhVCBHAU1gwZt9Nis03PIPTPAzF5R9 +XxLvWhvoFY4CJy7UXyJhoGsftLOcVGdWjhWRlARqP6IZ7yIlhf4LDFzt4h9s66FVQ/V WKyaJNzhoRwj/xoAXnZyT6VMK1MY4ntxFo/EFaAleYBFE6SJTGU80WYQvA13XD14z0my Ojz2MA0gn8a6N/r8CSVFZYCSTLvv+adGRQF8EDkPe9R7l+RufvT77cjP6ktvkUz7p4UB 9A== Received: from aserp3030.oracle.com (aserp3030.oracle.com [141.146.126.71]) by mx0b-00069f02.pphosted.com with ESMTP id 3eh1k49c6t-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:27:54 +0000 Received: from pps.filterd (aserp3030.oracle.com [127.0.0.1]) by aserp3030.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 223GHNOx084031; Thu, 3 Mar 2022 16:27:53 GMT Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2173.outbound.protection.outlook.com [104.47.55.173]) by aserp3030.oracle.com with ESMTP id 3efa8jf13q-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:27:53 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NviUR/RlgN38YyNCf4LUgFsdtylDIMdM4hIocN8yGnbs8LWUG0vgj38iRnhiN+rDXCM99ZyIEjnl8EXqZF980N8Prt1CnaLyPjBIidVcC6DYWEas+toSE9ipCJwTaJyKgQiIjep645DdoFtIC7P8894HD6J9uBxkkxzqwR8dMXyUV/Z1UNN8fbmcUvPSKMEO73wFiO00UIvjJQDt2SPoT/uaqf7jHS8oqMhH20exDH4Y8dTyadrZ8AJgidSUqM4XxASqD3Sa1moPfqQWILCnPOza3EtwpBr6AaDMrkf/iSkfIr2rVCM1X6mWPpXSHCJV7TLxKAEwW39qZ5WhnvWfnw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=UGV6RFlCT4eNTBHTaM/O6/MEW4rP+HUfelNDqPiHLso=; b=Bhs/9/Shx6da2UDv84KaJkUgQNR8/PaOuyx0UrCfMXUCz3wEEV4Gz4l7RHx3nXqMiNHqCmogYn1/8g16uQ6w8TxsH6l6TNgOoJBB1GuXLc208R3xj3wYE7lQXPUKO2E1xpCgtOmxy4CQIw5gV2Au3V8KIXKllfuqYp31VdLd1MqFPhvryf4KWo22DRiZ/rqfpE+K0wLBMdeOXZEiU/3QjxtkWVNNepAw9FiaL/bPbfo+PRpDCFEp0svJAyh9yHh6ANxU0j7eAZLZ02d5+cOwSXj+XEFcHGtK918gt/DzTJIxi5l4vD6mVXdh6wRnbxbc2AkmTcpcVs9QdIXSdWj9vQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UGV6RFlCT4eNTBHTaM/O6/MEW4rP+HUfelNDqPiHLso=; b=uATjcT7bmMTZVoVjCpXDnU/9eK++0GperMtcv0dvUo4t6sI1mFPzdo3eUqQCY0l+n7HEpZqgzQeu2/oGGbDXfP/vBnCsajxaBHdgngmIH4tm4ywNZJ4O3rxrpqTU9rK/ADmrjAByXGi4oKzbqnf0LXdIyRm/hIRBF5dvxeyaIug= Received: from CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) by SJ0PR10MB4704.namprd10.prod.outlook.com (2603:10b6:a03:2db::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.14; Thu, 3 Mar 2022 16:27:51 +0000 Received: from CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac]) by CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac%7]) with mapi id 15.20.5038.015; Thu, 3 Mar 2022 16:27:51 +0000 From: Eric DeVolder To: linux-kernel@vger.kernel.org, x86@kernel.org, kexec@lists.infradead.org, ebiederm@xmission.com, dyoung@redhat.com, bhe@redhat.com, vgoyal@redhat.com Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, hpa@zytor.com, nramas@linux.microsoft.com, thomas.lendacky@amd.com, robh@kernel.org, efault@gmx.de, rppt@kernel.org, david@redhat.com, konrad.wilk@oracle.com, boris.ostrovsky@oracle.com, eric.devolder@oracle.com Subject: [PATCH v5 4/8] crash: generic crash hotplug support infrastructure Date: Thu, 3 Mar 2022 11:27:21 -0500 Message-Id: <20220303162725.49640-5-eric.devolder@oracle.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20220303162725.49640-1-eric.devolder@oracle.com> References: <20220303162725.49640-1-eric.devolder@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SN7PR04CA0214.namprd04.prod.outlook.com (2603:10b6:806:127::9) To CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: f3d48477-fe30-4514-ebfa-08d9fd32c2ef X-MS-TrafficTypeDiagnostic: SJ0PR10MB4704:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: uHgXaecNrI2t0eXrSMLdj53EyXxp6ZgQ/7TdlmDK5YvQIYOIjLtgbrMHRhXx2esNZ9tbHq1EnuFjsFYarYlVC2GAAwAw8PXTQHEaEctnilRrkSRvUQ1Qx4VNdBDWk9mOmKd5BxgwgZYLi/oNUtZaey7Fg2V050Derawd45EjoG0IKRZRc/5ohgBISDg0Skj+vipdzuPDumBRSiAi0OELte9wia7JfkMqC2n18xgG94kmuFAuwN03pLMj3JZEnL13sWbtxhwSQORT29nrVnIZNBWj4ZEn1WqGhDAvH+BJ7aOm79m9xuYhliIf1xJOAfVRjDQf4s+8eXi8NRGyMDi05qKBIqbmB7i15KOrP43rhc2f9OX4/vp0R0l5VyBK0dpzjB/DVIR5wi6+l3p475R9lI4ftBVwopFhY/KMhi1LBKyQ5BpnDG/HpaT4evj+SCCrE2JbywIOsRMohb+xiBfWTRuPFYB/zNR11cgV6dG2bBuaazLVpG42R8QAVOSAOxhCb+ixoDep7SwT9APeLUIa8e/Y2qT49mzIuQ+1RCqck4bsqzBXpG5iMiEnxOg0c5y2tv1fCchc7ReD8Be8vlimtd9WE12zIAjP93zmzDhqX2FUvJQsoOUzSjmspZK/MI2ACvi84H+jD/IqnQ3k4bzyKRcd9MnVbK9kDfqz42cgV5wPKkP/W8EKHXHhLvVF/8Ad5s0Px90rH43RLlPP2rbkul6qkIpDk06Cm9WNkPkH1Ck= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR10MB4531.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(7416002)(5660300002)(38100700002)(38350700002)(8936002)(1076003)(26005)(186003)(107886003)(2616005)(6506007)(52116002)(6666004)(6486002)(6512007)(4326008)(66476007)(8676002)(66556008)(66946007)(316002)(83380400001)(2906002)(86362001)(36756003)(508600001)(41533002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?n1Qv70Pkz77PEDaECJwlFXf4CH8DZYjE+43dwguVkjCKpJONIR5J90wnew+G?= =?us-ascii?Q?77qMbXJA1rPXq6tUJiVgkDA4G5xjDk88yJcFMbmkDz7LglGBxCSzbL5UfWj+?= =?us-ascii?Q?ZOTyWD2Y7GyvyVEMePpp3eFQ7E1MGqlDRxNi4JzYdA6Dbf+GcDUtJTCgMhsJ?= =?us-ascii?Q?O0GslQoPj5wMuorkd7+SkPwz12g0xBPTSARsQFQZa6BgdZC3IgvACqC9HSX1?= =?us-ascii?Q?SXZSa3XaH1DC5pB8W4ejQ/7SnHNXm08nDbx7lt1zLQbRHpd8Xtnz2Xyjj1l+?= =?us-ascii?Q?lQJiKQdpZ7Pyh7GbvNRPcfL/zwfAWvCSI6n0E+/pQfrt/5TnvHAsCQ/Nlebo?= =?us-ascii?Q?25W5LjD5y0sFU8cKVfhdmQFZBKWkxxs2vLyv2c51a0p3dzYOUI3SqZOU/VOj?= =?us-ascii?Q?LqQZBqyE8X+0AFe2420BIMpWrIvyOQasp81/GfaT8Pb+3/ruPTYyR57g1vFL?= =?us-ascii?Q?zMSTi+aIlr3bbYsV04K/SNi6d6AYDcOHjWkeQOukm9An34djwLu2JT5NqDsS?= =?us-ascii?Q?1FUB7zNY+Oltf8Dc1XLbVq3Q3KbARjXz1K8fyGowkdsNMrnlk0/BNOUvLDp+?= =?us-ascii?Q?4b6//Mtxx7H0NOjgftM2DqqJ/zoOZCMnZnJ3YBh6MxmsXXSGLqDteA7BL6SD?= =?us-ascii?Q?5LKhijCXYfggGc6iB5mfxMwG0UzwZHzx+tqsfg1W1ZuEI7OptwIOjN4g5Yqn?= =?us-ascii?Q?Hp3VklhqwSFnNRbQ1BiE+2O+ypuEKjnuJLTpRwawXICSIKhy+b+VR1a3E4gH?= =?us-ascii?Q?sGg2VRvIlIQlBOtRGfbhAyjD3WL44bsE7AV8LLcy+Zk0nELCgCFjXcMdPlyf?= =?us-ascii?Q?iCA+cNLqr020DTu7xZW9hPW6v4Xf0kTKmZcxr9gYb6VLiqckNQx5floqljhE?= =?us-ascii?Q?wV0jxa+xMIcnjTxRUUZEpK9oA8eD0u8xOux8cD1PwA6rutLsB/TW+oFjYqBL?= =?us-ascii?Q?TFnl1Mp+zcFuFT70Dc/ASY4+A74BWYPdAdns1SbK+wRFJZRzwKZHMQqok1X2?= =?us-ascii?Q?mrDkftEKk5fu1N4Szizh5nklrykpNHmczTCEz23ChVjbgs01pMplhfUUBKm3?= =?us-ascii?Q?VOJiuPo/QV2VaIbnnX88q8rown4byO9CrXGvz0Vz/HQpajBja22MborSY3q/?= =?us-ascii?Q?AKeBRvaALs0LYzccKlFMefU11tw1fC+ilHz08Abfn6DsdMlXPFlvFelBsN64?= =?us-ascii?Q?VJ1CmSh2sCVYRGOZwbz0GZTx4m4ESnVDyEvuNn9bu3GXJ1HAi8Fy+meRwb41?= =?us-ascii?Q?M5ZE/+OqKMH8V9PltAWpeKwVt6P9lNGYYUcuPi68PCYta9kJo/8fta3iu+r8?= =?us-ascii?Q?M2//0BzVlMkAHCByehKOI9ruH25oUB/qDjpzDJGHh0wB3JW/JdxwqvIGhE3R?= =?us-ascii?Q?SJmN5OALXd+PfhMm1omFfzJ64RtMA2j1QYofeU78lle9eJK04NB1PvaI7Epj?= =?us-ascii?Q?F9/4oGgYj4wciGMVebRgpEqc6qE8N3NtEx5sIzv3AY2Voxbt2a6TR/WZ3oMH?= =?us-ascii?Q?ifHcEEID0CgDk9nU2IgNFMqZKSMMFQjgT+DqkoubbJn+UXYBkCqM+BNk8cmg?= =?us-ascii?Q?TdD2MAyIKT0N2GlKLQryNqZmN3rIRjE7X+STm7l9OHqz9Pab5FJ4jnNwrG1U?= =?us-ascii?Q?FqybjkJvCp1jSg/BYOmup9wj3ZyaXQsQjZoHXaSSXp+jeJuxYZra0mpuhsKL?= =?us-ascii?Q?iVMgxQ=3D=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: f3d48477-fe30-4514-ebfa-08d9fd32c2ef X-MS-Exchange-CrossTenant-AuthSource: CO1PR10MB4531.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Mar 2022 16:27:51.2049 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 76zymlM/tqnDvHUSiwjq0Qyg/GqdTwvswdKoxGCwTuyz1kpIfRJ0QlQ76r+JgMteqsBn8OcaCA0UW6R+9Fq2osUGUxWRZc0kN12Yzn2KJFg= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB4704 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10275 signatures=686983 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 bulkscore=0 phishscore=0 malwarescore=0 mlxscore=0 suspectscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2201110000 definitions=main-2203030079 X-Proofpoint-ORIG-GUID: WB5bg2FgfsIgsTwUn7cdw1_zP3ICSUQl X-Proofpoint-GUID: WB5bg2FgfsIgsTwUn7cdw1_zP3ICSUQl Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" This patch introduces a generic crash hot plug/unplug infrastructure for CPU and memory changes. Upon CPU and memory changes, a generic crash_hotplug_handler() obtains the appropriate lock, does some important house keeping and then dispatches the hot plug/unplug event to the architecture specific arch_crash_hotplug_handler(), and when that handler returns, the lock is released. This patch modifies crash_core.c to implement a subsys_initcall() function that installs handlers for hot plug/unplug events. If CPU hotplug is enabled, then cpuhp_setup_state() is invoked to register a handler for CPU changes. Similarly, if memory hotplug is enabled, then register_memory_notifier() is invoked to install a handler for memory changes. These handlers in turn invoke the common generic handler crash_hotplug_handler(). On the CPU side, cpuhp_setup_state_nocalls() is invoked with parameter CPUHP_AP_ONLINE_DYN. While this works, when a CPU is being unplugged, the CPU still shows up in foreach_present_cpu() during the regeneration of the new CPU list, thus the need to explicitly check and exclude the soon-to-be offlined CPU in crash_prepare_elf64_headers(). On the memory side, each un/plugged memory block passes through the handler. For example, if a 1GiB DIMM is hotplugged, that generate 8 memory events, one for each 128MiB memblock. Signed-off-by: Eric DeVolder --- include/linux/kexec.h | 16 +++++++ kernel/crash_core.c | 108 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 124 insertions(+) diff --git a/include/linux/kexec.h b/include/linux/kexec.h index d7b59248441b..b11d75a6b2bc 100644 --- a/include/linux/kexec.h +++ b/include/linux/kexec.h @@ -300,6 +300,13 @@ struct kimage { =20 /* Information for loading purgatory */ struct purgatory_info purgatory_info; + +#ifdef CONFIG_CRASH_HOTPLUG + bool hotplug_event; + int offlinecpu; + bool elf_index_valid; + int elf_index; +#endif #endif =20 #ifdef CONFIG_IMA_KEXEC @@ -316,6 +323,15 @@ struct kimage { unsigned long elf_load_addr; }; =20 +#ifdef CONFIG_CRASH_HOTPLUG +void arch_crash_hotplug_handler(struct kimage *image, + unsigned int hp_action, unsigned long a, unsigned long b); +#define KEXEC_CRASH_HP_REMOVE_CPU 0 +#define KEXEC_CRASH_HP_ADD_CPU 1 +#define KEXEC_CRASH_HP_REMOVE_MEMORY 2 +#define KEXEC_CRASH_HP_ADD_MEMORY 3 +#endif /* CONFIG_CRASH_HOTPLUG */ + /* kexec interface functions */ extern void machine_kexec(struct kimage *image); extern int machine_kexec_prepare(struct kimage *image); diff --git a/kernel/crash_core.c b/kernel/crash_core.c index 256cf6db573c..76959d440f71 100644 --- a/kernel/crash_core.c +++ b/kernel/crash_core.c @@ -9,12 +9,17 @@ #include #include #include +#include +#include +#include =20 #include #include =20 #include =20 +#include "kexec_internal.h" + /* vmcoreinfo stuff */ unsigned char *vmcoreinfo_data; size_t vmcoreinfo_size; @@ -491,3 +496,106 @@ static int __init crash_save_vmcoreinfo_init(void) } =20 subsys_initcall(crash_save_vmcoreinfo_init); + +#ifdef CONFIG_CRASH_HOTPLUG +void __weak arch_crash_hotplug_handler(struct kimage *image, + unsigned int hp_action, unsigned long a, unsigned long b) +{ + pr_warn("crash hp: %s not implemented", __func__); +} + +static void crash_hotplug_handler(unsigned int hp_action, + unsigned long a, unsigned long b) +{ + /* Obtain lock while changing crash information */ + if (!mutex_trylock(&kexec_mutex)) + return; + + /* Check kdump is loaded */ + if (kexec_crash_image) { + pr_debug("crash hp: hp_action %u, a %lu, b %lu", hp_action, + a, b); + + /* Needed in order for the segments to be updated */ + arch_kexec_unprotect_crashkres(); + + /* Flag to differentiate between normal load and hotplug */ + kexec_crash_image->hotplug_event =3D true; + + /* Now invoke arch-specific update handler */ + arch_crash_hotplug_handler(kexec_crash_image, hp_action, a, b); + + /* No longer handling a hotplug event */ + kexec_crash_image->hotplug_event =3D false; + + /* Change back to read-only */ + arch_kexec_protect_crashkres(); + } + + /* Release lock now that update complete */ + mutex_unlock(&kexec_mutex); +} + +#if defined(CONFIG_MEMORY_HOTPLUG) +static int crash_memhp_notifier(struct notifier_block *nb, + unsigned long val, void *v) +{ + struct memory_notify *mhp =3D v; + unsigned long start, end; + + start =3D mhp->start_pfn << PAGE_SHIFT; + end =3D ((mhp->start_pfn + mhp->nr_pages) << PAGE_SHIFT) - 1; + + switch (val) { + case MEM_ONLINE: + crash_hotplug_handler(KEXEC_CRASH_HP_ADD_MEMORY, + start, end-start); + break; + + case MEM_OFFLINE: + crash_hotplug_handler(KEXEC_CRASH_HP_REMOVE_MEMORY, + start, end-start); + break; + } + return NOTIFY_OK; +} + +static struct notifier_block crash_memhp_nb =3D { + .notifier_call =3D crash_memhp_notifier, + .priority =3D 0 +}; +#endif + +#if defined(CONFIG_HOTPLUG_CPU) +static int crash_cpuhp_online(unsigned int cpu) +{ + crash_hotplug_handler(KEXEC_CRASH_HP_ADD_CPU, cpu, 0); + return 0; +} + +static int crash_cpuhp_offline(unsigned int cpu) +{ + crash_hotplug_handler(KEXEC_CRASH_HP_REMOVE_CPU, cpu, 0); + return 0; +} +#endif + +static int __init crash_hotplug_init(void) +{ + int result =3D 0; + +#if defined(CONFIG_MEMORY_HOTPLUG) + register_memory_notifier(&crash_memhp_nb); +#endif + +#if defined(CONFIG_HOTPLUG_CPU) + result =3D cpuhp_setup_state_nocalls(CPUHP_AP_ONLINE_DYN, + "crash/cpuhp", + crash_cpuhp_online, crash_cpuhp_offline); +#endif + + return result; +} + +subsys_initcall(crash_hotplug_init); +#endif /* CONFIG_CRASH_HOTPLUG */ --=20 2.27.0 From nobody Tue Jun 23 14:06:00 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 408B2C433F5 for ; Thu, 3 Mar 2022 16:28:32 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235003AbiCCQ3P (ORCPT ); Thu, 3 Mar 2022 11:29:15 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60510 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235001AbiCCQ3J (ORCPT ); Thu, 3 Mar 2022 11:29:09 -0500 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DF5D8B10AB for ; Thu, 3 Mar 2022 08:28:20 -0800 (PST) Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 223EnAwq003629; Thu, 3 Mar 2022 16:27:57 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2021-07-09; bh=+i+KtCnoP+kA99/b5WAl4TvRcWfqE/kEHwStHfqV+Bk=; b=fDWynTASvgv/L96FE2lCwJeeBlfIJmuJt4BhKAeuPX5MQx4RwYmRE2Fl0PVmSlGIvbnJ Cu8alklb/nrI9C99kdHVQ6PFAIClQkNf4DVWyuFJ42uCugTEBk6lnbm9DN1L2O6DPYBR y1uhyBrqib38q3vLZU8RvcDKEXnJVkxTNJur9U7L02g1ACXdmwAJ4otNP6G18MWVYXw9 sSTHGCCbR/fQJ7QvYiuyUtybjtxzBm5ofz9luMNsRuhMmpjdVDVip/7BZVcBPNHe260J lAmSv6nXCP/l9mnFZOMw+lvWJxNxhYDspXYd3nEqM1FzqfXw+N7581U0WX8i2gqvAEBa OA== Received: from userp3020.oracle.com (userp3020.oracle.com [156.151.31.79]) by mx0b-00069f02.pphosted.com with ESMTP id 3ehh2eq8ut-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:27:57 +0000 Received: from pps.filterd (userp3020.oracle.com [127.0.0.1]) by userp3020.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 223GFRs4175955; Thu, 3 Mar 2022 16:27:56 GMT Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2105.outbound.protection.outlook.com [104.47.70.105]) by userp3020.oracle.com with ESMTP id 3efdnt01ju-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:27:56 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KGCcogBBfN0aoqKl8Pwk/JIbfzlJU5hTD2vXa1ESV9OEOh/mOJEM8zhF10kgx7motP1PHe5xiW+N11D0j0DHn40NI8KITTk/Mzv1uQ6DWUfnZeRbKKjFIzdVS2bjvARCPP2BUFY/zxEeZTE9VY2hId1It5z4ArRqx/OGDCnZXdpRYpQ3iiIcLTlr9SdPdnCqacQhUhN4pWvAoLFysRli2Y1n2RgvVzL3GGM5ePl+7r4EQXm7V8PbjF1NwD/eLRwFrfeRnBsqjNPGjqMM3KSqvHobgOKp6Lh3Rapar20lIdquKzkr49SdBhc2JYEUuNzVSwWClX98bDBEpm+MWtdYrQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=+i+KtCnoP+kA99/b5WAl4TvRcWfqE/kEHwStHfqV+Bk=; b=S0kDIAdXj0VOKcVsqH4oTlxbj6q91+kTEJABSIlDhnpN2bUf9m2UqpTsjjpEgP8Mu66mt6F+EaRtBdLqTx+z6vFH6FaXXSLI3OjQ6hJtyVbl93UUErWcZwef7EyuGFfUfnkGmnldPifSEzpgyoa3SX5+cU5VzaHuHaINSik8uMJYzNHGQDVn9M0Pxx4rhVhrBYg03LNbFby3gAHLawuESRANl6KDozEhkV2MCKREQJm6v53jNnf1TzuRheQBdMVdMInh2bcQF/RuqKJQsL2BUMi2hUpIGsc4eW6yHDfUAXrOmAXwDkuMrAvUucNyWliO3QeohTH/b7vcmztBdHsQYg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+i+KtCnoP+kA99/b5WAl4TvRcWfqE/kEHwStHfqV+Bk=; b=GjLCibaLCI2gDQ7jpcPdCNrVVhPy/+Y1NFmvdFHqkoyGc+eyDdx0RKdhxWxGog6J9vh5sIVw/ioU9cE9+p257l0JBmySXd84sPu0vMvPIvQjK89XF7CnuYTlzrpI+rwRPsIx3a8zCRS+HrUaISztbMsPREL4cUK8jtuuJ+5U/uE= Received: from CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) by SJ0PR10MB4704.namprd10.prod.outlook.com (2603:10b6:a03:2db::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.14; Thu, 3 Mar 2022 16:27:54 +0000 Received: from CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac]) by CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac%7]) with mapi id 15.20.5038.015; Thu, 3 Mar 2022 16:27:54 +0000 From: Eric DeVolder To: linux-kernel@vger.kernel.org, x86@kernel.org, kexec@lists.infradead.org, ebiederm@xmission.com, dyoung@redhat.com, bhe@redhat.com, vgoyal@redhat.com Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, hpa@zytor.com, nramas@linux.microsoft.com, thomas.lendacky@amd.com, robh@kernel.org, efault@gmx.de, rppt@kernel.org, david@redhat.com, konrad.wilk@oracle.com, boris.ostrovsky@oracle.com, eric.devolder@oracle.com Subject: [PATCH v5 5/8] kexec: exclude elfcorehdr from the segment digest Date: Thu, 3 Mar 2022 11:27:22 -0500 Message-Id: <20220303162725.49640-6-eric.devolder@oracle.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20220303162725.49640-1-eric.devolder@oracle.com> References: <20220303162725.49640-1-eric.devolder@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SN7PR04CA0214.namprd04.prod.outlook.com (2603:10b6:806:127::9) To CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 595816b9-0def-4f3c-b468-08d9fd32c493 X-MS-TrafficTypeDiagnostic: SJ0PR10MB4704:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: VbSyyOoMjhyf71cR3geFIT8xztBtsQgL2/3hYddrRxp3nW29jALBerUOzhOVFj9Y5sRFlN0DGyaP5pR46/ZEVTgRNfIzixR9IGI7D+AfLWztNOF3gVS/80r2BimVzVwX7lBitEF9jds+J2vDxRJhxBQaxL/OOu61UTpdZyZRkknriGUjrghtx6Z8td2MQ2y1WlR1ODl+vfE13Y+kf/NtJZrmzZwHOX8oUfSjN/3zNwkPOmpF8ZeQRjT5/vKfSMA0i99W7oW5CX3eOb7toAlnkAZP3i6VVCvLsv8LB7wAZj6Q367xyVYRCYrSuriN2dpBrUsj5HijKpVChrPNsi5C/ltLK118EMtf4nIzLFKo9YYFjQfsO0KkTE+JXfSRg4wcvGq68UDMV8yN3y22SOR6Xr5AabnUnviKDWuxfMOehL2lYpaAHmLnE7zd1p0dMJY78f6hjdASbWeW7vp7ZT0A8xpLEDlqpP250ax71oaBPUJC2AP+Cgms1p7QkMqIYK4EsM4QfV3zT0cE0Ox8xzBYwfuL5ClqcOReE7nQm6Za5jh0ciuqU+ezVsB7R2mDS22f9rQuf00/4rafAYc8bvjT7kct0c8wzCCdRM6gUVJ/yH+A8hFiXqZF1WcQXA5A79C20HlORAgokFikgUb4WJerqDmZwXpUVpn/RfYVBW7hJXvOoXBAkvnugIyaXl0GDVFutcq+NQt2NsUndRQjr3cltw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR10MB4531.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(7416002)(5660300002)(38100700002)(38350700002)(8936002)(1076003)(26005)(186003)(107886003)(2616005)(6506007)(52116002)(6666004)(6486002)(6512007)(4326008)(66476007)(8676002)(66556008)(66946007)(316002)(2906002)(86362001)(36756003)(508600001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?WwA92kOWQpYCGoAOXuQsXmI4F5tlhviChd/ZWnJQg0PlwecnLHuCbzcixzLx?= =?us-ascii?Q?gHfps5NzybK4RvZtGFmVRu9uTyCvKBICxZVor1M79x+AJq9MSO9GEAH5R5tD?= =?us-ascii?Q?HWVgxKhnIQhQPfL6CO5jVPS+EZyRFvUYZKh37DkoGPl70o7LdsnJDFNJQ5Wt?= =?us-ascii?Q?lbFSnh7KF5DBnnsDxVtnTSFX78WCdph9IF1Dd08S6Nkj9IHQMOHNi8CRNmgd?= =?us-ascii?Q?E7nmXQdki1qnqT1VgAHX64Joj1Uu0DsiKxLbcWSePecu3Y02nff41IoJ7drp?= =?us-ascii?Q?VSmutWGrXLZDPKzf6jD3NjIO3pvHI14SFLAxqfEUAziEWlgFW22jaNgGy2CY?= =?us-ascii?Q?aXndK5JmB7V/fSNfAASIW28jhYxvtWZSrU8i+kD+qibnfhyF8LMtGKxfyi/L?= =?us-ascii?Q?TRP00VL+Z4mV3EL99gigax5iV0j5s+6/ARKD88GBDqpCpMaQHle1AvCL1VsK?= =?us-ascii?Q?SU/E0+lMR8a9dO8Rb1yMVCIyJEOi/Fi+wOHi2eqCUQAs/KCAfzxygOLWANE0?= =?us-ascii?Q?tN9llP05Nx/L3EGCHRTxDpAQQU1bljEo/ykxA9Uxj/DOkAAP9rZr1lk+4BcE?= =?us-ascii?Q?xzoAnK4wg0tKZbI8OTGwG+bxy+bElq9clkiFTIYhUFG2AdkDtfuP1dW+dqfW?= =?us-ascii?Q?M+cURQWsGzUoFmrebpxULR0Sai5Xz5YEbmcB+9HuO0N02K9wX52X6J83rPqo?= =?us-ascii?Q?0sENZVTWZQVEUCJiT82Bq1u3L+rRRw+zlOMbT+/ERV1Gq+YR2JRJqU+OrMjr?= =?us-ascii?Q?gIcXuj6QkuRy+haCYUzNLmSPhwnyAfKYejZMaPhqtqrOSiiObgqdM0LqceC1?= =?us-ascii?Q?+SGvUCtO0lDpkSk2wSCVWnevpTRzeudxOrPVcauOTJ17hWBBx57lJEtsEXWz?= =?us-ascii?Q?8tVkhxYqHt/X7hIv+4fuwsxi/XODx/H3bpyMXUSqmtfYFu8FdHfJxcsyXSnm?= =?us-ascii?Q?q2dIw0iSC64MTB4mZUC1q54J29cjb5aF++77mAfODCj3WzzB09hLe/kbV2AK?= =?us-ascii?Q?5/Oy6yr16ES8Wjq80WuIlfTpjZV34x8cZ0LWCyhx9oMswnRtTDQvlufIQcet?= =?us-ascii?Q?MyjAtUsgI9HNzReo+gFEOd6iqUp7jgkM9MunPR5507cHwhL38Y04P9gMG371?= =?us-ascii?Q?MGRoS783Upo1g1UOgCh9JRL7FPrAo2wNBle4k68hN0FKMP9LtctW1pFNN2Jw?= =?us-ascii?Q?4AUTd6a6VjvgyAZjhiyCxSHLpveHXfW0cDIshJ15DNWeHvuN6VrqHgmE1P2M?= =?us-ascii?Q?v407bAk6vWx7ShOcXZHVsphW6k0v/i1YnCGG0mFgsqVVGwWrD58o618B6s/A?= =?us-ascii?Q?7711Q/OT2NqJM08EoyOh14MBfrrCqAE8JLtLLT047/jD/QQ/Yg8NJCWkldUK?= =?us-ascii?Q?2/zm5eD2wTB1iHPGfSyf2ePBKWVRWpkOTqIE6raTef9uJtbbwT0bUyRIjwg4?= =?us-ascii?Q?QqSvEm5vWyYsu0zNEc36U5MPkM/YqthNfUAk5ujWpqk1iTjuy3aIUPyYNhJh?= =?us-ascii?Q?3sIPHs5JEGc0L6PcejdTB45AnLzI/Fv8XoBwGVryzUFw7X6OgCS4xjuqqMgx?= =?us-ascii?Q?uqRdFMSqfNffuX79gBdRTNBMiLHzi26R0wk8ylEm+dr8gPfLB/4RLCTki0u0?= =?us-ascii?Q?NxACOHrVTzdIZSXCTOQcPhDBfBETSfRQztWSK02TUywsfv6kjOdbaF/IkHr1?= =?us-ascii?Q?Tb/5Nw=3D=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 595816b9-0def-4f3c-b468-08d9fd32c493 X-MS-Exchange-CrossTenant-AuthSource: CO1PR10MB4531.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Mar 2022 16:27:53.9873 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: l7qDLBPLGt58kDpY0G8eC/K1RgKbkDWiVlPGJQmxflmvTdt43gbEy9G19f7dv4gQbDuMhzLpOqE8eOl8URyzRboyXfGNsnFnrCh6aQ3Ay7k= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB4704 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10275 signatures=686983 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 bulkscore=0 adultscore=0 phishscore=0 spamscore=0 suspectscore=0 malwarescore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2201110000 definitions=main-2203030079 X-Proofpoint-ORIG-GUID: OWyvS2LKNnV_MJooU6i7xviu1ubTmM3g X-Proofpoint-GUID: OWyvS2LKNnV_MJooU6i7xviu1ubTmM3g Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" When a crash kernel is loaded via the kexec_file_load syscall, the kernel places the various segments (ie crash kernel, crash initrd, boot_params, elfcorehdr, purgatory, etc) in memory. For those architectures that utilize purgatory, a hash digest of the segments is calculated for integrity checking. This digest is embedded into the purgatory image prior to placing purgatory in memory. Since hotplug events cause changes to the elfcorehdr, purgatory integrity checking fails (at crash time, and no kdump created). As a result, this change explicitly excludes the elfcorehdr segment from the list of segments used to create the digest. By doing so, this permits changes to the elfcorehdr in response to hotplug events, without having to also reload purgatory due to the change to the digest. Signed-off-by: Eric DeVolder Acked-by: Baoquan He --- kernel/kexec_file.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/kernel/kexec_file.c b/kernel/kexec_file.c index 801d0d0a5012..93bb0c0ce66c 100644 --- a/kernel/kexec_file.c +++ b/kernel/kexec_file.c @@ -765,6 +765,12 @@ static int kexec_calculate_store_digests(struct kimage= *image) for (j =3D i =3D 0; i < image->nr_segments; i++) { struct kexec_segment *ksegment; =20 +#ifdef CONFIG_CRASH_HOTPLUG + /* This segment excluded to allow future changes via hotplug */ + if (image->elf_index_valid && (j =3D=3D image->elf_index)) + continue; +#endif + ksegment =3D &image->segment[i]; /* * Skip purgatory as it will be modified once we put digest --=20 2.27.0 From nobody Tue Jun 23 14:06:00 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id B9E67C433F5 for ; Thu, 3 Mar 2022 16:28:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235008AbiCCQ3V (ORCPT ); Thu, 3 Mar 2022 11:29:21 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60568 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235002AbiCCQ3J (ORCPT ); Thu, 3 Mar 2022 11:29:09 -0500 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id F1FF1B12FE for ; Thu, 3 Mar 2022 08:28:20 -0800 (PST) Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 223FCr8E007695; Thu, 3 Mar 2022 16:28:00 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2021-07-09; bh=yL4gUxuX1xhIJKyqEsW75T/qKrplKqiWLQnBIOkTW8I=; b=GBvAUj7o4B3J5iH+D1BYVx3woW5fqYWJYJ5jByhaRoIgeF7RH1xD9RmKY6t77GHDfbLc SxarwXCtgS0pvE35GxZzovBjYQ35mDcEqRT+eD84wyCiuhEKhVp/Z2fc/cilG5fwnuIT qm9W6sZyN6C+yVQ3Du7331wwIZ70GozSZ3HHdw43vgYv/bHAmzNEnqBmDMuEfs+lGhcQ 885+ePEi/24lWygnzFqn1Uj96O1EZIYa+gTIfPbuJ5jxULzYjK9/m4KUM95d1jWT+3H1 bEZgAWoz/HgQl4FIv6Om2xJC64RzCyiXLI4VJAgIedVjHW30R6xcvN3NlW5V8F5XFbjT JA== Received: from userp3030.oracle.com (userp3030.oracle.com [156.151.31.80]) by mx0b-00069f02.pphosted.com with ESMTP id 3eh15as2yh-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:28:00 +0000 Received: from pps.filterd (userp3030.oracle.com [127.0.0.1]) by userp3030.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 223GG6la119092; Thu, 3 Mar 2022 16:27:59 GMT Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2107.outbound.protection.outlook.com [104.47.70.107]) by userp3030.oracle.com with ESMTP id 3ef9b3sj06-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:27:58 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=X3Uel6WP6Y2XdEQii7JXZ/sP5Yti3am19qu1Br0j3vHDbW1PQCtdkeILSKsz4U7qGgdd4FvKHbh5zQvdJG8ew/OPjPCTVL82eTkaSK/x/9BeTdWXsXQwNyBhZ6wwIPIzse++W4b0D6+UNMA7YRUK6XU4klNXzncYGVtW/Y5GO31N8/lo76srCXNMpbakTJvs2Q1uo4zgCy8qjIwUp4d0XNDm7XA2DEQRhXxMGaqNXdaYux/MFKsBjoRjxlJqqRGPHP1bX0o8RlBc0OXIMwVWFlnpDLO2Rm8Feu6zUOetni6PSrDSbyBnGBPJtfUtyNfL1vSOHKLFpZ2Zl9SmCWetfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=yL4gUxuX1xhIJKyqEsW75T/qKrplKqiWLQnBIOkTW8I=; b=bHDTlRbcv4qx3uXaiDBDyxH2SnDJa79ISSKHH0jixI712ntjfXQptaqprWhuV3e7J5E/TMy8FJk8z8Y5IA2JdgyNauy/kuUNlzpELP+yDSjaSo28s7JmBAv+FALz+LFo07mQaS6kfUoxreZlLr5am4myTDxjYXkldRGQUFXg1Fe8Bt9IQdWPbXavdawPn323oJW8xRr6lN5duuI+xRAsaq98TkZOQ0IWwB8ATETVacjRmdgdhjc/o9CskDJa3pooVAPCXA9Gt/RzwENSaToRVKUVAgsCNdDha7jSiSwzdvHpM0p3pQkxdrwdVZ30RFhQMnSrkEngas/s9tY2LFc0Wg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yL4gUxuX1xhIJKyqEsW75T/qKrplKqiWLQnBIOkTW8I=; b=ChhUnynk+4SpsOMLKT0E4a+75rZVEQ186ZiTUDBK94Mivy7hgKGYIGbZtpaqZpXiFlIY1LOdAWkujnnqvKNrsZLsz4yjLso7WmrAYAs6/02B/tVeVvsGCTpI7D+dxEeuPyfWBOg1/Vc3naPHkmpPIrQs/k2TDbzzw2mKmzM/AM8= Received: from CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) by SJ0PR10MB4704.namprd10.prod.outlook.com (2603:10b6:a03:2db::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.14; Thu, 3 Mar 2022 16:27:56 +0000 Received: from CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac]) by CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac%7]) with mapi id 15.20.5038.015; Thu, 3 Mar 2022 16:27:56 +0000 From: Eric DeVolder To: linux-kernel@vger.kernel.org, x86@kernel.org, kexec@lists.infradead.org, ebiederm@xmission.com, dyoung@redhat.com, bhe@redhat.com, vgoyal@redhat.com Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, hpa@zytor.com, nramas@linux.microsoft.com, thomas.lendacky@amd.com, robh@kernel.org, efault@gmx.de, rppt@kernel.org, david@redhat.com, konrad.wilk@oracle.com, boris.ostrovsky@oracle.com, eric.devolder@oracle.com Subject: [PATCH v5 6/8] kexec: exclude hot remove cpu from elfcorehdr notes Date: Thu, 3 Mar 2022 11:27:23 -0500 Message-Id: <20220303162725.49640-7-eric.devolder@oracle.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20220303162725.49640-1-eric.devolder@oracle.com> References: <20220303162725.49640-1-eric.devolder@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SN7PR04CA0214.namprd04.prod.outlook.com (2603:10b6:806:127::9) To CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: fc3af331-4864-4e60-8196-08d9fd32c62b X-MS-TrafficTypeDiagnostic: SJ0PR10MB4704:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ZhiGwCWIE6U6qvmlLbTFbM73B8PLTM5Zld9zPe4V5NMXhhn8uF1965fTH30pKqWVjAGrArVq+wGvARDBa06HJ3REC+3uMLZ0QE2tzZ5VURIAGodK9QGIKrjSM2rZ4aG7dU3ncncx29R0guzBMEGQXNPugxIma+88rL5ZI6aWsHhFONwxtHcf2uTMyp5FoU0JYHv4cTT4+ztXaitkadb6FkC2g4VK88NiR1EXPkosp0Z91lWj5clay6Y9quKV9pM6O0Ndkr5y8QBMN9SEZBxIJrLTCPKC5dGKRStC3ur4ap2CXtIRRq8r75jnOwQKiPNqe8zsdLUpRUZqs5WJ/XTrcWZHPkVB5NHxCKzn6EF1pWpRuPbtlqErdPCcIhKYNvOgJkMZLMvS0VfelucG/asSanEB/yQ9w1Zaiq9qAW3z/kZu52Cbqqdi7nJ41uiHBjjsSgi2kHJxZ1HuhXE96iuMOKP/aF4tRixuwCPAjw/HBXCh34Rcpa1VWPBVibPMaFUW5ukjmIRQtFfenDAkz7V9ARzvG2lgJvD79/aB1AeB1VuObf4IEBO+zLqfBgJ6th6muo0zPGsFhLCeeGRb/ukud9J7BQVS/br5i63HtW/rhhY7Ul4ehFj1oLrnjp20/0oGcjFwme6CvaO6E0Vr/Uoxf90dVJbWqXOKjfpSKkRiBUb1YofFehE8dKu6rW7gOwxD4NIHmYiJ+mVIZjsohjRdsg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR10MB4531.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(7416002)(5660300002)(38100700002)(38350700002)(8936002)(1076003)(26005)(186003)(107886003)(2616005)(6506007)(52116002)(6666004)(6486002)(6512007)(4326008)(66476007)(8676002)(66556008)(66946007)(316002)(83380400001)(2906002)(86362001)(36756003)(508600001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?3+PoP65wIn12q8/BP8oSafOXCI+qrfF4njNZTb8o6+inryEjCsHy4+MTuZwa?= =?us-ascii?Q?cU9QKKIbLlfuMm7kugVUF6G/KYHxVHQtNsdHs9trXA1ZYOhwXcpeO7AZ5Viq?= =?us-ascii?Q?TlnUtjbp3eSeMURK/mQJmDIb7SRdSOeUiQgH/9d+YqzeyatzVoeQ89mfYBps?= =?us-ascii?Q?NlyjUu/WX5NnThAfSQaWedxYyZCQHx5EUEIxEcxUXc/d4KBa9YKM2RagZA3k?= =?us-ascii?Q?RoBUpoA36WWDrVAMIERIdiZrYDKoWa85ZWpLXodcNwtvzJi80V9npoUiLzKE?= =?us-ascii?Q?YbTd/hDVyzNGOv3n7tt5KqHn9ylpKLwY5ICBuLyDp19axHLffJq6fYJt8X2k?= =?us-ascii?Q?MHyh1a5t1NH7ofq3ZaB8FqEgdg8XC1BhfT3Z5DSOUjIEYm0O/1O5Vx1W8Vva?= =?us-ascii?Q?p4a7axHHv0imlTYtBv129PCJi8VyY91b7eTLnsAut8RZR3sp9xGe9nM0fBnH?= =?us-ascii?Q?c7jdCQjQGyknTD9gkpwZoSMVEH4TrZrJJ7L9gnd0k98PYRSXesO+/mVRBtGJ?= =?us-ascii?Q?SJVlzvvYddUvOvNCnDbhJ0O0QJXO0uPr4h5Wy+qh9o+vJ6UbDZ3zJLi+1llD?= =?us-ascii?Q?BtV3eXCqUp0I3uobZb8ZQmSWmceIRZy1ufVgw7pCy2cPBn7WHh7WIHKLw20G?= =?us-ascii?Q?SlM12Tn1KMu3kYnmlznzTzYaCcZPKkaoYos0jEGszdzuCqd7ZO6gcjk3zKnL?= =?us-ascii?Q?FJ/U/E2/ABoNePg2QaPVBiaD/w9hJY5OaBmTkzhLqaz646GhJXMzwOpXTF7m?= =?us-ascii?Q?HaRpKMAboPplS8VEztgA8i6tI306E3lD7B7O563vWoXa3ttheFcbvTgTjcg2?= =?us-ascii?Q?vhkoV/Ojm7ZLstAXgyGG8gG00herbuF1gKxJ/h0LyHi/StWLvshIWC5XBXld?= =?us-ascii?Q?EA21ZpR+cSYkH5YBCvJiGtIfFkYQTRyZJp0H4fE0ST1MbP2ibS2NYZO6Z2BX?= =?us-ascii?Q?rDPdWWQJ1GNlhl+Yqh9DcSFQJzA18kc37lklP7eLIK2oLhu0rpdyd9b/9U7V?= =?us-ascii?Q?zsl4W5lYtFxmrIONjPB4zWqqKwrZJbHYGVL9hjMekb8DnS/T4/t+G2FDPPc7?= =?us-ascii?Q?9861M05fko+sZc0FU/Z+UXHG74W1tubTpwu4/tb7eP07HCu4TJPJDNyOc8K4?= =?us-ascii?Q?fTVRwILIi7t3IAd3by7RLngaRhOXAVO695xBobUMWZKk3v7E88P7lzjjwOtI?= =?us-ascii?Q?mQM7E0Shq8edKG/D7MqFCJ0iI4BI8DTyDrc/gNURpORjYaMWIuGUzJe2Lerf?= =?us-ascii?Q?7q+smUMcDYy8J41fEPCgxN7OaOFc9QVLdmZ73XdII4RsrE9/wrYG3moR+SFa?= =?us-ascii?Q?sS+bPthLuCbc0vaCODBFvzOKplxARoKy1vntiYv59/d2AMoru1tnpYaL+01g?= =?us-ascii?Q?A/jjVVpTnzCTfyXEyo+WV6YszKrmPkAcDaM+eZWUx9jdvMra7Axal+g+28Cn?= =?us-ascii?Q?m5CIT6Y850XHOKjuzAzD0PT0vYKXcgHkDFXJAeVZsv5IyfCddDlZewjCyjWH?= =?us-ascii?Q?tllaq6BSZVc8+dzgOHysJRY7+ekdy4gmR0r3oNvl/aq+X848MjTj55AoAKEj?= =?us-ascii?Q?geQlC57swrf1gewHvTclESREbY+O53+iE86aYKPO5ieb7HA8XTLuESjXVId/?= =?us-ascii?Q?9T1PcH7++WSzB9OJSCDH6SWxoxPbjCBtG7Zg6eC2R6y9vBIFkrknIz4OV9CE?= =?us-ascii?Q?3AO7og=3D=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: fc3af331-4864-4e60-8196-08d9fd32c62b X-MS-Exchange-CrossTenant-AuthSource: CO1PR10MB4531.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Mar 2022 16:27:56.6911 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: F5o8p8DkCBVjpReAYtMG9HU/S8Dszs5Nu/Yuj7r38yvj20jnBvSZ6irl2f4hW6Naa/doB8mCuOf9JzhHY32AOAM/0ewYVrZdJ0PqCpd7gYY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB4704 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10275 signatures=686983 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 bulkscore=0 malwarescore=0 mlxscore=0 phishscore=0 suspectscore=0 adultscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2201110000 definitions=main-2203030079 X-Proofpoint-ORIG-GUID: gC-NOuP6BiQ7FVaq0D2a1rsvl4cCymsi X-Proofpoint-GUID: gC-NOuP6BiQ7FVaq0D2a1rsvl4cCymsi Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Due to use of CPUHP_AP_ONLINE_DYN, upon CPU unplug, the CPU is still in the for_each_present_cpu() list when within the crash_hotplug_handler(). Thus the CPU must be explicitly excluded when building the new list of CPUs. This change identifies in crash_hotplug_handler() the CPU to be excluded, and the check for excluding the CPU in crash_prepare_elf64_headers(). Signed-off-by: Eric DeVolder Acked-by: Baoquan He --- kernel/crash_core.c | 10 ++++++++++ kernel/kexec_file.c | 5 +++++ 2 files changed, 15 insertions(+) diff --git a/kernel/crash_core.c b/kernel/crash_core.c index 76959d440f71..d3fd51f2195c 100644 --- a/kernel/crash_core.c +++ b/kernel/crash_core.c @@ -522,6 +522,16 @@ static void crash_hotplug_handler(unsigned int hp_acti= on, /* Flag to differentiate between normal load and hotplug */ kexec_crash_image->hotplug_event =3D true; =20 + /* + * Due to use of CPUHP_AP_ONLINE_DYN, upon unplug and during + * this callback, the CPU is still in the for_each_present_cpu() + * list. Must explicitly look to exclude this CPU when building + * new list. + */ + kexec_crash_image->offlinecpu =3D + (hp_action =3D=3D KEXEC_CRASH_HP_REMOVE_CPU) ? + (unsigned int)a : ~0U; + /* Now invoke arch-specific update handler */ arch_crash_hotplug_handler(kexec_crash_image, hp_action, a, b); =20 diff --git a/kernel/kexec_file.c b/kernel/kexec_file.c index 93bb0c0ce66c..339995d42169 100644 --- a/kernel/kexec_file.c +++ b/kernel/kexec_file.c @@ -1314,6 +1314,11 @@ int crash_prepare_elf64_headers(struct kimage *image= , struct crash_mem *mem, =20 /* Prepare one phdr of type PT_NOTE for each present CPU */ for_each_present_cpu(cpu) { +#ifdef CONFIG_CRASH_HOTPLUG + /* Skip the soon-to-be offlined cpu */ + if (image->hotplug_event && (cpu =3D=3D image->offlinecpu)) + continue; +#endif phdr->p_type =3D PT_NOTE; notes_addr =3D per_cpu_ptr_to_phys(per_cpu_ptr(crash_notes, cpu)); phdr->p_offset =3D phdr->p_paddr =3D notes_addr; --=20 2.27.0 From nobody Tue Jun 23 14:06:00 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1DF43C433EF for ; Thu, 3 Mar 2022 16:28:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235018AbiCCQ3Y (ORCPT ); Thu, 3 Mar 2022 11:29:24 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60700 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234988AbiCCQ3L (ORCPT ); Thu, 3 Mar 2022 11:29:11 -0500 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BFFA8BDE42 for ; Thu, 3 Mar 2022 08:28:23 -0800 (PST) Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 223F69Mn011457; Thu, 3 Mar 2022 16:28:03 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2021-07-09; bh=cFQtBXS5PCS2o9WKDXCwat/TCbRq/0pOqe6ZaQekk0c=; b=KSt77R5MD9Q2+DRzJ7o0tIqnR5dZJpz9wr6UkcAbZC31+294IWD+Hm5MgDSlRGcl8BZu m1xger7A2rsJDkXOLuxazq140Sa0K1NZ93k5sffY+8X4JuK5dp7ISzdU9woew9lKUrVQ DtESJFwljtcj5fgV2ItfM0NxdlI0fS7A6bZNBCWYFvfHmYDTvK2YDlc+KAksivJu9VxK 3BQl+RF/1oq3Lq5qp+MWLBcVmaKFbDBQZMHTCKKh5dsK882aw0JwOAIVhnMuO+LC639v BQG7JyuI7/MQZ74RhtYHrgyq8V2F4xAlExL4VEy6BTlf8ITMiVrbzLpIRXZb9giNgFxK cw== Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by mx0b-00069f02.pphosted.com with ESMTP id 3ehdayyn0j-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:28:03 +0000 Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 223GGx4f100131; Thu, 3 Mar 2022 16:28:01 GMT Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2109.outbound.protection.outlook.com [104.47.70.109]) by aserp3020.oracle.com with ESMTP id 3efc1900f7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:28:01 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=I2ndW5OWRHZI0gOGFg9mOu3LBbVoCcudHbqRRouZTwiSnUSXPfynR0SpFnis+tm9C3ONq6MIooqS8EY2jDlyKI47coC/lZg9CPvkfMKwTprcDlFuKFgKF2ZSEenndn3JQAPmdeeAU2Q2c9GHNH3rd+4HCnL5UU2S8H9k8MQU0rPYB9bmhiJwPLZTq2GZLmfMWeLv77y4F70+tsnPGj6T8uUn2LD6Ljzrpfv3+RQhNszpL88mFLb2+wimkaQzFxzaevrs+IAd50V1zIaTFJV7i5uK0YmHyKZ+hnIwWDnaKkHap9ZZZzlYp43ojaF2OQ+PPjLRZlVng5tqmNTP+csIVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=cFQtBXS5PCS2o9WKDXCwat/TCbRq/0pOqe6ZaQekk0c=; b=GI9Ro6JXmsceWVAdn1pnRcIz4q1vJwtTfkcFOjphsxb58fe7ya4wHyw3rkD8U7mIQkbR9DIa5eEAFjSSajEnND/jeuSzCBZIq0tmhX+zNsAsr24vHaeta04nV/S04KAnWJXvRCzmS/phSXCmIJiXYXwdKN0dfO42FKSsIFer6njeM9NT0IHK8njtmPIbcZzAQIg7CmUmP7H+suYEMVlnalsoLmAC9l1pH9WHyrKIr1JBguqoDwRQBEoRKEJDn8f4S9iefrlgxFsTggCVIqvTiDwYBQe68m7giViBPP7ylpK5RkzEDIYQgXn8Yh3Mct8ejhTD4Xkmy79yWNMuYSXMgA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cFQtBXS5PCS2o9WKDXCwat/TCbRq/0pOqe6ZaQekk0c=; b=fQ+RTiCUfqjVEwNL2n/ZZwUnq9DtynqIbIAvEd84YJWh4jna5C+H/gYo9T0A8pwvvzDqvXQYgDnZ3l/XVlb8podP/Vd9RxkTOth+kkjlhsQMDoRsMv3ikWVeWKKNcTCNuozAWVRIBvOrbzApCGdyGnknCAiQkALLt13aYT9+VFI= Received: from CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) by SJ0PR10MB4704.namprd10.prod.outlook.com (2603:10b6:a03:2db::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.14; Thu, 3 Mar 2022 16:27:59 +0000 Received: from CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac]) by CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac%7]) with mapi id 15.20.5038.015; Thu, 3 Mar 2022 16:27:59 +0000 From: Eric DeVolder To: linux-kernel@vger.kernel.org, x86@kernel.org, kexec@lists.infradead.org, ebiederm@xmission.com, dyoung@redhat.com, bhe@redhat.com, vgoyal@redhat.com Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, hpa@zytor.com, nramas@linux.microsoft.com, thomas.lendacky@amd.com, robh@kernel.org, efault@gmx.de, rppt@kernel.org, david@redhat.com, konrad.wilk@oracle.com, boris.ostrovsky@oracle.com, eric.devolder@oracle.com Subject: [PATCH v5 7/8] x86/crash: Add x86 crash hotplug support for kexec_file_load Date: Thu, 3 Mar 2022 11:27:24 -0500 Message-Id: <20220303162725.49640-8-eric.devolder@oracle.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20220303162725.49640-1-eric.devolder@oracle.com> References: <20220303162725.49640-1-eric.devolder@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SN7PR04CA0214.namprd04.prod.outlook.com (2603:10b6:806:127::9) To CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 21a76831-f0f3-4415-b9b4-08d9fd32c7c5 X-MS-TrafficTypeDiagnostic: SJ0PR10MB4704:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gEHGGwrgGS82MphELISi2GHZW//FusadYh8EIY/Sj+K/RVNN2DzqbRc8Yxi4hhToaos3jpLSespkgCLlyIguC1FE11n0t0OpiFkJSjyUmbElGcTRL3l1+4y5SyZVnb1w24stEmtsgtmA+vdRIGokq12GiXrA0A+xZiKKOoH1AM0cmzhZU/2ij8JoqO9hK6wbRANisLFfxsS5CGMfchEZaFEiGWHJki4QlTq1SLTrvNBEs7y1zBmOoTNNhYLyk/K2cvTRY6GKKpK1GekpR5pCgWo1oshL3Krhz7lYP3LT3hovevEIygc5W1a20Oz1xjfmh//gLBiuFa4Ygob5MipkPpmViwlFovTtYwQMEj42a9+ADLVgiJIFDVnFvrIkyJgifS4se/QeEFmXMOyL+QBn2lBCdjN3bpymvcA7fb/EXAKIqpDr2UdrgZ1UcLO7Vg2baNqKrNqEP4y614Afz04AKPQuA6yQ45WC1PQZ59WUIlwp4j9blVM1ZglcyR53W7nVoo2vQ/WzU0l0v9u5KKatY3fT3eC+f0rEM24Rf4e3UbVC9RdZesp/aoHSNBom1XhsPKxHwSlISjCwGlSGgUIRy5yj4ykCHz+DehXk9gtz0mx4WX7Ak2vbYvN9+2doQ/YztnfiAG+Om/xxpb6V3Wp/2DkcggPkhiNs1stY0IQP7fQx2lcIMmKt63v24AK/vX3u0zRf/XgqGWsLU2iEnU8cpw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR10MB4531.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(7416002)(5660300002)(38100700002)(38350700002)(8936002)(1076003)(26005)(186003)(107886003)(2616005)(6506007)(52116002)(6666004)(6486002)(6512007)(4326008)(66476007)(8676002)(66556008)(66946007)(316002)(83380400001)(2906002)(86362001)(36756003)(508600001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?XrB33BG08jnFGIrlEb67tgTfmcoZuU7qzqaSfJ7s8AJJ6P8lI9tF7cp6fp8N?= =?us-ascii?Q?3wm7lKM/91hUxEmHJM9jE5zVusgunu6zWL7+zyAkNq2bmLcwBInHa7zaWmVk?= =?us-ascii?Q?4jv4mT8FXnI19C++1i77DRyex860vuCQ4IwI+n1OUmONBA0PqoqsszMEVplw?= =?us-ascii?Q?7tSGIurPHj5casMvze5PGxjcAVkmCWjnZZxhYZ+FwhXtlW3Ln4YMZ08oJ7RT?= =?us-ascii?Q?Cg2KEftMuXaxfvNyDiP8jCPFM5bBTB3ajwV7WYuWvMPAIaeSXiChDXA74WxA?= =?us-ascii?Q?UvtneW5KkpHhTLPrIIW1JLdFoCUZI/hvS/u51dyBWuv08wvTramNLBI/B84u?= =?us-ascii?Q?EH2SBZ5KOOU/V6DFcnjHqchetOBlyAi+Tk0iFh/0oJOlT9G7PoTBkpbH41u5?= =?us-ascii?Q?2fruIMRIxPif9Red7tWqevsu4q2h+bc/Sjyp5+eQTev0z2G5T5dPsr49g3Fq?= =?us-ascii?Q?9kGC9IK+cER0cNUqXvIpMDxXWnGMyifTTdUSoRt5IAY52XIllDHPcxHT+18B?= =?us-ascii?Q?7JQKPMGfuzwuSb8akgswj0vQ321gTQCwFXojYfGb3GW0gylwmhde6NkhF4nI?= =?us-ascii?Q?BmO9FgID3GJ7ZFqkduEXYErcOjThIzyUXmBNT9vN42q0zT7OYduJWiXiMwET?= =?us-ascii?Q?glIRc0O4fBzkR5dTNcUoS2FEwuX0tMzqMpRROb3OSLiw9P4wjSbL1HgZIC9v?= =?us-ascii?Q?Hrfsb6zQe4rBIRM1n9hpWYbxP76LNGU8x0XZG6Yv63yEJr3zLj89LfYD+bEf?= =?us-ascii?Q?PJ2aQBH3UPOeTEPvX/VDoOCdA2zjHvtTDN8/+VgSwy/l08FxRwycTa4rVJhf?= =?us-ascii?Q?PkTTMhG2kwXRiwoCC/OgnKb6/IFj4gx2RTb4zybDoaCqFOIkOkbXpcMHLUSW?= =?us-ascii?Q?3AKTvpfNpSAiU/TqtYzwCrHCH9PMzQIYJg2iwmIKu9jS5WxChoPU42rwuOLG?= =?us-ascii?Q?9m5VQuk0S6SA3qgWCHx8Z0XI0DVKh3j77S6FDi1ZsAlEf/dA5qn2Xg2e6ATY?= =?us-ascii?Q?ipwfdaZGlWoPu8O6lux/lq5P9SR9xBWG+fulx3iSOSUMlZS6C4H9VeGqfwGa?= =?us-ascii?Q?eISZU1u9GhVg0ROvK8nDdKgyhjGZeaTCftS898DrpGW6KKmjjL8sXdvkl0rw?= =?us-ascii?Q?bKs++88VSCYnQ/Dv2XoOjELuCxfVopePxSzcVw5LIW3FVuvXVvZjq7Rna5gZ?= =?us-ascii?Q?oRVJRskVmMmIHYjitklN/5WxBF2FkoTUxtVGA3jN7SZBMcbR9zI/e1LrsUBd?= =?us-ascii?Q?pGZ710ALBtxkuXLDh57XYPrGbl86r6Ys4X2q5WIqSUDNSJZAKCX7pHzf9jul?= =?us-ascii?Q?8p7TBqmjYB5ij3uVZ2vKdkJfjsYVtbF0v/afMXzzd2WL/cvuZhVIHowKCYk7?= =?us-ascii?Q?GgUJOlA40FZBXmMm4vXVfXlAlAWYHdjCSVWc1Mv4rkT5zEqfu4b5puVVX2Jb?= =?us-ascii?Q?H+YxWPzsceFP+KmmxmCRU0NeKQ46Bf54OYsc8dLYBS9bDzOQCqrRZwWVEIQJ?= =?us-ascii?Q?qSO0kfpZT2eMXxR5X7tslljKwhyFxExQXXAMq1mE6MVjh96YMoZ0kdMmnzaZ?= =?us-ascii?Q?1yCAJM18F2U9pH5IDXM27WbhMIaVHal9CfFXn710J83TAU/PzOj7E+77fKHT?= =?us-ascii?Q?cDCP18Ffbg/i3dIpr4lRK0c9dO9RuqNHiwR91U19NyhbyzEkpV/OI0bXzUPl?= =?us-ascii?Q?zRueSw=3D=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 21a76831-f0f3-4415-b9b4-08d9fd32c7c5 X-MS-Exchange-CrossTenant-AuthSource: CO1PR10MB4531.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Mar 2022 16:27:59.3170 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 8RrxVrHo/ANV2Oqtx5DL/DMIVI39mK20uULO/YUL4zkqCwEHHfOuxqDFT9yJrxGvuPhM/DfG5F0DECvuQAf8IwzIKOhvM5IOAxid9NcZf5I= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB4704 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10275 signatures=686983 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 mlxscore=0 phishscore=0 bulkscore=0 adultscore=0 spamscore=0 suspectscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2201110000 definitions=main-2203030079 X-Proofpoint-GUID: qNprCAJPn6tqvyio3eG431F7RSmJ-IBi X-Proofpoint-ORIG-GUID: qNprCAJPn6tqvyio3eG431F7RSmJ-IBi Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" For x86_64, when CPU or memory is hot un/plugged, the crash elfcorehdr, which describes the CPUs and memory in the system, must also be updated. To update the elfcorehdr for x86_64, a new elfcorehdr must be generated from the available CPUs and memory. The new elfcorehdr is prepared into a buffer, and if no errors occur, it is installed over the top of the existing elfcorehdr. In the patch 'crash hp: exclude elfcorehdr from the segment digest' the need to update purgatory due to the change in elfcorehdr was eliminated. As a result, no changes to purgatory or boot_params (as the elfcorehdr=3D kernel command line parameter pointer remains unchanged and correct) are needed, just elfcorehdr. To accommodate a growing number of resources via hotplug, the elfcorehdr segment must be sufficiently large enough to accommodate changes, see the CRASH_HOTPLUG_ELFCOREHDR_SZ configure item. With this change, the kexec_file_load syscall (not kexec_load) is supported. When loading the crash kernel via kexec_file_load, the elfcorehdr is identified at load time in crash_load_segments(). Signed-off-by: Eric DeVolder --- arch/x86/kernel/crash.c | 120 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) diff --git a/arch/x86/kernel/crash.c b/arch/x86/kernel/crash.c index 9db41cce8d97..5da30e2bc780 100644 --- a/arch/x86/kernel/crash.c +++ b/arch/x86/kernel/crash.c @@ -25,6 +25,7 @@ #include #include #include +#include =20 #include #include @@ -398,7 +399,17 @@ int crash_load_segments(struct kimage *image) image->elf_headers =3D kbuf.buffer; image->elf_headers_sz =3D kbuf.bufsz; =20 +#ifdef CONFIG_CRASH_HOTPLUG + /* Ensure elfcorehdr segment large enough for hotplug changes */ + kbuf.memsz =3D CONFIG_CRASH_HOTPLUG_ELFCOREHDR_SZ; + /* For marking as usable to crash kernel */ + image->elf_headers_sz =3D kbuf.memsz; + /* Record the index of the elfcorehdr segment */ + image->elf_index =3D image->nr_segments; + image->elf_index_valid =3D true; +#else kbuf.memsz =3D kbuf.bufsz; +#endif kbuf.buf_align =3D ELF_CORE_HEADER_ALIGN; kbuf.mem =3D KEXEC_BUF_MEM_UNKNOWN; ret =3D kexec_add_buffer(&kbuf); @@ -413,3 +424,112 @@ int crash_load_segments(struct kimage *image) return ret; } #endif /* CONFIG_KEXEC_FILE */ + +#ifdef CONFIG_CRASH_HOTPLUG +static void *map_crash_pages(unsigned long paddr, unsigned long size) +{ + /* + * NOTE: The addresses and sizes passed to this routine have + * already been fully aligned on page boundaries. There is no + * need for massaging the address or size. + */ + void *ptr =3D NULL; + + /* NOTE: requires arch_kexec_[un]protect_crashkres() for write access */ + if (size > 0) { + struct page *page =3D pfn_to_page(paddr >> PAGE_SHIFT); + + ptr =3D kmap(page); + } + + return ptr; +} + +static void unmap_crash_pages(void **ptr) +{ + if (ptr) { + if (*ptr) + kunmap(*ptr); + *ptr =3D NULL; + } +} + +/** + * arch_crash_hotplug_handler() - Handle hotplug elfcorehdr changes + * @image: the active struct kimage + * @hp_action: the hot un/plug action being handled + * @a: first parameter dependent upon hp_action + * @b: first parameter dependent upon hp_action + * + * To accurately reflect hot un/plug changes, the elfcorehdr (which + * is passed to the crash kernel via the elfcorehdr=3D parameter) + * must be updated with the new list of CPUs and memories. The new + * elfcorehdr is prepared in a kernel buffer, and if no errors, + * then it is written on top of the existing/old elfcorehdr. + * + * For hotplug changes to elfcorehdr to work, two conditions are + * needed: + * First, the segment containing the elfcorehdr must be large enough + * to permit a growing number of resources. See + * CONFIG_CRASH_HOTPLUG_ELFCOREHDR_SZ. + * Second, purgatory must explicitly exclude the elfcorehdr from the + * list of segments it checks (since the elfcorehdr changes and thus + * would require an update to purgatory itself to update the digest). + * + */ +void arch_crash_hotplug_handler(struct kimage *image, + unsigned int hp_action, unsigned long a, unsigned long b) +{ + struct kexec_segment *ksegment; + unsigned char *ptr =3D NULL; + unsigned long elfsz =3D 0; + void *elfbuf =3D NULL; + unsigned long mem, memsz; + + /* Must have valid elfcorehdr index */ + if (!image->elf_index_valid) { + pr_err("crash hp: unable to locate elfcorehdr segment"); + goto out; + } + + ksegment =3D &image->segment[image->elf_index]; + mem =3D ksegment->mem; + memsz =3D ksegment->memsz; + + /* + * Create the new elfcorehdr reflecting the changes to CPU and/or + * memory resources. The elfcorehdr segment memsz must be + * sufficiently large to accommodate increases due to hotplug + * activity. See CRASH_HOTPLUG_ELFCOREHDR_SZ. + */ + if (prepare_elf_headers(image, &elfbuf, &elfsz)) { + pr_err("crash hp: unable to prepare elfcore headers"); + goto out; + } + if (elfsz > memsz) { + pr_err("crash hp: update elfcorehdr elfsz %lu > memsz %lu", + elfsz, memsz); + goto out; + } + + /* + * At this point, we are all but assured of success. + * Copy new elfcorehdr into destination. + */ + ptr =3D map_crash_pages(mem, memsz); + if (ptr) { + /* Temporarily invalidate the crash image while it is replaced */ + xchg(&kexec_crash_image, NULL); + /* Write the new elfcorehdr into memory */ + memcpy_flushcache((void *)ptr, elfbuf, elfsz); + /* The crash image is now valid once again */ + xchg(&kexec_crash_image, image); + } + unmap_crash_pages((void **)&ptr); + pr_debug("crash hp: re-loaded elfcorehdr at 0x%lx\n", mem); + +out: + if (elfbuf) + vfree(elfbuf); +} +#endif /* CONFIG_CRASH_HOTPLUG */ --=20 2.27.0 From nobody Tue Jun 23 14:06:00 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5999BC433F5 for ; Thu, 3 Mar 2022 16:28:57 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232389AbiCCQ3j (ORCPT ); Thu, 3 Mar 2022 11:29:39 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34472 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235034AbiCCQ3f (ORCPT ); Thu, 3 Mar 2022 11:29:35 -0500 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C4584CB914 for ; Thu, 3 Mar 2022 08:28:30 -0800 (PST) Received: from pps.filterd (m0246632.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.1.2/8.16.1.2) with SMTP id 223EnAwv003629; Thu, 3 Mar 2022 16:28:05 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : content-transfer-encoding : content-type : mime-version; s=corp-2021-07-09; bh=BSnrw4sTf+o2O2WZcIZhPT+WRFNBZY3+wGl1bUetvTc=; b=yU++miwO5g6qC+t0Ei1iYlUga2IEwlphuLXJbN/xHv+dsY3kepbQ9Mc6IWEeFbgecB49 EROfl8bVymLv5yxcNUhxGv/+ECmKBI+/Myyeeai5+D6CQF2RKJJCMjP5OBYfcCRJQXEH h7NpWbN0zJlc+3JWv7eJK0sLW5ZfzLX7JlJjOpzFLledA/httu8hWymKwf1SWgcB+wS+ yyrfyBv5Wdwd/aixXmJq5xFLJ4KVwuygBKgAQkGnqO5vTGKFvF5u31rJYYFwP5EuH23Q 8ur1T4cY9h1xe+UFwrYa/Ce+zjHYukgxfBy0jpu0vJMJvIC7unYxFyq1GZzf6t6j4Uxy NA== Received: from aserp3030.oracle.com (aserp3030.oracle.com [141.146.126.71]) by mx0b-00069f02.pphosted.com with ESMTP id 3ehh2eq8vd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:28:05 +0000 Received: from pps.filterd (aserp3030.oracle.com [127.0.0.1]) by aserp3030.oracle.com (8.16.1.2/8.16.1.2) with SMTP id 223GHN9f084026; Thu, 3 Mar 2022 16:28:04 GMT Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2104.outbound.protection.outlook.com [104.47.70.104]) by aserp3030.oracle.com with ESMTP id 3efa8jf1m5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 03 Mar 2022 16:28:04 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hmJjm63c8CzecqM67ViY/Ty/bZ+zkkUzrlyoT9olnmiVmBpa3gQu+bUSggF1aBPD5y+OgjBCy+FPHffewtTibA7I8E7LOTnK1anzgRTHISuRE2mkCPlchKXaCaanIn0svn/xKUVKz+eA10B4eUlrX5V91gZIpY8b0Smfg05bHENJmnrx6PXq7Bb+AEUKtnWMtrbpaaxZwN/T8SqlhMy7NCbcmq9SR9Nw2TqPj9Tn37SaEAR0y8nVbxzlBFKHmqoA/ow0BurG1mgxvj6NRyzRRlW16tleYsoAeaUeYgz9TdunFPT8dEuFLwa8BosIo0qKXGiOvczNdtz1MKDqYaDnYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=BSnrw4sTf+o2O2WZcIZhPT+WRFNBZY3+wGl1bUetvTc=; b=WGr1c3IIXqTNY7WA4bfkRoOalKh7Xh8K3pPqtN+oGUBB0KsKGXn0G/KWxCdLKaqplXVW2qdr3ffTGt8HbbZD6J/KBy2kEaMki5tWz3k/M16gQDbEdFezhYGdjtzhrf8nODNvuqTppRdxtSM3W909vayo8lFlsFopFgTFeNwejQCR6hPYa9fDfZGZ0d1H+/FubTItURNcjrZ8PbYL1lYbXJv6TnxxtDz3om1C5Vtx5SbpOiELYvVwD8egiPz12QFW6UMmP3Y+q3Ok1KuVtILsEnbT7VTZQwXDO13TiPFkAAHh11nBLzP+rORYzUloFhiC1usRqln8izakyBOpdPtpdQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BSnrw4sTf+o2O2WZcIZhPT+WRFNBZY3+wGl1bUetvTc=; b=hhT8SpNd1BWf/g1H8h9m917OE3a8P0XRGyWqLotMIanqLy1Pne16x9Wnlts9hh5UYOqtvHk4eyXo8gTnXqrD2zrhCVW3GXPSEeRRRvghXL/W30LowXzPV8qfdJfU9CTt3U3LejDjoZUg+D4gKzQ9BydN8h8VNENnNKTFt2Nm19k= Received: from CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) by SJ0PR10MB4704.namprd10.prod.outlook.com (2603:10b6:a03:2db::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.14; Thu, 3 Mar 2022 16:28:02 +0000 Received: from CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac]) by CO1PR10MB4531.namprd10.prod.outlook.com ([fe80::3188:fe86:1d6f:53ac%7]) with mapi id 15.20.5038.015; Thu, 3 Mar 2022 16:28:02 +0000 From: Eric DeVolder To: linux-kernel@vger.kernel.org, x86@kernel.org, kexec@lists.infradead.org, ebiederm@xmission.com, dyoung@redhat.com, bhe@redhat.com, vgoyal@redhat.com Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, hpa@zytor.com, nramas@linux.microsoft.com, thomas.lendacky@amd.com, robh@kernel.org, efault@gmx.de, rppt@kernel.org, david@redhat.com, konrad.wilk@oracle.com, boris.ostrovsky@oracle.com, eric.devolder@oracle.com Subject: [PATCH v5 8/8] x86/crash: Add x86 crash hotplug support for kexec_load Date: Thu, 3 Mar 2022 11:27:25 -0500 Message-Id: <20220303162725.49640-9-eric.devolder@oracle.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20220303162725.49640-1-eric.devolder@oracle.com> References: <20220303162725.49640-1-eric.devolder@oracle.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SN7PR04CA0214.namprd04.prod.outlook.com (2603:10b6:806:127::9) To CO1PR10MB4531.namprd10.prod.outlook.com (2603:10b6:303:6c::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 8811de37-2786-4f56-4adf-08d9fd32c962 X-MS-TrafficTypeDiagnostic: SJ0PR10MB4704:EE_ X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mwNU3JWSI/vkt7gtg2lgTbEsTWHhDDolkFWE1+edmbiPdt6mKeOLK55kyy0hrYA/IPjsoq+rLKUqs59KZ4yM45f8GUi889Si8Pr7b4LFm9UhosUiWt1osrqljyxwu3CgYVXe5aKZeAf0b5Ghs+jmdCgb4toWcs/+lOcYRv4OxYSDWxe8JJL/cQc7G0OyjaqSdaDRgI240zjYC+o/X8qb7Mjyv4wVsZyqnIlA8wfVeI6FtwEhopjKdxFrYWoUnJrBGXV+e0pCMKjxBqGea+Qo76S8t90rQp4B6jGmUIPBRuBr2DYrQ9HWzC8nrntTicf2gU/DztENibAlW4NJ0apwrsi7f/sKdmis20BRKHvollK7JYinwJAXUCLZV5lW8mVVRUvnylGwBA1AsOXRdT6ZSmEwrDCBV5aAmhAW6JqtIJgvGHBBDDY7gteZUjCGGWI0//u0rHfzCIb9qFBIzZWrTXq9SoBLsxJ4domwPbwD4Thjr9jMWz6FECAqVnTWouL1SzSy1qeRdrLvicenaqHjpfBFftmSMRydRNjDjaGe9A4OBMDgIlLrT9OWdAy2n1cJ7A/V0EFoiLdtllI0O7/f2EC35O2ypZWXH/8ITnaT67M8Gk815qZALdSeDHj0+bvejwlMkQ1//BnJLvTwn+t5dmM5SoHxEpIIcNHmuOrEsthX5mFFjmnVbEnbiyZEB+8OVItpzlGabwC0Y5v6ZxXCrg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR10MB4531.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(7416002)(5660300002)(38100700002)(38350700002)(8936002)(1076003)(26005)(186003)(107886003)(2616005)(6506007)(52116002)(6666004)(6486002)(6512007)(4326008)(66476007)(8676002)(66556008)(66946007)(316002)(2906002)(86362001)(36756003)(508600001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?yK/lK0cnlYfrSu8dT4CYi1FLDQk7xqfV3Yctns1hD4qr74qFFvdFue2iltFT?= =?us-ascii?Q?7Ayin0EQah/6uYYjW8YrR5U4jjMggq2h/3AfVFFA7rX5BGMYHPa/osKluBzt?= =?us-ascii?Q?52cNZxXG3+FGLa37vkeeHkaLv3r85fmn/ZYxtYr8H5GtUQeMrwSPvFd1JVXI?= =?us-ascii?Q?B0DRqwgcKwBtHQVogO6aFQnvTaFCzWsFcdbgdgWoNZJk+iePCgN7vFzgCDzB?= =?us-ascii?Q?J68FlfHZYaAJ/MYfLc18Y6bJAYRvSsKoyK+OhKEae0Nt5L9d3TPU6npiycM/?= =?us-ascii?Q?/XYMK3gU7Oi01ZvWMP4ntSDkbVjgnTzXgdb5/XeqU+wIanu4rHVZvIH2rbZj?= =?us-ascii?Q?mYvKyia1OEb4JcZ4EJiqCyGDN1HGm+51BAkrq1k5DM2UAghEVYymO59Fv0/i?= =?us-ascii?Q?RqFhrpo+1dpU2ZqEL2ZrzZvj7sfA+fCLwZmiw+ilgg8OlJFiN5SxY6OR/Gon?= =?us-ascii?Q?a1CgIvupWIUq/GMLWbUbo5CRFhaLgrN6XywAXVj5jjqlvUMHGX3t+WhopgJC?= =?us-ascii?Q?z6hjKo53uXJVfpF6EL8NC2ofm1mKw/7iidb27tOnWmx53xhIynBIf9u/GHyF?= =?us-ascii?Q?PjV9PsrojOmQJUU9tm0vS+2YQp1E74i8BjHgAw94WZiWCgM43bxu2kIAAmXd?= =?us-ascii?Q?Zb+N9KImfYaaLRHrTyd6nt4eDbKjNMZyVoVEG5YndjrNtT2bZ6G6TTQt5v/d?= =?us-ascii?Q?xRNz/7aF0Sg7vaJCi4yYvZMSTnc2PLRjy52Z/aefW72Nl7ASPLRCtKHaUX1f?= =?us-ascii?Q?t6Rk1Xk+zv2Hgf1og/NbL8znn+M+8JxZglJOWLEDdW5c6n+cn2uHBuHuNPPB?= =?us-ascii?Q?+1OE49987OxAjWiCKYLgLKMeKeEbieKhp/W4JBIuUcFE3URuYkzestBuwiLp?= =?us-ascii?Q?jBDNsHRYZHX6hkT7cMS00GpMagtdReZsVE0ZviphKFBG+yn/aT+XAbyrE2nQ?= =?us-ascii?Q?KIfXFqEf7L54i9d4Ww2LCQY/2jHhtsNwyJevzPpnk89zVK/zZBF1lLvpNA29?= =?us-ascii?Q?ApYCU0VoWJhRY+8y7uZXe5xdBpKjTWga1XuVqQ68bFJYiXiLNu3HDElMyRBl?= =?us-ascii?Q?KXu0xr3b5dKxgsHR6FfKKQZKsQdbU3mDTIpbXnEZ9GFi1MvFmPt3K7b7/bko?= =?us-ascii?Q?2wMNh802f2cTRLcDjMo1JLmr/2B+jFX84AizTeikTYYSaqEwTykwnzaA9lFh?= =?us-ascii?Q?oh+h8W00zO/vdWAKQjdi3N8WpjJo8SyCjrnT6jliDirZdTC1M1WmdxX/s9k3?= =?us-ascii?Q?zeUn4Udo74lgDlN43dDOIRPBv48w5hkX4pVslqv6b6Jh6f2x21d7EcCgPK3B?= =?us-ascii?Q?Efr+S6pM6HSJ6lqo0M1gSegOkAv7UdxoTbPxXyw5UWMNLCSrrP10so3arRJe?= =?us-ascii?Q?rrKLOQn1mgDSvB/PFXdfRDS17C1s5uxmiL6a2Xj7Jjjc5b5fHXH7udE+WrSa?= =?us-ascii?Q?PPBQ7H8aULhguFxh0LtVeoCmiN34p9Uh/eibFTR1F3H92H+GqmGorpUuIyGD?= =?us-ascii?Q?tIPDz0ikAfvaA9EDQpByy9QMmPnnivTzHE7pZQjnhUfHnzh8+ee7/3mZhM6Z?= =?us-ascii?Q?e2W59zVCW/s2Pz+XrxQrFhdGK9NJulvqjxOh6jgBVMWutYd1rPhHPfxgdJ7k?= =?us-ascii?Q?2yjdayz2XCrf+7K0k12IzMekHEol497ViGBb59myG0p0u5xaaA6wzE2qfZW2?= =?us-ascii?Q?lc6fKgfVUhi+feMVfsKPPx0KThM=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8811de37-2786-4f56-4adf-08d9fd32c962 X-MS-Exchange-CrossTenant-AuthSource: CO1PR10MB4531.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Mar 2022 16:28:02.0364 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: fZc+KydFpBqhnku4YpAZzMhITwT+9BeHykzrlYeKdjUUthMH4p0oRksu/l/qMcmbH2V5YBZN+tesQvsnTE2Ua0UfGUhuh/KjZJacmJnnImQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR10MB4704 X-Proofpoint-Virus-Version: vendor=nai engine=6300 definitions=10275 signatures=686983 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 bulkscore=0 phishscore=0 malwarescore=0 mlxscore=0 suspectscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2201110000 definitions=main-2203030079 X-Proofpoint-ORIG-GUID: FCaT6qRjAZqhONaAn6WnjKYi3S5Bk581 X-Proofpoint-GUID: FCaT6qRjAZqhONaAn6WnjKYi3S5Bk581 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" For kexec_file_load support, the loading of the crash kernel occurs entirely within the kernel, and as such the elfcorehdr is readily identified (so that it can be modified upon hotplug events). This change enables support for kexec_load by identifying the elfcorehdr segment in the arch_crash_hotplug_handler(), if it has not already been identified. In general, support for kexec_load requires corresponding changes to the userspace kexec-tools utility. It is the responsibility of the userspace kexec utility to ensure that: - the elfcorehdr segment is sufficiently large enough to accommodate hotplug changes, ala CRASH_HOTPLUG_ELFCOREHDR_SZ. - provides a purgatory that excludes the elfcorehdr from its list of run-time segments to check. These changes to the userspace kexec utility are available, but not yet accepted upstream. Signed-off-by: Eric DeVolder --- arch/x86/kernel/crash.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/arch/x86/kernel/crash.c b/arch/x86/kernel/crash.c index 5da30e2bc780..45cc6e3af63e 100644 --- a/arch/x86/kernel/crash.c +++ b/arch/x86/kernel/crash.c @@ -486,6 +486,32 @@ void arch_crash_hotplug_handler(struct kimage *image, void *elfbuf =3D NULL; unsigned long mem, memsz; =20 + /* + * When the struct kimage is alloced, it is wiped to zero, so + * the elf_index_valid defaults to false. It is set on the + * kexec_file_load path, or here for kexec_load. + */ + if (!image->elf_index_valid) { + unsigned int n; + + for (n =3D 0; n < image->nr_segments; n++) { + mem =3D image->segment[n].mem; + memsz =3D image->segment[n].memsz; + ptr =3D map_crash_pages(mem, memsz); + if (ptr) { + /* The segment containing elfcorehdr */ + if ((ptr[0] =3D=3D 0x7F) && + (ptr[1] =3D=3D 'E') && + (ptr[2] =3D=3D 'L') && + (ptr[3] =3D=3D 'F')) { + image->elf_index =3D (int)n; + image->elf_index_valid =3D true; + } + } + unmap_crash_pages((void **)&ptr); + } + } + /* Must have valid elfcorehdr index */ if (!image->elf_index_valid) { pr_err("crash hp: unable to locate elfcorehdr segment"); --=20 2.27.0