From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.15]) (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 74E543DB309 for ; Wed, 5 Aug 2026 06:33:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=198.175.65.15 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785911593; cv=fail; b=BbkdG1cWHIF4vfpe9nXV/v2oAYP/jizK34GmAYLWK6UptTcZZWPqnBBO431hnwAuBxyULg/BqO4aCr/0akUgKDGPnm2y3wv3xdzQY8KkHhRiqjc1NnoLEshrN1zYmEgYg51akNGS0J+i8Nka6fj8q1OqFKJQOIpwt1F3CV5r+K0= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785911593; c=relaxed/simple; bh=6rJg5RoDdXU6iJi43vTrG+4pGKOlgPgyKhtQ6xjqdyM=; h=Message-ID:Date:Subject:To:CC:References:From:In-Reply-To: Content-Type:MIME-Version; b=nmmfrBnSzSOpFGlNPeSLVEvOCpyjm9cNTwXbqxEiPsAqN4mbl+ObPSLvLlIzc4JPqNxIfhlIFWgbaB8XxotLZuKL5X1Q1CtwhwXWsxuvhb9u9xc83djYsS2Umwo5rJ3zXrnp3OoDCaC3PmD33nMTNJXbQjw9SjZcOFejWYSAaFw= 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=kVecvoVb; arc=fail smtp.client-ip=198.175.65.15 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="kVecvoVb" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1785911591; x=1817447591; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=6rJg5RoDdXU6iJi43vTrG+4pGKOlgPgyKhtQ6xjqdyM=; b=kVecvoVbppV7643Uk3GAMGAdbuJn9mhIP8+WHmiBmmZBXWor+uzDvZNp ul5/tLY+AVQmPG3r5bLv3lQ5cxHqzE88V1Da1cMwU/u7vlu0xMrmVA5pt xE6oT0dNeQnaiAyQucktIH7ikIHYuzRgwz4csq/r5vUPY2mHbj1Fu8S02 OMFic3/Sa+WCpRvM84itRaL3oVFH3VsjyfOOjuivkSmCnI9iTbYsqg8xl nXyOIR8uxZXvtQoohteBgTeVUt7edMAKfm4M0vuc3QEBzhO8WlXR9307M zcNqMSTu6kt7aAueoBc1drAOW0yz1FcEvUCaAPNwaXbZeaSOh7B/tofFy g==; X-CSE-ConnectionGUID: EqSL0hX7RIOv9okFGy5ORg== X-CSE-MsgGUID: OWEQdoMDSCugzojY3ezjaA== X-IronPort-AV: E=McAfee;i="6800,10657,11865"; a="90151989" X-IronPort-AV: E=Sophos;i="6.25,205,1779174000"; d="scan'208";a="90151989" Received: from orviesa005.jf.intel.com ([10.64.159.145]) by orvoesa107.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Aug 2026 23:33:11 -0700 X-CSE-ConnectionGUID: Vq/gOdkITH67iR6LwUeMYQ== X-CSE-MsgGUID: qxH+RlT3SqOrQKxdinLfEw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.25,205,1779174000"; d="scan'208";a="265964530" Received: from orsmsx901.amr.corp.intel.com ([10.22.229.23]) by orviesa005.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Aug 2026 23:33:11 -0700 Received: from ORSMSX901.amr.corp.intel.com (10.22.229.23) 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.45; Tue, 4 Aug 2026 23:33:10 -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.45 via Frontend Transport; Tue, 4 Aug 2026 23:33:10 -0700 Received: from SA9PR02CU001.outbound.protection.outlook.com (40.93.196.71) 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.45; Tue, 4 Aug 2026 23:33:10 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=HspcIKh4eBl3MOUgOvYPNU34/yqwxqHi2DIuet94PnI8jCha7hINgRaqCapbuVj50K6VTHLcb+45OCKFTLOdITThlLdH3keVeACHYBJH54O60++VHxT9S9UPqtll0oROVrPnEvIhD/TEr/uP0AE371mWGEcymKzN192uAlTRM/YtGDfHC9+TY/sfYcCqbK8l225mCKSSQh2KgNnKZOty7o6DHlqJ8NBYTa5iNdJForDr3RnqbONbBIHjW7sCsAprxV2PA9AWJ7GtqaEHZEX/uhRtdME9H/pFIcI3OxhfJZwGYZJffVWWyt+MqOo4WIbcLxq9NQAjEvgF7bHKm+zjaw== 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=EBCvDetcWpAqk8c8U08fOWdBiQ3gpNzLafEWILYGHio=; b=S+XpMWqBcF9XmNMkNqjpScZEwJNUglf/RohNeqspTfx4r6rbOQPU3SoTaTnukq+367lEx/OHY8e94/C6xdF0ORglmR2CFWcXtsFlPGA2gsC/pNPyKmB0wDYx4Ko3s3+4EDbY7JRf5EFUdr4y+1jBon5eeI8I8NgPL+6r4IV09S51uR56Ekr2xVXXJFH7vLM0UyhGeEg+y+nSrNaqxyZ5xmTABiQZ/0YILqoRHhxb7rzjICgFbItpyms0QDPzVvLCfRuItMtDwkqIoTyyrsExWKYLfd9ZcosnY/fgx4Px5InVCeDzeYy89tjsoyYm0c999lrsXuTiaPdeKRb2y+u0qQ== 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 CH3PR11MB7299.namprd11.prod.outlook.com (2603:10b6:610:14b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.292.19; Wed, 5 Aug 2026 06:33:07 +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.0292.015; Wed, 5 Aug 2026 06:33:06 +0000 Message-ID: <88cb0939-8fc7-4a0b-ac60-8a366aa727de@intel.com> Date: Wed, 5 Aug 2026 14:32:56 +0800 User-Agent: Mozilla Thunderbird Subject: Re: [RFC PATCH 25/31] x86/resctrl: Introduce region-based MBA write implementation on MMIO space To: "Luck, Tony" CC: Reinette Chatre , Ben Horgan , James Morse , Dave Martin , Babu Moger , Fenghua Yu , Borislav Petkov , Thomas Gleixner , Dave Hansen , Peter Newman , , , References: <003c5ab0a49d3bd5d0dec0af50632073c378b6e8.1785680802.git.yu.c.chen@intel.com> Content-Language: en-US From: "Chen, Yu C" In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: TP0P295CA0058.TWNP295.PROD.OUTLOOK.COM (2603:1096:910:3::17) 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_|CH3PR11MB7299:EE_ X-MS-Office365-Filtering-Correlation-Id: fdea85ac-257c-41e3-cf7b-08def2bb68e8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|23010399003|7416014|376014|366016|1800799024|18002099003|22082099003|10067099003|11063799006|4143699003|56012099006; X-Microsoft-Antispam-Message-Info: adPBDrTwkLiDj/uvM456ZuKs1aHR0nvgzydFi+Z4hO3LXZtJdyjeLM8eLJvlnnQqslNAJSEY5c6uLT/48sPwzVjH+mFWpc0yyyKrrEa6bJoG1P6C2Vjda8pmsd/b9JS9ZhBS20Rvzc9iJtscvJepd93AuJ/BRUsykyUMp5IR+qDgn6v/oBnqe3luRuzogsAw2kmDquMzwqEEs+ETE2zlyUEmE5h4on24SCdPgNNpIf0BnlH3awDbpD3+EGdY9/+1eL2fUvph/kUU3N2tgGgqVLR9xWozqX2tr4BjXg9Ttyip5/LCTSvkI5zdQIXLS9oOoUmZ6ENttfATZYXTYXlfajCxl3OKfBBjksfjnOsCFxpliOA6z0A35ZsteiBxgjBI6dRv5epSupHEj6eKtX5caO4n18lbWqKEqttzCX9d0TShP2+6wtTyCsBh+kImDfdRL/ob5ZTd5bshqgnUlzhEPvEfuvTZhzYsLfeLJxpE7ES3qMVqnNekCsohPah4Y1+askzuQherON/RpI++KcqsuT18D/OcopTS6KMAIEUyVKCdf+4yzc59hUySdJ9s87bEo5l7d+XcucLvzhVNO7oJKoZ+6n8SsXRuw8tv8Zsdtnq1/TVn10DKSqeTdhEtzRjkOoY9Zc0mDmf/V4qId+rBnta+gtXi2Jx4bRQMLpRbUMc= 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)(23010399003)(7416014)(376014)(366016)(1800799024)(18002099003)(22082099003)(10067099003)(11063799006)(4143699003)(56012099006);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ZmlkR1hZaTgwb2gzTVFZY3JhYWRwUE0xZWxaNkZvamFVR0d0eXZnVFI4aEFC?= =?utf-8?B?NG43NkVMVU04K0hhUWRsOU1wbUE5MHMwK210UWNzdTdGd3ZUcFB6SjdpMkVS?= =?utf-8?B?aXRWaE9RWjd6WUZDVkpoZlFBNzRmUFZwL1l2UmhaakJKb0YxNXVwdkljTXFC?= =?utf-8?B?bVpKNGIyNkdqL0J4Z3cvQVBIbGpDSkl5WkoyYVhENTd1Tm1LeWNmUXgvWVF0?= =?utf-8?B?WkJIZE02RWFLMk9wYm5ValhyNTYwaW5kdVFOd1JhMDBlbDgvTTlQcmhkRWEy?= =?utf-8?B?MVdHS1dJRk1qbDRnd3UzdGlxMmtzNkpYMm1iUjUwcG82MkFmZU1CZ2NUMlJp?= =?utf-8?B?dmhBS0RDMXRKV3FubDFMK05pQkY2YUovcVAydjVXczhONnRFMjE2bk14OG1S?= =?utf-8?B?bVVtQWtWa0IrYVR6eGZjNk45YkFMR012b3hkT2RqWVBDVndLNnlDQmhVbm1t?= =?utf-8?B?TzVjRVJTZTVEUWIyWTRMK1ZkcVd2VFlBaTg3aTBBcUpqbGFhVXVkdzVIWTN5?= =?utf-8?B?OVR5SFJVeGoxaEJDdVMvVTR3cmVOY3cyZklDVFNva1J6ZHhVNGNScFo3RDI1?= =?utf-8?B?cmhuOEpVYmR3dEdYY0U2ZHZYekhrYnc5TUZudzFTamgwL1lNNFA1bzY0clh4?= =?utf-8?B?LytMblVTQzhkNUxwWG5nakJjWFE3djBUMkk3YTRIVjhaSEtVTGtTdEh5Q0dW?= =?utf-8?B?N1JoeXRHMm40SW5VK0hxU0FmVWl2OU9GamVQV25hZFZEYk9PYTZHc3RJdjdK?= =?utf-8?B?Y3FZYzBQWm9sUkhuelduMjJmYVRoV2V5cHFnUy85UFdXY05WMlFhM3BPL1U0?= =?utf-8?B?MFlaTjJ0Rm5kNTN4QWZhNVZkUGZyUndCMS93TWlWOVp5c21zL0JpYWV2UkVB?= =?utf-8?B?TXBHK0F4aTB3L0lLOTB3OXlUekIzWDc4OW8wcUdjdEllWHlFcXdUR2VsVXBT?= =?utf-8?B?S2JRWEUrMEhvSWJEZTFUMUZPbzRkYWtwTHRPVko4djQ0T0hrbXZ3NXpGbzJS?= =?utf-8?B?UlRwNWdCWFVRV21Mc0tBK1VtQjNuS25xNEdkdVNpSlk1bzhwbHQva2NlaVFD?= =?utf-8?B?bWVGOXE3RVkrbVhsb25NWEJQcm9MUlc3aDBXeXp5SG5NQ0pmMlhKM2lQdGho?= =?utf-8?B?MHhnNStkOEUrTW44bEN6cVJQR0U1UjBteUZRVWxqOWZaTzBpQW5aSHNWb3B2?= =?utf-8?B?ZDZHMlNFaFF1Sk05elBEaFR6UnNCNSs1YTRkQjNGVGNZUHpRb0xvYlVOandW?= =?utf-8?B?OVRqZncyNmlyT1Z1MlhPRSt1elNrZ0EwMlFQNk1vMGRBUlRWUEZrRHBpbXJs?= =?utf-8?B?eTArVzFGeHltR0p3VkdkY0IyYnNOM2lIR0Z2K2RXRTE4NVJYNTFPQkNEK2NW?= =?utf-8?B?ellBOHZLb25wMGlTRWFpNzhzMWh3andwNWJVNXFMNG1Lb1o4c0llQmc5d2k4?= =?utf-8?B?SGZOSUFFZnMxL1BVUHNGcEdzVDZmK3ZUaExKb2l2dm5OeDBNWTBIdDl0dERU?= =?utf-8?B?enJWRDZTVmN6dVprVXd1Z2dIU1R1aFdnN3IyRk5lbmxBN2Ezd3hBV1RWdkgx?= =?utf-8?B?QWhPR3dIR0dERENjSU1EQUNmMjlZQkpMQmsvS2lhTXJqWEV1QzVYSXIwWUdm?= =?utf-8?B?WVBTbDNTZFN6b2JlWmZGNlp0NmVMWWdJa2xFZGpwNEprVXlqM2lYQW5UY014?= =?utf-8?B?bGkvRGE5VmZQWnFjMWc2ZDlWaXEzWlU2b3p0RXNWTkhUZGk1dk5uVWVYNFlF?= =?utf-8?B?RDRYVUFFd0twNk5nRWR5Mm9meGt3Q0F5dFowdUM4S1MzOW9Kd2dmeE5YeEpL?= =?utf-8?B?YzNjQTI2MEdxZGduY2p3VFprUE1hQU5kd3BiRk9xVUJQREJmZ2xVRzdGcWF5?= =?utf-8?B?UE1YMkttL2VHUUZpTTQva1ZsRmsrTXpYTEFZUUo5MHpKQ3h5TUhYNk15Rm5X?= =?utf-8?B?YzJIN0U4LzFiTExyemsxQjlsU3pFNnlBNU02c2dKa1J2NFBvTFZLM0x5ZnpZ?= =?utf-8?B?TGRoVHdZSTB3TlhWSUdjNWZLTGx0QjFzR1ZxckRSUk9QNEVYS3RjUnhNZFhh?= =?utf-8?B?NEkxZEtCV1A1REZnMXJ4ejNvRmwyMjNVTVVxQ203ckhOREd2RVhNYnNiODdj?= =?utf-8?B?RytuVU5VNHk2LzdSY1krb2JVTDZrRHQ0K3ZjbjQxdWtXUjJGNDVCbm5vSzZU?= =?utf-8?B?V3NqRlJHOEtDRVZYZTlPaWFEaktDZXd5TS9Kd1M4QzNmcUR1USt5Wlo5cVM2?= =?utf-8?B?VGo2ZC9UR2tKNWYrbThwMjQwME1pald1QjR2TlNqMW5LcWhiU1JraXdlRlN6?= =?utf-8?B?R0VER3YvdytocXU1VFB3ZTFpdy9ybzh3RTZPQ2xaVmVSSzhtN0N0UT09?= X-Exchange-RoutingPolicyChecked: JfoVUYbWhjMOY/+j0JTbpUXTtK7/Kr16YJ2ZZbWyrE6RUUY1A78KDtq6huqE4Ph4QT78CC/jsxM7eIH87ZuoxBIu2SGY+FPIBnClYfGhNXViPrKqy3XNBdEdclIflNR07axVDeXu4Ulsx7eQpzEk5xqyFMwk0EH5ZPxpPjlg0i+AE6XG0opH7UiATGSrkX6BZINhosVQb9fjai0Qtc4/xYNIp3EDSLiA7sCOlfLjrt3RMUHo5oqK0wu9eXn0CRKP9e2l0WD4TxA/iEUujVwOAo8ljaBs8tkMekImj9Vh7fzEwiqWyIlSpJLvpJHe54GjQaxT4ytTnjR3HIOnI3t84w== X-MS-Exchange-CrossTenant-Network-Message-Id: fdea85ac-257c-41e3-cf7b-08def2bb68e8 X-MS-Exchange-CrossTenant-AuthSource: DM4PR11MB6020.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Aug 2026 06:33:06.7841 (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: iyyq1tHI+WNvIUiOF761pX4TZMSPmeZigEhrDy3zeo3Q29VYMrW5MBGVdtMKWQi5rx0Nt/C6ZfxHTDn1EedA9w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR11MB7299 X-OriginatorOrg: intel.com On 8/5/2026 5:13 AM, Luck, Tony wrote: >> + for (i = m->low; i < m->high; i++) { >> + closid_idx = (region / 4) * 64 + i; >> + addr = d->base[mmio_type] + closid_idx * 8; >> + >> + /* The cached value retains the reserved bits to be preserved. */ >> + val = d->marc_buf[closid_idx]; >> + if (!val) >> + val = readq(addr); >> + >> + if (WARN_ON_ONCE(!val)) >> + return; >> + >> + val &= ~(0x1ffULL << region_offset_bits); >> + val |= (u64)(hw_dom->ctrl_val[i] & 0x1ff) << region_offset_bits; >> + d->marc_buf[closid_idx] = val; >> + writeq(val, addr); >> + } >> } > > There are lots of opinions about bit fields. I'm a fan for h/w registers > accessed in architecture specific code. > > I think the version below is easier to read than all the inline masks and > shifts. > Got it, learned a lot, I will revise it in this direction. thanks, Chenyu