From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.11]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 766324D8D96 for ; Tue, 14 Jul 2026 16:33:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=192.198.163.11 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784046839; cv=fail; b=DLp8UDiW91SMVSHtSxPdzZqPZxc8EBzf5ccn7BoagAyPNrKRhP6B2e6VoMpqXDoDC2VYRXC2LgE36+JhlNXqEqSxaVOdNX/OZnefeC3ZWhlrFo7BH16DpZ6NhMuvmBwu0/AKWrZn8Ofo9+3f/4tDBtfHI2JfI7D/cSHeybI28XQ= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784046839; c=relaxed/simple; bh=QJeomQzAMvz2BMI5IvJQ1hM8ksvu/9nnKzu4GVT0ntY=; h=Message-ID:Date:Subject:To:CC:References:From:In-Reply-To: Content-Type:MIME-Version; b=tF+9l4xUHE32B797p0bu//5wevJw5iaYEULzIGEgICeb0Hqf+P6xqiPrh4xL0VMnl7Qa/b7o2izItDBrCMY8Jf/W42iqFNa+rG672e6fbSax38YN4SDP2Q8/CltSn5+xD01Z/awFEvZ8E62WeQJ3v5CtL9zu/NwKP/i+IHWdRx8= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=APjR3gJ2; arc=fail smtp.client-ip=192.198.163.11 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="APjR3gJ2" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1784046838; x=1815582838; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=QJeomQzAMvz2BMI5IvJQ1hM8ksvu/9nnKzu4GVT0ntY=; b=APjR3gJ2iLPQOFiiYpr/oD36StEZg4TReVLxfPkP40pT+TYk4oL1xKI5 KEhVJEIoOEcLVQN0iCRHag8opanoB0eq63K5yJwmQs1f+z/gCle8Nxz2N SZLXSznYA1UmYcgwcTM/vCd+YKkG51zF0JenfyfilwD2n3XEJr6IuU5d/ ks1suOV9Xc1YRhxOQiMOAGy6OSq47h8gbHMs+FUW25hBP5oaege4c9qje YuQDDYEBtbnzurIW4kSSqe3Xctt+lNyx/XQDfguiO2+gstlow+ZjDFV+f uyWuciclV5+Pu4ojNq4bW7slmn3ip2dooHk8J7Hgq9ctHnRx7EhlNHwn8 A==; X-CSE-ConnectionGUID: MfXIYeR1S/aCp5fpiuF0FA== X-CSE-MsgGUID: iZ9SYoCOQwCpCSsBw2nLrg== X-IronPort-AV: E=McAfee;i="6800,10657,11846"; a="95276548" X-IronPort-AV: E=Sophos;i="6.25,164,1779174000"; d="scan'208";a="95276548" Received: from fmviesa003.fm.intel.com ([10.60.135.143]) by fmvoesa105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Jul 2026 09:33:47 -0700 X-CSE-ConnectionGUID: OaayPN1VRRuLcTq9vna/fA== X-CSE-MsgGUID: I6jP3/76RFKpjENHT8mDmg== X-ExtLoop1: 1 Received: from orsmsx903.amr.corp.intel.com ([10.22.229.25]) by fmviesa003.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Jul 2026 09:33:47 -0700 Received: from ORSMSX903.amr.corp.intel.com (10.22.229.25) by ORSMSX903.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.43; Tue, 14 Jul 2026 09:33:46 -0700 Received: from ORSEDG901.ED.cps.intel.com (10.7.248.11) by ORSMSX903.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.43 via Frontend Transport; Tue, 14 Jul 2026 09:33:46 -0700 Received: from PH8PR06CU001.outbound.protection.outlook.com (40.107.209.7) by edgegateway.intel.com (134.134.137.111) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.43; Tue, 14 Jul 2026 09:33:45 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=RYt3cdxeZFSWvjczVP8ZZ6ITv7SKBs7bF4yQKk7I28HZPBmD4MOCmc3hrk/vLOpB9BuXq6Q15z00cTwtrFKbKgTj7ri9BrrsptDixcrcvpXpS/qj+Ck7lbaMfKN87dHPHEwpT7eRdRs5flKzhJeqg/6w4UfC3Yj3gGXMUGcq7j/Gqc9fBNWuF9FUttXTtgyB+8uQLkrzFQ6PhCW3dBBwI3aosS/ApJzdQefWeRGH0Ag1/DpQkaI8PSn6BGcTyGfDyLrRbrpEn9tKth4we5sfKAuEH9ajKUhAlaVQwsq0CQb/HlP+pgz7yc2jc98mjcOZL4+KeJDXAAv3lWfZFXkrPg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=TvtXGG7G3fZjd+xNcAcksht4/ssAJauvsWPxnQw6wjU=; b=eR3iHBDnQLHxgiZW6p2gOEGSWaye8Z/lGRhfclUsbRjLSkl1/Ab7TZQ5wS5ODR3tKJ61Uvb4JchnWWjM7xUtJk0oVPLv9zo9YjzXL12eKFB8xuH3uAsoEt9CUAjS+iOvXMY42K6gVR15fQhg4htx1a1IYF/6/GskFdLhveCz5vWighHGqGVx4CAxVE2cuP6YT58ElSkemTv66gy8Zq/UbIwHzYty649aL7t84ULnhR4cyERAd9rwe+t8hTDSZUidipCVVCUp+dZxH0WcRLFEXXjZHjg1+EMVOVUm36+to4/ythKY94rnEPBBJfG32jpcDoPxUh5wnRI3ED1adap4rA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; Received: from DM4PR11MB6020.namprd11.prod.outlook.com (2603:10b6:8:61::19) by SJ5PPFF8B526086.namprd11.prod.outlook.com (2603:10b6:a0f:fc02::862) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.181.18; Tue, 14 Jul 2026 16:33:41 +0000 Received: from DM4PR11MB6020.namprd11.prod.outlook.com ([fe80::3058:1480:e4ac:5765]) by DM4PR11MB6020.namprd11.prod.outlook.com ([fe80::3058:1480:e4ac:5765%4]) with mapi id 15.21.0202.018; Tue, 14 Jul 2026 16:33:41 +0000 Message-ID: <63bdd0bb-4ca6-4766-b3a5-d6a9b5f68162@intel.com> Date: Wed, 15 Jul 2026 00:33:31 +0800 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v5 03/10] x86/resctrl: Parse ACPI ERDT table and save CACD cpumask for RMDD domains To: Reinette Chatre CC: , , , , , , , , , , , Hongyu Ning , References: <04bf985905dfaa759b919a11fd5d806b179fc0bb.1782866200.git.yu.c.chen@intel.com> <83182a45-e4e5-47df-88cd-79c0f6beaed1@intel.com> <113d3788-4388-4bf0-ad1f-d03232d770b6@intel.com> <0814ad58-8c3e-4e81-aadf-026c0b52f775@intel.com> Content-Language: en-US From: "Chen, Yu C" In-Reply-To: <0814ad58-8c3e-4e81-aadf-026c0b52f775@intel.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: TP0P295CA0003.TWNP295.PROD.OUTLOOK.COM (2603:1096:910:2::9) To DM4PR11MB6020.namprd11.prod.outlook.com (2603:10b6:8:61::19) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM4PR11MB6020:EE_|SJ5PPFF8B526086:EE_ X-MS-Office365-Filtering-Correlation-Id: b06e7e03-d142-4e42-f739-08dee1c5a9f6 X-LD-Processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|7416014|376014|23010399003|56012099006|4143699003|11063799006|18002099003|22082099003|3023799007; X-Microsoft-Antispam-Message-Info: 1XgtZFeoJAix/pE0OuwhnSBcqjneKzoXeWJbPtgkg8ldym8CAFNWkE6mh3NyHFoHlRnxnduehVyf1B2g98cTMfczcDzNkQ6d72WU7DzFeS9r0MWAutmvCCR7mxEJYthZ4z/L5XEL7BYMM1jLeH2eGdwI49WKgSLGK5xnX8pY2eRjyoQWGWSKA6SWKlAipD3/Bbh0ZooZ6t6X3AMgemK/4dmW9hn4BlUoLfflhmojwPpkcRU7RN7P5gSnZsTzdd9IX2GztnjK3LLZKgo4X48RclMeuInE3zesMuDsV/5uSEg9AOQ4GhAIIqTyinIZQ6c/gpdTrPjHX6INXcDikPPMYXAcVnErdQIQZIsKHvmEul1X/OZ1lh7GX8/HdvKiXp1kmYl05WKPtw6yv+G1RTksS1w7zVKPaG2mznYsyUJeChFcQmt+Wy1wNFbhQcmFbJdT5wr04a+v/U5J+/ycKBDl4zhGSBARpZ5FeXd6jfBBev1ZNRBuQ+xZ/I/sZb6JIQQARPVBLTaefDRC7kI3RkN5BJH24ld/+gShC8utEM3YoDECd4Wlj8CQXO3nwiz3rICyuoJTlLmyflIV/GpemWhI/l2HE2xMo2+8BcJ9cdXPeNz8vlfFVNYRwoSpWu+76bmDq3lRNgbSFFMKVgrnexmLLGc69sGvhFB7VilV+crPW60= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM4PR11MB6020.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(7416014)(376014)(23010399003)(56012099006)(4143699003)(11063799006)(18002099003)(22082099003)(3023799007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZVBvM0w0dXRYUUJUUXdnVU91dkxNVVlPZXB6QlZXNitwSGkxbjRaQmx5YzdD?= =?utf-8?B?Skg0VlExNW5yeVB0b1JhSXlSaHA3ZU1BeFVPRmNCZGhxY2lBM0NsR3hZZ0h4?= =?utf-8?B?UGFOVFF4SnNicU1ubVBuTkVzVENlcW9IcllTU2pnMHNURVI0VkpocWpaRE95?= =?utf-8?B?ZktvT2tWcGRpUld0SExyNWw4Y0l3M2xnTDM5WHd0MUxOUm44MXYvaFdSTVNy?= =?utf-8?B?SHZTMGNZM3VZMVA0ZTV2Z1FLaVFsZjhOcmNQN3JSKzBJRU9SeG1GL3hsK3pv?= =?utf-8?B?NjFJMjVreXI1em1haGo2a25EWmdRNStwMm8rYlJ3UnNhMExTaEFBRkZ6Q2pi?= =?utf-8?B?MVZEWS9UczZnZVpBOU9sZG1wa1Q0S2g0NHN6ckVOdHN0czdyQm1MUFFFbUpD?= =?utf-8?B?WC84ZG84Q0xVVkxONlRDSzc3OXJ1QlVRSmdCV2lXd001TzFBbEUvQ0xpZFN5?= =?utf-8?B?UEozcjY4RzNLWC8yVkdvMDlncU56WDJPZno0czBGcnl2a29waDVyU2lkc3Ns?= =?utf-8?B?aUxzVU50QmRaSEowWTdDR1V5U0c0M1lZeUVOQjgvOVZ4UVZIK2VZYUJtNjRJ?= =?utf-8?B?M3JKc1o2eTJMbmw2SlU0Q3F5QWsvSEg5VVFsRkt2R2d4c3YzZW5HUXp1ekwv?= =?utf-8?B?eHh5cUtNZHN2c0t5M29sbkFCTE1XYUZsekJLUDN2Q1B4a3hBQVdhcVI2R2xt?= =?utf-8?B?ZUxqQ3Z6UnZXTkh3ZHdCU1V0eFJmWFY2TTdGUnAvQlRRT0gzVC90UnF5OWNo?= =?utf-8?B?cytqaDRJcXNDaUs4L2l1bWtKL0RMSzc1eVVLODM5Z21oQjduVHZEeDcvWEJt?= =?utf-8?B?KzlGZnJ0NCsxRnpMdVY0L1pqMDRZVUo1SG5lelVZTGVkeU90dExOYWRCSnJK?= =?utf-8?B?QzBmaG56WjBWNjRmZzJqYXBxZ1MxZmRHd1QvS1ZRNFBUYlo4ZFQrUXRvMzdZ?= =?utf-8?B?QmFyYWErd2xuYVB5TUEzZllnVUkwZ1JkcktnTUV5cG5OcEEvbDdpZ1JNTDU0?= =?utf-8?B?d3F0eGRqYkNoNjVpeS9HM2s0S0g2RDkvOTFTRWlETFEzT1BadDFHSzlKVUlU?= =?utf-8?B?cmhtVlFVRytrK2VzQW82WmdBWTdsRXdYK0FzNGp2SXdwMXlDaVJqOUN2V3lo?= =?utf-8?B?UzJoQTZHWWFlOGx0cEpORktxQ2lsd0Q0OVQwOElQeFVDOEJra1dIRXhWNWhV?= =?utf-8?B?R3VXTnc4SmFGN3NmbUJWZWRoaTU1RmFoZnEyNUFmUU00eVFVMEdObWZUUUdh?= =?utf-8?B?N2ZTNFRicy9iWEtGUnEyN1J1RVZ6QzNpMXI4citnaDVSQzBsYzZFbXBTUDhp?= =?utf-8?B?ajdpdElTcHpIK3dGZC9qMXJuN3BNL0s2TE12TVFsbG1GTVpVUnYvek5TV3k3?= =?utf-8?B?eldGK0xRUmJSREZoeUNXWUFuMUZWdGUrUUc3VFkzLzlXajVncmc2YzZnL20z?= =?utf-8?B?NWQyOThtaThoSW1CMFppeU13OGxSZG1CUld6WDVMclA4em1TWElMUklOVEVo?= =?utf-8?B?NXNSMUgzMTdyK29jOUtmcU9VbFJkaDlyREhta21BVktQUTdDTDAzNFkyMFR5?= =?utf-8?B?bEtnWHhrdkpPbEhwM05IY00yUmlMSVdzb0ZRdDNqUlIvZHJqR2Q2NW1XbDE3?= =?utf-8?B?QmdIWW1jM1JWcU9adC9RNmVHdmpjbXBFaVAybUxzZ0drdnFnOVVWaWdyM2w1?= =?utf-8?B?OUp2NGs2RysxdzhoWS8xcXFQVzNtSVh0bnVGSm1wcmRnWGgrZ1VXeE80QnNy?= =?utf-8?B?VnBmd3JRZll5M1U1a2R6SWZEVVgvTmpwRFl6aWpodXc4VXlOMDA0OHF1K2Fm?= =?utf-8?B?a1QrMW15SE9JcEtockczZDJ5SVFNa0MwMlhzSityU1RJdVBiSkRnMHduVUNL?= =?utf-8?B?am9HWWROa0o3ck5BVDVacmk2NGJHNFlEY3lDM09hY2FQdUcxVnpLZmM1d08x?= =?utf-8?B?emJESWFzeStLbGdpWnRWdklRN3NOTkd3bmNsbHU1VnBxd2pkb29udGlzc1ZO?= =?utf-8?B?WElvSFZBMGt0VHFhSTlwUHdkT01ndnd4dzNPajNlT1YvaEI5Rkx5ZFpkYlhR?= =?utf-8?B?T3gveUN0SEthOVBPRktDY05KZzVpT2MrNi9WbVJyaGNXckZENzJsYThSTCsv?= =?utf-8?B?QnNEZ2IxbkE4QmsvaHRLekZUN3JqRExLT0VRZEFCdm53UGJydXE4QklpTmVE?= =?utf-8?B?dGZiUkptZnZCckdxTXRvVnZDaEJnOTh5Rm0zRVhndGxoWUdCRXdaSVB0SWsv?= =?utf-8?B?YnpDTkdKTVpuaFFTNDlRUUJqYlpONklRc29xMEdheVJiMnllOTJDV0hjUDNw?= =?utf-8?B?WDhWcGxJM2NzRTNUMHExTGh6QTJoeFg3bUxNQ2xTdlV4UnVFa1FmUT09?= X-Exchange-RoutingPolicyChecked: WxZyHTjNEsQuqjHfe3fhelgHfep9owOiWjb9JGaHDWn8Op71UlxLvQskk42xWkA/CA84oPRBffTLJKQzR8x/fs+Aq2qGrvA47gIMgJQnMauDCzJ9e4sEMD5qbHyQw0bPvOBpuPXTqPzbOLjWf5byZFnUrLlfxIFgPJD5rjauf9BcqQ9kFjZrnX3srlTDTOgATXTVV0TAQlM3r/n2vUNprGbhrFuIO2K8eSFXqGJrOEQV304xXYtalzwahJjkjC0BBsOMxELNDHWJ5ABoLWrYH76SfHPQ4IhGd938Sy50sDv1zfqVYAKJAIVYEdtU2ZjdRmy+ddH54plQMbURCO1ujQ== X-MS-Exchange-CrossTenant-Network-Message-Id: b06e7e03-d142-4e42-f739-08dee1c5a9f6 X-MS-Exchange-CrossTenant-AuthSource: DM4PR11MB6020.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jul 2026 16:33:41.1532 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: iqAyRgXd+IHh8ksBcnwLajLn3cFViFL6HYB4Lo58G/pJGwkiLPZqPMD7Idjg5Tm+tPQVZqmUNrCxTcHpJiXy0A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ5PPFF8B526086 X-OriginatorOrg: intel.com Hi Reinette, On 7/15/2026 12:13 AM, Reinette Chatre wrote: > Hi Chenyu, > [ ... ] >>>> The ERDT may contain these sub-tables: >>>> >>>>    - Resource Management Domain Description Structure (RMDD) >>>>    - CPU Agent Collection Description Structure (CACD) >>>>    - Cache Monitoring Registers for CPU Agents Description Structure >>>>      (CMRC) >>> >>> How should "The ERDT may contain these sub-tables" be interpreted here? >>> This sounds like some high level partial description of ERDT that is >>> not specific to this patch. >>> >> >> I planned to add some background context on ERDT. Let me remove unrelated >> content and change the sentence to: >> Parse the RMDD subtables within the ERDT ACPI table and their nested >> CACD entries to construct per-domain CPU masks. > > Thank you. Making this patch specific will also help to identify unrelated > changes, for example the introduction of ERDT_MMIO_CMRC_BASE that would be > more appropriate for the patch that uses it. > OK, will also move the ERDT_MMIO_CMRC_BASE to the patch where it is used. >>>> + >>>> +#include >>>> + >>>> +#include "internal.h" >>>> + >>>> +static LIST_HEAD(domain_info_list); >>>> + >>>> +static bool __erdt_enabled; >>> >>> Is double underscore needed? >> >> The double underscore was used to prevent name collisions with the >> existing erdt_enabled(). Let me switch it to a single underscore instead. > > You say "existing" but I am not able to find erdt_enabled() in this series. Is it > something that will be needed later? > Ah, erdt_enabled() was removed in current version. Let me change it to static bool erdt_enabled; >> >>> Could you please add a comment above the variable to describe what it means when >>> "erdt is enabled"? >>> >> >> OK, let me add this: >> >> /* >>  * Set when the ERDT ACPI table has been successfully parsed and at least >>  * one valid RMDD domain with a CACD cpumask exists. Cleared on teardown. > > To make this easier to understand, please aim to have comments that do not describe > code verbatim but instead what it means. Consider, for example, something like: > "True when the ERDT ACPI table describes at least one domain with at least one CPU." > > Got it. >>>> +        d = container_of(pos, struct erdt_domain_info, list); >>>> +        list_del(pos); >>>> +        cleanup_one_domain(d); >>>> +    } >>>> +    __erdt_enabled = false; >>>> +    valid_subtbl_mask = 0; >>>> +} >>>> + >>>> +static __init int enumerate_erdt_table(struct acpi_table_header *table_hdr) >>>> +{ >>>> +    struct acpi_table_erdt *erdt = (struct acpi_table_erdt *)table_hdr; >>>> +    struct acpi_subtbl_hdr_16 *subtbl; >>>> +    void *table_end; >>>> + >>>> +    if (erdt->header.revision != ERDT_VALID_VERSION) { >>>> +        pr_info("Unsupported ERDT table revision %d\n", erdt->header.revision); >>> >>> Would it be helpful to print what the ERDT table revision is to help diagnostics? >>> >> >> Yes, it will print the revision, do you mean print the expected revision? >> >> pr_info("Unsupported ERDT table revision %d (expected %d)\n", >>         erdt->header.revision, ERDT_VALID_VERSION); > > oh, apologies, I misread what you had originally. Even so, your new proposal looks good > to me. > As a sidenote, please use most accurate conversion when printing, for example %u for > unsigned instead of %d. > OK, will do. thanks, Chenyu