From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.18]) (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 9A42B175A91 for ; Thu, 18 Jun 2026 23:40:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=192.198.163.18 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781826014; cv=fail; b=Kzi/URfTAlLtbKkW+f4yRMlhM3XtCxm4AJ20jJD31LcwDJDO5NzhBz9lzI8SB76P7RmjWubY7AOiAeSRw5f1WNZuAhOy0iXz6Tfnl20QDEisbfMVgM51GJh7ZPL6qujJKDM5XfdgY6Nxm0G/KUP4kVeNcAqllfh+XFHRJJM2mL0= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781826014; c=relaxed/simple; bh=3YSm6GT71rJtkUBbLi9TxOz9xrejqdYv6nYcFHCJ7sQ=; h=Message-ID:Date:Subject:To:CC:References:From:In-Reply-To: Content-Type:MIME-Version; b=rn9qW2Pe7WxX95qAedDhPhYfQtrfMoIhVe6GV7Ie8AhBY/XEDiKhn9AaEFEfakDQ0U0JGnkcoceAiXFLFv2nbbJyQh1qkcFNgfWw9+dVSBHybshAcuTvXNxLKQrqxbEzkwDsj6aGizdPC0UydyJaVEVps2lThPJMpthjkoPvR6c= 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=PuT26IRP; arc=fail smtp.client-ip=192.198.163.18 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="PuT26IRP" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1781826012; x=1813362012; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=3YSm6GT71rJtkUBbLi9TxOz9xrejqdYv6nYcFHCJ7sQ=; b=PuT26IRPkbpne5OXXC9W/kkJQPwrB5wg3HbiLF4N5yuOcr0ivfmkc1O3 QzJbKgn9XizkpnPA5z7EDB8vtVZ7RDml32kSREtWEggJhcDPgv0CPcydl hIJw+i0zjJVttsXpw+l2WYHnpNfg2esyX/TcHTgln9HUwYgziTboIJ5ce L8rBQayprnq4H6WXPPSys7HgN8zSIMQxyKxnt3ShuJP8mYdzXsYazjbfU +KGwHD8O3Dc2b4p97EOGE6AJ7c8hM5ur6MEPZo912o8udXd0yST3wu0+k Vd8kAiDz1vAHjz1XTljtj//BoiQPPXcXDxMBngNLagYqRYtnYPvbEEpmR A==; X-CSE-ConnectionGUID: qxoG2py1TQGmCfqVTpY5iQ== X-CSE-MsgGUID: fzEgGkQ+Sra9zVNYO43gVw== X-IronPort-AV: E=McAfee;i="6800,10657,11821"; a="81789250" X-IronPort-AV: E=Sophos;i="6.24,212,1774335600"; d="scan'208";a="81789250" Received: from orviesa006.jf.intel.com ([10.64.159.146]) by fmvoesa112.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jun 2026 16:40:11 -0700 X-CSE-ConnectionGUID: 2eBO//UmQeKOAHa4LAzjqg== X-CSE-MsgGUID: UKrYuijNT1KIXFLdoaCYUQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.24,212,1774335600"; d="scan'208";a="247358728" Received: from orsmsx903.amr.corp.intel.com ([10.22.229.25]) by orviesa006.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jun 2026 16:40:10 -0700 Received: from ORSMSX901.amr.corp.intel.com (10.22.229.23) 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.37; Thu, 18 Jun 2026 16:40:09 -0700 Received: from ORSEDG903.ED.cps.intel.com (10.7.248.13) by ORSMSX901.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.37 via Frontend Transport; Thu, 18 Jun 2026 16:40:09 -0700 Received: from CH4PR04CU002.outbound.protection.outlook.com (40.107.201.21) by edgegateway.intel.com (134.134.137.113) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.37; Thu, 18 Jun 2026 16:40:09 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=QaA7it2I7gI6uGFH7QJBotAM3meeeaq167+y7yVonibnSbCVQ1f8Lmsb+REHSU5Iu0rISj8cUHiW/mtjVqJC0cO55pVcXi3Isj9GwLl9ViK3HTESQ91wJMVTAEfuqFL2KOHmDwxurwWZF5nuZihrWKtHM5Xow6KUTmGqCk3W2xcqChEkN0/pXFnQwslZGiJWnl4vmBpi0TqA28TTDCJCZUqgaoodpf/YEBsPPTOTi3+NAMtAswFY63NkzfBueI0xFa94z1+k6pIUeVwiRZNVirGS5pUr8foVJSDW7S6x3DgLTiSWxoZGAev0jv2+9c6nNQz3oVGLCNCSVNm838+NGg== 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=3ukPh7NkrG9iiv/1b4yZqBu9DyHn0KCvSBvbvWoHn24=; b=PaEMTAn9kyDPhGWHNPJYsK0toDpZ6EGsIwgtEx25uM+1wdZrFCZZ2VhLetwB0T12gl7GmmH6geINpaRslmcGZh6i2L8YofqJARZbiX+QMhhjuo5voV6q2Y3FlTjUotpKvaFUp5S9Rzoiomkf8bDFwiWArbPcighedBjRn95DavvQt4tTen7XPniGP94Lrk7czsgksc4vQs5gLDOMXsxNIp8FropLELt5CJckhctlJHazI6XVb3I+km9JuzP3edCMyH7FgfcVAsPeYZHyfUrWa7o1j4StbPZqSZT96E5/vt3umqbjWMZhTwTKqIk0VBIfM4eTCHc75/EU/Mzgws+2xw== 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 SJ2PR11MB8370.namprd11.prod.outlook.com (2603:10b6:a03:540::20) by SJ5PPF8A49C4DF4.namprd11.prod.outlook.com (2603:10b6:a0f:fc02::83f) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.139.11; Thu, 18 Jun 2026 23:40:06 +0000 Received: from SJ2PR11MB8370.namprd11.prod.outlook.com ([fe80::b6cf:ce77:3cdf:7cc]) by SJ2PR11MB8370.namprd11.prod.outlook.com ([fe80::b6cf:ce77:3cdf:7cc%5]) with mapi id 15.21.0113.015; Thu, 18 Jun 2026 23:40:06 +0000 Message-ID: Date: Thu, 18 Jun 2026 16:40:03 -0700 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v4 6/6] x86/resctrl: Add support for L3 occupancy monitoring via RMID MMIO read To: Chen Yu , CC: , , , , , , , , , , , References: <21beef1acbba4bc7bbc6e54dc11868116638d5b5.1781332698.git.yu.c.chen@intel.com> From: Reinette Chatre Content-Language: en-US In-Reply-To: <21beef1acbba4bc7bbc6e54dc11868116638d5b5.1781332698.git.yu.c.chen@intel.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-ClientProxiedBy: MW4P221CA0013.NAMP221.PROD.OUTLOOK.COM (2603:10b6:303:8b::18) To SJ2PR11MB8370.namprd11.prod.outlook.com (2603:10b6:a03:540::20) 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: SJ2PR11MB8370:EE_|SJ5PPF8A49C4DF4:EE_ X-MS-Office365-Filtering-Correlation-Id: 85b586e2-1fbb-4222-d011-08decd92ed08 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|376014|366016|7416014|23010399003|18002099003|22082099003|3023799007|4143699003|56012099006|11063799006|5023799004; X-Microsoft-Antispam-Message-Info: Jw3Kp/uG0lgwQgltjNHOULqZ6KLoNm6zzJID7NrO0T3A05Y7+7tE3Jb3sVKDXEIJff1m6Xy0IcbBfV7BsGf9LQ1StjM+culL8vmoOQzR0suGeY5mju757zSfaD4ddGT954thldgXT94qYEIm+VBxW1jSEdwOZTrUSQO/0cK1NIsBtyR7j0z0TFYd0ChbAA5qsYrpkCmLQZSjg6F8s1xWfS74E0qmnuT7g611UD7n5X76OvFAchhSJ/PHmH2WCI+AXW4v/0mWfszSItWMjZCS9fFGvOIjlTxO/gWhCg/1vXisZBiNjKRPdP7+GNfTsbf7roJiU74dkL5Orz0woA///IJ/FsdCKtlMrShRb6m+8KJ2cb3y/vFsKts6lymuxNsAUXrEr6PxmYA5shLdXn4BkfRaKLHXmfadsPNXOd7dx/kwUD0tN8F66CjnQrXgUjUDaN6comoUDA3Q6uKeJUJWpOqX2aafcIKed6Q94ou2pl3ndoeFmSM4paienKBRr7jXxtUy4+fMR0Nizu9f7HjGGov/IdLkojZA7oh4P+pq6vBmRmFqzvdzylJ+cj6fELyG47C5KsT33ekEfQ2JaYWpJJ5OCA3N9fSksof867S3Cdo5HLYbQNfxxsQO0bupCuP8HB1OvpBd41ldmz1uYxCrr2MEWSaC03dosKPg3kYxPLQ= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ2PR11MB8370.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016)(7416014)(23010399003)(18002099003)(22082099003)(3023799007)(4143699003)(56012099006)(11063799006)(5023799004);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dk52QVRuL3lOdks2ak0zaS9jeDZsUkFObUtUQVZJSktpdkp5Qll3NmszaWZu?= =?utf-8?B?NFhWQmppcEYvRWhKdGJDbS90bTdPU2ltcmpTMzUxb3pVSjJWVDBnVnNOWm94?= =?utf-8?B?bEFHdi9jSFZSUE9TS0lrUWxYcmw4WUVXNCtBWFhTVG9Hb0hHdTJXanA0Rzk4?= =?utf-8?B?Vm5ZcXV5VW4wRjdRbEFDV0FmMWttR3BBVWsyQXIybzJDMHU0TjFYaE1YUkg0?= =?utf-8?B?N3dPbGtqakNqb1Fzd1BQS0tlV0NFbXJPOEl0eWtDQmszdUY5d3NSTFlSbE5i?= =?utf-8?B?dkVRRFgyWTVuaDEzdUxmaWY3QkttM0ZVRk0xUFhrL1htdUZMVG9talV2WDQw?= =?utf-8?B?SDFJeVlnalNPM3ovTE9CaTZOcWFabTdiYmYvUVh2M3A5SkxORkFPaGo4cVdv?= =?utf-8?B?Rllhc1RkblhaNkhmMDNIM0hBRnRCZk1TR01QOUlXOHY1Zm1iZGVRa2xKWTAx?= =?utf-8?B?dnZlekJGeWhNVkRGQXQyNjFpNWp2bW8za0pHbm1EL0FlVVJTdmYyWm1wVUVz?= =?utf-8?B?WFRNbFBNTGdQdGViM3h1NSt3N3RzNVZFMW1sR1NHd0h2VTNSSFdmd2JQZlZR?= =?utf-8?B?ZTNwSENMaWFZZmFoNzhkbmFPYnNsOTgrNUFMS1Bsb3FhUFJPZ0VNMS8yeTlj?= =?utf-8?B?Si91S0FRK281UGpzaFFBOHFyZ2xkT1dOWjNFZ0JtMDdSVHdRRTY1S1dIYXM3?= =?utf-8?B?M3hiNFVaOUM1MlhiR1ZJN2g1NGd2TlprNFRlWjdHVC9WaXRtOVZQM2oyR0c3?= =?utf-8?B?S0JQbVVjekJ0QTBqOGNNYkppV2wyUnczQng1UG1oa1dFMTB6UkpnWWZ6Rjkr?= =?utf-8?B?SW4xK1EyQkVQUjA1VWpLRHBWdHNlRHdVT2svQWxMRHBET25VOWJsdVo2bE4x?= =?utf-8?B?NzRHQUQ0N2VGSVorWG55UGw1N0U2VWYzOVZRUUwrVForYUdkU0FDbjZXZWVK?= =?utf-8?B?cWluZlMvQ255S2x2eWplVkVPTlFTb3pRMXljQis4eXZTZnNNbEo5OXg2K3N4?= =?utf-8?B?U1IxY3pra1BzQ0pHRDhsL1dQS3REb1JjaytNWXIzM2VIVTVyQnFBNkZOQkVq?= =?utf-8?B?dGdIS2JSUTlMN1hHVXJDZy83M2hTQ0VPd091dHdGblhpNzJ5OGlNN2JsZUV4?= =?utf-8?B?MEJWZjlYcXF5UjZwTXBkK2tybi9ROTJONHR2azcrSXc5dnd2RjNxSGFJQW1T?= =?utf-8?B?aitFb1BjWU1vTnU3dlFYVS9tVE9MT3BuenlnaFpEbW84Y1I3WkYzVFJOVXM5?= =?utf-8?B?UkdyNG1xcXpqNXdkbnRTTmlkZFZHSnhTNm9PVEFHUTMyczQweHZ4MlpEbWgz?= =?utf-8?B?N1NBRktMNEhVTHJrZGdyQVpuOWJZUU5MUDA1cnNpK2tiWnVDa0Z0b2RYUlE2?= =?utf-8?B?RmJPWW5YNFdmTU5OVDRTM3BJUXFabzBMMXZONWJIRk9VZWgrSS9oV0VuRDZB?= =?utf-8?B?ZDJmRVpGT0xXYmY1dHNsOElYNlFCS2RKUHJ3bjR0TDk5VXliNFQ5VHNVV0I4?= =?utf-8?B?c0V0ejRmeFk0SFZvRmdNeEFPdGlYNVMySzlPMXNxQVRVTldobWRvNWhFWWpr?= =?utf-8?B?V2wwSEE1ay9mejRPU3RwZlU3SHNBMi9DdTNrNGJpdjhkSS93VUZXb3dEQkZR?= =?utf-8?B?Sm5YcEh5dlF0ZjRYbU93QzA1SUlmUFNnazJxK2hWQUlRRFBtRGNvU09yVnVv?= =?utf-8?B?M3VURVRILzl6OVNkSHM2TFBJM1drNEJUNG9RUWhldlByTVRHWGdDVjh4ekd4?= =?utf-8?B?MUN6SlFYRHoyRXJjVkp5QTl4dGlQKzFBWUxQVTNjaXl5UEdIbmtmTUkwVWNp?= =?utf-8?B?VmxlZmkwMzNKN1d4VW04U2xRRDB6T29sR1IrOWVQNm52WnNESzM1OGM0eUVP?= =?utf-8?B?UmxMQ1ZGZURpSXBhQmJZTlZjL1ZGWW1NK0ozSzV2TFZCM01tbHptWE9ZOE9S?= =?utf-8?B?Z2RXMVNHVGxoaS81dE1BRjA1THBUK0I0NUF3V0NVVGdWTGNpTFlGOEZ3NGxx?= =?utf-8?B?M2M3Szc3SHJxdG1NL1VpbTJJelVOSUZYTkJQMHBRWEQxYlU2cnZ3UC8wRW42?= =?utf-8?B?cnduU2J5MWpudGRHNWt5R3pEUTFrYW1VcDR2c1Zhcm5XdkNUNWFVOURZZndl?= =?utf-8?B?dktXeEp6ZG9YQlZpb3VMV21RTEp6bTd0ZTBZaElmZUpyZTRsdVN3ZzR4WXJu?= =?utf-8?B?NnNIeERDQ3dTQ1B2bVpuaU5hY2RTK2RXMVFNa3BnaElWVmxITHBWK2w3UUdm?= =?utf-8?B?R2VhY2orWm5WZzVGcURFNE1hWE9VUW82ays4N2FRdGdCYmIwZzR2Y3lmVFNm?= =?utf-8?B?eE1ISDY3bk02Nlk4L2cvdmg0ejVCZFkwN2pzRmJ2eTdaZ1FZelZZOWtqVmcz?= =?utf-8?Q?YOgwkZzEd7/xAAdg=3D?= X-Exchange-RoutingPolicyChecked: abghakWSca8lw61DB5J5ABLVN3JkF6q6j8Kgz/ZBLIMwm71wLDSRemZk1xbJVXXEaViCu6CZFFInNzqyNWwqb7JNkxdtH2MqiKnhMbkQyVszzxgMTsoX/9RbMtqPSM4J0RWnruL3LhejMoGUT42TwLSFtmoRNGUjfHAyEao8HnvVh+XBwDKDNPB+ZNJMfGi75oIVj98Ip42HGqqHPRu5X5qWrfOULLAulcBMPdJU8SFVKA6fmFQGrAHzz93j1+Ty2YY39LEYlx8Sf9yREwf1bExHbjLOeJtJgsc1j0E6HzOyLx1GINB9qsaLtqtyUjfCmnULN901G0HhNvFctrm7fw== X-MS-Exchange-CrossTenant-Network-Message-Id: 85b586e2-1fbb-4222-d011-08decd92ed08 X-MS-Exchange-CrossTenant-AuthSource: SJ2PR11MB8370.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jun 2026 23:40:06.0075 (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: 4RjuMlxvqjOiRWkP8evH5OuAzQuAKVvhWJqZAZ2RV4CKo/y35hLAMnMfaPfG8WueNKpWu9zvOsc0wWrDMihZh/1ydkdmISC4moz95WVDFT0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ5PPF8A49C4DF4 X-OriginatorOrg: intel.com Hi Chenyu, On 6/13/26 12:57 AM, Chen Yu wrote: > The CMRC (Cache Monitoring Registers for CPU Agents Description) > ACPI sub-table provides the MMIO address used to read the LLC > occupancy counter for each RMID. When ERDT is enabled on the > platform, use this MMIO interface instead of the legacy MSR read > to obtain the L3 occupancy value. > > Introduce erdt_mon_read(), a helper that retrieves monitoring > data for a given RMID and event ID from an ERDT domain. Initial > support is added for the L3 occupancy monitoring event > (QOS_L3_OCCUP_EVENT_ID). > > If the platform supports ERDT, CMRC-based MMIO access is used by > default. If ERDT is unavailable, the implementation is to use > MSR-based operations. (nit: please write in imperative tone and use entire line length available) ... > diff --git a/arch/x86/include/asm/resctrl.h b/arch/x86/include/asm/resctrl.h > index 97c2f6bc7a5f..9b3b03279dd8 100644 > --- a/arch/x86/include/asm/resctrl.h > +++ b/arch/x86/include/asm/resctrl.h > @@ -41,6 +41,8 @@ struct resctrl_pqr_state { > }; > > bool erdt_enabled(void); > +struct rdt_domain_hdr; > +int erdt_mon_read(struct rdt_domain_hdr *hdr, int ev_id, int rmid, u64 *val); > > DECLARE_PER_CPU(struct resctrl_pqr_state, pqr_state); > > diff --git a/arch/x86/kernel/cpu/resctrl/core.c b/arch/x86/kernel/cpu/resctrl/core.c > index 90730f0851fa..fe812f7190fc 100644 > --- a/arch/x86/kernel/cpu/resctrl/core.c > +++ b/arch/x86/kernel/cpu/resctrl/core.c > @@ -965,7 +965,7 @@ static __init bool get_rdt_mon_resources(void) > bool ret = false; > > if (rdt_cpu_has(X86_FEATURE_CQM_OCCUP_LLC)) { > - resctrl_enable_mon_event(QOS_L3_OCCUP_EVENT_ID, false, 0, NULL); > + resctrl_enable_mon_event(QOS_L3_OCCUP_EVENT_ID, erdt_enabled(), 0, NULL); > ret = true; > } > if (rdt_cpu_has(X86_FEATURE_CQM_MBM_TOTAL)) { As mentioned in patch #1, when erdt_enabled() is true the enumeration still proceeds to enumerate the monitoring properties via CPUID to discover the number of RMIDs that the *MSR* supports and use it as the maximum RMID (and thus the maximum number of registers) that MMIO supports? ... > diff --git a/arch/x86/kernel/cpu/resctrl/monitor.c b/arch/x86/kernel/cpu/resctrl/monitor.c > index 9209927f88a2..1491f96b57c3 100644 > --- a/arch/x86/kernel/cpu/resctrl/monitor.c > +++ b/arch/x86/kernel/cpu/resctrl/monitor.c > @@ -278,6 +278,13 @@ int resctrl_arch_rmid_read(struct rdt_resource *r, struct rdt_domain_hdr *hdr, > > switch (r->rid) { > case RDT_RESOURCE_L3: > + /* > + * No SNC for mmio based L3 occupancy, so there is no need "No SNC for mmio based L3 occupancy" is too significant to be buried like this. Could you please elaborate on this claim and enforce it with the implementation? For example, could rdt_get_l3_mon_config() WARN and *not* set r->mon_capable if erdt_enable() and snc_nodes_per_l3_cache > 1? > + * to convert logical RMID to a physical RMID via > + * logical_rmid_to_physical_rmid(). > + */ > + if (erdt_enabled() && eventid == QOS_L3_OCCUP_EVENT_ID) > + return erdt_mon_read(hdr, eventid, rmid, val); > return arch_l3_read_event(hdr, rmid, eventid, val, r); > case RDT_RESOURCE_PERF_PKG: > return intel_aet_read_event(hdr->id, rmid, arch_priv, val); Reinette