From mboxrd@z Thu Jan 1 00:00:00 1970 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id A77BEC35FF3 for ; Mon, 17 Mar 2025 09:27:32 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 544A3280002; Mon, 17 Mar 2025 05:27:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4F2D3280001; Mon, 17 Mar 2025 05:27:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 31FAB280002; Mon, 17 Mar 2025 05:27:30 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 14421280001 for ; Mon, 17 Mar 2025 05:27:30 -0400 (EDT) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 47C43AADBA for ; Mon, 17 Mar 2025 09:27:31 +0000 (UTC) X-FDA: 83230515102.13.6C9773E Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.11]) by imf24.hostedemail.com (Postfix) with ESMTP id 0DBF1180004 for ; Mon, 17 Mar 2025 09:27:26 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=BjZeNulb; spf=pass (imf24.hostedemail.com: domain of przemyslaw.kitszel@intel.com designates 192.198.163.11 as permitted sender) smtp.mailfrom=przemyslaw.kitszel@intel.com; dmarc=pass (policy=none) header.from=intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1742203648; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=Wo7UY/3EdpFaMNRbzXQyP8x3Ce1nioF20qzk5qTsBoc=; b=B/s3/PDk5SeBKtntWWZJj8a1wWFqOtuXxSE/OwT9wbHo4SBGqGJLeiaHtiSM4LUrB6REbg 3sa5uH3rlf5ceXFm51jjZAuMozheY3No1bV7YQ3T51YWUwMNdhDrbnEy+WhUij5S1Fh+7u jJuruj9Rjy28Kx/xeX8apwzZHdTuVB0= ARC-Authentication-Results: i=2; imf24.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=BjZeNulb; spf=pass (imf24.hostedemail.com: domain of przemyslaw.kitszel@intel.com designates 192.198.163.11 as permitted sender) smtp.mailfrom=przemyslaw.kitszel@intel.com; dmarc=pass (policy=none) header.from=intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1742203648; a=rsa-sha256; cv=fail; b=Tw7+Du7/8nTUIRTIQ6QVjN03sr+yzAcEcSImi32LK8ckgXsMqJSJLScgtrBPnX6fOPvblV Owp0jvMvqKbbrnzMO9Il8Mke5ez+ktq06fcV9SYpAGmx15Mw4nYyf8dd5/yb//kE67j4FW NRWt7j9T9LxsUSTDcTzm9nzPabqEtt8= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1742203647; x=1773739647; h=message-id:date:subject:to:cc:references:from: in-reply-to:content-transfer-encoding:mime-version; bh=S8Xrob3KmqgQYOGmGrDefDEEovEWIPEJZu8xpK+dkSo=; b=BjZeNulbESncOm3Tm8Gllodha1g2cr/knVoPHF2Y5qbIIGfCYlVz8bMd kSS5+22brjBFr6t1UGb8cpKnwwzzq+i2ezXQkv+DTCOJbCK+2ioWbVOnG IbhchD88925gruuDZzkyXi1jOd+onMYwGD73FaFtbwlWu6Qfv7UiiKFX2 z5kbJaW0mVGRF/J29TqUyHrLoSFmAKGWIsvFr0LAPsuNIigKcWp2JPCzF Z1/pjZvhGSigQwjucbrgx/m/DG0kUtNq2EuxxJhnSjsma8os1eFk8o67E 3KtZvRmKqfFGsJVNUDruFY5NOialFE2nU8sBN5QVuaYJTv7Ok406cG01T g==; X-CSE-ConnectionGUID: e/QpCLb/TbKSGh7HdxP4Yw== X-CSE-MsgGUID: 74EG9XAoRxG1zL9sJsOaGA== X-IronPort-AV: E=McAfee;i="6700,10204,11375"; a="53951920" X-IronPort-AV: E=Sophos;i="6.14,253,1736841600"; d="scan'208";a="53951920" Received: from fmviesa009.fm.intel.com ([10.60.135.149]) by fmvoesa105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Mar 2025 02:27:25 -0700 X-CSE-ConnectionGUID: OaW6TQ/qQFyTIf8HndCsSA== X-CSE-MsgGUID: DJ4A6a5lSsO2lgeiFsIKIQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.14,253,1736841600"; d="scan'208";a="122629780" Received: from orsmsx901.amr.corp.intel.com ([10.22.229.23]) by fmviesa009.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Mar 2025 02:27:25 -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.1544.14; Mon, 17 Mar 2025 02:27:24 -0700 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) 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.1544.14 via Frontend Transport; Mon, 17 Mar 2025 02:27:24 -0700 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (104.47.51.46) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.44; Mon, 17 Mar 2025 02:27:23 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=PG8G/EpbEOALKY0zHzY2XdcFfOsZrWZRiiPn1Ch/VgvQMubVmy2hT3o3DSmgZp2IhS9oe/5p80XVtxdF7ra/yXT+BCTZ1Buqwv2nO+ntfEXRcnzCkzKRx+fWfz5NlZiTlVL5KSwy2wTRClGoUiL4Ed3ZEpg6FCGDY/wJJ8zVP4fdiNg4IxXYsSiGsirBCU+H6fqbJqRXok6rQlwQkougVhgbTLA3W3EtIUmeAUGZjQ3I7khdmZyLlTeNwDVEjUVMbQVCULEaGK7g4WOF0ipOzHiNLLg/YkPi9irqZD1JmSv8bDzn1j2LaS9MOibiYS/JKLiPZaAhe1lw3/ecUMrrAA== 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=Wo7UY/3EdpFaMNRbzXQyP8x3Ce1nioF20qzk5qTsBoc=; b=lMb7g6AKB4vUdPo4EbIzn6rQo0vup0qaXUXRZ2SuLK8YrUhzsf7xD9Es7Volc8iY+NB7E/8T0Cl8Uo1/8zD4ApX/bBxz+/bds7bdHeJbILDvJJO2zZgxpM61jbicavENFz8ORnu+Z5oq9xNWI4eUaRVOWgDrYr6sX/X5xLqBIZ9pIlJVhO4iCJKtRbLmH7MS2UVomeER9++5nLmSSfmIVNMxYKVYVOQSSjGqizs8dnuYB50sFFmbZo/kg1rlS8uZ6k5RuC4LBGiNyjbbdHCctOAWC7slQRXkbWr/qYSCOC1BwpacjprZt2o9yqFPHNJRPU1H29mLKyH1krF5eNyWLg== 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 Received: from MN6PR11MB8102.namprd11.prod.outlook.com (2603:10b6:208:46d::9) by MW6PR11MB8437.namprd11.prod.outlook.com (2603:10b6:303:249::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.33; Mon, 17 Mar 2025 09:26:40 +0000 Received: from MN6PR11MB8102.namprd11.prod.outlook.com ([fe80::15b2:ee05:2ae7:cfd6]) by MN6PR11MB8102.namprd11.prod.outlook.com ([fe80::15b2:ee05:2ae7:cfd6%5]) with mapi id 15.20.8534.031; Mon, 17 Mar 2025 09:26:40 +0000 Message-ID: Date: Mon, 17 Mar 2025 10:26:30 +0100 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v4 1/2] compiler_types: Introduce __flex_counter() and family To: Kees Cook CC: Vlastimil Babka , Miguel Ojeda , "Gustavo A. R. Silva" , Nathan Chancellor , Peter Zijlstra , Nick Desaulniers , Marco Elver , , Christoph Lameter , "Pekka Enberg" , David Rientjes , "Joonsoo Kim" , Andrew Morton , Roman Gushchin , Hyeonggon Yoo <42.hyeyoo@gmail.com>, Bill Wendling , Justin Stitt , Jann Horn , Linus Torvalds , Greg Kroah-Hartman , Sasha Levin , "Jonathan Corbet" , Jakub Kicinski , Yafang Shao , Tony Ambardar , "Alexander Lobakin" , Jan Hendrik Farr , Alexander Potapenko , , , , References: <20250315025852.it.568-kees@kernel.org> <20250315031550.473587-1-kees@kernel.org> From: Przemek Kitszel Content-Language: en-US In-Reply-To: <20250315031550.473587-1-kees@kernel.org> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: VI1P190CA0022.EURP190.PROD.OUTLOOK.COM (2603:10a6:802:2b::35) To MN6PR11MB8102.namprd11.prod.outlook.com (2603:10b6:208:46d::9) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN6PR11MB8102:EE_|MW6PR11MB8437:EE_ X-MS-Office365-Filtering-Correlation-Id: 4f43a113-5f0c-4b6c-5d3c-08dd6535d324 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|7416014|376014|366016|7053199007; X-Microsoft-Antispam-Message-Info: =?utf-8?B?NUdiVXhXQTcwV3VnQ0VpaGpESzl1a0NuNFQ0UGFWMW80YUJldXVGYkxXelJW?= =?utf-8?B?Ump5ejFjZ3BZR2dEdVNwRnBnUzRJaXB3dksxWGVsQWg3UitsbkpzWVA4aDdv?= =?utf-8?B?ZnJKdE1TTHo1OHpDcVovSDVBTzBpRjBUaFVTM1VFTjNwQUxZTG5veG1wT2xq?= =?utf-8?B?WnBVWUF0YzR0QmdzN1NWZXFTK0N6V0FTR0VTbHQxWHQrdWxzVnNwejJaZkc5?= =?utf-8?B?dzZtOHJzRDF6SVJWUitXWjE5Y1RXeTFucU92NEE0WkEvYThwRWFQT3R1a3lX?= =?utf-8?B?Z1ViZW0zdHBsYUFiVTB2T21mYnc2NUZiV0IzYy9oYUJaL3JLRWgvWWdMRlBL?= =?utf-8?B?emJzUUFEOFVDUWJyTVhCNytYSXhES3JFcWlDaDhidFBOeDRLUVltN2tVemQ0?= =?utf-8?B?Y0VuVlF5bmxiMjdkZmluYVZBV3lDc3J4dDBqdFFYMjNkSFVKK3J0ZWNXOGxE?= =?utf-8?B?UnhHYlZhb1NPZ1lZT3RmWnFLTmF4M1BrK1ZPejN2UFJSSDJndG5MVmR6dVZH?= =?utf-8?B?M0hBOUVEazVoSG5yMklOSmw3YnpmS0ZUUk56RlhNZlFYM3NiQXJDZkdTY1o0?= =?utf-8?B?M2I5K1VWSzNMc3J6NTRLbWZVYzJ3VzkybnBKRUhQc1o4akpPVUtEam85Y0pw?= =?utf-8?B?dzArM1VCbW55ZS9FcVdLVzYvWXlsanN0cWoyc25wMlg0a2RXYlBIZDVsWVdE?= =?utf-8?B?RzlXZ2ptZ0l1dGlQTlNibzV2bzBoWGNmeTliUGFEWU9jRHF2Mm5jdi9oSlBa?= =?utf-8?B?VytmbGNDYzU2WksvaWMrVWdySmxRSjVvQ2tONS9ldmhyNTcrc2pRL1gyU2Vk?= =?utf-8?B?N2M5MzNjb0lXTXZrV3pPMW5FVkN2YlRkZWI5WHl1bHZlVHZFVnBCcG10N3NY?= =?utf-8?B?RGFIMklKNXhNdm1xZVJiekRwazJqT2xVbmtsSkZqelNHeDh1U0h4VXVOT1hu?= =?utf-8?B?N0tud2pYWVJ6eTV4clRHTDFYbHd5VzQ0emdzeXNyV1Z0VFc1T2tyWUNIZk1w?= =?utf-8?B?Ty9RNXprSlV1WWhtWXhIdmRpR3ZZTHY0WmNjZ0x3RExNbTlySnZkckdPWWRY?= =?utf-8?B?bEVyV0oyYWNTdlFiWkZjTDh2YmpUNUIraWVYeGJIb0JTU04wa01XQlpJN2Zw?= =?utf-8?B?UFhUbmZtWUZ4S2lwUUg5VWZvY3RIZjJ6M0VmNlJuOEJQdElZMzBxcGVZSmpD?= =?utf-8?B?VkZISEN4d3R0NW1IQ0k4RHlYMGY5dXg1c3FNdXJSYXRYOUFNeXZMRUw1VEdn?= =?utf-8?B?ODFMcEUyenlVdXJHYTloVFhZdkF3dkFBYkkvcFdOV29UNHlUR2JYbjhSSnNY?= =?utf-8?B?QVVUN0tTaTcxTzVjc3JSRUo3Sm5sTXZJbjh2cEpPUklKZWVPQWFYMzJ1NWtL?= =?utf-8?B?OGczL2NFNHJYSXhwdGU4dktaOURaNFpGWWJkUll1SUc3YjJLazhBNXdVNDlW?= =?utf-8?B?U1YrUTdYcHMvWm1KR3lwWU0rY3Z0ZENMZGlVa0NMMmRlVS9Cd3UzRnNGazZ6?= =?utf-8?B?THc4amgvSjErc0pNemlYUFlVd1ZYYWFhUlJnYlU3SWMrNjVIempJTkdQRnVW?= =?utf-8?B?TTdKQXgyOVZIaFpHSTJ2a0MxMTdSNTZCQy83dXd4NG82UzR2WW5pQlRYTnZi?= =?utf-8?B?OXF1MG5PL2FtT1hPWGNrYS9uSEIzVUNZanJxZG12azJjdGIxcCs0NWV5MSs3?= =?utf-8?B?SllsVWZIY1BjMHloWktCdW83aW9RaFNKbUJCUW9YQVBBSWVzY3BPdXNkbmRS?= =?utf-8?B?R0t2QU9kMWhicHc0VjRCWC9jTk1HaHlNNjNwOTV5ODZ1bE1VbkwrZ3hQdUZN?= =?utf-8?B?OUlsQm9WeXB1QVRPU3RkS0dHQWh2WDJPWHdZRC9HQ1oxUEFCQitZMm11ZWxo?= =?utf-8?Q?bfoEVpAfeSoW9?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN6PR11MB8102.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(7416014)(376014)(366016)(7053199007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dXM0TU5vbXJzWW8zaFRVSk1PbUgxSDI0M2c1T0RqQUN0cmVSUTdHeE5OU3JH?= =?utf-8?B?MENrakNRaXN6aWpFU3FXaEVBb2NqWW9XVVJweUg4Q2ozVFkydDcwaWZHb2NL?= =?utf-8?B?cCsrREpoQkRLbTE1aFpURHRZUFJwbXRoTVIxWDNnN2ZUMjllMkRMdTBGS3NF?= =?utf-8?B?eXozNWRBc2Fpc2c4ZzlveXZnR2ZwaUFTZW82QzRCTmIxenh3djBMZ3d2bm0w?= =?utf-8?B?MU5aeVhaNStwZXMyZHBXdU16ZFNOdnRabW14MTBZYjJuczArcW9KS0U0dHVw?= =?utf-8?B?M2Mwak0zN0lCY2JISjJ0NTdEZGxRTHBPdGVld2tsUlA1dWQxSGhnWjBCRjFC?= =?utf-8?B?akJZVHh3aGllS3I5U1MwT1JsS0Qwa3NoeWIwNENMZ3prUDRzS0poOVplOUlW?= =?utf-8?B?QnZpd3pXdmg5bXhKaE9wcjNtSE1HUkV5ZWhZNTJPREJTSFpCS0Q3VlpnU0Rv?= =?utf-8?B?bFYwQ3pNL2xLT1ZkVDRhMU9FYnVEdldzZEI1L0FsV1FaOTIxRUE0NW04dTJI?= =?utf-8?B?QWE0VHdPU2VncitRRW9CV3FrU2ticTh3ZjdwM1pPZ2lSUFptQWRGcUo3ajU5?= =?utf-8?B?MHdCTDA4TXdnUWdZVk4wM2xpZ012U3FpT3phQnA4L2JaKzFPSGFOVmdSZG1l?= =?utf-8?B?YUdzTkxZZGNyd1JnbnFDSzZDZFdRdy9hQ0lvV1VQSlExcXNrQ3labjFqdmJ1?= =?utf-8?B?NWF6eDZzcWNuU1M2cE55alBBWjB6c2JVMmpITGJ3SzlDTkZMSHJabFoyMFMy?= =?utf-8?B?ME9CL0MwNFMzTCt2eGZyU3NxdlV0eDhXZzVuZHNFbStzOWIwWll3LzlndmFS?= =?utf-8?B?ZEQwRG0ybUtsai9qNkZBUDlTRVQ2bWN6czlSbENiY2p5b1A4SUo0WkJKZDZM?= =?utf-8?B?aXI5ckpTbGpLZnhOWDFXNXFnYVpIQmZscjZOTVVYQ1NwcTd2WDBhdUdJbjU2?= =?utf-8?B?VjllT1NJNWVjL2dYaVVpSnQyTE5IczFNemJSSXhmOXVPWTJSZkFkQVZ0a3Q3?= =?utf-8?B?bDljcXVvdGIwZ29vWm9UT0tvZzdjWUo1UnJlbGgwdGszQzNtblBSQncwdGhH?= =?utf-8?B?dlRNRDFRbW1mTjFOVC9zRERtWFJmamtBQjQwWmFkSTlIMDRhNzlXVUlJdEFB?= =?utf-8?B?d1gvTXErNlRja0xOcVBraDl1M2pnclg4cjFrakVZK3l0RnZjMXp1b29KNzhK?= =?utf-8?B?MmRvMUJFdk1OVTd0OUVzMkJTUjBnbTNiaEgzOE1PT2xES0lHcnhVRkdUcElh?= =?utf-8?B?TEVIMU1tOWlaR3loWWxCMEk1MExOUWd5b3ljZGllQ3Q3VjZzSEFYam5vU1Zo?= =?utf-8?B?Y0w5WnJTcVpzUks1MnBuaUgwb0hPNXJEMklQUzdhUTZ5Zkl3cWhmVjFGT3Ny?= =?utf-8?B?SGJkRlpxWU5QdFJDVnR2ajJwQTdRYTh1MGZ0NjdMTkliNGNhWVdEa2dFOTRp?= =?utf-8?B?QjhpTDFOZlJENGFXQ2dUdEoycEFTelF2VTdtUGFMaUhtelZZcnVEbWNaZFhn?= =?utf-8?B?dzRJcVppZkRyYWdpVzhqR3lOZGpPU2hFN3RIVEJIMU9FdWRiY1JrcHE4WVgw?= =?utf-8?B?MTBLVTd1NDhucmloMVFvdFNuZDM2N0RSbkxmbDJFNGQ5MGd6SHRZNkgrRGdl?= =?utf-8?B?cDJTTXY3K25HemxKNnFRU3ZOQ1hKNzdWZ0xvZ1YxdU1PcDFaMC9rV28zQ0hE?= =?utf-8?B?UW1xSlhNeFZuYTY4SXgxY1RXYnhLbFAzemgvN214NFQydHNVUHBZMVRYd3Qy?= =?utf-8?B?WGltRzJoYnRuelYzOEJ6eDFnOWZrbTFrbThVbHNJVTBTU1VzOWpOb0lQQ1dm?= =?utf-8?B?ZlZtSDJIR0NGbmQwRGhKdjZidU9KZE5HeE40UTREL1NJL1ZpdlVueGlQTXl4?= =?utf-8?B?NC8vMFJ4eC8zUTZMcjRPcUtzMTJRWGJSS0FoYUZXUFRaT0hUYXFjOTl3Zmpu?= =?utf-8?B?SXo1QVp1N1VSdXNzZExDL3dneEs4V1JVcmlHUTQ5UG1LUWlMZkdRQlNIUFB3?= =?utf-8?B?QVBVUHkrSXozeFlYdWhNQ1RsSEJGVzhIRS9OWThYSGxobjVJeTVhZG1pMm81?= =?utf-8?B?YWZZNCtpVUtRNHp5NllkNHAyZXJ3OGRqdk53L0w1c0lEN1NuWGdSdXVTNlB2?= =?utf-8?B?RjEreXRCbUlWSUdwd29uSmVJVjF3NW5nNU5LdXgwZ2hML3F4bWh0ajhwckNR?= =?utf-8?B?dUE9PQ==?= X-MS-Exchange-CrossTenant-Network-Message-Id: 4f43a113-5f0c-4b6c-5d3c-08dd6535d324 X-MS-Exchange-CrossTenant-AuthSource: MN6PR11MB8102.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2025 09:26:40.7401 (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: NsXpxBgY1lnbH0G8l9jUcMr3Poo/iDxTYM2afy/kKHT7AciHW72P9+oLoV/d7GRpUzzhMAvSGzwK4BiTjsL/l41PGtpXHhZfDiOtotC8+2o= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW6PR11MB8437 X-OriginatorOrg: intel.com X-Stat-Signature: mz41yu6baigojrh6osxhtgi888whxfwb X-Rspamd-Queue-Id: 0DBF1180004 X-Rspam-User: X-Rspamd-Server: rspam09 X-HE-Tag: 1742203646-82715 X-HE-Meta: U2FsdGVkX19oCTX2Q4R5DwmxzLyb2UaxSvvxs8IwEFSHhZTdWZut0R6ltMlzZ12kB5h/OzpO51ytMHDmMEeGOVymryNX1BE4Ak8BM2MoutlCLejf+LMoVo5wT8FJVG6JUm7L8/eOWkelKQ7Djc+YArb04eMG3ETcdQ4WY4+jN1PUH8bD4lsj4zynK+u40ih5nn4nU+wBAIxcot0udXGujwRmST75he+xZ4L5Lm8Vc9pp/XwWj7MB/usgiHmYCP8MmX9bz6+n/7q/zbL36wl95ezkEaCBHRBNwcpU5ZvMPKwCoPay6Ru07CpMbPdB0ubwbm5THjhFns33r2exCeCdjP+3DJSovQixodtReFpWCMMIr9yb9cOkfhhPGUZ04JKLSDGiFTWhrAABVuDcCq73PShz1qIGIxWfNK072Gtbu33FTGl/Y4Y9CYgOpcS4zDstPoDlpEXx38ycgoH+fFsJ3vQLcQxxVMttoDUpUmu+RoHjA7C7V2lhvsBsTmzAAVH5zWbdFm3u6ugFMnQ9t/rQLs6ohAwOWfF6MmHbhSrAAuLIEYxW2KDDKt/YQwPI/jx9wK77ar3PPGBGJmdLGUNYon8lscLojaoMBlnErt0SFwj8HM5+VV5FdinUCvasRUHAY/8uEgC/a8zAKTWH33eBSyuZWTDhRRu9SLPZYj9hZD6rWEtvFXM5Se007qgyqZWLIhkx5TRhjCd69nv45z9DVzSml5NUfnEjuTd75EytdBEpRgil7e+gNojRDGnejEDAhzohnyKGdTzkinHxKHMkVaaCS+m5b2kndAbTABtY/oGZrXGzqrBJQ7X3x2Xgp0Mr5cGYmHQoRp1fc79iC2/2FgdtQ0n9HEcX3DemmebLeQr0KwzWgy/RAbAfEV7p+Bd2eSYQEpOdo4wy53s9r45kTQrtR7R40eS5ScanNQDy8sf+6XglepYiwYOB03de2ue+cOxFurAOoaLhhCQvLzf HBdHAgbE 984Z9kIkKBDlu3lYXOA8mBLDz7WWWvQQqYk6jLA4u/KaXre0r6yolD6Tw403kxuQyKIiLaPjaKpAoR+GTnkT04znVoJubmztE8UjIFLRpW4XTwXezGltzOjOI4xd+xcMDWotFJ+Vlp1oJ3t2B6fBVmCl2C2H3lkHtMa6Q3Sgok5tHxHK1l45fpr7lsM8Egot6NoewcGyUHsiGmqNyMKKPx014kLshP8IOWx5e3i/qU3zrcnYiSjjlDn5xFx2Gqosj7CnloGMCWrSSpENZekbQVC/HYVdPyBI1J0/GF0xWxKjgKqcF3ZlB5dG3RHcxAVEp52AH9C4pbqErKbB6vrog76HNlbFjlbNoC0Ty3qKoNJXcvfJKk7MCNFl6oBsovP65GoMKUsHjmIE963JSuSWp2EnEtjGZrY0loLMqm3ou+SJipORHLz6kdCFREJ/V09pu/2OUWxYuODpnvBziq/T2S7qAXxXfTanh5GxAFwDFRf5sef0m92SMA4ikH77Cbhmsl845IMHlHeFc1I3UHsXQnuuNOQLPhgKd7IcHvrltNS4CuHsJu4+8R8KXvobitHJwZbf3RQzYHSr446QqyK6nNUh3cT1ShE0OGRzRA/1PiMJppI2LF8dmWUA0EQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On 3/15/25 04:15, Kees Cook wrote: > Introduce __flex_counter() which wraps __builtin_counted_by_ref(), > as newly introduced by GCC[1] and Clang[2]. Use of __flex_counter() > allows access to the counter member of a struct's flexible array member > when it has been annotated with __counted_by(). > > Introduce typeof_flex_counter(), can_set_flex_counter(), and > set_flex_counter() to provide the needed _Generic() wrappers to get sane > results out of __flex_counter(). > > For example, with: > > struct foo { > int counter; > short array[] __counted_by(counter); > } *p; > > __flex_counter(p->array) will resolve to: &p->counter > > typeof_flex_counter(p->array) will resolve to "int". (If p->array was not > annotated, it would resolve to "size_t".) > > can_set_flex_counter(p->array, COUNT) is the same as: > > COUNT <= type_max(p->counter) && COUNT >= type_min(p->counter) > > (If p->array was not annotated it would return true since everything > fits in size_t.) > > set_flex_counter(p->array, COUNT) is the same as: > > p->counter = COUNT; > > (It is a no-op if p->array is not annotated with __counted_by().) > > Signed-off-by: Kees Cook I agree that there is no suitable fallback handy, but I see counter as integral part of the struct (in contrast to being merely annotation), IOW, without set_flex_counter() doing the assignment, someone will reference it later anyway, without any warning when kzalloc()'d So, maybe BUILD_BUG() instead of no-op? > +#define set_flex_counter(FAM, COUNT) \ > +({ \ > + *_Generic(__flex_counter(FAM), \ > + void *: &(size_t){ 0 }, \ > + default: __flex_counter(FAM)) = (COUNT); \ > +}) > + > #endif /* __LINUX_OVERFLOW_H */