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 E563AFB3CE2 for ; Mon, 30 Mar 2026 09:06:39 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 6C2ED10E513; Mon, 30 Mar 2026 09:06:35 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=hotmail.com header.i=@hotmail.com header.b="WK3HS0Qk"; dkim-atps=neutral Received: from CP4P284CU005.outbound.protection.outlook.com (mail-brazilsouthazolkn19011034.outbound.protection.outlook.com [52.103.21.34]) by gabe.freedesktop.org (Postfix) with ESMTPS id F1E9510E0A0; Sun, 29 Mar 2026 22:22:58 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=K70+wBoB7rUiPiPVmERjEcnTI54j4Z/8LlbLeyoVUL6jzz3CRNwEXS9nboJvBsuR9o5pnZh/PRiDAh2aRCYJvm45b97fTD8MBodC57u97ko1+WL9KkfC9E75hBEd/24RP0Jsl2luMfxZ+xGRg6blDAX4w0mzSjXBFyWBO10DHUsPhItsOOIh+7yhtXrnhF2MhYoxohHyskC85Sk9f6sudmNPBzGilKmBVwOwie+AyIu3Cg2DMByXoqT1dKZexVnrVvpYZwgH+GwtFaV+wJj2jOu5Bc3vDbR6M4xcLNJxvwuQeby7fOmQViXErpTTCboF8b6fSL8ncakl3t71P9XCmA== 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=tlEd8/dB4frJ0xj+Zj1SnIfstxKLhi3F3D2uCJIm0os=; b=TxEJ5Yx+syTTWG4UnbGr/6CwQd9Lmcxs959fthRvNaeTo8Iems4ASo3QKAh8fB0op3KcV41j+5YR0APF23WvLvTJDVrpj15NnYLbc+iReTzE0eBNWV+BKLlna5fKg4tsMKEdBwUnDZcE7etMoY2BuNEbyf8/nO8bJ20vDWe2FKEre1NHLXwJayw8JGBzubg4vyj3RxNGkDJp+Ya7duNgE8iVvUAzLYO5nyhTSem8RYa40c7UlNST5BhLGFeox0IMYDu2cAaxFxc5yA9PdnrCfSwi2st3qFOnsql2ey0R1AjJl/eHFrhCD/fxDIcdtSaGBdX1nAKthlEjP+4jBVpy5A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tlEd8/dB4frJ0xj+Zj1SnIfstxKLhi3F3D2uCJIm0os=; b=WK3HS0Qkz6bp3imhEHb2C6QdtnNrhAoNOARlYPXM8/OkicYOl2p7apy+64LSQ2B9PHQEEgj8XNiAfWdWj7yDosZ1niO1m54yqJDCodiKriyv//xVWkregoMxE0TePL/J+b9ejy5voABnCW/fQZrbwV8ZSWjOO2uqtOr9JkG8hKpayBYkas5gtHiHJ/ICDIw7grFOxMNdd0tBt3A+UgGuDWOY6YXbpr+0bceJz02LI8T3jfVlz2Rs9JtvhECyfDAhka0lsehoGJCSUTJnwBrjS6MVXmx7dcPl5FqHqQReryuAGoOCCRRM1pLU7YKBFu6jhDssU8f1CNUqRm9qoxNJqw== Received: from CP9P284MB3908.BRAP284.PROD.OUTLOOK.COM (2603:10d6:103:38c::8) by RIXP284MB3865.BRAP284.PROD.OUTLOOK.COM (2603:10d6:10:17c::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9745.28; Sun, 29 Mar 2026 22:22:53 +0000 Received: from CP9P284MB3908.BRAP284.PROD.OUTLOOK.COM ([fe80::2ed0:cdde:9d51:f021]) by CP9P284MB3908.BRAP284.PROD.OUTLOOK.COM ([fe80::2ed0:cdde:9d51:f021%5]) with mapi id 15.20.9745.027; Sun, 29 Mar 2026 22:22:53 +0000 From: Yuri Martins To: intel-xe@lists.freedesktop.org Cc: Matthew Brost , =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= , Rodrigo Vivi , David Airlie , Simona Vetter , Matthew Auld , Matt Roper , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: [PATCH] drm/xe/bo: Cache vram_region_gpu_offset in struct xe_bo Date: Sun, 29 Mar 2026 19:22:47 -0300 Message-ID: X-Mailer: git-send-email 2.43.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-ClientProxiedBy: CP5P284CA0156.BRAP284.PROD.OUTLOOK.COM (2603:10d6:103:22a::15) To CP9P284MB3908.BRAP284.PROD.OUTLOOK.COM (2603:10d6:103:38c::8) X-Microsoft-Original-Message-ID: <20260329222251.600976-1-yurimartins2004@hotmail.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CP9P284MB3908:EE_|RIXP284MB3865:EE_ X-MS-Office365-Filtering-Correlation-Id: 297967e9-84f3-4063-a14d-08de8de1b83e X-Microsoft-Antispam: BCL:0; ARA:14566002|461199028|8060799015|41001999006|23021999003|19110799012|39105399006|5072599009|15080799012|5062599005|6090799003|40105399003|440099028|3412199025|18061999006; X-Microsoft-Antispam-Message-Info: =?utf-8?B?QUVpM3lybXcyeEt1R0ZmWEtWUFBHbXVDSHRmM0pGZy9qeStCdzdXbWxGTVZ6?= =?utf-8?B?VzlOMlBHUzNPNm5laG1MeHA4NktCcjBqcjN6YTVXdEFDcysvK1piUXFvUU94?= =?utf-8?B?cjJqWGxYdUM5SEoyd0thNUlLTW5FWlFLeWRqWFNEY3RBRU9rcWVjWUNqNkZ1?= =?utf-8?B?cGZnd0VCVG8xY3hqUFkxNXozRXNmNGtPRUlmODlCVEdRUXdmT25TbjV4Szhj?= =?utf-8?B?TmlJVnZlMmRzU002aFFhN3JOVGtha2xuU1BLSmI1TjRGRnNWZmYyM0ViQkFT?= =?utf-8?B?dXFkU3Q2NTlqVU5VTGRsbWtCWnNvRUZFUExHdTczYTUxci9vN0V2Z1djODZY?= =?utf-8?B?OXB3bTVUbUpQdlM3UkdrUkcyOVo2TENXdWZnZDRmTWIraUxWMVVlS0hnZTJK?= =?utf-8?B?ZTNCY1BFRERVRmhlaGhhZlcycVVyRGpwWHBhMkU5VTJGcjJza05BQ0lqSSt4?= =?utf-8?B?ZUtSeXY1ZEJQdkI0OTlWTGt3aCtObkR1Mmg0VnZnakJweG9jL1BMcEZBYkpl?= =?utf-8?B?VWpDWWRvNGxyaXJOYUlqdm8zWDlnRnZxK1FpOHRhcklCVW9Hc3ljZ0NjMy8w?= =?utf-8?B?RlM2anYra05RZFpzcXREMVZRVHQ3b0ZvdlVWck85aitqbzBxWDJXN3lINWhk?= =?utf-8?B?cksvTGE0UFJTRmdEUlFJdUt1TmExSjJrbDk4bHVRWHJRZ3lRRUc0NHFoSXJa?= =?utf-8?B?dG9qRVdpU2d3dmQ1bEovNmRuWGVRTzBZeUIzMklpVnZ5dW5WTFVmdlJSVVZt?= =?utf-8?B?aXQybXNmcEgwTGxIOWxNUjJpSVlZNC8ybWV0d2hxcUFkazVDb25XMWRDVFFX?= =?utf-8?B?Y3M1cmxFT0ZuS3cxKzNLTncxdE9qZTh6aWdZRVRLRG1ZMHU5Q3gxSHJ2SlhP?= =?utf-8?B?dHlHWGtXTFp1MEE4cWx2L21GTUJvMGQxVnVJbXEvZU02NlZRRnZMNWFUN1Jy?= =?utf-8?B?T3JHUkJKS1czam5DTEhiZWEwSXdSbEc5QU40QmFvbC9oMVZVeVN6VWExeENz?= =?utf-8?B?L2RBc2d4UlJUa3dBdEd3aEZLWFV5alhwNjlWcnhQeU5XcXB4eUtBNjRNeWtt?= =?utf-8?B?YXQvck5TZWY1enVrYStXRU1HVGZ0RXM0T2xZck54VXhvRGhlWmxhdGhMVjRt?= =?utf-8?B?TXc4eDRXaldKMTRySWFZM0RTQzJrelNpaVc1R1pKVDlMaDZXa2FzUldXc01D?= =?utf-8?B?MEJ3a1AxSUtHRXRNbFM3N055bExzc0QvVWs2VzQxLzFFdW1yaUFpNjI3VGJ6?= =?utf-8?B?dW9nNW5Vam0vNGhOV2lUTko1Mms1dkl5UExEU3A5dGh2ekZ3T2FORlVCbmQr?= =?utf-8?B?U2IvelBJS3I0dk9MK0tRc0hocHpJRFg5aUdDZnprekVSNFpCeWs2L2NRYnVy?= =?utf-8?B?enZSQkRFUXNyM1E9PQ==?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MU41TDlJeU9zZEJvNEozNTNub2pmaTRnQmhBNVRldDU5UFVYV25QWXI4eFVE?= =?utf-8?B?aS8yR3U4ZzA4UkM3bDlyMGhpSWcrNmFPUHFSR2QyR1c0WFBUVThxbVFIWlpm?= =?utf-8?B?a0pTNXBaM3FmNHNKckZSQmNYL05qcXZTNkFuSi9qYmpGd2ZHZUVXWTJ3TUdx?= =?utf-8?B?YkdYdEdJTHR2SWhuTFpXWDJRUHM5YkUveVIrUjNlWUpUcGN0MWNxV0xVc2xH?= =?utf-8?B?V3p6aUlSZXhmbjNMVllpRGh1VjhRQjBVV3d3RXQzN3BoU3hiRjVzMHppVXFH?= =?utf-8?B?SHkyL0RiN1ZRejREcmFRUHBEb2ZEMm5GRzdHWm9Yczh4ZjBhME5EUHA3UTM5?= =?utf-8?B?YVJzU1RLTnRKVTk3aFhKQUpMOWFCcXY5ZVpXRXBJUFdTWjdhY0hNdzRkNmgw?= =?utf-8?B?MjVBNDB2K2lPL055Y2hNV3lLQ3N3Vm9SUVFyeDYvYmRkWjdDWVJTRFNiNHlR?= =?utf-8?B?a21RdmJXMEVrT0ZIWkN2SklyWHYvN0RZOFVlMHJkRmZkNnlkQU16alY1dTBC?= =?utf-8?B?TnpTZVlqdGNVV3NXNHJmSVRaaVd3N0gySzREOUlqb3VzTDBXSGl6emRJK3Yz?= =?utf-8?B?MHVJSXBRbmRKTzJuSXZvQzRxWjhNeFFpNG5LMXhlT242UC9UYjNPQVpFVVdQ?= =?utf-8?B?clY1RjA5VGd2STJYaVZtSWJnRHFVWTl3anBXQzBvVzIya1dqRWxycVBOM0Vw?= =?utf-8?B?bCtuYjZyRmNDTGFKN0dmT2w0Zy9keTkwSTI0WTdpQzUwUVpxTk50cVV6VktB?= =?utf-8?B?aGMrZXJNQW8wV0k4WkwrUjBjZkZMcHY3Qi8wcCtUeDE3MkFnL2xMRkMyWUxQ?= =?utf-8?B?enpDbGVmL1lUUzhyR2hTMW4vRVFFdmViNXkwMnRGQ2hkaWxUaDVUbHhBZzF4?= =?utf-8?B?UWpFNkxiM2I4YlJLaGt5ZHVNd3N2YkpGOXNaZDBDYmZucVVLajJaY0ppUTFn?= =?utf-8?B?WFpOdGFHdm9FdjhqOHVwaFRtdytmam1QT0p2dkF6MmwrVTl3S05HbXVYWWgw?= =?utf-8?B?NVM1TzBmWFAyVTljM3h1WloxeGtGSUVzR1U2MTA3aXl6WmdYNk1OazBrTTBy?= =?utf-8?B?azhBZk9WdWdwbVVKZGFSK0dBNUhSTWZuR2svcDN6Z3NZdEdVbXdzb1VuMWpX?= =?utf-8?B?NUNPdCt5VHBRM2FrN3J1SFVGUzJxb1NhQ2F4cDZhRGl6T2plMGgxUXB6VTNZ?= =?utf-8?B?YXREdjQ5UjYrdGZwbXNqQkdJYlZsdDVDNVlEZmo2UGVlRFIrcHNJVkJxU3RR?= =?utf-8?B?OGx4Z0poRkswQXNzN21FNy8zekI3UU9vSG1jeUIyVXVSaTY1K0E3VTBRUVpU?= =?utf-8?B?RXVmalVRVlpUU3NBSTNFRGhjRlV4aFBjaDl5VEdvQWJhQ2luNTFZUDdzZjZM?= =?utf-8?B?dTd4UTdPVXJwb2ZlZjdPbjVaTHBtQUd0SSt6cE55cGhIVDRyaWRHNFJaQ1Jv?= =?utf-8?B?LzVja0FSczdSdlBFdTliQkZZUXFMTWpJSXNuQzVUZkJMdWxoWXhhazFSQ2xj?= =?utf-8?B?UThxTVFhdDhtaSt6Zmd3WlZWKzZxWUYxNFg1VmJEUkRIbE1ERTVpeldaQ09L?= =?utf-8?B?U3BQcWkzZ0ZGOEIyK1BEd3JMZmNjRUIzbW5PdHZpZjlmUUpRK0J4Unh6Ynpj?= =?utf-8?B?dkVacm0rVWhKd0JWeWVyOGRsN0FHa1BpRzlBcFZqUzRZeXQyQXd2VVVTRXV5?= =?utf-8?B?aEJ0am5JNjczVTRoelJuWFJsVGZZVWYzTUVYbFBXTW5idHRlMEU4VTFJbVlF?= =?utf-8?B?YkNRdlkyUWIxdEhRcFQzSGVUOXJIQzF3QVZBZDZTZFN5eUpQWEJHWVB5YmxB?= =?utf-8?B?ZG1ZWFlhRUJZdDNqWGlyNUxoNTllZjdGVHg5aSthQmV3MzdZS0ZNYzJyUFA0?= =?utf-8?B?aWhwMlpEUU5DbWJKNE1YRC9GeGxsZ0hCdXllVzd4am9mUnJ2VmpXSWVuTGhm?= =?utf-8?B?Qyt1NHJTL1ZGSENvYnNCOFhSdVdqUDZITVV6akZiWFR0cWxGMHBYLzdzb1Rq?= =?utf-8?B?VVM4UFZEbnhRPT0=?= X-OriginatorOrg: sct-15-20-9412-4-msonline-outlook-da224.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: 297967e9-84f3-4063-a14d-08de8de1b83e X-MS-Exchange-CrossTenant-AuthSource: CP9P284MB3908.BRAP284.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Mar 2026 22:22:53.6661 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: RIXP284MB3865 X-Mailman-Approved-At: Mon, 30 Mar 2026 09:06:21 +0000 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" VGhlIHZyYW1fcmVnaW9uX2dwdV9vZmZzZXQoKSBoZWxwZXIgY2hhc2VzIHBvaW50ZXJzIHRocm91 Z2ggVFRNIHJlc291cmNlCm1hbmFnZXIgc3RydWN0dXJlcyBvbiBldmVyeSBjYWxsLiBBbiBYWFgg Y29tbWVudCBpbiB0aGUgY29kZWJhc2Ugbm90ZWQKdGhpcyB3YXMgYSBwcm9ibGVtIGluIHRoZSBW TSBiaW5kIGhvdCBwYXRoIGFuZCBzdWdnZXN0ZWQgY2FjaGluZyB0aGUKdmFsdWUgd2l0aCBhIHJl Y2FsY3VsYXRpb24gb24gQk8gbW92ZS4KCkFkZCBhIHZyYW1fZ3B1X29mZnNldCBmaWVsZCB0byBz dHJ1Y3QgeGVfYm8gdGhhdCBpcyB1cGRhdGVkIGluCnhlX2JvX21vdmUoKSBhdCB0aGUgJ291dCcg bGFiZWwsIHdoaWNoIGlzIHRoZSBjb252ZXJnZW5jZSBwb2ludCBmb3IgYWxsCm1vdmUgcGF0aHMu IFByb3ZpZGUgeGVfYm9fdnJhbV9ncHVfb2Zmc2V0KCkgYXMgYSBzdGF0aWMgaW5saW5lIGFjY2Vz c29yLgoKQ29udmVydCBmaXZlIGNhbGxlcnMgdGhhdCBhbHdheXMgb3BlcmF0ZSBvbiB0aGUgQk8n cyBjdXJyZW50IHJlc291cmNlOgogIC0geGVfcHQuYzogeGVfcHRfc3RhZ2VfYmluZCgpIChWTSBi aW5kIGhvdCBwYXRoKQogIC0geGVfYm8uYzogX194ZV9ib19hZGRyKCkKICAtIHhlX2dndHQuYzog eGVfZ2d0dF9tYXBfYm8oKQogIC0geGVfbG10dC5jOiBsbXR0X2luc2VydF9ibygpCiAgLSB4ZV9t aWdyYXRlLmM6IHhlX21pZ3JhdGVfYWNjZXNzX21lbW9yeSgpCgpUd28gY2FsbGVycyBpbiB4ZV9t aWdyYXRlLmMgKHB0ZV91cGRhdGVfc2l6ZSBhbmQgZW1pdF9wdGUpIGFyZQppbnRlbnRpb25hbGx5 IG5vdCBjb252ZXJ0ZWQgYmVjYXVzZSB0aGV5IHJlY2VpdmUgYSB0dG1fcmVzb3VyY2UgdGhhdApt YXkgcmVmZXIgdG8gYSBtb3ZlIGRlc3RpbmF0aW9uIHJhdGhlciB0aGFuIHRoZSBCTydzIGN1cnJl bnQgcGxhY2VtZW50LgoKUmVwbGFjZSB0aGUgWFhYIGNvbW1lbnQgb24gdnJhbV9yZWdpb25fZ3B1 X29mZnNldCgpIHdpdGggcHJvcGVyIGtlcm5lbApkb2MgdGhhdCBkaXJlY3RzIGNhbGxlcnMgdG8g cHJlZmVyIHRoZSBjYWNoZWQgYWNjZXNzb3IuCgpBZGQgYSBLVW5pdCBsaXZlIHRlc3QgKHhlX2Jv X3ZyYW1fZ3B1X29mZnNldF9rdW5pdCkgdGhhdCB2YWxpZGF0ZXMgY2FjaGUKY29uc2lzdGVuY3kg YWNyb3NzIEJPIGNyZWF0aW9uIGluIFZSQU0sIGV2aWN0aW9uIHRvIHN5c3RlbSBtZW1vcnksIGFu ZApyZXN0b3JhdGlvbiBiYWNrIHRvIFZSQU0uCgpUZXN0ZWQgb24gQVNVUyBaZW5ib29rIFMxNCAo SW50ZWwgQ29yZSBVbHRyYSA3IDI1OFYpIHdpdGggeGVfbGl2ZV90ZXN0Cm1vZHVsZSBvbiBGZWRv cmEuCgpTaWduZWQtb2ZmLWJ5OiBZdXJpIE1hcnRpbnMgPHl1cmltYXJ0aW5zMjAwNEBob3RtYWls LmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0veGUvdGVzdHMveGVfYm8uYyB8IDExNyArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrCiBkcml2ZXJzL2dwdS9kcm0veGUveGVfYm8uYyAgICAg ICB8ICAxNyArKystLQogZHJpdmVycy9ncHUvZHJtL3hlL3hlX2JvLmggICAgICAgfCAgMTUgKysr KwogZHJpdmVycy9ncHUvZHJtL3hlL3hlX2JvX3R5cGVzLmggfCAgIDYgKysKIGRyaXZlcnMvZ3B1 L2RybS94ZS94ZV9nZ3R0LmMgICAgIHwgICAyICstCiBkcml2ZXJzL2dwdS9kcm0veGUveGVfbG10 dC5jICAgICB8ICAgMiArLQogZHJpdmVycy9ncHUvZHJtL3hlL3hlX21pZ3JhdGUuYyAgfCAgIDIg Ky0KIGRyaXZlcnMvZ3B1L2RybS94ZS94ZV9wdC5jICAgICAgIHwgICAyICstCiA4IGZpbGVzIGNo YW5nZWQsIDE1NSBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS94ZS90ZXN0cy94ZV9iby5jIGIvZHJpdmVycy9ncHUvZHJtL3hlL3Rlc3Rz L3hlX2JvLmMKaW5kZXggNDljOTVlZDY3ZDdlLi5lZDY1ZTI1YzFiMTEgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS94ZS90ZXN0cy94ZV9iby5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS94ZS90 ZXN0cy94ZV9iby5jCkBAIC02MDMsOSArNjAzLDEyNiBAQCBzdGF0aWMgdm9pZCB4ZV9ib19zaHJp bmtfa3VuaXQoc3RydWN0IGt1bml0ICp0ZXN0KQogCXNocmlua190ZXN0X3J1bl9kZXZpY2UoeGUp OwogfQogCisvKgorICogVGVzdCB0aGF0IGJvLT52cmFtX2dwdV9vZmZzZXQgaXMga2VwdCBpbiBz eW5jIHdpdGggdGhlIHZhbHVlIGNvbXB1dGVkCisgKiBieSB2cmFtX3JlZ2lvbl9ncHVfb2Zmc2V0 KCkgYWNyb3NzIEJPIGNyZWF0aW9uLCBldmljdGlvbiB0byBzeXN0ZW0KKyAqIG1lbW9yeSwgYW5k IHJlc3RvcmF0aW9uIGJhY2sgdG8gVlJBTS4KKyAqLworc3RhdGljIHZvaWQgdnJhbV9ncHVfb2Zm c2V0X3Rlc3RfcnVuX3RpbGUoc3RydWN0IHhlX2RldmljZSAqeGUsCisJCQkJCSAgc3RydWN0IHhl X3RpbGUgKnRpbGUsCisJCQkJCSAgc3RydWN0IGt1bml0ICp0ZXN0KQoreworCXN0cnVjdCB4ZV9i byAqYm87CisJdW5zaWduZWQgaW50IGJvX2ZsYWdzID0gWEVfQk9fRkxBR19WUkFNX0lGX0RHRlgo dGlsZSk7CisJc3RydWN0IGRybV9leGVjICpleGVjID0gWEVfVkFMSURBVElPTl9PUFRfT1VUOwor CXU2NCBleHBlY3RlZDsKKwlsb25nIHRpbWVvdXQ7CisJaW50IHJldDsKKworCWt1bml0X2luZm8o dGVzdCwgIlRlc3RpbmcgdnJhbV9ncHVfb2Zmc2V0IGNhY2hlIG9uIHRpbGUgJXVcbiIsIHRpbGUt PmlkKTsKKworCWJvID0geGVfYm9fY3JlYXRlX3VzZXIoeGUsIE5VTEwsIFNaXzFNLCBEUk1fWEVf R0VNX0NQVV9DQUNISU5HX1dDLAorCQkJICAgICAgIGJvX2ZsYWdzLCBleGVjKTsKKwlpZiAoSVNf RVJSKGJvKSkgeworCQlLVU5JVF9GQUlMKHRlc3QsICJGYWlsZWQgdG8gY3JlYXRlIGJvOiAlcGVc biIsIGJvKTsKKwkJcmV0dXJuOworCX0KKworCXhlX2JvX2xvY2soYm8sIGZhbHNlKTsKKworCS8q IEFmdGVyIGNyZWF0aW9uIHRoZSBCTyBzaG91bGQgYmUgaW4gVlJBTSBvbiBER0ZYLiAqLworCXJl dCA9IHhlX2JvX3ZhbGlkYXRlKGJvLCBOVUxMLCBmYWxzZSwgZXhlYyk7CisJaWYgKHJldCkgewor CQlLVU5JVF9GQUlMKHRlc3QsICJGYWlsZWQgdG8gdmFsaWRhdGUgYm86ICVkXG4iLCByZXQpOwor CQlnb3RvIG91dF91bmxvY2s7CisJfQorCisJLyogV2FpdCBmb3IgYW55IGFzeW5jIGNsZWFycy4g Ki8KKwl0aW1lb3V0ID0gZG1hX3Jlc3Zfd2FpdF90aW1lb3V0KGJvLT50dG0uYmFzZS5yZXN2LAor CQkJCQlETUFfUkVTVl9VU0FHRV9LRVJORUwsIGZhbHNlLCA1ICogSFopOworCWlmICh0aW1lb3V0 IDw9IDApIHsKKwkJS1VOSVRfRkFJTCh0ZXN0LCAiVGltZW91dCB3YWl0aW5nIGZvciBibyBhZnRl ciB2YWxpZGF0ZS5cbiIpOworCQlnb3RvIG91dF91bmxvY2s7CisJfQorCisJZXhwZWN0ZWQgPSB2 cmFtX3JlZ2lvbl9ncHVfb2Zmc2V0KGJvLT50dG0ucmVzb3VyY2UpOworCUtVTklUX0VYUEVDVF9F USh0ZXN0LCB4ZV9ib192cmFtX2dwdV9vZmZzZXQoYm8pLCBleHBlY3RlZCk7CisKKwlpZiAoeGVf Ym9faXNfdnJhbShibykpCisJCUtVTklUX0VYUEVDVF9ORSh0ZXN0LCB4ZV9ib192cmFtX2dwdV9v ZmZzZXQoYm8pLCAwKTsKKworCS8qIEV2aWN0IHRvIHN5c3RlbSBtZW1vcnkg4oCUIGNhY2hlIG11 c3QgYmVjb21lIDAuICovCisJcmV0ID0geGVfYm9fZXZpY3QoYm8sIGV4ZWMpOworCWlmIChyZXQp IHsKKwkJS1VOSVRfRkFJTCh0ZXN0LCAiRmFpbGVkIHRvIGV2aWN0IGJvOiAlZFxuIiwgcmV0KTsK KwkJZ290byBvdXRfdW5sb2NrOworCX0KKworCXRpbWVvdXQgPSBkbWFfcmVzdl93YWl0X3RpbWVv dXQoYm8tPnR0bS5iYXNlLnJlc3YsCisJCQkJCURNQV9SRVNWX1VTQUdFX0tFUk5FTCwgZmFsc2Us IDUgKiBIWik7CisJaWYgKHRpbWVvdXQgPD0gMCkgeworCQlLVU5JVF9GQUlMKHRlc3QsICJUaW1l b3V0IHdhaXRpbmcgZm9yIGJvIGFmdGVyIGV2aWN0LlxuIik7CisJCWdvdG8gb3V0X3VubG9jazsK Kwl9CisKKwlleHBlY3RlZCA9IHZyYW1fcmVnaW9uX2dwdV9vZmZzZXQoYm8tPnR0bS5yZXNvdXJj ZSk7CisJS1VOSVRfRVhQRUNUX0VRKHRlc3QsIHhlX2JvX3ZyYW1fZ3B1X29mZnNldChibyksIGV4 cGVjdGVkKTsKKwlLVU5JVF9FWFBFQ1RfRVEodGVzdCwgeGVfYm9fdnJhbV9ncHVfb2Zmc2V0KGJv KSwgKHU2NCkwKTsKKworCS8qIFJlc3RvcmUgYmFjayB0byBWUkFNIOKAlCBjYWNoZSBtdXN0IGJl IHVwZGF0ZWQgYWdhaW4uICovCisJcmV0ID0geGVfYm9fdmFsaWRhdGUoYm8sIE5VTEwsIGZhbHNl LCBleGVjKTsKKwlpZiAocmV0KSB7CisJCUtVTklUX0ZBSUwodGVzdCwgIkZhaWxlZCB0byB2YWxp ZGF0ZSBibyBiYWNrIHRvIHZyYW06ICVkXG4iLCByZXQpOworCQlnb3RvIG91dF91bmxvY2s7CisJ fQorCisJdGltZW91dCA9IGRtYV9yZXN2X3dhaXRfdGltZW91dChiby0+dHRtLmJhc2UucmVzdiwK KwkJCQkJRE1BX1JFU1ZfVVNBR0VfS0VSTkVMLCBmYWxzZSwgNSAqIEhaKTsKKwlpZiAodGltZW91 dCA8PSAwKSB7CisJCUtVTklUX0ZBSUwodGVzdCwgIlRpbWVvdXQgd2FpdGluZyBmb3IgYm8gYWZ0 ZXIgcmVzdG9yZS5cbiIpOworCQlnb3RvIG91dF91bmxvY2s7CisJfQorCisJZXhwZWN0ZWQgPSB2 cmFtX3JlZ2lvbl9ncHVfb2Zmc2V0KGJvLT50dG0ucmVzb3VyY2UpOworCUtVTklUX0VYUEVDVF9F USh0ZXN0LCB4ZV9ib192cmFtX2dwdV9vZmZzZXQoYm8pLCBleHBlY3RlZCk7CisKKwlpZiAoeGVf Ym9faXNfdnJhbShibykpCisJCUtVTklUX0VYUEVDVF9ORSh0ZXN0LCB4ZV9ib192cmFtX2dwdV9v ZmZzZXQoYm8pLCAwKTsKKworb3V0X3VubG9jazoKKwl4ZV9ib191bmxvY2soYm8pOworCXhlX2Jv X3B1dChibyk7Cit9CisKK3N0YXRpYyBpbnQgdnJhbV9ncHVfb2Zmc2V0X3Rlc3RfcnVuX2Rldmlj ZShzdHJ1Y3QgeGVfZGV2aWNlICp4ZSkKK3sKKwlzdHJ1Y3Qga3VuaXQgKnRlc3QgPSBrdW5pdF9n ZXRfY3VycmVudF90ZXN0KCk7CisJc3RydWN0IHhlX3RpbGUgKnRpbGU7CisJaW50IGlkOworCisJ aWYgKCFJU19ER0ZYKHhlKSkgeworCQlrdW5pdF9za2lwKHRlc3QsICJub24tZGlzY3JldGUgZGV2 aWNlXG4iKTsKKwkJcmV0dXJuIDA7CisJfQorCisJZ3VhcmQoeGVfcG1fcnVudGltZSkoeGUpOwor CWZvcl9lYWNoX3RpbGUodGlsZSwgeGUsIGlkKQorCQl2cmFtX2dwdV9vZmZzZXRfdGVzdF9ydW5f dGlsZSh4ZSwgdGlsZSwgdGVzdCk7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQgeGVf Ym9fdnJhbV9ncHVfb2Zmc2V0X2t1bml0KHN0cnVjdCBrdW5pdCAqdGVzdCkKK3sKKwlzdHJ1Y3Qg eGVfZGV2aWNlICp4ZSA9IHRlc3QtPnByaXY7CisKKwl2cmFtX2dwdV9vZmZzZXRfdGVzdF9ydW5f ZGV2aWNlKHhlKTsKK30KKwogc3RhdGljIHN0cnVjdCBrdW5pdF9jYXNlIHhlX2JvX3Rlc3RzW10g PSB7CiAJS1VOSVRfQ0FTRV9QQVJBTSh4ZV9jY3NfbWlncmF0ZV9rdW5pdCwgeGVfcGNpX2xpdmVf ZGV2aWNlX2dlbl9wYXJhbSksCiAJS1VOSVRfQ0FTRV9QQVJBTSh4ZV9ib19ldmljdF9rdW5pdCwg eGVfcGNpX2xpdmVfZGV2aWNlX2dlbl9wYXJhbSksCisJS1VOSVRfQ0FTRV9QQVJBTSh4ZV9ib192 cmFtX2dwdV9vZmZzZXRfa3VuaXQsIHhlX3BjaV9saXZlX2RldmljZV9nZW5fcGFyYW0pLAogCXt9 CiB9OwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0veGUveGVfYm8uYyBiL2RyaXZlcnMv Z3B1L2RybS94ZS94ZV9iby5jCmluZGV4IGE3YzJkYzdmMjI0Yy4uMzBjNGZlMzI2ODI3IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0veGUveGVfYm8uYworKysgYi9kcml2ZXJzL2dwdS9kcm0v eGUveGVfYm8uYwpAQCAtMTE2NCw2ICsxMTY0LDkgQEAgc3RhdGljIGludCB4ZV9ib19tb3ZlKHN0 cnVjdCB0dG1fYnVmZmVyX29iamVjdCAqdHRtX2JvLCBib29sIGV2aWN0LAogCQlyZXQgPSB4ZV9z cmlvdl92Zl9jY3NfYXR0YWNoX2JvKGJvKTsKIAogb3V0OgorCWJvLT52cmFtX2dwdV9vZmZzZXQg PSB0dG1fYm8tPnJlc291cmNlID8KKwkJdnJhbV9yZWdpb25fZ3B1X29mZnNldCh0dG1fYm8tPnJl c291cmNlKSA6IDA7CisKIAlpZiAoKCF0dG1fYm8tPnJlc291cmNlIHx8IHR0bV9iby0+cmVzb3Vy Y2UtPm1lbV90eXBlID09IFhFX1BMX1NZU1RFTSkgJiYKIAkgICAgdHRtX2JvLT50dG0pIHsKIAkJ bG9uZyB0aW1lb3V0ID0gZG1hX3Jlc3Zfd2FpdF90aW1lb3V0KHR0bV9iby0+YmFzZS5yZXN2LApA QCAtMjkwOCw5ICsyOTExLDE1IEBAIGludCB4ZV9tYW5hZ2VkX2JvX3JlaW5pdF9pbl92cmFtKHN0 cnVjdCB4ZV9kZXZpY2UgKnhlLCBzdHJ1Y3QgeGVfdGlsZSAqdGlsZSwgc3RyCiAJcmV0dXJuIDA7 CiB9CiAKLS8qCi0gKiBYWFg6IFRoaXMgaXMgaW4gdGhlIFZNIGJpbmQgZGF0YSBwYXRoLCBsaWtl bHkgc2hvdWxkIGNhbGN1bGF0ZSB0aGlzIG9uY2UgYW5kCi0gKiBzdG9yZSwgd2l0aCBhIHJlY2Fs Y3VsYXRpb24gaWYgdGhlIEJPIGlzIG1vdmVkLgorLyoqCisgKiB2cmFtX3JlZ2lvbl9ncHVfb2Zm c2V0IC0gQ29tcHV0ZSBHUFUgb2Zmc2V0IGZvciBhIFRUTSByZXNvdXJjZSdzIG1lbW9yeSByZWdp b24KKyAqIEByZXM6IFRoZSBUVE0gcmVzb3VyY2UuCisgKgorICogQ29tcHV0ZXMgdGhlIEdQVS12 aXNpYmxlIG9mZnNldCBmb3IgQHJlcyBiYXNlZCBvbiBpdHMgY3VycmVudCBtZW1vcnkgdHlwZS4K KyAqIENhbGxlcnMgdGhhdCBhbHdheXMgb3BlcmF0ZSBvbiBhIEJPJ3MgY3VycmVudCByZXNvdXJj ZSBzaG91bGQgcHJlZmVyCisgKiB4ZV9ib192cmFtX2dwdV9vZmZzZXQoKSB3aGljaCByZXR1cm5z IGEgY2FjaGVkIHZhbHVlLgorICoKKyAqIFJldHVybjogVGhlIEdQVS12aXNpYmxlIG9mZnNldCwg b3IgMCBmb3Igc3lzdGVtL1RUIG1lbW9yeS4KICAqLwogdWludDY0X3QgdnJhbV9yZWdpb25fZ3B1 X29mZnNldChzdHJ1Y3QgdHRtX3Jlc291cmNlICpyZXMpCiB7CkBAIC0zMTczLDcgKzMxODIsNyBA QCBkbWFfYWRkcl90IF9feGVfYm9fYWRkcihzdHJ1Y3QgeGVfYm8gKmJvLCB1NjQgb2Zmc2V0LCBz aXplX3QgcGFnZV9zaXplKQogCiAJCXhlX3Jlc19maXJzdChiby0+dHRtLnJlc291cmNlLCBwYWdl IDw8IFBBR0VfU0hJRlQsCiAJCQkgICAgIHBhZ2Vfc2l6ZSwgJmN1cik7Ci0JCXJldHVybiBjdXIu c3RhcnQgKyBvZmZzZXQgKyB2cmFtX3JlZ2lvbl9ncHVfb2Zmc2V0KGJvLT50dG0ucmVzb3VyY2Up OworCQlyZXR1cm4gY3VyLnN0YXJ0ICsgb2Zmc2V0ICsgeGVfYm9fdnJhbV9ncHVfb2Zmc2V0KGJv KTsKIAl9CiB9CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS94ZS94ZV9iby5oIGIvZHJp dmVycy9ncHUvZHJtL3hlL3hlX2JvLmgKaW5kZXggNjhkZWE3ZDI1YTZiLi5kOTExZjczMjdlOGIg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS94ZS94ZV9iby5oCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS94ZS94ZV9iby5oCkBAIC0zNDIsNiArMzQyLDIxIEBAIGJvb2wgeGVfYm9faXNfdm1fYm91 bmQoc3RydWN0IHhlX2JvICpibyk7CiBib29sIHhlX2JvX2hhc19zaW5nbGVfcGxhY2VtZW50KHN0 cnVjdCB4ZV9ibyAqYm8pOwogdWludDY0X3QgdnJhbV9yZWdpb25fZ3B1X29mZnNldChzdHJ1Y3Qg dHRtX3Jlc291cmNlICpyZXMpOwogCisvKioKKyAqIHhlX2JvX3ZyYW1fZ3B1X29mZnNldCAtIFJl dHVybiBjYWNoZWQgR1BVIG9mZnNldCBmb3IgQk8ncyBtZW1vcnkgcmVnaW9uCisgKiBAYm86IFRo ZSBidWZmZXIgb2JqZWN0LgorICoKKyAqIFJldHVybnMgdGhlIEdQVSBvZmZzZXQgZm9yIHRoZSBC TydzIGN1cnJlbnQgbWVtb3J5IHJlZ2lvbi4gVGhpcyB2YWx1ZQorICogaXMgY2FjaGVkIG9uIHRo ZSBCTyBhbmQgdXBkYXRlZCB3aGVuZXZlciB0aGUgQk8gaXMgbW92ZWQsIGF2b2lkaW5nCisgKiBy ZXBlYXRlZCBwb2ludGVyIGNoYXNpbmcgdGhyb3VnaCBUVE0gcmVzb3VyY2UgbWFuYWdlciBzdHJ1 Y3R1cmVzLgorICoKKyAqIFJldHVybjogVGhlIEdQVS12aXNpYmxlIG9mZnNldCwgb3IgMCBmb3Ig c3lzdGVtL1RUIG1lbW9yeS4KKyAqLworc3RhdGljIGlubGluZSB1NjQgeGVfYm9fdnJhbV9ncHVf b2Zmc2V0KHN0cnVjdCB4ZV9ibyAqYm8pCit7CisJcmV0dXJuIGJvLT52cmFtX2dwdV9vZmZzZXQ7 Cit9CisKIGJvb2wgeGVfYm9fY2FuX21pZ3JhdGUoc3RydWN0IHhlX2JvICpibywgdTMyIG1lbV90 eXBlKTsKIAogaW50IHhlX2JvX21pZ3JhdGUoc3RydWN0IHhlX2JvICpibywgdTMyIG1lbV90eXBl LCBzdHJ1Y3QgdHRtX29wZXJhdGlvbl9jdHggKmN0YywKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS94ZS94ZV9ib190eXBlcy5oIGIvZHJpdmVycy9ncHUvZHJtL3hlL3hlX2JvX3R5cGVzLmgK aW5kZXggZmY4MzE3YmZjMWFlLi42MjJhMWVjODIzMWUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS94ZS94ZV9ib190eXBlcy5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS94ZS94ZV9ib190eXBl cy5oCkBAIC0xMDksNiArMTA5LDEyIEBAIHN0cnVjdCB4ZV9ibyB7CiAJICovCiAJdTY0IG1pbl9h bGlnbjsKIAorCS8qKgorCSAqIEB2cmFtX2dwdV9vZmZzZXQ6IENhY2hlZCBHUFUgb2Zmc2V0IGZv ciBCTydzIGN1cnJlbnQgbWVtb3J5CisJICogcmVnaW9uLCB1cGRhdGVkIG9uIG1vdmUuIFByb3Rl Y3RlZCBieSB0aGUgQk8ncyBkbWEtcmVzdiBsb2NrLgorCSAqLworCXU2NCB2cmFtX2dwdV9vZmZz ZXQ7CisKIAkvKioKIAkgKiBAbWFkdl9wdXJnZWFibGU6IHVzZXIgc3BhY2UgYWR2aXNlIG9uIEJP IHB1cmdlYWJpbGl0eSwgcHJvdGVjdGVkCiAJICogYnkgQk8ncyBkbWEtcmVzdiBsb2NrLgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3hlL3hlX2dndHQuYyBiL2RyaXZlcnMvZ3B1L2RybS94 ZS94ZV9nZ3R0LmMKaW5kZXggYTg0OGQxYTQxYjliLi5hMjRhZTNlMGU1NTMgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS94ZS94ZV9nZ3R0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3hlL3hl X2dndHQuYwpAQCAtNzA1LDcgKzcwNSw3IEBAIHN0YXRpYyB2b2lkIHhlX2dndHRfbWFwX2JvKHN0 cnVjdCB4ZV9nZ3R0ICpnZ3R0LCBzdHJ1Y3QgeGVfZ2d0dF9ub2RlICpub2RlLAogCQkJCQkJICAg cHRlIHwgeGVfcmVzX2RtYSgmY3VyKSk7CiAJfSBlbHNlIHsKIAkJLyogUHJlcGVuZCBHUFUgb2Zm c2V0ICovCi0JCXB0ZSB8PSB2cmFtX3JlZ2lvbl9ncHVfb2Zmc2V0KGJvLT50dG0ucmVzb3VyY2Up OworCQlwdGUgfD0geGVfYm9fdnJhbV9ncHVfb2Zmc2V0KGJvKTsKIAogCQlmb3IgKHhlX3Jlc19m aXJzdChiby0+dHRtLnJlc291cmNlLCAwLCB4ZV9ib19zaXplKGJvKSwgJmN1cik7CiAJCSAgICAg Y3VyLnJlbWFpbmluZzsgeGVfcmVzX25leHQoJmN1ciwgWEVfUEFHRV9TSVpFKSkKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS94ZS94ZV9sbXR0LmMgYi9kcml2ZXJzL2dwdS9kcm0veGUveGVf bG10dC5jCmluZGV4IDBjNzI2ZWRhOTM5MC4uZjkyNTdiYTE3MjhiIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0veGUveGVfbG10dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS94ZS94ZV9sbXR0 LmMKQEAgLTQ5Miw3ICs0OTIsNyBAQCBzdGF0aWMgdm9pZCBsbXR0X2luc2VydF9ibyhzdHJ1Y3Qg eGVfbG10dCAqbG10dCwgdW5zaWduZWQgaW50IHZmaWQsIHN0cnVjdCB4ZV9ibwogCWxtdHRfYXNz ZXJ0KGxtdHQsIElTX0FMSUdORUQoeGVfYm9fc2l6ZShibyksIHBhZ2Vfc2l6ZSkpOwogCWxtdHRf YXNzZXJ0KGxtdHQsIHhlX2JvX2lzX3ZyYW0oYm8pKTsKIAotCXZyYW1fb2Zmc2V0ID0gdnJhbV9y ZWdpb25fZ3B1X29mZnNldChiby0+dHRtLnJlc291cmNlKTsKKwl2cmFtX29mZnNldCA9IHhlX2Jv X3ZyYW1fZ3B1X29mZnNldChibyk7CiAJeGVfcmVzX2ZpcnN0KGJvLT50dG0ucmVzb3VyY2UsIDAs IHhlX2JvX3NpemUoYm8pLCAmY3VyKTsKIAl3aGlsZSAoY3VyLnJlbWFpbmluZykgewogCQlhZGRy ID0geGVfcmVzX2RtYSgmY3VyKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS94ZS94ZV9t aWdyYXRlLmMgYi9kcml2ZXJzL2dwdS9kcm0veGUveGVfbWlncmF0ZS5jCmluZGV4IGZjOTE4YjRm YmE1NC4uYmRhZWE0OTc5ZTg5IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0veGUveGVfbWln cmF0ZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS94ZS94ZV9taWdyYXRlLmMKQEAgLTI0OTksNyAr MjQ5OSw3IEBAIGludCB4ZV9taWdyYXRlX2FjY2Vzc19tZW1vcnkoc3RydWN0IHhlX21pZ3JhdGUg Km0sIHN0cnVjdCB4ZV9ibyAqYm8sCiAKIAlkbyB7CiAJCXN0cnVjdCBkbWFfZmVuY2UgKl9fZmVu Y2U7Ci0JCXU2NCB2cmFtX2FkZHIgPSB2cmFtX3JlZ2lvbl9ncHVfb2Zmc2V0KGJvLT50dG0ucmVz b3VyY2UpICsKKwkJdTY0IHZyYW1fYWRkciA9IHhlX2JvX3ZyYW1fZ3B1X29mZnNldChibykgKwog CQkJY3Vyc29yLnN0YXJ0OwogCQlpbnQgY3VycmVudF9ieXRlczsKIAkJdTMyIHBpdGNoOwpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3hlL3hlX3B0LmMgYi9kcml2ZXJzL2dwdS9kcm0veGUv eGVfcHQuYwppbmRleCA4ZTVmNGYwZGVhM2YuLjdjZmNlMWE5MmExYSAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL3hlL3hlX3B0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3hlL3hlX3B0LmMK QEAgLTc4Miw3ICs3ODIsNyBAQCB4ZV9wdF9zdGFnZV9iaW5kKHN0cnVjdCB4ZV90aWxlICp0aWxl LCBzdHJ1Y3QgeGVfdm1hICp2bWEsCiAJfQogCiAJeGVfd2Fsay5kZWZhdWx0X3ZyYW1fcHRlIHw9 IFhFX1BQR1RUX1BURV9ETTsKLQl4ZV93YWxrLmRtYV9vZmZzZXQgPSAoYm8gJiYgIWlzX3B1cmdl ZCkgPyB2cmFtX3JlZ2lvbl9ncHVfb2Zmc2V0KGJvLT50dG0ucmVzb3VyY2UpIDogMDsKKwl4ZV93 YWxrLmRtYV9vZmZzZXQgPSAoYm8gJiYgIWlzX3B1cmdlZCkgPyB4ZV9ib192cmFtX2dwdV9vZmZz ZXQoYm8pIDogMDsKIAlpZiAoIXJhbmdlKQogCQl4ZV9ib19hc3NlcnRfaGVsZChibyk7CiAKLS0g CjIuNDMuMAoK