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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 3552EC4345F for ; Mon, 29 Apr 2024 14:56:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:In-Reply-To:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=cL+DudEKMg0UvKETAlQ3ioSuW9nS8GByky5oOYwUt4U=; b=NNasWw5XfSSUah ym96dpj+lkIcDT/doZrp7mLV40uaFdLjM9wPgU6RM+ip+3weAutHirPbNt8/Jb+p/g405QDxraS0o 0ZNijQwE9lQOl3TyDd8C1mm0Ofoq4aEm4oKqiW3oxq6UVcgmyRZfCyQykn9X8PL38+RBnMCH85kL3 AGYXqzrPKuIzhusINmf/7irz8hTV8X3DnQ5GcmWp21d+9k/dTp4SVc8Wngh1xowN64Nagxi9TqDxL r9ZOwj9aLKL4GtGVjmODWYwFWbbmqSC/pH7wZ5J25gXHvk9cxIrNW8kE7fP5x5eIS7u2sE2zjWxw3 U40Bx5lErY902zcTlYvA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1s1SQA-00000003DeH-1F1B; Mon, 29 Apr 2024 14:55:58 +0000 Received: from mail-dm6nam12on20601.outbound.protection.outlook.com ([2a01:111:f403:2417::601] helo=NAM12-DM6-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1s1SQ6-00000003DdB-3KOy for linux-arm-kernel@lists.infradead.org; Mon, 29 Apr 2024 14:55:56 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CMcEMe6vVz7uia2Tl1uMIZxYAKSG0AG9mqpEZru0SJlMjUWf4a3R2XYVCvL06bTfFBm1PHbANfXR08GH+tdYcLRmxJhT1PDwsJI+FahgpaEENTwCKdkRJH7r50gIhg3mRO4tJa1e5nXKlq9xBLYQRWvA1RzinVvdxS/KaQbh6yyXi5i5hZFPulSqKd8062kPkjW4SxcyAeD8FYzzZBAge6VlUi0D6tiMja6cngrvmuWpzahUiCF30m6pLtfmdaH+Log104tO2LVvJehPcyl9KIhgDJqZKoRlYiKW1JdbJJohnc19pdKbaMqDY8JVb20SXQWTLH2BDcW9MlaxTWvdGg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ub4evBFXHnaTaO2w835iIq/6CogMSOAv4uQjOXWnt1M=; b=GuaZ2L6H3wE+h6P6Nmuv+ppbkcd5xdZLqePehkvmmfeRa8ilAO2DYkBF3y/Rq8wefi6nf6VyctzgTj9CTA7BS2a7GGOOwJ8PWEJyVmplViYprz2APa3pCyOmGJoZ04jsnGss7fdVJi9Ipb3XU9XRuxaV39Saexnm0KhlCO2L+inQeoyoejSI5dlBRrp44r+yLQPdf8kF6w2fBQOm/6K30E6vGS6Xq772GkOLb7+LRy0V65hGm6TqiB/D7A4jpsekBw35gSScbB1oQp7yahzyz94APJVft1Vp3M/knQvCBODvyhCC37eQyv+fWURqNvKk7wnyv+dun9vmsrXf5knsfA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ub4evBFXHnaTaO2w835iIq/6CogMSOAv4uQjOXWnt1M=; b=bzaEQJRrH+Di/Y5b9S866usxPuq4d1vfWSrpEoUGAzR65TNl1L65IlDZlHNE6RnOniS2rgcvJQxvLVcNAiB89LEUk2ZcrhYKW8ad97CVeJyh8/wpKLFwnhyR8rDxcddGrzUCReKZU7UJVPhvaN9Y0iD7ohtKzg20EJylHu2/556QiAdr/qtMEQweu6j2vjot/gZFpCyy/ALZuaymw3TyRSRNfu+zB72qb4BLPxieLiJ4C+Xt7ax8db5p8P5XJ8vQe1PRyvBnGClyJkbnIXcmwT/XEYlR9/pPzg8VSVqrp3SgiXaGHLzTA8ecStx5VRqWFwGBSqsjV0RSVzqiMkxBlQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DM6PR12MB3849.namprd12.prod.outlook.com (2603:10b6:5:1c7::26) by DM6PR12MB4233.namprd12.prod.outlook.com (2603:10b6:5:210::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7519.34; Mon, 29 Apr 2024 14:55:47 +0000 Received: from DM6PR12MB3849.namprd12.prod.outlook.com ([fe80::c296:774b:a5fc:965e]) by DM6PR12MB3849.namprd12.prod.outlook.com ([fe80::c296:774b:a5fc:965e%3]) with mapi id 15.20.7519.031; Mon, 29 Apr 2024 14:55:47 +0000 Date: Mon, 29 Apr 2024 11:55:46 -0300 From: Jason Gunthorpe To: Mostafa Saleh Cc: iommu@lists.linux.dev, Joerg Roedel , linux-arm-kernel@lists.infradead.org, Robin Murphy , Will Deacon , Eric Auger , Moritz Fischer , Moritz Fischer , Michael Shavit , Nicolin Chen , patches@lists.linux.dev, Shameerali Kolothum Thodi Subject: Re: [PATCH v7 5/9] iommu/arm-smmu-v3: Make arm_smmu_alloc_cd_ptr() Message-ID: <20240429145546.GG941030@nvidia.com> References: <0-v7-cb149db3a320+3b5-smmuv3_newapi_p2_jgg@nvidia.com> <5-v7-cb149db3a320+3b5-smmuv3_newapi_p2_jgg@nvidia.com> <20240422142053.GD49823@nvidia.com> <20240429140137.GE941030@nvidia.com> Content-Disposition: inline In-Reply-To: X-ClientProxiedBy: BL0PR05CA0020.namprd05.prod.outlook.com (2603:10b6:208:91::30) To DM6PR12MB3849.namprd12.prod.outlook.com (2603:10b6:5:1c7::26) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6PR12MB3849:EE_|DM6PR12MB4233:EE_ X-MS-Office365-Filtering-Correlation-Id: 08fa7f8d-cc77-4134-0ac1-08dc685c742c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230031|1800799015|7416005|376005|366007; X-Microsoft-Antispam-Message-Info: =?utf-8?B?SVRrSXZ6aGZvYU14SGI5U29vUGRPS3lPakhvc2Y4bDdodjFvNWdoaFo4ME03?= =?utf-8?B?d2RhdEZkTDBVK2hzV1VoNFh4dGRkVjBtdncybWdIYS9KZUVKREVVOGpZVUZT?= =?utf-8?B?RFlQcWNjRitDL2FEeksweXRyMGZvZXlyRUprZmRnUS9IMUFteURMRWt6c1ps?= =?utf-8?B?WGQ2UE1VSkNmK21rTi9YTVUzUllOWlZsV0dGMFVpY1F6ZEY1QWVINzBBV21N?= =?utf-8?B?ZDEzaXZPUWM0YVBVR1M3S2d4UmRtWVBjdnhjQWIzcGk1M05lMEpuWFNlby9Q?= =?utf-8?B?K1NmMXpjaFJNWXkyUlo2YzhKUStSRkNvM2Q3eHhrQjd0VnZzcXg3MVZtTnJG?= =?utf-8?B?TEtqN3lYVHBHUDVxbTVZY2NZR0Z3NW4yV25WSlZNRENsQ1pVSjB1anE1dHdT?= =?utf-8?B?OXU4UFJxRm9TaXY1MXp6S3kzQ0JJa3hWZGkyQk1jY0pLM0NGVUxoNGZCR05j?= =?utf-8?B?TExwakQvQzJDc0Z1QnFjMm1jckNNeXZpMVN1dGU3b0FONzR2QWlXcXhWSFJm?= =?utf-8?B?eTdTZW96MlVhWVhMUnREbGNpcmpPZTZuRGlrUlNRNVhaSjJQV2NNM0xFTkNC?= =?utf-8?B?b096YThvVE05M1U0eVR1cUNHTERjRWlNZUlzaHhGaHNnWHhINEZjeklDbXJB?= =?utf-8?B?dEhvZjh3cUwxc0YxY29ZZlVOdzRINHRCN1A2aW5nckdkczB4ZURvbXBOb2Jp?= =?utf-8?B?MTMrT3R0b2RZcytlWGhGRGlSK2JyYVhKeXpjUlZPUzF5YjNPdUFtTzVZOGlB?= =?utf-8?B?bjNiS3JDYUZhS0JVN3R2WUpHZzkrZVllcEE0cXhNYWRkZjBneWFnZmYvMnBt?= =?utf-8?B?UHlLTnNFTXkrWm1hSnh6MkJueUk1YWExbzJoQ3pKUmJ6M0l3eXhmdjRNeHla?= =?utf-8?B?K3hUaklHMmx1STlxQjFHdGJwb0JvbFNRVGNZWm0vRktqVStSVnR2dEczbXY0?= =?utf-8?B?aVUzc3FIa25hbHAyZWVtSjBSY1hNbGMwRENaNVVacjZ4cXVuTTRRQzFEc0pj?= =?utf-8?B?dFN0N3FzclhEMmtUSVNuM2xLWS9jVTl1cjVuVkdJS0Rwbko2QitySTlpQlR3?= =?utf-8?B?ajNLWHN5WjcrSFRTMWw4VjdUanNNTFJxZEFWUE9Qdy8vZGFkTFgwVnE1cDJs?= =?utf-8?B?Y2tKbVBoTjJJbXIwQ1RaUHl4NC94L25DbkpzRkUrbHgzTHNZdytoRjdBSTNa?= =?utf-8?B?WlBNRENLazN5eEpsM2dpdTQyQ0podFVVdlRYVWhSekpUSDVXeWxaV3FmV25y?= =?utf-8?B?ZFV4ZmZoOG4wdGVNUTEvTDVtb09mYjFqSEpNM1FkNXVxOXlZbmJHR0wrWDgz?= =?utf-8?B?VUxBR0RIbzd5THdmWmJuRStjamY1eHpKTFp0MkREVmJNcmdCL0R0NXFJUFMr?= =?utf-8?B?SWZxTWtHK0RQVkF3NlNnT0RuZldCRzN2dExtRi9DcE1idlQxWDNyemJRdHJE?= =?utf-8?B?N0NENmRuN0kwWnRrUEdoL1NqbytsaDcvUnFXNkhjVW1XT2oyV3ZmWEZjSmVW?= =?utf-8?B?U2dRZGIzMVBFSllzZ1lwajFjRmFCamRzZWRMRU84MmVyQ2xOV04rZUVibkZS?= =?utf-8?B?aEJMSTJaNGc1bDJwemlNWTBYaDIrT3pOMy9uSTk1ZFFhRjVMYTU5c0plZ2s1?= =?utf-8?B?S3d2NzhPcUxDbSt3NXNJeXNORmJITlR6Zll5ZDFVdUNsYWsxYkhXajRPa3Rq?= =?utf-8?B?Q2JDNVl4K2tYSGhhdy8vVDdKaHRNN01VOE5sNkFrVDN1dmRjUDRxNWxnPT0=?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR12MB3849.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(1800799015)(7416005)(376005)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?VEt4UEZnRi9WWS9ZZEw2b1dsVWppSUphaXIwSVA1UkRrRDhPQ3ZodUdhMFpC?= =?utf-8?B?c3RlNDNDVkp0ZXcxLzJYVmlEZlh1bG4xUEdEZG1NaStDMDRyRjJuTXlKcCs0?= =?utf-8?B?NlArMll2YnE3b2ZLWW5tTkY2Qyt0WENvOTlnQUsvUFBSUkpSaVdORFhOL293?= =?utf-8?B?VEl2NGFPQ0JKRW1xRUMzcjJkL3FGSnFUdDRHaUdXeXAwTzhmRGhoYThFU2tC?= =?utf-8?B?elVqbjR4VGJYTjdqREsrSlhnSlRlMDNicXF6c2sva2dtTUJ3QW5zSzI1U0dN?= =?utf-8?B?RXMwTmJFZWhXTDhaWittVnBzZFBYb1pQRnBRVjZKeW40SUIrNWZHa2wrbDUz?= =?utf-8?B?bXhzV3FEK1dIc3hKK1pmNzd2MWg3SWEzY2VNZnJjWFZ0OVh3dWF2S3pJUFYr?= =?utf-8?B?eE5PRjcyQjBGN0Fnekg1VnM1TGVQdHVJVVdZQmcxZGUzWi9EbUpSYmovY0lM?= =?utf-8?B?anZ5Q0grcG9DK29kY2RVb2tPOWNFd2ROWXc3dE5YQTgvVGNPTDBMNjZIVXds?= =?utf-8?B?dk8yVGF1V3RQQzVKdGhESkZGTkFjOWR3dTJ1VlBnTFFJM3gxZmtRd0NWOVF1?= =?utf-8?B?Zi9WeWQxRkdpYVgwcjhMTEMrQm5lcVVoaVR5aHFjZGlTNUFCdWc0WXd1RWFx?= =?utf-8?B?ZThrTWJqckx1eURBWG9yd1pFbW1wZEVlQmN4SS9KMkMzRDdCN1NDRFp0Y3NM?= =?utf-8?B?S0hqWjJleVJub0R2by9rL1IyV2pnc3BQRmZ1cGpIQS9BdUtFeGhPaDZCL2Yv?= =?utf-8?B?RDlrMjF5akkreElOOEUwSUtPbEYrTTNHcmd1NklneFBRS05ncVMyUlEwWnA3?= =?utf-8?B?bStvUGJWb0lxRzB4Lzl5ejVRSFI2T3FMdzZ2RGhzeStYQkF2cFMzcEFFV0o1?= =?utf-8?B?aUtKaGdmN3FESG1qMnFBUEc3Tkh4dkxEUm80Q2EvTHhaSXlPUVI0VytJckxq?= =?utf-8?B?SFhpdVI5elJnY1c1dTdlK3hmWXNIL0pCZXI4NTNwM01KdEVHaDlUaUw2OWdr?= =?utf-8?B?UDliRVgzYnQ4ZzE2aTlqZitKN0FjQ2NUWHc5bGZjSTFKcVg2eFZtcXlNb2o5?= =?utf-8?B?Z3VpbWdHQWQvVlpIK3BKY004aG9hbHlhc1NXRlZDZ0k5YXlhcmJvNnc2VE5R?= =?utf-8?B?d0tTM3BSRndPeHJHbEJ5WWFrZGFHejdkUWZxUWNCUWlQb05OUXVvdGFBRDhn?= =?utf-8?B?bDdFRHhwbXJRSnZMaXB6VFRMMVdCdkJrbTRKVDg1ZFpZc0M2WmVvVHFHZi9j?= =?utf-8?B?WnN3MDNsRmdmV1RjYnF2Q2I2VG43ckl6RzY1VWFBbEJqMXl5b0drUkcxYTN1?= =?utf-8?B?YkJnY3gyN2RaYzN5TEQyZy9QK0xJRndjY05IUVZQTksrWDY3R3ExajVGRFJT?= =?utf-8?B?TXF6UkVtNmVWWmFKTkRsTVA1bjhWNXJiUUJabGJXNFVOTFdncElvekozV2l3?= =?utf-8?B?UjlNUDllcmp4OENodXYxS1Q3ZW9uVTd0YTZqaDJNRDBRRTZFMXhWSnlGdGJP?= =?utf-8?B?bWZkTXNCbmZKTFZldm1WQXg2MzBQS2FzeXBCZVpRc2NaUDVGeDEzangvd0FX?= =?utf-8?B?VzBIUzV6VjZ6RlRiLzVOSDh6SWVkWHh0ZXlRSmxNcGV5cEpKSDZtSW1hT1U3?= =?utf-8?B?Q1piN0Vtam1LNndZVGhJL2ZYNURNK0hjdllXRzZpMUxpcXVSZHFEWGwycm5t?= =?utf-8?B?T0IzUHV1Z2xVNHBueXZMeDlZNTkzZ2Vkck5mT0g0WCtYRllNRVIwcEhPbmZ5?= =?utf-8?B?aVdncnJzYTRiZnBTZUJQVzViTlR2cy83WE1YYi84d0xtaUhqL1NBaGJYVTNN?= =?utf-8?B?OXZXZHhtdld2eTFmNWttOGJ4OHR4Z2FlN3VwQU9VbzdMSUMyZ2dsVTFPMU1Y?= =?utf-8?B?b1VxWTVTbEcrNGRuMTNUWmtLMmU5cmg0aEVncEIwenBXL2VFQUVQS09VNFd3?= =?utf-8?B?WmFFWm1FejdHVFJPOG9GWmFsTHRidWx2OEVGOTdWMUh6R21NaHJGVVVQRFdF?= =?utf-8?B?YnRkNW1Nd0poVEF4cHRqVUtyWkhtakhBMVdtcFBMTFMvZkJtS2hSdURRbWxn?= =?utf-8?B?MytZcTJuNFE1MTlxdkhkM1RhL0F5Z1E5THlJOEtIUnF5a0sxZGs1UUZxcng0?= =?utf-8?Q?ssp5nU4YkfY5lGEsAv590VKVd?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 08fa7f8d-cc77-4134-0ac1-08dc685c742c X-MS-Exchange-CrossTenant-AuthSource: DM6PR12MB3849.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2024 14:55:47.6111 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: N+2mi8boa8z96L4PqC2H8VNa0bcM0u0aW6qj/b1Hmc7GhXXSjShDCkb/v7W0Zon2 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB4233 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240429_075554_956517_70A85182 X-CRM114-Status: GOOD ( 16.48 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gTW9uLCBBcHIgMjksIDIwMjQgYXQgMDI6NDc6MjZQTSArMDAwMCwgTW9zdGFmYSBTYWxlaCB3 cm90ZToKCj4gPiA+IElNTywgYXJtX3NtbXVfYWxsb2NfY2RfcHRyKCkgc2hvdWxkIG9ubHkgYWxs b2NhdGUgbGVhZnMuIEFuZCBpbnNpZGUKPiA+ID4gYXJtX3NtbXVfYXR0YWNoX2RldigpIGl0IGNh bGxzIGFybV9zbW11X2FsbG9jX2NkX3RhYmxlcygpLgo+ID4gPiBUaGlzIG1ha2VzIGl0IGNsZWFy IHdoaWNoIHBhdGggaXMgZXhwZWN0ZWQgdG8gYWxsb2NhdGUgdGhlIEwxIHRhYmxlLgo+ID4gCj4g PiBUaGUgUEFTSUQgcGF0aCBzb21ldGltZXMgaGFzIHRvIGFsbG9jYXRlIHRoZSBMMSB0YWJsZSB0 b28sIHdoeQo+ID4gZHVwbGljYXRlIHRoZSBhbGxvY2F0aW9uIGNvZGU/Cj4gPiAKPiA+IFdoYXQg aXMgZGlmZmVyZW50IGFib3V0IHRoZSBMMSB2cyBMMiB0aGF0IGl0IHNob3VsZCBiZSBvcGVuIGNv ZGVkPwo+IAo+IEkgZG9u4oCZdCB0aGluayBpdCBpcyBhIGJpZyBwcm9ibGVtLCBidXQgbXkgbWFp biBjb25jZXJuIGlzIHJvYnVzdG5lc3MsCj4gZm9yIGV4YW1wbGUgYSBzbWFsbCBlcnJvbmVvdXMg Y29kZSBjaGFuZ2UgbWlnaHQgdHJpZ2dlciBhbGxvY2F0aW9uIGZvcgo+IEwxIHRhYmxlIGZyb20g YSBwYXRoIHRoYXQgc2hvdWxkbuKAmXQsCgpBIGZldyBwYXRjaGVzIG1vcmUgd2UgYWRkIGEgbG9j a2RlcCwgc28gYSB3cm9uZ2x5IHBsYWNlZCBhbGxvY2F0aW9uIGlzCip2ZXJ5KiBsaWtlbHkgdG8g aGl0IHRoZSBsb2NrZGVwLiBJZiB0aGUgbG9ja2RlcCBzYXRpc2ZpZXMgdGhlbiBpdCBpcwpub3Qg Z29pbmcgdG8gY2F1c2UgYSBmdW5jdGlvbmFsIHByb2JsZW0uCgo+IGFuZCB0aGF0IG1pZ2h0IGdv IHVubm90aWNlZCBhcwo+IHRoaXMgZnVuY3Rpb24gd2lsbCBhbGxvdyBpdCwgbGVhZGluZyB0byBt ZW1vcnkgbGVha3MsIAoKQW55IGNkIHRhYmxlIG1lbW9yeSBhbGxvY2F0ZWQgYnkgYXJtX3NtbXVf YWxsb2NfY2RfcHRyKCkgaXMgcmVsaWFibHkKZnJlZWQgaW4gdGhlIGFybV9zbW11X3JlbGVhc2Vf ZGV2aWNlKCkuCgo+IG9yIG90aGVyIGlzc3VlcyB0aGF0IG1pZ2h0IGJlIGhhcmRlciB0byB0cmlh Z2UgbGF0ZXIsIGluc3RlYWQgd2l0aAo+IGxpbWl0aW5nIHdoaWNoIHBhdGggYWxsb2NhdGVzIHdo aWNoIGxldmVsLCB3b3VsZCByZXR1cm4gYSBOVUxMIGluCj4gdGhhdCBjYXNlIGFuZCBmYWlsIGlt bWVkaWF0ZWx5LgoKQWxsIGNhc2VzIHRoYXQgbmVlZCB0byBhbGxvY2F0ZSBhIGxlYWYgbmVlZCB0 byBhbGxvY2F0ZSB0aGUgTDEgdG9vLCBpdAppcyBhcnRpZmljYWwgdG8gbWFrZSBhIGRpc3RpbmN0 aW9uIGJldHdlZW4gdGhlbS4KCkphc29uCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0t a2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFp bG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVsCg==