From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2074.outbound.protection.outlook.com [40.107.21.74]) (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 DF6F11B3939 for ; Mon, 23 Dec 2024 18:30:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.21.74 ARC-Seal:i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1734978624; cv=fail; b=SLQBmkwjCenNX3jDW0FlMJmNmhxpSORwJGBeczZicVP6wCaJcpXoqmBgzsFNTMSLot25OlGMIjbytlBqOPN/EAV8IU1NBfUyIdW6WKfeCuwOqouEuWl+oag7gtNOC7DipRzvZoyR1aye3nN1CJVzEAsJ8N0xBcXrceXiErfKiDI= ARC-Message-Signature:i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1734978624; c=relaxed/simple; bh=nhHb8w08LH4fWpqqyMqI1af50lIRwCyG3eQ8U6rMYYM=; h=Date:From:To:Cc:Subject:Message-ID:References:Content-Type: Content-Disposition:In-Reply-To:MIME-Version; b=Wjaxwiy0uE/RRs2kQVMqySaRAfAUDCaAdexqUbgHza762tSj1Aji0f/Rin7y0I/qH/PeosEON3ITLb4LqmaHvlJmX/c2zUdviYk5efQz20GrkFdiAuXvaXg3UL4bpNOFVrX+ok1ker7z2l7uQdqPTbmbsMUNGXX/8j1uQXblqLM= ARC-Authentication-Results:i=3; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=g+im+mDB; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=g+im+mDB; arc=fail smtp.client-ip=40.107.21.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="g+im+mDB"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="g+im+mDB" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=s5x9xMuQzUCHSCeLbYseZdf5ZgiZY9mh13F05XP82L519Yf5qnv5+vP6FBMqT7y8MFNGQEsCjA3AOJMccdYev8B/zV7MGZC5A38iHXV+U9IYNOkSv+7mWWz8yKCOkk+JrbuBcFgGu6zA5maTt07XwUMefiNmqcJiVFfEAg9qx9Oh0RpabtDEyXQZJ2RqPxZvp1J3IJjBNzkh3M+L4uoOClAU2yGyp2nmguqmOaJ+Fx/e2ECTue88kJoaAN1j8/GT9zclrKc9KWJhex3a3rF0VwTHp4k+Wk1eQkSDco9cqTf1QG3onsivYIyrZhfo2mb8IpFPcJoUODEYsNMTYAzhiQ== ARC-Message-Signature: i=2; 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=fNiOon/jLCyoBxN7hBKOnTEYXyWz/x1HeBjjKRHVtI0=; b=vKEQYhKTfTGtHA2D+M9BRpI/MI8YG0Vs2Js6SdzKlJCQEVtlKQQ0mxvtgav7Xy5XUv9d6hf3ffPrWDnnLXm0Iks7NdcNAtgByJrEhK4WU85tXlT2L0BvZHTHPe1UpWvJnTM/PVQ8m7IywYwWmVSnQzchwJVQx86YyetBRslec2FHvXBKeXfVrFoPBdFdCNUO1o4iBV3nLFmNNXe72uPRP6thxRvir30BNp3HUQTgLRaqsTH2oJiw+9fNiieAReC0d3iJXnHQwvYewT3qZSjv2wJdiAL3scaGkdS2pqJsCnljLAd2wSPAoV9o2Y2BmQjcICOM2bceeYKUrIeJ3peURA== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=vger.kernel.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fNiOon/jLCyoBxN7hBKOnTEYXyWz/x1HeBjjKRHVtI0=; b=g+im+mDBOEKgoedJW5hGLcJa1zmibJJP2EHuai+C/KTRXTckq52azkMazI30f8HQsy+pVtKesyMChJnR6f6bBqL1H6BzKceRIlyM90B9BmcQ1SqAA2zehQFKL2BKT5eGn/infgKEbR6ew4VRhiBzBJqW3gpxBV/2wtR5TjX38SU= Received: from PR1P264CA0089.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:345::16) by DU5PR08MB10415.eurprd08.prod.outlook.com (2603:10a6:10:519::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8272.20; Mon, 23 Dec 2024 18:30:08 +0000 Received: from AM4PEPF00027A64.eurprd04.prod.outlook.com (2603:10a6:102:345:cafe::fe) by PR1P264CA0089.outlook.office365.com (2603:10a6:102:345::16) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8272.20 via Frontend Transport; Mon, 23 Dec 2024 18:30:08 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM4PEPF00027A64.mail.protection.outlook.com (10.167.16.75) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8293.12 via Frontend Transport; Mon, 23 Dec 2024 18:30:08 +0000 Received: ("Tessian outbound 867970499bdc:v528"); Mon, 23 Dec 2024 18:30:08 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: e9090d459e10bf1c X-TessianGatewayMetadata: L6kRvOYUdYkMhjRq07q6ZvMiLRSzptcarEPpPb77vStgqjBKXbKbl1B4Nwof4xR3oIaIvHEteYRWzXKooX/WyhH+lXkXaG//Pg/l6gX8EJtcvIAZtOM7h1QaQDhlWCPSzywi0inoC03ID37jxsRRSw== X-CR-MTA-TID: 64aa7808 Received: from Ldde9f1f55b0e.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 1875A6A3-7D1F-4246-AFE1-662BBC1E910F.1; Mon, 23 Dec 2024 18:30:00 +0000 Received: from EUR05-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id Ldde9f1f55b0e.1 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Mon, 23 Dec 2024 18:30:00 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=GPh0M69Lh3lwNOPO73wFiemtE6lt/XEL0yYzbc0FVYZoncZxy9/GXI1pZvHAl+zsMeRnFDnOTmmJttNDs00Xcs0FPhbSAQsNLyoCqMUgT6RdgJ2Z1TCW79RkvxH1nUmTfxzb0txFzPXcmCuLtE+1amIOZCY4EoBqh4iDrGeL2VtLIyXjZ3xpUAnpvtqoJdhNOTgzMrT6WRPyZFJ//DKTtM6xIQpsMKYrtI68DUegZWNdk51v82vx5hbF8zcHDN0Rc2/fRM75YWsH2RQdhHmpgs3Fg4arUdYdHpGqj7CGgAmeMzGx6MrXgnl4mrb3GbfTC4zbwh+kXUYPoo7EEx+JsQ== 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=fNiOon/jLCyoBxN7hBKOnTEYXyWz/x1HeBjjKRHVtI0=; b=c5UXF1JFozVZlCZeBvXky8DuroFiEXhroODfNL0/U6jRU/tg0DiloB+12hKVFCdSEcx2GcElvPNAnGuCiSP5keGr5zzEYx3wd8aWeUm8wG18MnxcDKg5plD+feqGFbghNTvaGl3vn1VgdypFxZ9XBbpMGqHQplztQFbvKXW4+M+0Ym4qe/vCJ+lg25C2YzmRqfn8MF0GaBbpgPevqHovEdhQrrT9ejBJ5CLOfvCIMf1h/lSdmmETisXBe/VgI3odSYEAcLOi3mBbSOZjfTMXJfpkUpsn+E1zfNv9BOkCmmAwAUt4k7ZK9zogHgHD3WcRnFXmkTEM0cJbwXi4AZ/gXA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fNiOon/jLCyoBxN7hBKOnTEYXyWz/x1HeBjjKRHVtI0=; b=g+im+mDBOEKgoedJW5hGLcJa1zmibJJP2EHuai+C/KTRXTckq52azkMazI30f8HQsy+pVtKesyMChJnR6f6bBqL1H6BzKceRIlyM90B9BmcQ1SqAA2zehQFKL2BKT5eGn/infgKEbR6ew4VRhiBzBJqW3gpxBV/2wtR5TjX38SU= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from GV1PR08MB10521.eurprd08.prod.outlook.com (2603:10a6:150:163::20) by AS4PR08MB7554.eurprd08.prod.outlook.com (2603:10a6:20b:4fc::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8272.18; Mon, 23 Dec 2024 18:29:54 +0000 Received: from GV1PR08MB10521.eurprd08.prod.outlook.com ([fe80::d430:4ef9:b30b:c739]) by GV1PR08MB10521.eurprd08.prod.outlook.com ([fe80::d430:4ef9:b30b:c739%4]) with mapi id 15.20.8272.013; Mon, 23 Dec 2024 18:29:53 +0000 Date: Mon, 23 Dec 2024 18:29:51 +0000 From: Yeoreum Yun To: James Clark Cc: Mike Leach , coresight@lists.linaro.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, nd@arm.com, suzuki.poulose@arm.com, alexander.shishkin@linux.intel.com Subject: Re: [PATCH 1/1] coresight: prevent deactivate active config while enable the config Message-ID: References: <20241218084833.609876-1-yeoreum.yun@arm.com> <0efe4ef1-30f5-47f8-b818-79b4cfa0891f@linaro.org> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <0efe4ef1-30f5-47f8-b818-79b4cfa0891f@linaro.org> X-ClientProxiedBy: LO4P265CA0216.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:33a::8) To GV1PR08MB10521.eurprd08.prod.outlook.com (2603:10a6:150:163::20) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: GV1PR08MB10521:EE_|AS4PR08MB7554:EE_|AM4PEPF00027A64:EE_|DU5PR08MB10415:EE_ X-MS-Office365-Filtering-Correlation-Id: da0eca45-f046-46cc-b048-08dd237fd443 X-LD-Processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|366016|376014|1800799024; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?xDD5/PUQfGaBXEiMkbDGZov51fcDMBiqrLAIK/dzMXMua8jyCE2FPRYQoqFN?= =?us-ascii?Q?vVMADpeXsrNIJwv9gxgQpQLT+PdbI+B4NespiWWytUjz7B0RdWq+pIdw0h/j?= =?us-ascii?Q?vuyDSrulP0JZtVDNmeikQt4p/sAkeAED+8cxZjJX+YtXC7MKhQ7jxoizpIzN?= =?us-ascii?Q?7QWZ+HdAVBiJsofy7Nzt63WFU0HZIV+L3ZiUN+WncQRqRQDzK4QicIZGjX1v?= =?us-ascii?Q?k5fZgNaPWt6vh8baCDDxtr5yr3fjcnOrux/KmTEoRueozlUOA1sr4KT8FDSj?= =?us-ascii?Q?Fq7AkgBxtdsd0oqz3IBr6pAFaCOX3W1IpOX+9KVGoSZqbQ3HFdvLwvnFejtO?= =?us-ascii?Q?xV2UOL+5hZ/NQd79rIbjizybZ7uEJ7an9oxJRJHcQyMFy9xNRjddjL6R7MEU?= =?us-ascii?Q?HGeyjeRWG3V0/kyTCgxIkNS2TcJIKBAh837127dzV5lRPgg6tuJsRhYpU9TX?= =?us-ascii?Q?Rqaai3UdDPPU13XaAOdVlxT8uIc+oGvo/REn6kthTjJgnQm7d0+XVmtcNYzV?= =?us-ascii?Q?fQokwTIOisBLE1hfPuC4tc4cBRnDuC+odqbirdYlhe0nwcydjGYeTm86P2+J?= =?us-ascii?Q?zOW5R4VFt1lAB7ALVUXsa3BVIwanfeaNM7+M9dYZVaYC58KHrh+5EyvUd8vv?= =?us-ascii?Q?zgoiFLRkiB3jUMsgCzJMv+foIf5r7UwuRcL5hNRztyzonQ6uh6/Q64J5ENtO?= =?us-ascii?Q?REInNZaPZcpvrIHwkLt30yANAaL5DX42aQmqTlcl/Ih3EI4nZjCgrbL42fsx?= =?us-ascii?Q?IlhmrJxoSenw/VXAg4cnLVQHVBFWiqAErWmvt6Jn6/BKI/ditwpEZiSstWza?= =?us-ascii?Q?jPMvvbfAHgIK51YY3TDWxZWZ34KDBO9rSXnbU0aXrHJxgC4t6lkxOAWyTZBf?= =?us-ascii?Q?zyelcYwVMCpgzdQ+BhIh7GDIr31mHHfmox8bTxfO/QRWoI06UHHEk6vhWcrt?= =?us-ascii?Q?pZ3Ar0hCJvQ7LkWlauz+43hCZ9PmiPUEPu9f+izDtY6JejzMDwcfh3Rvl5s4?= =?us-ascii?Q?Q9cEnWXyN9x2iFgRDondzJXcTiK006YqEhyU0t9kMUmN7wdhe0WrM6rjPhws?= =?us-ascii?Q?Rl6RnN5yqAK1vza2iGk6ZooziC5RX6D4wgREoqEgcvDYEadIc5qtzYIFdmbH?= =?us-ascii?Q?12T68RQV1I2qVlsD4z/3E1iXmcDpkeny1zyEGYcebV1nBhnrBdEVIWQjkTfp?= =?us-ascii?Q?dEerbSt/Uh5hmvirtvzKs6pzwd24kMzbgxUinsJr6JWy9USv2avfDyrSfV23?= =?us-ascii?Q?sKA9ueQ9jixAQ9nFJIxDONuTDoOFVTJhJJpCBbtOnYlXYH7CH59chwUZ/9rN?= =?us-ascii?Q?R7/feAqh2hoy3+jp8OvxE4CqiwiBDp5J6oJcQAVD7h5i2ZPTTbUK0TWIg1kZ?= =?us-ascii?Q?j3q3rTJfzNOYoPFbIjJSEUCfOugw?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:GV1PR08MB10521.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7554 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-SkipListedInternetSender: ip=[2603:10a6:150:163::20];domain=GV1PR08MB10521.eurprd08.prod.outlook.com X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM4PEPF00027A64.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 5c293194-992d-4b4a-a20d-08dd237fcb67 X-Microsoft-Antispam: BCL:0;ARA:13230040|14060799003|376014|1800799024|36860700013|35042699022|82310400026; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?clEaVEowKtuhM48ZEd/0oOAbYQtSHGZtgtItMRigYEdRB2//HprV/LOwX+dU?= =?us-ascii?Q?YoKYBkR5xfvSlzCQzcXzp62IDDqCAzGkeVvxZXaMOHcJ4wpA3PwuY6M2X0+0?= =?us-ascii?Q?CvkwTXooQ2ra0PFdCUbQIvaX2+tCZegdHIc3FtrH6HtC6gJMXI5sj7Z6bwWw?= =?us-ascii?Q?hR2mOfpO+UcMg0cXeADZFcL35Si8JcppUH62KQLPV/UxYDYR8XGPnRUqjSCg?= =?us-ascii?Q?y9ziZvhoOIf/SivLYz9Du9mm4cusWtPkPiuBT1JVa/ux6qwyHQmfTx8AcMI+?= =?us-ascii?Q?rnOBfD543lGyLNA4Cb77QMvVoxLLnMjiFixI5cAaN0BWXX60SA/MDrt6xP4V?= =?us-ascii?Q?KBGF4QEbgJmc+525jLXEw5z/ZQeJXLqhju4n+XJNoQRdMN27QahfrlUh4B2w?= =?us-ascii?Q?2Iu9guiZlRHiiPZms78Sb2oVHavRTW9L0Scpo3HtZTkRARkRftcWxWoug6Lw?= =?us-ascii?Q?HF4+gZgdAwwuSL9gbOHO7iefRzbueBMPvP60bq0sTjwtgA8EkNJ0F1d3zZt6?= =?us-ascii?Q?70pCSavLE+MpBWO+gvYukfFS/zYbreY4l8zUX0xfkaFedzMGjUaWOFAPN9gQ?= =?us-ascii?Q?Drqhv0L3a8fjllTyBIjurdaFV046P5ZomiPYeBQJ5/KjFwUQeoitsBUbfzBM?= =?us-ascii?Q?CfCz//7XVM0L31pkOINM0Qx9L/OvXbfRFPtV/Xuz6dMozlHz8Od/8qDQ/7/Z?= =?us-ascii?Q?g/eD//auZjxsnfNYQsKFd6O4i75J1+v69ScDlTik6kgZ8FTPd7suNtV+rvds?= =?us-ascii?Q?Z29EZIJ5lCP6m8l2CEnJe4HpcZ4u4cIL9ByDZypPoIKd41DaELiy9wyHLUf2?= =?us-ascii?Q?XalmziSP7jLARCay2nOn4AQ5YYzGvVqOk7wpoATgKRt+gxO5+KVSPR096Frt?= =?us-ascii?Q?eIyFWuG6y2J5gpoQSpzsoIHWm+xt8iKgU3qLl0u/uS1+o4+0AvQkSJChEQ3K?= =?us-ascii?Q?6SoSfx28QgUacQjTzD/PFDMqyuP5aASYGDy6+atwHknp0lkp3k9b15mSX3rF?= =?us-ascii?Q?bH2RakJF+9LPNkA85qcfMGqsPtzt/Iqvht4UZSYdrL6lynu/lvApZwSWudLf?= =?us-ascii?Q?jFmURpzKmR/jOqJ7v+i0w//q7AbIbNbuEkUrnkc46ROBk6whNQHnSRLzSktv?= =?us-ascii?Q?H2cu9583WcIIJEzn9U4lnltuGIWXboHkvNBmCPrc9CCchBau9Cq2kXz7Dl+Z?= =?us-ascii?Q?s4YDFLASLQDvW9hyUaMkcgW8FzC7zQrDG1q39lOJGUR7HIrlRFTWNa4FviMB?= =?us-ascii?Q?KXVwhDGC1mmZ3h4xlyNBcwOnVM+WT4QtpI4upSdWnLZi/4omULBXCgKNEsSa?= =?us-ascii?Q?BYo/HL28JLRbH2qv40vUrLijDCurAk8M5zIpldoV2VnechC2z4DWL3fKV+Bm?= =?us-ascii?Q?iJMZDiK2joGiTBp3xOObvkODVYN/OKfm58CJdqC5OG062N5BOFwsRxJJL7hD?= =?us-ascii?Q?vjyjtTes7I2ovzmAa8FiFcTtyvVFD4W4xv8Ym3EnRmTGBOFTQZJ/qjg2rovk?= =?us-ascii?Q?fUIl2zYJPAO7wqc=3D?= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:64aa7808-outbound-1.mta.getcheckrecipient.com;CAT:NONE;SFS:(13230040)(14060799003)(376014)(1800799024)(36860700013)(35042699022)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 23 Dec 2024 18:30:08.4878 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: da0eca45-f046-46cc-b048-08dd237fd443 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM4PEPF00027A64.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DU5PR08MB10415 Hi James. > > > On 18/12/2024 8:48 am, Yeoreum Yun wrote: > > While enable active config via cscfg_csdev_enable_active_config(), > > active config could be deactivated via configfs' sysfs interface. > > This could make UAF issue in below scenario: > > > > CPU0 CPU1 > > (perf or sysfs enable) load module > > cscfg_load_config_sets() > > activate config. // sysfs > > (sys_active_cnt == 1) > > ... > > cscfg_csdev_enable_active_config() > > lock(csdev->cscfg_csdev_lock) > > // here load config activate by CPU1 > > unlock(csdev->cscfg_csdev_lock) > > > > deactivate config // sysfs > > (sys_activec_cnt == 0) > > Assuming the left side does Perf, are there some steps missing? To get to > enable_active_config() you first need to pass through etm_setup_aux() -> > cscfg_activate_config(). That would also increment sys_active_cnt which > would leave it at 2 if there were two concurrent sessions. Then it would end > up as 1 here after deactivate, rather than 0. > > It's not explicitly mentioned in the sequence but I'm assuming the left and > right are the same config, but I suppose it could be an issue with different > configs too. Sorry! This happens only in sysfs mode. not perf. I've forgotten update the diagram... > > > cscfg_unload_config_sets() > > unload module > > On the left cscfg_activate_config() also bumps the module refcount, so > unload wouldn't cause a UAF here as far as I can see. > In case of perf yes. However sysfs is done via configfs interface. IOW, while cscfg_csdev_enable_active_config() iterating to find out the config, it's possible to deactivate config via confis interface, and unload moudle. Above diagram explains this when coresight is configured with sysfs & configfs interface NOT perf. Sorry! > > > > // access to config_desc which freed > > // while unloading module. > > cfs_csdev_enable_config > > > > To address this, introduce sys_enable_cnt in cscfg_mgr to prevent > > deactivate while there is enabled configuration. > > > > Signed-off-by: Yeoreum Yun > > --- > > .../hwtracing/coresight/coresight-etm4x-core.c | 3 +++ > > drivers/hwtracing/coresight/coresight-syscfg.c | 18 ++++++++++++++++-- > > drivers/hwtracing/coresight/coresight-syscfg.h | 2 ++ > > 3 files changed, 21 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/hwtracing/coresight/coresight-etm4x-core.c b/drivers/hwtracing/coresight/coresight-etm4x-core.c > > index 86893115df17..6218ef40acbc 100644 > > --- a/drivers/hwtracing/coresight/coresight-etm4x-core.c > > +++ b/drivers/hwtracing/coresight/coresight-etm4x-core.c > > @@ -986,6 +986,9 @@ static void etm4_disable_sysfs(struct coresight_device *csdev) > > smp_call_function_single(drvdata->cpu, etm4_disable_hw, drvdata, 1); > > raw_spin_unlock(&drvdata->spinlock); > > + > > + cscfg_csdev_disable_active_config(csdev); > > + > > cpus_read_unlock(); > > /* > > diff --git a/drivers/hwtracing/coresight/coresight-syscfg.c b/drivers/hwtracing/coresight/coresight-syscfg.c > > index a70c1454b410..dfa7dcbaf25d 100644 > > --- a/drivers/hwtracing/coresight/coresight-syscfg.c > > +++ b/drivers/hwtracing/coresight/coresight-syscfg.c > > @@ -953,7 +953,8 @@ int cscfg_config_sysfs_activate(struct cscfg_config_desc *config_desc, bool acti > > cscfg_mgr->sysfs_active_config = cfg_hash; > > } else { > > /* disable if matching current value */ > > - if (cscfg_mgr->sysfs_active_config == cfg_hash) { > > + if (cscfg_mgr->sysfs_active_config == cfg_hash && > > + !atomic_read(&cscfg_mgr->sys_enable_cnt)) { > > _cscfg_deactivate_config(cfg_hash); > > So is sys_enable_cnt a global value? If a fix is needed doesn't it need to > be a per-config refcount? > > Say you have two active configs, sys_enable_cnt is now 2, how do you disable > one without it always skipping here when the other config is enabled? > > > cscfg_mgr->sysfs_active_config = 0; > > } else > > @@ -1055,6 +1056,12 @@ int cscfg_csdev_enable_active_config(struct coresight_device *csdev, > > if (!atomic_read(&cscfg_mgr->sys_active_cnt)) > > return 0; > > + /* > > + * increment sys_enable_cnt first to prevent deactivate the config > > + * while enable active config. > > + */ > > + atomic_inc(&cscfg_mgr->sys_enable_cnt); > > + > > /* > > * Look for matching configuration - set the active configuration > > * context if found. > > @@ -1098,6 +1105,10 @@ int cscfg_csdev_enable_active_config(struct coresight_device *csdev, > > raw_spin_unlock_irqrestore(&csdev->cscfg_csdev_lock, flags); > > } > > } > > + > > + if (!config_csdev_active || err) > > + atomic_dec(&cscfg_mgr->sys_enable_cnt); > > + > > return err; > > } > > EXPORT_SYMBOL_GPL(cscfg_csdev_enable_active_config); > > @@ -1129,8 +1140,10 @@ void cscfg_csdev_disable_active_config(struct coresight_device *csdev) > > if (config_csdev) { > > if (!config_csdev->enabled) > > config_csdev = NULL; > > - else > > + else { > > config_csdev->enabled = false; > > + atomic_dec(&cscfg_mgr->sys_enable_cnt); > > + } > > } > > csdev->active_cscfg_ctxt = NULL; > > raw_spin_unlock_irqrestore(&csdev->cscfg_csdev_lock, flags); > > @@ -1179,6 +1192,7 @@ static int cscfg_create_device(void) > > INIT_LIST_HEAD(&cscfg_mgr->config_desc_list); > > INIT_LIST_HEAD(&cscfg_mgr->load_order_list); > > atomic_set(&cscfg_mgr->sys_active_cnt, 0); > > + atomic_set(&cscfg_mgr->sys_enable_cnt, 0); > > cscfg_mgr->load_state = CSCFG_NONE; > > /* setup the device */ > > diff --git a/drivers/hwtracing/coresight/coresight-syscfg.h b/drivers/hwtracing/coresight/coresight-syscfg.h > > index 66e2db890d82..2fc397919985 100644 > > --- a/drivers/hwtracing/coresight/coresight-syscfg.h > > +++ b/drivers/hwtracing/coresight/coresight-syscfg.h > > @@ -38,6 +38,7 @@ enum cscfg_load_ops { > > * @config_desc_list: List of system configuration descriptors to load into registered devices. > > * @load_order_list: Ordered list of owners for dynamically loaded configurations. > > * @sys_active_cnt: Total number of active config descriptor references. > > + * @sys_enable_cnt: Total number of enable of active config descriptor references. > > When these are next to each other it makes me wonder why active_cnt isn't > enough to prevent unloading? Enabled is always a subset of active, so as > long as you gate unloads or modifications on the existing active count it > seems fine? > > > * @cfgfs_subsys: configfs subsystem used to manage configurations. > > * @sysfs_active_config:Active config hash used if CoreSight controlled from sysfs. > > * @sysfs_active_preset:Active preset index used if CoreSight controlled from sysfs. > > @@ -50,6 +51,7 @@ struct cscfg_manager { > > struct list_head config_desc_list; > > struct list_head load_order_list; > > atomic_t sys_active_cnt; > > + atomic_t sys_enable_cnt; > > struct configfs_subsystem cfgfs_subsys; > > u32 sysfs_active_config; > > int sysfs_active_preset; >