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 gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (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 04AA3C02182 for ; Mon, 20 Jan 2025 13:56:00 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id A175610E0C8; Mon, 20 Jan 2025 13:56:00 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.b="G+AyrpOP"; dkim-atps=neutral Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.12]) by gabe.freedesktop.org (Postfix) with ESMTPS id 933C410E0C8 for ; Mon, 20 Jan 2025 13:55:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1737381359; x=1768917359; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=kYlWRNT4SoXh9caz4rqe9dmRCdh8S22O6yQTVBtSu40=; b=G+AyrpOP1C6rMAEey73369t2EQEyeQVJMAfTE5letkj3b03X7n234H6H hs8lrzBH0/z7kVHGvdEMKu+2t77g8YFIgfvVDV5mOpuXfhTwJHq/vG3EW s050T8fWBJtUZFa0UYo5cHKK8Kzajoelo/XPQm9kEUH6eSof6gkcEsTym 7qNuWf9uSA+xNllxXEO06Z0hNDcJK7qnUwYiiHyzU+nBoYmBQrosjGs2H Ok6/qUozKoFpcj/cvNYyyfCTSw/h9khkWXzjYHIN1IeImFwJ0FVRSWxFW rKvRr7F+VX1jIahef3vler/+owSVE/5oHHVW733OlI93GpwkfA4m6g3p8 g==; X-CSE-ConnectionGUID: b4iz3lyIQIqIQd2ODnJgMQ== X-CSE-MsgGUID: XRMbqglZTga/MzfWF6qpqQ== X-IronPort-AV: E=McAfee;i="6700,10204,11321"; a="49170174" X-IronPort-AV: E=Sophos;i="6.13,219,1732608000"; d="scan'208";a="49170174" Received: from orviesa002.jf.intel.com ([10.64.159.142]) by orvoesa104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Jan 2025 05:55:59 -0800 X-CSE-ConnectionGUID: VDuwoXmAQbO1UERvpuc9zQ== X-CSE-MsgGUID: kv7PZOVLRbOamfAaJ+ztbg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,219,1732608000"; d="scan'208";a="137370080" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by orviesa002.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 20 Jan 2025 05:56:00 -0800 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.44; Mon, 20 Jan 2025 05:55:59 -0800 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.44 via Frontend Transport; Mon, 20 Jan 2025 05:55:59 -0800 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.177) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.44; Mon, 20 Jan 2025 05:55:58 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=qm8Hcbs6Y3D1Z5Rl3fRH4sbiRVqNx2xXStpRU8z/UzGRpEutCZ5eEGwYjK87kxbNy0iPF9zN0w3VOzoFeA0mQzi/zf1jG3S/J6U4ioHHxl8BI10S73qNlVbzn9ZpNf0RqFGi+gnTm1PYfX9KaH3wpu1DUSQUsXhokIJ24HGgXpApDbYA80Sk9htEiCY9S7BfNzE9mekKtSxHm518tHzV5a4V8mSkOW+/mYVDfCyinSmQSlrbjJntYIcHmKwkbMs/PfETTQGcI1tByPnQXp/aSYaUFipbkFdyxB6aeN03IaOnDJ6zaKAOtVmVMo/Os/5tNwagDmctJ0y2HnH/wocWtw== 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=kYlWRNT4SoXh9caz4rqe9dmRCdh8S22O6yQTVBtSu40=; b=AGtQ9vUv25eBCYzyrQ2tyP1qqK9HkguKMgaG+DcYKttcdYx/TmeEIbU2iQN6yUO2cF51cB8CN3YF7sLV6PAcXHnMSzm9P8sjJdNOSvtSkfSyr5tYzY28vnMqMdp1+FkdUakvXEVanwBm8vi5ExvXLseCzvvLEOz2adP5YMYW0WM2jlX30Q2eoQHV5BG94axKs3YKEe1G4LqyrB96ZIlsSRQHip20+j3LBQbzWGg+hoGkx/ce+wTrmHKROJZAgKOrSrBOGtXOlcpFravRlvXK5lY1SGKBfN00LBBdXdFhz8tu09eLVLu2UFiP5gJ2t/1lMA8rv+NYayatTAWQiFcd6A== 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 DM4PR11MB8179.namprd11.prod.outlook.com (2603:10b6:8:18e::22) by MW4PR11MB5934.namprd11.prod.outlook.com (2603:10b6:303:189::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8356.16; Mon, 20 Jan 2025 13:55:56 +0000 Received: from DM4PR11MB8179.namprd11.prod.outlook.com ([fe80::f5c2:eb59:d98c:e8ba]) by DM4PR11MB8179.namprd11.prod.outlook.com ([fe80::f5c2:eb59:d98c:e8ba%5]) with mapi id 15.20.8356.020; Mon, 20 Jan 2025 13:55:56 +0000 From: "Souza, Jose" To: "intel-xe@lists.freedesktop.org" , "Upadhyay, Tejas" CC: "Nilawar, Badal" , "Morek, Szymon" , "De Marchi, Lucas" , "Belgaumkar, Vinay" , "Mrozek, Michal" Subject: Re: [RFC PATCH V3] drm/xe/guc: Use exec queue hints for GT frequency Thread-Topic: [RFC PATCH V3] drm/xe/guc: Use exec queue hints for GT frequency Thread-Index: AQHbY20UhEfLNWNJJ0WWapk42jce8rMVEXmAgAo5ngCAAHQZgA== Date: Mon, 20 Jan 2025 13:55:56 +0000 Message-ID: <2247c575d74305025f2c5bffb82ae854e0de8ae5.camel@intel.com> References: <20250110144146.3063366-1-tejas.upadhyay@intel.com> <20344bb77fc313ba9bf119a692743463488e0655.camel@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM4PR11MB8179:EE_|MW4PR11MB5934:EE_ x-ms-office365-filtering-correlation-id: a524a506-f351-438a-0237-08dd395a298f x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|366016|1800799024|376014|38070700018|7053199007; x-microsoft-antispam-message-info: =?utf-8?B?OVpyMjNEQVQvUlJvUy9nVFJWRFdrdUlHNk9FdXdUS29zb3hYVEJ1VnorK0g3?= =?utf-8?B?OHQ3TmFoY3ZuWlc1Vkh6cWVZMGs3Mk1qL2FzcVdOaldsbkpPYnkzV2ExU1VI?= =?utf-8?B?SFRpUlBqWkkxbVdYSFE5VzloemZ2MnYxM1NhYmNOSEY4YWhBbzlqanlMeGJh?= =?utf-8?B?OFdyQWQzcE9jRENuN2U4MFAzUDdreFFQTklWU1ZXSU43QkdXandiQmlaeG9G?= =?utf-8?B?RVovaEkyUUlpSkk3Q1J3MmRVckZORGRGaWtPYWVoQ1VjQWxOTGNDR1hkN21E?= =?utf-8?B?YnVQY2hROTBIVWZyNlpLdWlteEtNdytxUzNqYUlHWHQ1K2VUVllMN0hYNHZr?= =?utf-8?B?VVpoTzlDT2swMng0ZkIzZS9EVjczRUpmSGk0d0s4cmJTY01qVzN0eTJ4R2tq?= =?utf-8?B?NEJtUUQ2MEsrMGJnejRlZk9QVWVXcENNQVArcFkvdWVZNFNOUU9VZmcwODZ0?= =?utf-8?B?cEFoNUx1V3JLalRqc0FhU05lUVM3QlRsREhhS2t5c1ljNEtwbXNJY1pWSTZP?= =?utf-8?B?ZHhNWm0xTGFaQnZRdWZXTks4UHBNSjkxcGpFNjN2UmtUbnZqbFVqNFlMTmpG?= =?utf-8?B?cDd5WERDOEhncjNsOHJzcFUwMlIyMFpmajFmSE9xWjRzbXRuaXh4UmI5bXdj?= =?utf-8?B?ZDNaMVV6aTB6Ny9PcnNnV242aGhxQzZHNThLM3JDdnIybjZoSm5TcjcwSUVj?= =?utf-8?B?MnRQbG1TQkJ1b2MwMzUrYzdyNU1xODFBMFpCeHY0UG83MjJFNXBnMjhWRmFl?= =?utf-8?B?UWRlZ3ovbnZraWpvK1Z0dG43K09ldDdWWGlSckp6RVVESzdPK3dQUnFrbkcw?= =?utf-8?B?cmNyM1RMRkNtWG5FMkFYUXBhNEVKMEdCaEJUcU01OFBkRWdRSm1NREFDZEQ2?= =?utf-8?B?YnZNYWwva0tyaDZrQzAzSC90dVF6RjJleDJzNTllbDZqcTdyNFFIUmg2a1N0?= =?utf-8?B?U2wwQk8yb2NzbEUyU0pwNWVRR0oxcERDVXJ6SjdOZThvZEliOGM5U1NuMGNY?= =?utf-8?B?eXc4WkV1d000ck1KQS9lOE5xMVpGWmM2Vk42NnR1R0hkaldpYlRmWUNxc1lC?= =?utf-8?B?eVlCQytsV0xWbi9xY0UxRlVSb2JHcm0vazlDRGUybGtDR3VKN2wyVHl1SWYw?= =?utf-8?B?VTRvdVhYOXpVVDlidjBPN3BudzZCeWNZSnUrbS9LQksvd29XWm0wL3RjSEsw?= =?utf-8?B?dVpvYmNpZFFtOE0vNjlLbmVJNHZhMFpwTm5MTEdiM0JxRUQrM2VvbndIZ3ph?= =?utf-8?B?NWFKL0pBVFJqNXB4cVVOaDgyaGJXSDBqbmM4U2RYblV4aDRFY3FxRVJsejg3?= =?utf-8?B?VlhVYmNJa3REcTNMNWU1ZUxhOSsrRFNyKzVqcWYxdWxHcXJiYXkwTW9EOVI1?= =?utf-8?B?WXlUL0VvdVZEc0NVWGdrWmNieDFjMjdQQ3JicndOdHZBM0JBVm9uR3dJQ2N3?= =?utf-8?B?K1lFUVpLNVpDMndZMUZYemVGN1FRbHF6eDNtelVmSFpYR2pkajkra2dGNzg1?= =?utf-8?B?cHowL210R2tHSzF5NzRsYktZQlVma21aOWkyYVgrZk9jM3J5OEU2N2ErZWRG?= =?utf-8?B?dGZXRHF2TU9qV0E4Yk5JRHAxNXR5YlM1aysxdG1vQ0I5ODRpK0Y4RldLUThH?= =?utf-8?B?T3VxSVFEcnNIdTVadzdXTlY4eXliaWRCeVM4OUFRYjBMUWhSY3ZNRUlNQ0xY?= =?utf-8?B?akVqcDdsMGpWYXRrTFhMKzdyaE9zakVOOVlGL3JrcVBFQWJLVkxoYmhKVlk1?= =?utf-8?B?eTMwMURFRXVzRUMydnNYcjdsV0JGdm5qQ1UwZDdlZ0g5TXhMODFrVndyZE1V?= =?utf-8?B?QlpKS2Q4eDUwSWlRNlZUTlFoVGxhaWRtYldQdm0vWjc4YUF3WHVEeG1DY2ND?= =?utf-8?B?N1daNGRqR0V3TDFRR1dicE5JdTVxWU1xWkdtYVE1Nzg4ZUx5TVFNL1pkUm4v?= =?utf-8?Q?l4/8lUwbX/3yQICHWY5s5vC87fq5V9xd?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM4PR11MB8179.namprd11.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(1800799024)(376014)(38070700018)(7053199007); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MGhUWVpLaXk2ZFhLdEZnQVBrMUpVSlhUYzRWK0dDUGJjbHVETW05VUpTK1M2?= =?utf-8?B?cW1qRnhSdjhJUXlpNU9UUDdTWk9TV0xvQ01Qc3hOdlVSaVd5N3haN0tzNkIw?= =?utf-8?B?M3g2WFVjWjNQNEp3TElMTCs3VnovaXpISjhTNFVudk8rcFpuY0JLT3RtVjJF?= =?utf-8?B?cWdqL042NFlmTFBvc2tuMmQwUVk0L3g2bURJWVB2VDNtaTE4ZHc4SldMNW9Y?= =?utf-8?B?T2NUM3B2Nk5GM1JvNWt4aU1yc2EvWWxlaGh4cUdHNTBOZ1NwOXR1QlhJZlpz?= =?utf-8?B?RE9QcXdhTG11bG5iUGJ4c1h5U29TTENXY2g4M2pRK1NBMk1yWjNZY1VFRUF5?= =?utf-8?B?dzFPSmU4WmNsYmNDalpKMTh5NVkwQjI5NmNuNFdNSm9wUDFVcUM5V3VLQkZo?= =?utf-8?B?VmxlMEZwRDVqR2c1elh6dDdYeEFOMEduWEorVll3ckZtUmg2aU1hUzM0OXR6?= =?utf-8?B?QVlhc3FRWWlOS3pqQlA0M3BJOGNKYnN2OUVYK3VIeG15cmZiK3pQSDE5V01O?= =?utf-8?B?UnprNXh6bVdFOHJ1clR6a2xEaFNvRlp0ZEI4VnBCYm0wMFIwWXJCZGU2d3JL?= =?utf-8?B?czg5WTJoR2hPZWxwTnJFbzFLZ2xQcmYzS3lIbitzYUV5aE5sL2ZiMWdLb3JZ?= =?utf-8?B?dm5DQmpHQndGK3djSCt5TGVZWGtLcHRBOXZiL28xU09vTENVZDVpUE9ZZjAx?= =?utf-8?B?M0xsajZHTENLSkRQQTBvYWtPUTFZdG12VXl5WWx1VzRNc242ZWRsbUp4aU9L?= =?utf-8?B?OXI5cnRuK0IyV2RQWmNaaEhwRkxadGtHMnNWZnJ3Y1o3Sit0S2tSQVZyNS9J?= =?utf-8?B?dVNOSXVIWUMxK3hOUVFpYisxY29WUC9vS0w2UnNMbHpKMjUzbmIzMktvZk10?= =?utf-8?B?ZkpTVXlxN1pZMTl5KzFyRzJmZXlsTTVoRGc0MjgvQ3lvV3FNUUo4b3JMa2RH?= =?utf-8?B?Wm50R2loZDUwa0xDZnRISHZadE44aUlPWEFVR0hGamhmRDZFZFczNGt2RjdB?= =?utf-8?B?K1g3Z3pscFlYN2JHRHJnUWZnVytKUU1pMW1hUURQcEhuQ3BTVE9lUXQza2l6?= =?utf-8?B?dnZwcUk0N243bVk5SzJUVlIwdm1CNWZ1VkNZTk1zWERaREZ5V1dxNnhCNmRn?= =?utf-8?B?emxnZllpaW54R3VIaTdGMDFDaDVRb3hoTFZLOVB1U2wwdlZmTmdUVko3ZVds?= =?utf-8?B?UEt5K1ZOeFphbGF5dmN0NFIrQzVYZmNsNDlYb2hSTVBCdkxneDlGMXc5NzJD?= =?utf-8?B?RVg1QzBTTk43eEFSc3FLa09uL3RKVnVXUkhvN3R5b0lUdFlaQjVtRWExY1JK?= =?utf-8?B?WXZacExwZ0xqMElvWFdwbU9seEJpM0ZzSEpSQm5jdnVkNWlYdVVpQy9kM1c5?= =?utf-8?B?MTFscXBmM1ZMMkFYRDZtVkpQMHpldXJLb1RYbnMzejNhc2RrdFBLQ2Ivamlm?= =?utf-8?B?ZHpEak1lcjUwZ25Bek8vemlRS29Ma084Nk9CRWFzQjB1RkhrQ2tYQVBObkhq?= =?utf-8?B?K0g1QVVjaW0vUHlnbTV5ZmZqREY5VkpKdWdUYUxvK2tSRTJXR3gzUUQxNldx?= =?utf-8?B?UVk3TXRXK2VKc0Z5a0FHV2t4V2tLb3gzUmVJeVVYNVp0RTVXSmZZMlMzVFpM?= =?utf-8?B?bnl6eFJ3NjlCK0pvWEI2ZHYzWWUxc01yRk9MN3BGdk5hOUROTzlkRmR1Mmdz?= =?utf-8?B?aG1CK1M1NkV4Z2U5M3RCYnhwYWxWUVV3WVk2QmxmbHJWb3M4ZXIwSEFCcHlh?= =?utf-8?B?V2dQbmUxUGZlZTB6aE9HMTlWc2tRMUpJbk1nb1Zza3htR0FZZG1TaHJiWmVL?= =?utf-8?B?SnFZbEtCU0V4c3BNUENkeFFXc2MyT0wvSnRuK2czUGU5bE54cy94T3hBVElW?= =?utf-8?B?TGZsY0hBMkVJaEZuS1oxOGsvR0FyVHU4MWx3SFVrS21raU1nZC9ob1RYdnll?= =?utf-8?B?Yk9aTWhRL1NiUi9BNXdnMU9vRldOSkhFQVd6NmplNFpaeXlITFJvc0RyZDh4?= =?utf-8?B?bTh0WEJNM1hqWEtQbTg0R0EzM2E2SnBDdHVYNDJUK1JtaFJzSC96eGxiZUFS?= =?utf-8?B?cTRLdGJiaWJGajg2QnQ2LzlhcC93LzZ5V2JZME80NlJJSlJkT0c0bjh0Vm4z?= =?utf-8?B?dS84T29sQ1hsOFRnUmZrdWRhdmlVQXVsYWNmK2dmaXV1QUFRSUx1VHlZcFdv?= =?utf-8?B?dnc9PQ==?= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM4PR11MB8179.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a524a506-f351-438a-0237-08dd395a298f X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Jan 2025 13:55:56.3276 (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: ux+/23RN3+ZkSN3uh8aIFyra5IACi+aWJioOsGEMPfGaD/nYv2wiyT+sk5aqERYnyTy2uPjGKE2y3137y2Ir+Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR11MB5934 X-OriginatorOrg: intel.com X-BeenThere: intel-xe@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel Xe graphics driver List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-xe-bounces@lists.freedesktop.org Sender: "Intel-xe" T24gTW9uLCAyMDI1LTAxLTIwIGF0IDA3OjAwICswMDAwLCBVcGFkaHlheSwgVGVqYXMgd3JvdGU6 DQo+IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogU291emEsIEpv c2UgPGpvc2Uuc291emFAaW50ZWwuY29tPg0KPiA+IFNlbnQ6IFR1ZXNkYXksIEphbnVhcnkgMTQs IDIwMjUgMTI6MjIgQU0NCj4gPiBUbzogaW50ZWwteGVAbGlzdHMuZnJlZWRlc2t0b3Aub3JnOyBV cGFkaHlheSwgVGVqYXMNCj4gPiA8dGVqYXMudXBhZGh5YXlAaW50ZWwuY29tPg0KPiA+IENjOiBO aWxhd2FyLCBCYWRhbCA8YmFkYWwubmlsYXdhckBpbnRlbC5jb20+OyBEZSBNYXJjaGksIEx1Y2Fz DQo+ID4gPGx1Y2FzLmRlbWFyY2hpQGludGVsLmNvbT47IEJlbGdhdW1rYXIsIFZpbmF5DQo+ID4g PHZpbmF5LmJlbGdhdW1rYXJAaW50ZWwuY29tPjsgTXJvemVrLCBNaWNoYWwgPG1pY2hhbC5tcm96 ZWtAaW50ZWwuY29tPjsNCj4gPiBNb3JlaywgU3p5bW9uIDxzenltb24ubW9yZWtAaW50ZWwuY29t Pg0KPiA+IFN1YmplY3Q6IFJlOiBbUkZDIFBBVENIIFYzXSBkcm0veGUvZ3VjOiBVc2UgZXhlYyBx dWV1ZSBoaW50cyBmb3IgR1QNCj4gPiBmcmVxdWVuY3kNCj4gPiANCj4gPiBPbiBGcmksIDIwMjUt MDEtMTAgYXQgMjA6MTEgKzA1MzAsIFRlamFzIFVwYWRoeWF5IHdyb3RlOg0KPiA+ID4gQWxsb3cg dXNlciB0byBwcm92aWRlIGEgbG93IGxhdGVuY3kgaGludCBwZXIgZXhlYyBxdWV1ZS4gV2hlbiBz ZXQsIEtNRA0KPiA+ID4gc2VuZHMgYSBoaW50IHRvIEd1QyB3aGljaCByZXN1bHRzIGluIHNwZWNp YWwgaGFuZGxpbmcgZm9yIHRoaXMgZXhlYw0KPiA+ID4gcXVldWUuIFNMUEMgd2lsbCByYW1wIHRo ZSBHVCBmcmVxdWVuY3kgYWdncmVzc2l2ZWx5IGV2ZXJ5IHRpbWUgaXQNCj4gPiA+IHN3aXRjaGVz IHRvIHRoaXMgZXhlYyBxdWV1ZS4NCj4gPiA+IA0KPiA+ID4gV2UgbmVlZCB0byBlbmFibGUgdGhl IHVzZSBvZiBTTFBDIENvbXB1dGUgc3RyYXRlZ3kgZHVyaW5nIGluaXQsIGJ1dCBpdA0KPiA+ID4g d2lsbCBhcHBseSBvbmx5IHRvIGV4ZWMgcXVldWVzIHRoYXQgc2V0IHRoaXMgYml0IGR1cmluZyBl eGVjIHF1ZXVlDQo+ID4gPiBjcmVhdGlvbi4NCj4gPiA+IA0KPiA+ID4gSW1wcm92ZW1lbnQgd2l0 aCB0aGlzIGFwcHJvYWNoIGFzIGJlbG93Og0KPiA+ID4gDQo+ID4gPiBCZWZvcmUsDQo+ID4gPiAN Cj4gPiA+IDp+JCBORU9SZWFkRGVidWdLZXlzPTEgRW5hYmxlRGlyZWN0U3VibWlzc2lvbj0wIGNs cGVhaw0KPiA+ID4gLS1rZXJuZWwtbGF0ZW5jeQ0KPiA+ID4gUGxhdGZvcm06IEludGVsKFIpIE9w ZW5DTCBHcmFwaGljcw0KPiA+ID4gICBEZXZpY2U6IEludGVsKFIpIEdyYXBoaWNzIFsweGUyMGJd DQo+ID4gPiAgICAgRHJpdmVyIHZlcnNpb24gIDogMjQuNTIuMCAoTGludXggeDY0KQ0KPiA+ID4g ICAgIENvbXB1dGUgdW5pdHMgICA6IDE2MA0KPiA+ID4gICAgIENsb2NrIGZyZXF1ZW5jeSA6IDI4 NTAgTUh6DQo+ID4gPiAgICAgS2VybmVsIGxhdW5jaCBsYXRlbmN5IDogMjgzLjE2IHVzDQo+ID4g PiANCj4gPiA+IEFmdGVyLA0KPiA+ID4gDQo+ID4gPiA6fiQgTkVPUmVhZERlYnVnS2V5cz0xIEVu YWJsZURpcmVjdFN1Ym1pc3Npb249MCBjbHBlYWsNCj4gPiA+IC0ta2VybmVsLWxhdGVuY3kNCj4g PiA+IFBsYXRmb3JtOiBJbnRlbChSKSBPcGVuQ0wgR3JhcGhpY3MNCj4gPiA+ICAgRGV2aWNlOiBJ bnRlbChSKSBHcmFwaGljcyBbMHhlMjBiXQ0KPiA+ID4gICAgIERyaXZlciB2ZXJzaW9uICA6IDI0 LjUyLjAgKExpbnV4IHg2NCkNCj4gPiA+ICAgICBDb21wdXRlIHVuaXRzICAgOiAxNjANCj4gPiA+ ICAgICBDbG9jayBmcmVxdWVuY3kgOiAyODUwIE1Ieg0KPiA+ID4gDQo+ID4gPiAgICAgS2VybmVs IGxhdW5jaCBsYXRlbmN5IDogNjMuMzggdXMNCj4gPiA+IA0KPiA+ID4gVU1EIHdpbGwgaW5kaWNh dGUgbG93IGxhdGVuY3kgaGludCB3aXRoIGZsYWcgYXMgbWVudGlvbmVkIGJlbG93LA0KPiA+ID4g DQo+ID4gPiAqICAgICBzdHJ1Y3QgZHJtX3hlX2V4ZWNfcXVldWVfY3JlYXRlIGV4ZWNfcXVldWVf Y3JlYXRlID0gew0KPiA+ID4gKiAgICAgICAgICAuZmxhZ3MgPSBEUk1fWEVfRVhFQ19RVUVVRV9M T1dfTEFURU5DWV9ISU5UIG9yIDANCj4gPiA+ICogICAgICAgICAgLmV4dGVuc2lvbnMgPSAwLA0K PiA+ID4gKiAgICAgICAgICAudm1faWQgPSB2bSwNCj4gPiA+ICogICAgICAgICAgLm51bV9iYl9w ZXJfZXhlYyA9IDEsDQo+ID4gPiAqICAgICAgICAgIC5udW1fZW5nX3Blcl9iYiA9IDEsDQo+ID4g PiAqICAgICAgICAgIC5pbnN0YW5jZXMgPSB0b191c2VyX3BvaW50ZXIoJmluc3RhbmNlKSwNCj4g PiA+ICogICAgIH07DQo+ID4gPiAqICAgICBpb2N0bChmZCwgRFJNX0lPQ1RMX1hFX0VYRUNfUVVF VUVfQ1JFQVRFLCAmZXhlY19xdWV1ZV9jcmVhdGUpOw0KPiA+ID4gDQo+ID4gPiBMaW5rIHRvIFVN RCBQUiA6IGh0dHBzOi8vZ2l0aHViLmNvbS9pbnRlbC9jb21wdXRlLXJ1bnRpbWUvcHVsbC83OTQN Cj4gPiA+IA0KPiA+ID4gTm90ZTogVGhlcmUgaXMgb3V0c3RhbmRpbmcgaXNzdWUgb24gZ3VjIHNp ZGUgdG8gYmUgbm90IGFibGUgdG8gc3dpdGNoDQo+ID4gPiB0byBtYXggZnJlcXVlbmN5IGFzIHBl ciBzdHJhdGVneSBpbmRpY2F0ZWQgYnkgS01ELCBzbyBmb3INCj4gPiA+IGV4cGVybWluZXQvdGVz dCByZXN1bHQgaGFyZGNvZGluZyBhcHBvcmNoIHdhcyB0YWtlbiBhbmQgcGFzc2VkIHRvIGd1Yw0K PiA+ID4gYXMgcG9saWN5LiBFZmZvcnQgb24gZGVidWdnaW5nIGZyb20gZ3VjIHNpZGUgaXMgZ29p bmcgb24gaW4gcGFyYWxsZWwuDQo+ID4gPiANCj4gPiA+IFYzOg0KPiA+ID4gICAtIENvbnZlciB1 c2VyIGZsYWcgdG8ga2VybmVsIGludGVybmFsIGZsYWcgYW5kIHVzZSAoT2FrKQ0KPiA+ID4gICAt IFN1cHBvcnQgcXVlcnkgY29uZmlnIGZvciB1c2UgdG8gY2hlY2sga2VybmVsIHN1cHBvcnQgKEpv c2UpDQo+ID4gPiAgIC0gRG9udCBuZWVkIHRvIHRha2UgcnVudGltZSBwbSAoVmluYXkpDQo+ID4g PiBWMjoNCj4gPiA+ICAgLSBEUk1fWEVfRVhFQ19RVUVVRV9MT1dfTEFURU5DWV9ISU5UIDEgaXMg YWxyZWFkeSBwbGFubmVkIGZvcg0KPiA+IG90aGVyIGhpbnQoU3p5bW9uKQ0KPiA+ID4gICAtIEFk ZCBtb3RpdmF0aW9uIHRvIGRlc2NyaXB0aW9uIChMdWNhcykNCj4gPiA+IA0KPiA+ID4gU2lnbmVk LW9mZi1ieTogVGVqYXMgVXBhZGh5YXkgPHRlamFzLnVwYWRoeWF5QGludGVsLmNvbT4NCj4gPiA+ IC0tLQ0KPiA+ID4gIGRyaXZlcnMvZ3B1L2RybS94ZS9hYmkvZ3VjX2FjdGlvbnNfc2xwY19hYmku aCB8ICAzICsrKw0KPiA+ID4gIGRyaXZlcnMvZ3B1L2RybS94ZS94ZV9leGVjX3F1ZXVlLmMgICAg ICAgICAgICB8IDExICsrKysrKysrLS0tDQo+ID4gPiAgZHJpdmVycy9ncHUvZHJtL3hlL3hlX2V4 ZWNfcXVldWVfdHlwZXMuaCAgICAgIHwgIDMgKystDQo+ID4gPiAgZHJpdmVycy9ncHUvZHJtL3hl L3hlX2d1Y19wYy5jICAgICAgICAgICAgICAgIHwgMTYgKysrKysrKysrKysrKysrKw0KPiA+ID4g IGRyaXZlcnMvZ3B1L2RybS94ZS94ZV9ndWNfc3VibWl0LmMgICAgICAgICAgICB8ICA3ICsrKysr KysNCj4gPiA+ICBkcml2ZXJzL2dwdS9kcm0veGUveGVfcXVlcnkuYyAgICAgICAgICAgICAgICAg fCAgMyArKy0NCj4gPiA+ICBpbmNsdWRlL3VhcGkvZHJtL3hlX2RybS5oICAgICAgICAgICAgICAg ICAgICAgfCAgNiArKysrKy0NCj4gPiA+ICA3IGZpbGVzIGNoYW5nZWQsIDQzIGluc2VydGlvbnMo KyksIDYgZGVsZXRpb25zKC0pDQo+ID4gPiANCj4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0veGUvYWJpL2d1Y19hY3Rpb25zX3NscGNfYWJpLmgNCj4gPiA+IGIvZHJpdmVycy9ncHUv ZHJtL3hlL2FiaS9ndWNfYWN0aW9uc19zbHBjX2FiaS5oDQo+ID4gPiBpbmRleCA4NWFiZTRmMDlh ZTIuLmM1MDA3NWI4MjcwZiAxMDA2NDQNCj4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS94ZS9h YmkvZ3VjX2FjdGlvbnNfc2xwY19hYmkuaA0KPiA+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3hl L2FiaS9ndWNfYWN0aW9uc19zbHBjX2FiaS5oDQo+ID4gPiBAQCAtMTc0LDYgKzE3NCw5IEBAIHN0 cnVjdCBzbHBjX3Rhc2tfc3RhdGVfZGF0YSB7DQo+ID4gPiAgCX07DQo+ID4gPiAgfSBfX3BhY2tl ZDsNCj4gPiA+IA0KPiA+ID4gKyNkZWZpbmUgU0xQQ19FWEVDX1FVRVVFX0ZSRVFfUkVRX0lTX0NP TVBVVEUJUkVHX0JJVCgyOCkNCj4gPiA+ICsjZGVmaW5lIFNMUENfT1BUSU1JWkVEX1NUUkFURUdZ X0NPTVBVVEUJCVJFR19CSVQoMCkNCj4gPiA+ICsNCj4gPiA+ICBzdHJ1Y3Qgc2xwY19zaGFyZWRf ZGF0YV9oZWFkZXIgew0KPiA+ID4gIAkvKiBUb3RhbCBzaXplIGluIGJ5dGVzIG9mIHRoaXMgc2hh cmVkIGJ1ZmZlci4gKi8NCj4gPiA+ICAJdTMyIHNpemU7DQo+ID4gPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL3hlL3hlX2V4ZWNfcXVldWUuYw0KPiA+ID4gYi9kcml2ZXJzL2dwdS9kcm0v eGUveGVfZXhlY19xdWV1ZS5jDQo+ID4gPiBpbmRleCA4OTQ4ZjUwZWU1OGYuLmJkMzNmYjMxODY3 NyAxMDA2NDQNCj4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS94ZS94ZV9leGVjX3F1ZXVlLmMN Cj4gPiA+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS94ZS94ZV9leGVjX3F1ZXVlLmMNCj4gPiA+IEBA IC01NDQsNiArNTQ0LDcgQEAgaW50IHhlX2V4ZWNfcXVldWVfY3JlYXRlX2lvY3RsKHN0cnVjdCBk cm1fZGV2aWNlDQo+ID4gKmRldiwgdm9pZCAqZGF0YSwNCj4gPiA+ICAJc3RydWN0IGRybV94ZV9l bmdpbmVfY2xhc3NfaW5zdGFuY2UgX191c2VyICp1c2VyX2VjaSA9DQo+ID4gPiAgCQl1NjRfdG9f dXNlcl9wdHIoYXJncy0+aW5zdGFuY2VzKTsNCj4gPiA+ICAJc3RydWN0IHhlX2h3X2VuZ2luZSAq aHdlOw0KPiA+ID4gKwl1bnNpZ25lZCBsb25nIGZsYWdzOw0KPiA+ID4gIAlzdHJ1Y3QgeGVfdm0g KnZtOw0KPiA+ID4gIAlzdHJ1Y3QgeGVfZ3QgKmd0Ow0KPiA+ID4gIAlzdHJ1Y3QgeGVfdGlsZSAq dGlsZTsNCj4gPiA+IEBAIC01NTMsNyArNTU0LDggQEAgaW50IHhlX2V4ZWNfcXVldWVfY3JlYXRl X2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlDQo+ID4gKmRldiwgdm9pZCAqZGF0YSwNCj4gPiA+ICAJ dTMyIGxlbjsNCj4gPiA+ICAJaW50IGVycjsNCj4gPiA+IA0KPiA+ID4gLQlpZiAoWEVfSU9DVExf REJHKHhlLCBhcmdzLT5mbGFncykgfHwNCj4gPiA+ICsJaWYgKFhFX0lPQ1RMX0RCRyh4ZSwgYXJn cy0+ZmxhZ3MgJiYNCj4gPiA+ICsJCQkgIShhcmdzLT5mbGFncyAmDQo+ID4gRFJNX1hFX0VYRUNf UVVFVUVfTE9XX0xBVEVOQ1lfSElOVCkpIHx8DQo+ID4gPiAgCSAgICBYRV9JT0NUTF9EQkcoeGUs IGFyZ3MtPnJlc2VydmVkWzBdIHx8IGFyZ3MtPnJlc2VydmVkWzFdKSkNCj4gPiA+ICAJCXJldHVy biAtRUlOVkFMOw0KPiA+ID4gDQo+ID4gPiBAQCAtNTcwLDYgKzU3Miw5IEBAIGludCB4ZV9leGVj X3F1ZXVlX2NyZWF0ZV9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZQ0KPiA+ICpkZXYsIHZvaWQgKmRh dGEsDQo+ID4gPiAgCWlmIChYRV9JT0NUTF9EQkcoeGUsIGVjaVswXS5ndF9pZCA+PSB4ZS0+aW5m by5ndF9jb3VudCkpDQo+ID4gPiAgCQlyZXR1cm4gLUVJTlZBTDsNCj4gPiA+IA0KPiA+ID4gKwlp ZiAoYXJncy0+ZmxhZ3MgJiBEUk1fWEVfRVhFQ19RVUVVRV9MT1dfTEFURU5DWV9ISU5UKQ0KPiA+ ID4gKwkJZmxhZ3MgfD0gRVhFQ19RVUVVRV9GTEFHX0xPV19MQVRFTkNZOw0KPiA+ID4gKw0KPiA+ ID4gIAlpZiAoZWNpWzBdLmVuZ2luZV9jbGFzcyA9PSBEUk1fWEVfRU5HSU5FX0NMQVNTX1ZNX0JJ TkQpIHsNCj4gPiA+ICAJCWlmIChYRV9JT0NUTF9EQkcoeGUsIGFyZ3MtPndpZHRoICE9IDEpIHx8 DQo+ID4gPiAgCQkgICAgWEVfSU9DVExfREJHKHhlLCBhcmdzLT5udW1fcGxhY2VtZW50cyAhPSAx KSB8fCBAQCAtDQo+ID4gNTc4LDggKzU4Myw4DQo+ID4gPiBAQCBpbnQgeGVfZXhlY19xdWV1ZV9j cmVhdGVfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwNCj4gPiA+IA0K PiA+ID4gIAkJZm9yX2VhY2hfdGlsZSh0aWxlLCB4ZSwgaWQpIHsNCj4gPiA+ICAJCQlzdHJ1Y3Qg eGVfZXhlY19xdWV1ZSAqbmV3Ow0KPiA+ID4gLQkJCXUzMiBmbGFncyA9IEVYRUNfUVVFVUVfRkxB R19WTTsNCj4gPiA+IA0KPiA+ID4gKwkJCWZsYWdzIHw9IEVYRUNfUVVFVUVfRkxBR19WTTsNCj4g PiA+ICAJCQlpZiAoaWQpDQo+ID4gPiAgCQkJCWZsYWdzIHw9DQo+ID4gRVhFQ19RVUVVRV9GTEFH X0JJTkRfRU5HSU5FX0NISUxEOw0KPiA+ID4gDQo+ID4gPiBAQCAtNjI2LDcgKzYzMSw3IEBAIGlu dCB4ZV9leGVjX3F1ZXVlX2NyZWF0ZV9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZQ0KPiA+ICpkZXYs IHZvaWQgKmRhdGEsDQo+ID4gPiAgCQl9DQo+ID4gPiANCj4gPiA+ICAJCXEgPSB4ZV9leGVjX3F1 ZXVlX2NyZWF0ZSh4ZSwgdm0sIGxvZ2ljYWxfbWFzaywNCj4gPiA+IC0JCQkJCSBhcmdzLT53aWR0 aCwgaHdlLCAwLA0KPiA+ID4gKwkJCQkJIGFyZ3MtPndpZHRoLCBod2UsIGZsYWdzLA0KPiA+ID4g IAkJCQkJIGFyZ3MtPmV4dGVuc2lvbnMpOw0KPiA+ID4gIAkJdXBfcmVhZCgmdm0tPmxvY2spOw0K PiA+ID4gIAkJeGVfdm1fcHV0KHZtKTsNCj4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0veGUveGVfZXhlY19xdWV1ZV90eXBlcy5oDQo+ID4gPiBiL2RyaXZlcnMvZ3B1L2RybS94ZS94 ZV9leGVjX3F1ZXVlX3R5cGVzLmgNCj4gPiA+IGluZGV4IDVhZjU0MTljZWM3YS4uMzBkYzEyOWE2 YjA5IDEwMDY0NA0KPiA+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3hlL3hlX2V4ZWNfcXVldWVf dHlwZXMuaA0KPiA+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3hlL3hlX2V4ZWNfcXVldWVfdHlw ZXMuaA0KPiA+ID4gQEAgLTg1LDcgKzg1LDggQEAgc3RydWN0IHhlX2V4ZWNfcXVldWUgew0KPiA+ ID4gICNkZWZpbmUgRVhFQ19RVUVVRV9GTEFHX0JJTkRfRU5HSU5FX0NISUxECUJJVCgzKQ0KPiA+ ID4gIC8qIGtlcm5lbCBleGVjX3F1ZXVlIG9ubHksIHNldCBwcmlvcml0eSB0byBoaWdoZXN0IGxl dmVsICovDQo+ID4gPiAgI2RlZmluZSBFWEVDX1FVRVVFX0ZMQUdfSElHSF9QUklPUklUWQkJQklU KDQpDQo+ID4gPiAtDQo+ID4gPiArLyogZmxhZyB0byBpbmRpY2F0ZSBsb3cgbGF0ZW5jeSBoaW50 IHRvIGd1YyAqLw0KPiA+ID4gKyNkZWZpbmUgRVhFQ19RVUVVRV9GTEFHX0xPV19MQVRFTkNZCQlC SVQoNSkNCj4gPiA+ICAJLyoqDQo+ID4gPiAgCSAqIEBmbGFnczogZmxhZ3MgZm9yIHRoaXMgZXhl YyBxdWV1ZSwgc2hvdWxkIHN0YXRpY2FsbHkgc2V0dXAgYXNpZGUgZnJvbQ0KPiA+IGJhbg0KPiA+ ID4gIAkgKiBiaXQNCj4gPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0veGUveGVfZ3Vj X3BjLmMNCj4gPiA+IGIvZHJpdmVycy9ncHUvZHJtL3hlL3hlX2d1Y19wYy5jIGluZGV4IGRmN2Yx MzBmYjY2My4uNGVmYTM0ODVmZmZjDQo+ID4gPiAxMDA2NDQNCj4gPiA+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS94ZS94ZV9ndWNfcGMuYw0KPiA+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3hlL3hl X2d1Y19wYy5jDQo+ID4gPiBAQCAtOTkyLDYgKzk5MiwxNyBAQCBzdGF0aWMgaW50IHBjX2luaXRf ZnJlcXMoc3RydWN0IHhlX2d1Y19wYyAqcGMpDQo+ID4gPiAgCXJldHVybiByZXQ7DQo+ID4gPiAg fQ0KPiA+ID4gDQo+ID4gPiArc3RhdGljIGludCB4ZV9ndWNfcGNfc2V0X3N0cmF0ZWd5KHN0cnVj dCB4ZV9ndWNfcGMgKnBjLCB1MzIgdmFsKSB7DQo+ID4gPiArCWludCByZXQgPSAwOw0KPiA+ID4g Kw0KPiA+ID4gKwlyZXQgPSBwY19hY3Rpb25fc2V0X3BhcmFtKHBjLA0KPiA+ID4gKwkJCQkgIFNM UENfUEFSQU1fU1RSQVRFR0lFUywNCj4gPiA+ICsJCQkJICB2YWwpOw0KPiA+ID4gKw0KPiA+ID4g KwlyZXR1cm4gcmV0Ow0KPiA+ID4gK30NCj4gPiA+ICsNCj4gPiA+ICAvKioNCj4gPiA+ICAgKiB4 ZV9ndWNfcGNfc3RhcnQgLSBTdGFydCBHdUMncyBQb3dlciBDb25zZXJ2YXRpb24gY29tcG9uZW50 DQo+ID4gPiAgICogQHBjOiBYZV9HdUNfUEMgaW5zdGFuY2UNCj4gPiA+IEBAIC0xMDUxLDYgKzEw NjIsMTEgQEAgaW50IHhlX2d1Y19wY19zdGFydChzdHJ1Y3QgeGVfZ3VjX3BjICpwYykNCj4gPiA+ ICAJfQ0KPiA+ID4gDQo+ID4gPiAgCXJldCA9IHBjX2FjdGlvbl9zZXR1cF9ndWNyYyhwYywgR1VD UkNfRklSTVdBUkVfQ09OVFJPTCk7DQo+ID4gPiArCWlmIChyZXQpDQo+ID4gPiArCQlnb3RvIG91 dDsNCj4gPiA+ICsNCj4gPiA+ICsJLyogRW5hYmxlIFNMUEMgT3B0aW1pemVkIFN0cmF0ZWd5IGZv ciBjb21wdXRlICovDQo+ID4gPiArCXJldCA9IHhlX2d1Y19wY19zZXRfc3RyYXRlZ3kocGMsDQo+ ID4gU0xQQ19PUFRJTUlaRURfU1RSQVRFR1lfQ09NUFVURSk7DQo+ID4gPiANCj4gPiA+ICBvdXQ6 DQo+ID4gPiAgCXhlX2ZvcmNlX3dha2VfcHV0KGd0X3RvX2Z3KGd0KSwgZndfcmVmKTsgZGlmZiAt LWdpdA0KPiA+ID4gYS9kcml2ZXJzL2dwdS9kcm0veGUveGVfZ3VjX3N1Ym1pdC5jDQo+ID4gPiBi L2RyaXZlcnMvZ3B1L2RybS94ZS94ZV9ndWNfc3VibWl0LmMNCj4gPiA+IGluZGV4IDkxM2M3NGQ2 ZTJhZS4uNGM4ZjY5NDI3NDIxIDEwMDY0NA0KPiA+ID4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3hl L3hlX2d1Y19zdWJtaXQuYw0KPiA+ID4gKysrIGIvZHJpdmVycy9ncHUvZHJtL3hlL3hlX2d1Y19z dWJtaXQuYw0KPiA+ID4gQEAgLTE1LDYgKzE1LDcgQEANCj4gPiA+ICAjaW5jbHVkZSA8ZHJtL2Ry bV9tYW5hZ2VkLmg+DQo+ID4gPiANCj4gPiA+ICAjaW5jbHVkZSAiYWJpL2d1Y19hY3Rpb25zX2Fi aS5oIg0KPiA+ID4gKyNpbmNsdWRlICJhYmkvZ3VjX2FjdGlvbnNfc2xwY19hYmkuaCINCj4gPiA+ ICAjaW5jbHVkZSAiYWJpL2d1Y19rbHZzX2FiaS5oIg0KPiA+ID4gICNpbmNsdWRlICJyZWdzL3hl X2xyY19sYXlvdXQuaCINCj4gPiA+ICAjaW5jbHVkZSAieGVfYXNzZXJ0LmgiDQo+ID4gPiBAQCAt NDAwLDYgKzQwMSw3IEBAIHN0YXRpYyB2b2lkDQo+ID4gPiBfX2d1Y19leGVjX3F1ZXVlX3BvbGlj eV9hZGRfIyNmdW5jKHN0cnVjdCBleGVjX3F1ZXVlX3BvbGljeSAqcG9saWN5LA0KPiA+ID4gTUFL RV9FWEVDX1FVRVVFX1BPTElDWV9BREQoZXhlY3V0aW9uX3F1YW50dW0sDQo+ID4gRVhFQ1VUSU9O X1FVQU5UVU0pDQo+ID4gPiBNQUtFX0VYRUNfUVVFVUVfUE9MSUNZX0FERChwcmVlbXB0aW9uX3Rp bWVvdXQsDQo+ID4gUFJFRU1QVElPTl9USU1FT1VUKQ0KPiA+ID4gTUFLRV9FWEVDX1FVRVVFX1BP TElDWV9BREQocHJpb3JpdHksIFNDSEVEVUxJTkdfUFJJT1JJVFkpDQo+ID4gPiArTUFLRV9FWEVD X1FVRVVFX1BPTElDWV9BREQoc2xwY19jdHhfZnJlcV9yZXEsDQo+ID4gU0xQTV9HVF9GUkVRVUVO Q1kpDQo+ID4gPiAgI3VuZGVmIE1BS0VfRVhFQ19RVUVVRV9QT0xJQ1lfQUREDQo+ID4gPiANCj4g PiA+ICBzdGF0aWMgY29uc3QgaW50IHhlX2V4ZWNfcXVldWVfcHJpb190b19ndWNbXSA9IHsgQEAg LTQxNCwxNCArNDE2LDE5DQo+ID4gPiBAQCBzdGF0aWMgdm9pZCBpbml0X3BvbGljaWVzKHN0cnVj dCB4ZV9ndWMgKmd1Yywgc3RydWN0IHhlX2V4ZWNfcXVldWUgKnEpDQo+ID4gPiAgCXN0cnVjdCBl eGVjX3F1ZXVlX3BvbGljeSBwb2xpY3k7DQo+ID4gPiAgCWVudW0geGVfZXhlY19xdWV1ZV9wcmlv cml0eSBwcmlvID0gcS0+c2NoZWRfcHJvcHMucHJpb3JpdHk7DQo+ID4gPiAgCXUzMiB0aW1lc2xp Y2VfdXMgPSBxLT5zY2hlZF9wcm9wcy50aW1lc2xpY2VfdXM7DQo+ID4gPiArCXUzMiBzbHBjX2N0 eF9mcmVxX3JlcSA9IDA7DQo+ID4gPiAgCXUzMiBwcmVlbXB0X3RpbWVvdXRfdXMgPSBxLT5zY2hl ZF9wcm9wcy5wcmVlbXB0X3RpbWVvdXRfdXM7DQo+ID4gPiANCj4gPiA+ICAJeGVfZ3RfYXNzZXJ0 KGd1Y190b19ndChndWMpLCBleGVjX3F1ZXVlX3JlZ2lzdGVyZWQocSkpOw0KPiA+ID4gDQo+ID4g PiArCWlmIChxLT5mbGFncyAmIEVYRUNfUVVFVUVfRkxBR19MT1dfTEFURU5DWSkNCj4gPiA+ICsJ CXNscGNfY3R4X2ZyZXFfcmVxIHw9DQo+ID4gU0xQQ19FWEVDX1FVRVVFX0ZSRVFfUkVRX0lTX0NP TVBVVEU7DQo+ID4gPiArDQo+ID4gPiAgCV9fZ3VjX2V4ZWNfcXVldWVfcG9saWN5X3N0YXJ0X2ts digmcG9saWN5LCBxLT5ndWMtPmlkKTsNCj4gPiA+ICAJX19ndWNfZXhlY19xdWV1ZV9wb2xpY3lf YWRkX3ByaW9yaXR5KCZwb2xpY3ksDQo+ID4geGVfZXhlY19xdWV1ZV9wcmlvX3RvX2d1Y1twcmlv XSk7DQo+ID4gPiAgCV9fZ3VjX2V4ZWNfcXVldWVfcG9saWN5X2FkZF9leGVjdXRpb25fcXVhbnR1 bSgmcG9saWN5LA0KPiA+IHRpbWVzbGljZV91cyk7DQo+ID4gPiAgCV9fZ3VjX2V4ZWNfcXVldWVf cG9saWN5X2FkZF9wcmVlbXB0aW9uX3RpbWVvdXQoJnBvbGljeSwNCj4gPiA+IHByZWVtcHRfdGlt ZW91dF91cyk7DQo+ID4gPiArCV9fZ3VjX2V4ZWNfcXVldWVfcG9saWN5X2FkZF9zbHBjX2N0eF9m cmVxX3JlcSgmcG9saWN5LA0KPiA+ID4gK3NscGNfY3R4X2ZyZXFfcmVxKTsNCj4gPiA+IA0KPiA+ ID4gIAl4ZV9ndWNfY3Rfc2VuZCgmZ3VjLT5jdCwgKHUzMiAqKSZwb2xpY3kuaDJnLA0KPiA+ID4g IAkJICAgICAgIF9fZ3VjX2V4ZWNfcXVldWVfcG9saWN5X2FjdGlvbl9zaXplKCZwb2xpY3kpLCAw LCAwKTsgZGlmZg0KPiA+ID4gLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0veGUveGVfcXVlcnkuYyBi L2RyaXZlcnMvZ3B1L2RybS94ZS94ZV9xdWVyeS5jDQo+ID4gPiBpbmRleCBjMDU5NjM5NjEzZjcu LmFlZWEwMTcxOThmMiAxMDA2NDQNCj4gPiA+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS94ZS94ZV9x dWVyeS5jDQo+ID4gPiArKysgYi9kcml2ZXJzL2dwdS9kcm0veGUveGVfcXVlcnkuYw0KPiA+ID4g QEAgLTMzNCw3ICszMzQsOCBAQCBzdGF0aWMgaW50IHF1ZXJ5X2NvbmZpZyhzdHJ1Y3QgeGVfZGV2 aWNlICp4ZSwgc3RydWN0DQo+ID4gZHJtX3hlX2RldmljZV9xdWVyeSAqcXVlcnkpDQo+ID4gPiAg CQl4ZS0+aW5mby5kZXZpZCB8ICh4ZS0+aW5mby5yZXZpZCA8PCAxNik7DQo+ID4gPiAgCWlmICh4 ZV9kZXZpY2VfZ2V0X3Jvb3RfdGlsZSh4ZSktPm1lbS52cmFtLnVzYWJsZV9zaXplKQ0KPiA+ID4g IAkJY29uZmlnLT5pbmZvW0RSTV9YRV9RVUVSWV9DT05GSUdfRkxBR1NdID0NCj4gPiA+IC0JCQlE Uk1fWEVfUVVFUllfQ09ORklHX0ZMQUdfSEFTX1ZSQU07DQo+ID4gPiArCQkJRFJNX1hFX1FVRVJZ X0NPTkZJR19GTEFHX0hBU19WUkFNIHwNCj4gPiA+ICsNCj4gPiAJRFJNX1hFX1FVRVJZX0NPTkZJ R19GTEFHX0VRVUVVRV9IQVNfTE9XX0xBVEVOQ1k7DQo+ID4gPiAgCWNvbmZpZy0+aW5mb1tEUk1f WEVfUVVFUllfQ09ORklHX01JTl9BTElHTk1FTlRdID0NCj4gPiA+ICAJCXhlLT5pbmZvLnZyYW1f ZmxhZ3MgJiBYRV9WUkFNX0ZMQUdTX05FRUQ2NEsgPyBTWl82NEsgOg0KPiA+IFNaXzRLOw0KPiA+ ID4gIAljb25maWctPmluZm9bRFJNX1hFX1FVRVJZX0NPTkZJR19WQV9CSVRTXSA9IHhlLT5pbmZv LnZhX2JpdHM7DQo+ID4gZGlmZg0KPiA+ID4gLS1naXQgYS9pbmNsdWRlL3VhcGkvZHJtL3hlX2Ry bS5oIGIvaW5jbHVkZS91YXBpL2RybS94ZV9kcm0uaCBpbmRleA0KPiA+ID4gZjYyNjg5Y2E4NjFh Li5mZDg3NTVmN2RlNzggMTAwNjQ0DQo+ID4gPiAtLS0gYS9pbmNsdWRlL3VhcGkvZHJtL3hlX2Ry bS5oDQo+ID4gPiArKysgYi9pbmNsdWRlL3VhcGkvZHJtL3hlX2RybS5oDQo+ID4gPiBAQCAtMzkz LDYgKzM5Myw4IEBAIHN0cnVjdCBkcm1feGVfcXVlcnlfbWVtX3JlZ2lvbnMgew0KPiA+ID4gICAq DQo+ID4gPiAgICogICAgLSAlRFJNX1hFX1FVRVJZX0NPTkZJR19GTEFHX0hBU19WUkFNIC0gRmxh ZyBpcyBzZXQgaWYgdGhlIGRldmljZQ0KPiA+ID4gICAqICAgICAgaGFzIHVzYWJsZSBWUkFNDQo+ ID4gPiArICogICAgLSAlRFJNX1hFX1FVRVJZX0NPTkZJR19GTEFHX0hBU19WUkFNIC0gRmxhZyBp cyBzZXQgaWYgdGhlDQo+ID4gZGV2aWNlDQo+ID4gPiArICogICAgICBoYXMgdXNhYmxlIFZSQU0N Cj4gPiANCj4gPiBwcm9iYWJseSB0aGUgaW50ZW50aW9uIHdhcyBub3QgdG8gZHVwbGljYXRlDQo+ ID4gRFJNX1hFX1FVRVJZX0NPTkZJR19GTEFHX0hBU19WUkFNIGNvbW1lbnQNCj4gPiANCj4gPiA+ ICAgKiAgLSAlRFJNX1hFX1FVRVJZX0NPTkZJR19NSU5fQUxJR05NRU5UIC0gTWluaW1hbCBtZW1v cnkNCj4gPiBhbGlnbm1lbnQNCj4gPiA+ICAgKiAgICByZXF1aXJlZCBieSB0aGlzIGRldmljZSwg dHlwaWNhbGx5IFNaXzRLIG9yIFNaXzY0Sw0KPiA+ID4gICAqICAtICVEUk1fWEVfUVVFUllfQ09O RklHX1ZBX0JJVFMgLSBNYXhpbXVtIGJpdHMgb2YgYSB2aXJ0dWFsDQo+ID4gPiBhZGRyZXNzIEBA IC00MDksNiArNDExLDcgQEAgc3RydWN0IGRybV94ZV9xdWVyeV9jb25maWcgew0KPiA+ID4gICNk ZWZpbmUgRFJNX1hFX1FVRVJZX0NPTkZJR19SRVZfQU5EX0RFVklDRV9JRAkwDQo+ID4gPiAgI2Rl ZmluZSBEUk1fWEVfUVVFUllfQ09ORklHX0ZMQUdTCQkJMQ0KPiA+ID4gIAkjZGVmaW5lIERSTV9Y RV9RVUVSWV9DT05GSUdfRkxBR19IQVNfVlJBTQkoMSA8PCAwKQ0KPiA+ID4gKwkjZGVmaW5lDQo+ ID4gRFJNX1hFX1FVRVJZX0NPTkZJR19GTEFHX0VRVUVVRV9IQVNfTE9XX0xBVEVOQ1kJKDEgPDwg MSkNCj4gPiANCj4gPiAqRSpRVUVVRQ0KPiANCj4gQ2FuIHlvdSBwbGVhc2UgbWFrZSBpdCBtb3Jl IGNsZWFyIHdoYXQgdGhpcyBtZWFucz8NCg0KSW4gbm8gcGxhY2UgaW4gdWFwaSBhcmUgc2hvcnRl bmluZyBleGVjX3F1ZXVlIGJ5IGVxdWV1ZSwgc28gcGxlYXNlIGRvbid0IGRvIGl0IGhlcmUuDQoN Cj4gDQo+IFRlamFzDQo+ID4gDQo+ID4gPiAgI2RlZmluZSBEUk1fWEVfUVVFUllfQ09ORklHX01J Tl9BTElHTk1FTlQJCTINCj4gPiA+ICAjZGVmaW5lIERSTV9YRV9RVUVSWV9DT05GSUdfVkFfQklU UwkJCTMNCj4gPiA+ICAjZGVmaW5lIERSTV9YRV9RVUVSWV9DT05GSUdfTUFYX0VYRUNfUVVFVUVf UFJJT1JJVFkJNA0KPiA+ID4gQEAgLTEwOTcsNiArMTEwMCw3IEBAIHN0cnVjdCBkcm1feGVfdm1f YmluZCB7DQo+ID4gPiAgICogICAgICAgICAuZW5naW5lX2NsYXNzID0gRFJNX1hFX0VOR0lORV9D TEFTU19SRU5ERVIsDQo+ID4gPiAgICogICAgIH07DQo+ID4gPiAgICogICAgIHN0cnVjdCBkcm1f eGVfZXhlY19xdWV1ZV9jcmVhdGUgZXhlY19xdWV1ZV9jcmVhdGUgPSB7DQo+ID4gPiArICogICAg ICAgICAgLmZsYWdzID0gRFJNX1hFX0VYRUNfUVVFVUVfTE9XX0xBVEVOQ1lfSElOVCBvciAwDQo+ ID4gPiAgICogICAgICAgICAgLmV4dGVuc2lvbnMgPSAwLA0KPiA+ID4gICAqICAgICAgICAgIC52 bV9pZCA9IHZtLA0KPiA+ID4gICAqICAgICAgICAgIC5udW1fYmJfcGVyX2V4ZWMgPSAxLA0KPiA+ ID4gQEAgLTExMTAsNyArMTExNCw2IEBAIHN0cnVjdCBkcm1feGVfZXhlY19xdWV1ZV9jcmVhdGUg ew0KPiA+ID4gICNkZWZpbmUgRFJNX1hFX0VYRUNfUVVFVUVfRVhURU5TSU9OX1NFVF9QUk9QRVJU WQkJMA0KPiA+ID4gICNkZWZpbmUgICBEUk1fWEVfRVhFQ19RVUVVRV9TRVRfUFJPUEVSVFlfUFJJ T1JJVFkJCTANCj4gPiA+ICAjZGVmaW5lICAgRFJNX1hFX0VYRUNfUVVFVUVfU0VUX1BST1BFUlRZ X1RJTUVTTElDRQkJMQ0KPiA+ID4gLQ0KPiA+ID4gIAkvKiogQGV4dGVuc2lvbnM6IFBvaW50ZXIg dG8gdGhlIGZpcnN0IGV4dGVuc2lvbiBzdHJ1Y3QsIGlmIGFueSAqLw0KPiA+ID4gIAlfX3U2NCBl eHRlbnNpb25zOw0KPiA+ID4gDQo+ID4gPiBAQCAtMTEyMyw2ICsxMTI2LDcgQEAgc3RydWN0IGRy bV94ZV9leGVjX3F1ZXVlX2NyZWF0ZSB7DQo+ID4gPiAgCS8qKiBAdm1faWQ6IFZNIHRvIHVzZSBm b3IgdGhpcyBleGVjIHF1ZXVlICovDQo+ID4gPiAgCV9fdTMyIHZtX2lkOw0KPiA+ID4gDQo+ID4g PiArI2RlZmluZSBEUk1fWEVfRVhFQ19RVUVVRV9MT1dfTEFURU5DWV9ISU5UCSgweDEgPDwgMSkN Cj4gPiANCj4gPiBmb2xsb3cgdGhlIG90aGVyIGJpdHMgYW5kIGRyb3AgdGhlICcweCcgYWxzbyBp dCBuZWVkcyB0byBzdGFydCBvbiAwLCBzbyBpdCBzaG91bGQNCj4gPiBiZSAoMSA8PCAwKQ0KPiA+ IA0KPiA+ID4gIAkvKiogQGZsYWdzOiBNQlogKi8NCj4gPiANCj4gPiByZW1vdmUgdGhlIG1ieg0K PiA+IA0KPiA+ID4gIAlfX3UzMiBmbGFnczsNCj4gPiA+IA0KPiANCg0K