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 X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5F4B2C33CAA for ; Mon, 13 Jan 2020 09:18:38 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 28F892080D for ; Mon, 13 Jan 2020 09:18:38 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=analog.onmicrosoft.com header.i=@analog.onmicrosoft.com header.b="vYiF2JiH" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728670AbgAMJSh (ORCPT ); Mon, 13 Jan 2020 04:18:37 -0500 Received: from mx0b-00128a01.pphosted.com ([148.163.139.77]:5820 "EHLO mx0b-00128a01.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725978AbgAMJSg (ORCPT ); Mon, 13 Jan 2020 04:18:36 -0500 Received: from pps.filterd (m0167091.ppops.net [127.0.0.1]) by mx0b-00128a01.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 00D9GUGI009633; Mon, 13 Jan 2020 04:18:30 -0500 Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2102.outbound.protection.outlook.com [104.47.70.102]) by mx0b-00128a01.pphosted.com with ESMTP id 2xf90euym0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Mon, 13 Jan 2020 04:18:29 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BmukNFm+ATjdEYYcVNCJ7SLaaweBoWr/OUtlUjS6syTIOjlqXWVXZhoZLbcrOzxGj4dmn0VVhfqm2XnnZp34oBdmy6TvVAa8Caf2b1u0Oderfduaul1AwaOX2rI+v6Jwam+YVkg798P+rljBLfvqFGXA/y5WOGLCwROF7WZlZHP45R/fsTDgN+BFIEEOtvgo/U3zFut4H+D34i+oryo+ZF96eovkJd0jzrNUeeQaNkKP/4ZL2JcJQapm5El4876GspIkp/kGQmXNaT9oSbtT8/lH4Oqubxm73Fi1N05K5bNMCCW3a9XB4RiATrn95IzbpiRfDr2ujgKypHigDuW21A== 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-SenderADCheck; bh=CiPOCN+1xLbJQI9XHHBYW/Ugw0YLuiL7HCq12u1OjM8=; b=niBqcxzqhw8NJ5JqDguIQqGtprDjvaWpA2fVxsYTQu8e6YsW5W9EVsD/OH9LGcGk0fUR1wu1ssrRkFka1BCXyT9G8Yyb7dBWqeCyBtShG7BDJfYQhaYH1y0LCk966KMILmI7n4yfhQFiB08P3vHRWAhQJQ2YpiXB3QrAzr5NqWsPRuGqgQpm4QLUdJP+jboWz/LpcJRbiAd5BC1Qhln8/Navnhfq4nnrdH8vOQS44NRXvpePpgx0DDjq0T/7QXmtkWTslzIgUUCZavZGnJ3go9dKtfHCngnoghMOP8h42/CYCbdwHnt2Z5B2ouXXHcVmqDnFvGWyWYBap2utkmMkMQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=analog.com; dmarc=pass action=none header.from=analog.com; dkim=pass header.d=analog.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=analog.onmicrosoft.com; s=selector2-analog-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=CiPOCN+1xLbJQI9XHHBYW/Ugw0YLuiL7HCq12u1OjM8=; b=vYiF2JiHnWfwpBH+8RgcOj71Cwq2vtO22785VQ0qtr4h5eDnHZSdEE5mZXOAaCXVEZYGY4o9xtFOlzg2sB6Y4SskdHsA9/lqpaiVri+A3TyQy1ISg1jC3BEdu1Ox4XxyFJUmxeA9ifGPvipa/A9ukUClS4h/VokItmtIGhIbnNM= Received: from CH2PR03MB5192.namprd03.prod.outlook.com (20.180.12.152) by CH2PR03MB5366.namprd03.prod.outlook.com (20.180.14.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2623.9; Mon, 13 Jan 2020 09:18:28 +0000 Received: from CH2PR03MB5192.namprd03.prod.outlook.com ([fe80::dce7:7fec:f33f:ad39]) by CH2PR03MB5192.namprd03.prod.outlook.com ([fe80::dce7:7fec:f33f:ad39%7]) with mapi id 15.20.2623.015; Mon, 13 Jan 2020 09:18:28 +0000 From: "Ardelean, Alexandru" To: "jic23@kernel.org" CC: "Sa, Nuno" , "linux-kernel@vger.kernel.org" , "linux-iio@vger.kernel.org" Subject: Re: [PATCH v2 1/2] iio: adis: Introduce timeouts structure Thread-Topic: [PATCH v2 1/2] iio: adis: Introduce timeouts structure Thread-Index: AQHVxUwEF6T4PocvM0K/KZEQK256o6flW6oAgAL/KAA= Date: Mon, 13 Jan 2020 09:18:28 +0000 Message-ID: <40564d8b950e7a1675432dc0fb1311084520a6a5.camel@analog.com> References: <20200107111705.24138-1-alexandru.ardelean@analog.com> <20200111113448.3f4b79d2@archlinux> In-Reply-To: <20200111113448.3f4b79d2@archlinux> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [137.71.226.54] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: fdb3d0df-82eb-4bef-c6a5-08d798098cf4 x-ms-traffictypediagnostic: CH2PR03MB5366: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-forefront-prvs: 028166BF91 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(39860400002)(396003)(376002)(346002)(366004)(136003)(189003)(199004)(316002)(186003)(478600001)(54906003)(2616005)(6486002)(86362001)(6916009)(71200400001)(5660300002)(66446008)(66476007)(81156014)(8936002)(36756003)(81166006)(30864003)(66556008)(64756008)(76116006)(2906002)(6512007)(26005)(6506007)(66946007)(4326008)(8676002)(579004)(559001);DIR:OUT;SFP:1101;SCL:1;SRVR:CH2PR03MB5366;H:CH2PR03MB5192.namprd03.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; received-spf: None (protection.outlook.com: analog.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Bokvm+eoAuitNkdZCnj3dIGmi1rpsMl8ScjHr+5AHtzIbpOvA1vEF13gqcPBg0kYrKLzhSXX6angJYf2m9kLcFJ3qZo7aOBCkgsx1mnRyeaEq5IkRoNP+UeGHjSXCqSz946Wpm+quiLtneRcukQB38TjG5b8H8UTmJh2oaioAoO6dtzG+aQZGHPRmxwNkH01bWWYY+tGnHX076wQecseW6ysJYrAKmA0DI0bJYjhKyZRguykboirX7NDWVuXEmR99mLaBn3d/0OIJIZqlL5dvY+OhJ8GJJSb116xEtjixIQakvkaRGjKN0azxjWt9HDzlvb/sJNDTgw7wNNFkjA7r9ihF+4U6qViChVqnE2VGQt8hcPJtA2pRl6xM9E++DoHceyV3SCQWHDTrWC+J6Ob7kioBVtEjh9OEi0k43REb/TVRduUqxVMtu+DDOxOY3dR Content-Type: text/plain; charset="utf-8" Content-ID: <65E4F525B98B2B48A02ADB39131A0F70@namprd03.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: analog.com X-MS-Exchange-CrossTenant-Network-Message-Id: fdb3d0df-82eb-4bef-c6a5-08d798098cf4 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jan 2020 09:18:28.1481 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: eaa689b4-8f87-40e0-9c6f-7228de4d754a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: wHpVgBz34Kwv5I5yQiTirqyfN5JXIXfLxkslLLaWP6KmtdWC7Y+i4HcZqNC0efiIV5T4hADrJcfgWjwLixHgyBi/PSMmGgif+nAEq+NVFAY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR03MB5366 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.138,18.0.572 definitions=2020-01-13_02:2020-01-13,2020-01-13 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 adultscore=0 priorityscore=1501 mlxscore=0 phishscore=0 impostorscore=0 lowpriorityscore=0 clxscore=1015 suspectscore=0 spamscore=0 mlxlogscore=999 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-1910280000 definitions=main-2001130078 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org T24gU2F0LCAyMDIwLTAxLTExIGF0IDExOjM0ICswMDAwLCBKb25hdGhhbiBDYW1lcm9uIHdyb3Rl Og0KPiBbRXh0ZXJuYWxdDQo+IA0KPiBPbiBUdWUsIDcgSmFuIDIwMjAgMTM6MTc6MDQgKzAyMDAN Cj4gQWxleGFuZHJ1IEFyZGVsZWFuIDxhbGV4YW5kcnUuYXJkZWxlYW5AYW5hbG9nLmNvbT4gd3Jv dGU6DQo+IA0KPiA+IEZyb206IE51bm8gU8OhIDxudW5vLnNhQGFuYWxvZy5jb20+DQo+ID4gDQo+ ID4gVGhlIGFkaXMgbGlicmFyeSBvbmx5IGFsbG93cyB0byBkZWZpbmUgYSBgc3RhcnR1cF9kZWxh eWAgd2hpY2ggZm9yIHNvbWUNCj4gPiBkZXZpY2VzIGlzIGVub3VnaC4gSG93ZXZlciwgb3RoZXIg ZGV2aWNlcyBkZWZpbmUgZGlmZmVyZW50IHRpbWVvdXRzDQo+ID4gd2l0aA0KPiA+IHNpZ25pZmlj YW50bHkgZGlmZmVyZW50IHRpbWluZ3Mgd2hpY2ggY291bGQgbGVhZCB0byBkZXZpY2VzIHRvIG5v dCB3YWl0DQo+ID4gZW5vdWdoIHRpbWUgb3IgdG8gd2FpdCBhIGxvdCBtb3JlIHRoYW4gbmVjZXNz YXJ5ICh3aGljaCBpcyBub3QNCj4gPiBlZmZpY2llbnQpLiBUaGlzIHBhdGNoIGludHJvZHVjZXMg YSBuZXcgdGltZW91dCBzdHJ1Y3QgdGhhdCBtdXN0IGJlDQo+ID4gcGFzc2VkIGludG8gYGFkaXNf aW5pdCgpYC4gVGhlcmUgYXJlIG1haW5seSwgZm9yIG5vdywgdGhyZWUgdGltZW91dHMNCj4gPiB1 c2VkLiBUaGlzIGlzIGFsc28gYW4gaW50cm9kdWN0b3J5IHBhdGNoIHdpdGggdGhlIGdvYWwgb2Yg cmVmYWN0b3JpbmcNCj4gPiBgYWRpc19pbml0aWFsX3N0YXJ0dXAoKWAuIE5ldyBkcml2ZXIncyAo ZWc6IGFkaXMxNjQ4MCwgYWRpczE2NDYwKSBhcmUNCj4gPiByZXBsaWNhdGluZyBjb2RlIGZvciB0 aGUgZGV2aWNlIGluaXRpYWwgc2V0dXAuIFdpdGggc29tZSBjaGFuZ2VzIChiZWluZw0KPiA+IHRo aXMgdGhlIGZpcnN0IG9uZSkgd2UgY2FuIHBhc3MgdGhpcyB0byBgYWRpc19pbml0aWFsX3N0YXJ0 dXAoKWAuDQo+ID4gDQo+ID4gU2lnbmVkLW9mZi1ieTogTnVubyBTw6EgPG51bm8uc2FAYW5hbG9n LmNvbT4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBBbGV4YW5kcnUgQXJkZWxlYW4gPGFsZXhhbmRydS5h cmRlbGVhbkBhbmFsb2cuY29tPg0KPiANCj4gSSdtIGEgbGl0dGxlIHVuc3VyZSBpZiB0aGlzIGlz IHRoZSByaWdodCBvcHRpb24gbG9uZyB0ZXJtLg0KPiBZb3UgbWF5IGJlIGJldHRlciBvZmYgcHV0 dGluZyB0aGUgX2RhdGEgc3RydWN0dXJlIGFzIGEgbWVtYmVyIG9mDQo+IHRoZSBjaGlwIGluZm8g c3RydWN0dXJlcyAodXNpbmcgbWFjcm9zIHRvIGhhbmRsZSB0aGUgcGFydHMgdGhhdA0KPiBhcmUg cmV1c2VkKS4gIFRoYXQgd291bGQgYXZvaWQgZWl0aGVyIHRoZSBuZWVkIGZvciBtZW1jcHkgb3IN Cj4gdG8gcGFzcyBhICdwZXIgZHJpdmVyJyBwYXJ0IGFuZCBhICdwZXIgY2hpcF9pbmZvJyBwYXJ0 IGludG8gdGhlIGluaXQNCj4gZnVuY3Rpb24uDQo+IA0KDQpIbW0sIEknbGwgYWRtaXQgdGhhdCB0 aGlzIGlkZWEgc2xpcHBlZCBtZSBbYWRpc19kYXRhICsgbWFjcm9zXS4NCg0KPiBIb3dldmVyLCBm b3Igbm93IHRoaXMgaXMgZmFpcmx5IGNsZWFuLiAgVGhlIGJlc3Qgb3B0aW9uIHdpbGwgZGVwZW5k DQo+IGluIHRoZSBsb25nIHJ1biBvbiB3aGF0IGVsc2Ugd2UgZmluZCBuZWVkcyBzaW1pbGFyIGhh bmRsaW5nIHRvIHRoZXNlDQo+IHRpbWVvdXRzLg0KPiANCg0KT25lIHRoaW5nIHRoYXQgd291bGQg cHJvYmFibHkgbWFrZSB0aGlzIHdvcnRoLWl0LCBpcyB0aGUgQURJUyBidXJzdCBmb3IgdGhlDQph ZGlzMTY0ODAgZHJpdmVyLg0KDQpJbiBhbnkgY2FzZSwgbGV0J3MgbGVhdmUgaXQgbGlrZSB0aGlz IGZvciBub3cgYW5kIHNlZSBob3cgd2UgcHJvZ3Jlc3MuDQpXZSBhbHNvIGhhdmUgYSBmZXcgbW9y ZSBBRElTIGRyaXZlcnMgdG8gc2VuZC4NCg0KVGhhbmtzDQpBbGV4DQoNCj4gQXMgc3VjaC4uIEFw cGxpZWQgdG8gdGhlIHRvZ3JlZyBicmFuY2ggb2YgaWlvLmdpdCBhbmQgcHVzaGVkIG91dCBhcw0K PiB0ZXN0aW5nIGZvciB0aGUgYXV0b2J1aWxkZXJzIHRvIHBva2UgYXQgaXQuICANCj4gPiAtLS0N Cj4gPiANCj4gPiBDaGFuZ2Vsb2cgdjEgLSB2MjoNCj4gPiAqIHJld29yayBwYXRjaCB0byByZW1v dmUgbWFudWFsIGFzc2lnbm1lbnRzIGZvciBhZGlzMTYxMzYsIGFkaXMxNjQwMCwNCj4gPiAgIGFk aXMxNjQ4MCBhbmQgZG8gbWVtY3B5KCkgZnJvbSB0aGUgc3RhdGljIGFkaXNfZGF0YQ0KPiA+IA0K PiA+IA0KPiA+ICBkcml2ZXJzL2lpby9hY2NlbC9hZGlzMTYyMDEuYyAgICAgICAgIHwgIDcgKysr DQo+ID4gIGRyaXZlcnMvaWlvL2FjY2VsL2FkaXMxNjIwOS5jICAgICAgICAgfCAgNyArKysNCj4g PiAgZHJpdmVycy9paW8vZ3lyby9hZGlzMTYxMzYuYyAgICAgICAgICB8IDQwICsrKysrKysrKysr KysrKystDQo+ID4gIGRyaXZlcnMvaWlvL2d5cm8vYWRpczE2MjYwLmMgICAgICAgICAgfCAgNyAr KysNCj4gPiAgZHJpdmVycy9paW8vaW11L2FkaXMuYyAgICAgICAgICAgICAgICB8IDE4ICsrKysr Ky0tDQo+ID4gIGRyaXZlcnMvaWlvL2ltdS9hZGlzMTY0MDAuYyAgICAgICAgICAgfCA2MyArKysr KysrKysrKysrKysrKysrKysrKysrKy0NCj4gPiAgZHJpdmVycy9paW8vaW11L2FkaXMxNjQ2MC5j ICAgICAgICAgICB8ICA3ICsrKw0KPiA+ICBkcml2ZXJzL2lpby9pbXUvYWRpczE2NDgwLmMgICAg ICAgICAgIHwgNTggKysrKysrKysrKysrKysrKysrKysrKystDQo+ID4gIGRyaXZlcnMvc3RhZ2lu Zy9paW8vYWNjZWwvYWRpczE2MjAzLmMgfCAgNyArKysNCj4gPiAgZHJpdmVycy9zdGFnaW5nL2lp by9hY2NlbC9hZGlzMTYyNDAuYyB8ICA3ICsrKw0KPiA+ICBpbmNsdWRlL2xpbnV4L2lpby9pbXUv YWRpcy5oICAgICAgICAgIHwgMTMgKysrKysrDQo+ID4gIDExIGZpbGVzIGNoYW5nZWQsIDIyNyBp bnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQ0KPiA+IA0KPiA+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2lpby9hY2NlbC9hZGlzMTYyMDEuYw0KPiA+IGIvZHJpdmVycy9paW8vYWNjZWwvYWRpczE2 MjAxLmMNCj4gPiBpbmRleCBjNDgxMGM3M2IyYTIuLmM5MmQyMjM4N2IwMSAxMDA2NDQNCj4gPiAt LS0gYS9kcml2ZXJzL2lpby9hY2NlbC9hZGlzMTYyMDEuYw0KPiA+ICsrKyBiL2RyaXZlcnMvaWlv L2FjY2VsL2FkaXMxNjIwMS5jDQo+ID4gQEAgLTIzMyw2ICsyMzMsMTIgQEAgc3RhdGljIGNvbnN0 IGNoYXIgKiBjb25zdA0KPiA+IGFkaXMxNjIwMV9zdGF0dXNfZXJyb3JfbXNnc1tdID0gew0KPiA+ ICAJW0FESVMxNjIwMV9ESUFHX1NUQVRfUE9XRVJfTE9XX0JJVF0gPSAiUG93ZXIgc3VwcGx5IGJl bG93IDIuOTc1ViIsDQo+ID4gIH07DQo+ID4gIA0KPiA+ICtzdGF0aWMgY29uc3Qgc3RydWN0IGFk aXNfdGltZW91dCBhZGlzMTYyMDFfdGltZW91dHMgPSB7DQo+ID4gKwkucmVzZXRfbXMgPSBBRElT MTYyMDFfU1RBUlRVUF9ERUxBWV9NUywNCj4gPiArCS5zd19yZXNldF9tcyA9IEFESVMxNjIwMV9T VEFSVFVQX0RFTEFZX01TLA0KPiA+ICsJLnNlbGZfdGVzdF9tcyA9IEFESVMxNjIwMV9TVEFSVFVQ X0RFTEFZX01TLA0KPiA+ICt9Ow0KPiA+ICsNCj4gPiAgc3RhdGljIGNvbnN0IHN0cnVjdCBhZGlz X2RhdGEgYWRpczE2MjAxX2RhdGEgPSB7DQo+ID4gIAkucmVhZF9kZWxheSA9IDIwLA0KPiA+ICAJ Lm1zY19jdHJsX3JlZyA9IEFESVMxNjIwMV9NU0NfQ1RSTF9SRUcsDQo+ID4gQEAgLTI0Miw2ICsy NDgsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGFkaXNfZGF0YSBhZGlzMTYyMDFfZGF0YSA9IHsN Cj4gPiAgCS5zZWxmX3Rlc3RfbWFzayA9IEFESVMxNjIwMV9NU0NfQ1RSTF9TRUxGX1RFU1RfRU4s DQo+ID4gIAkuc2VsZl90ZXN0X25vX2F1dG9jbGVhciA9IHRydWUsDQo+ID4gIAkuc3RhcnR1cF9k ZWxheSA9IEFESVMxNjIwMV9TVEFSVFVQX0RFTEFZX01TLA0KPiA+ICsJLnRpbWVvdXRzID0gJmFk aXMxNjIwMV90aW1lb3V0cywNCj4gPiAgDQo+ID4gIAkuc3RhdHVzX2Vycm9yX21zZ3MgPSBhZGlz MTYyMDFfc3RhdHVzX2Vycm9yX21zZ3MsDQo+ID4gIAkuc3RhdHVzX2Vycm9yX21hc2sgPSBCSVQo QURJUzE2MjAxX0RJQUdfU1RBVF9TUElfRkFJTF9CSVQpIHwNCj4gPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9paW8vYWNjZWwvYWRpczE2MjA5LmMNCj4gPiBiL2RyaXZlcnMvaWlvL2FjY2VsL2FkaXMx NjIwOS5jDQo+ID4gaW5kZXggOThkNzdhZjhhMmIwLi5mNWE3OGZjMTE5MTkgMTAwNjQ0DQo+ID4g LS0tIGEvZHJpdmVycy9paW8vYWNjZWwvYWRpczE2MjA5LmMNCj4gPiArKysgYi9kcml2ZXJzL2lp by9hY2NlbC9hZGlzMTYyMDkuYw0KPiA+IEBAIC0yNDMsNiArMjQzLDEyIEBAIHN0YXRpYyBjb25z dCBjaGFyICogY29uc3QNCj4gPiBhZGlzMTYyMDlfc3RhdHVzX2Vycm9yX21zZ3NbXSA9IHsNCj4g PiAgCVtBRElTMTYyMDlfU1RBVF9QT1dFUl9MT1dfQklUXSA9ICJQb3dlciBzdXBwbHkgYmVsb3cg Mi45NzVWIiwNCj4gPiAgfTsNCj4gPiAgDQo+ID4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgYWRpc190 aW1lb3V0IGFkaXMxNjIwOV90aW1lb3V0cyA9IHsNCj4gPiArCS5yZXNldF9tcyA9IEFESVMxNjIw OV9TVEFSVFVQX0RFTEFZX01TLA0KPiA+ICsJLnNlbGZfdGVzdF9tcyA9IEFESVMxNjIwOV9TVEFS VFVQX0RFTEFZX01TLA0KPiA+ICsJLnN3X3Jlc2V0X21zID0gQURJUzE2MjA5X1NUQVJUVVBfREVM QVlfTVMsDQo+ID4gK307DQo+ID4gKw0KPiA+ICBzdGF0aWMgY29uc3Qgc3RydWN0IGFkaXNfZGF0 YSBhZGlzMTYyMDlfZGF0YSA9IHsNCj4gPiAgCS5yZWFkX2RlbGF5ID0gMzAsDQo+ID4gIAkubXNj X2N0cmxfcmVnID0gQURJUzE2MjA5X01TQ19DVFJMX1JFRywNCj4gPiBAQCAtMjUyLDYgKzI1OCw3 IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgYWRpc19kYXRhIGFkaXMxNjIwOV9kYXRhID0gew0KPiA+ ICAJLnNlbGZfdGVzdF9tYXNrID0gQURJUzE2MjA5X01TQ19DVFJMX1NFTEZfVEVTVF9FTiwNCj4g PiAgCS5zZWxmX3Rlc3Rfbm9fYXV0b2NsZWFyID0gdHJ1ZSwNCj4gPiAgCS5zdGFydHVwX2RlbGF5 ID0gQURJUzE2MjA5X1NUQVJUVVBfREVMQVlfTVMsDQo+ID4gKwkudGltZW91dHMgPSAmYWRpczE2 MjA5X3RpbWVvdXRzLA0KPiA+ICANCj4gPiAgCS5zdGF0dXNfZXJyb3JfbXNncyA9IGFkaXMxNjIw OV9zdGF0dXNfZXJyb3JfbXNncywNCj4gPiAgCS5zdGF0dXNfZXJyb3JfbWFzayA9IEJJVChBRElT MTYyMDlfU1RBVF9TRUxGVEVTVF9GQUlMX0JJVCkgfA0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJz L2lpby9neXJvL2FkaXMxNjEzNi5jDQo+ID4gYi9kcml2ZXJzL2lpby9neXJvL2FkaXMxNjEzNi5j DQo+ID4gaW5kZXggZjEwYzRmMTczODk4Li5kYzkxZDhkZjc2OTcgMTAwNjQ0DQo+ID4gLS0tIGEv ZHJpdmVycy9paW8vZ3lyby9hZGlzMTYxMzYuYw0KPiA+ICsrKyBiL2RyaXZlcnMvaWlvL2d5cm8v YWRpczE2MTM2LmMNCj4gPiBAQCAtNTksNiArNTksNyBAQA0KPiA+ICBzdHJ1Y3QgYWRpczE2MTM2 X2NoaXBfaW5mbyB7DQo+ID4gIAl1bnNpZ25lZCBpbnQgcHJlY2lzaW9uOw0KPiA+ICAJdW5zaWdu ZWQgaW50IGZ1bGxzY2FsZTsNCj4gPiArCWNvbnN0IHN0cnVjdCBhZGlzX3RpbWVvdXQgKnRpbWVv dXRzOw0KPiA+ICB9Ow0KPiA+ICANCj4gPiAgc3RydWN0IGFkaXMxNjEzNiB7DQo+ID4gQEAgLTQ5 MCwzMCArNDkxLDYzIEBAIGVudW0gYWRpczE2MTM2X2lkIHsNCj4gPiAgCUlEX0FESVMxNjEzNywN Cj4gPiAgfTsNCj4gPiAgDQo+ID4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgYWRpc190aW1lb3V0IGFk aXMxNjEzM190aW1lb3V0cyA9IHsNCj4gPiArCS5yZXNldF9tcyA9IDc1LA0KPiA+ICsJLnN3X3Jl c2V0X21zID0gNzUsDQo+ID4gKwkuc2VsZl90ZXN0X21zID0gNTAsDQo+ID4gK307DQo+ID4gKw0K PiA+ICtzdGF0aWMgY29uc3Qgc3RydWN0IGFkaXNfdGltZW91dCBhZGlzMTYxMzZfdGltZW91dHMg PSB7DQo+ID4gKwkucmVzZXRfbXMgPSAxMjgsDQo+ID4gKwkuc3dfcmVzZXRfbXMgPSA3NSwNCj4g PiArCS5zZWxmX3Rlc3RfbXMgPSAyNDUsDQo+ID4gK307DQo+ID4gKw0KPiA+ICBzdGF0aWMgY29u c3Qgc3RydWN0IGFkaXMxNjEzNl9jaGlwX2luZm8gYWRpczE2MTM2X2NoaXBfaW5mb1tdID0gew0K PiA+ICAJW0lEX0FESVMxNjEzM10gPSB7DQo+ID4gIAkJLnByZWNpc2lvbiA9IElJT19ERUdSRUVf VE9fUkFEKDEyMDApLA0KPiA+ICAJCS5mdWxsc2NhbGUgPSAyNDAwMCwNCj4gPiArCQkudGltZW91 dHMgPSAmYWRpczE2MTMzX3RpbWVvdXRzLA0KPiA+ICAJfSwNCj4gPiAgCVtJRF9BRElTMTYxMzVd ID0gew0KPiA+ICAJCS5wcmVjaXNpb24gPSBJSU9fREVHUkVFX1RPX1JBRCgzMDApLA0KPiA+ICAJ CS5mdWxsc2NhbGUgPSAyNDAwMCwNCj4gPiArCQkudGltZW91dHMgPSAmYWRpczE2MTMzX3RpbWVv dXRzLA0KPiA+ICAJfSwNCj4gPiAgCVtJRF9BRElTMTYxMzZdID0gew0KPiA+ICAJCS5wcmVjaXNp b24gPSBJSU9fREVHUkVFX1RPX1JBRCg0NTApLA0KPiA+ICAJCS5mdWxsc2NhbGUgPSAyNDYyMywN Cj4gPiArCQkudGltZW91dHMgPSAmYWRpczE2MTM2X3RpbWVvdXRzLA0KPiA+ICAJfSwNCj4gPiAg CVtJRF9BRElTMTYxMzddID0gew0KPiA+ICAJCS5wcmVjaXNpb24gPSBJSU9fREVHUkVFX1RPX1JB RCgxMDAwKSwNCj4gPiAgCQkuZnVsbHNjYWxlID0gMjQ2MDksDQo+ID4gKwkJLnRpbWVvdXRzID0g JmFkaXMxNjEzNl90aW1lb3V0cywNCj4gPiAgCX0sDQo+ID4gIH07DQo+ID4gIA0KPiA+ICtzdGF0 aWMgc3RydWN0IGFkaXNfZGF0YSAqYWRpczE2MTM2X2FkaXNfZGF0YV9hbGxvYyhzdHJ1Y3QgYWRp czE2MTM2DQo+ID4gKnN0LA0KPiA+ICsJCQkJCQkgICBzdHJ1Y3QgZGV2aWNlICpkZXYpDQo+ID4g K3sNCj4gPiArCXN0cnVjdCBhZGlzX2RhdGEgKmRhdGE7DQo+ID4gKw0KPiA+ICsJZGF0YSA9IGRl dm1fa21hbGxvYyhkZXYsIHNpemVvZihzdHJ1Y3QgYWRpc19kYXRhKSwgR0ZQX0tFUk5FTCk7DQo+ ID4gKwlpZiAoIWRhdGEpDQo+ID4gKwkJcmV0dXJuIEVSUl9QVFIoLUVOT01FTSk7DQo+ID4gKw0K PiA+ICsJbWVtY3B5KGRhdGEsICZhZGlzMTYxMzZfZGF0YSwgc2l6ZW9mKCpkYXRhKSk7DQo+ID4g Kw0KPiA+ICsJZGF0YS0+dGltZW91dHMgPSBzdC0+Y2hpcF9pbmZvLT50aW1lb3V0czsNCj4gPiAr DQo+ID4gKwlyZXR1cm4gZGF0YTsNCj4gPiArfQ0KPiA+ICsNCj4gPiAgc3RhdGljIGludCBhZGlz MTYxMzZfcHJvYmUoc3RydWN0IHNwaV9kZXZpY2UgKnNwaSkNCj4gPiAgew0KPiA+ICAJY29uc3Qg c3RydWN0IHNwaV9kZXZpY2VfaWQgKmlkID0gc3BpX2dldF9kZXZpY2VfaWQoc3BpKTsNCj4gPiAg CXN0cnVjdCBhZGlzMTYxMzYgKmFkaXMxNjEzNjsNCj4gPiAgCXN0cnVjdCBpaW9fZGV2ICppbmRp b19kZXY7DQo+ID4gKwljb25zdCBzdHJ1Y3QgYWRpc19kYXRhICphZGlzMTYxMzZfZGF0YTsNCj4g PiAgCWludCByZXQ7DQo+ID4gIA0KPiA+ICAJaW5kaW9fZGV2ID0gZGV2bV9paW9fZGV2aWNlX2Fs bG9jKCZzcGktPmRldiwgc2l6ZW9mKCphZGlzMTYxMzYpKTsNCj4gPiBAQCAtNTMyLDcgKzU2Niwx MSBAQCBzdGF0aWMgaW50IGFkaXMxNjEzNl9wcm9iZShzdHJ1Y3Qgc3BpX2RldmljZSAqc3BpKQ0K PiA+ICAJaW5kaW9fZGV2LT5pbmZvID0gJmFkaXMxNjEzNl9pbmZvOw0KPiA+ICAJaW5kaW9fZGV2 LT5tb2RlcyA9IElORElPX0RJUkVDVF9NT0RFOw0KPiA+ICANCj4gPiAtCXJldCA9IGFkaXNfaW5p dCgmYWRpczE2MTM2LT5hZGlzLCBpbmRpb19kZXYsIHNwaSwgJmFkaXMxNjEzNl9kYXRhKTsNCj4g PiArCWFkaXMxNjEzNl9kYXRhID0gYWRpczE2MTM2X2FkaXNfZGF0YV9hbGxvYyhhZGlzMTYxMzYs ICZzcGktPmRldik7DQo+ID4gKwlpZiAoSVNfRVJSKGFkaXMxNjEzNl9kYXRhKSkNCj4gPiArCQly ZXR1cm4gUFRSX0VSUihhZGlzMTYxMzZfZGF0YSk7DQo+ID4gKw0KPiA+ICsJcmV0ID0gYWRpc19p bml0KCZhZGlzMTYxMzYtPmFkaXMsIGluZGlvX2Rldiwgc3BpLCBhZGlzMTYxMzZfZGF0YSk7DQo+ ID4gIAlpZiAocmV0KQ0KPiA+ICAJCXJldHVybiByZXQ7DQo+ID4gIA0KPiA+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2lpby9neXJvL2FkaXMxNjI2MC5jDQo+ID4gYi9kcml2ZXJzL2lpby9neXJvL2Fk aXMxNjI2MC5jDQo+ID4gaW5kZXggNzI2YTBhYTMyMWE4Li4wZTNhNjZhNzcyNmQgMTAwNjQ0DQo+ ID4gLS0tIGEvZHJpdmVycy9paW8vZ3lyby9hZGlzMTYyNjAuYw0KPiA+ICsrKyBiL2RyaXZlcnMv aWlvL2d5cm8vYWRpczE2MjYwLmMNCj4gPiBAQCAtMzMyLDYgKzMzMiwxMiBAQCBzdGF0aWMgY29u c3QgY2hhciAqIGNvbnN0DQo+ID4gYWRpczE2MjBfc3RhdHVzX2Vycm9yX21zZ3NbXSA9IHsNCj4g PiAgCVtBRElTMTYyNjBfRElBR19TVEFUX1BPV0VSX0xPV19CSVRdID0gIlBvd2VyIHN1cHBseSBi ZWxvdyA0Ljc1IiwNCj4gPiAgfTsNCj4gPiAgDQo+ID4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgYWRp c190aW1lb3V0IGFkaXMxNjI2MF90aW1lb3V0cyA9IHsNCj4gPiArCS5yZXNldF9tcyA9IEFESVMx NjI2MF9TVEFSVFVQX0RFTEFZLA0KPiA+ICsJLnN3X3Jlc2V0X21zID0gQURJUzE2MjYwX1NUQVJU VVBfREVMQVksDQo+ID4gKwkuc2VsZl90ZXN0X21zID0gQURJUzE2MjYwX1NUQVJUVVBfREVMQVks DQo+ID4gK307DQo+ID4gKw0KPiA+ICBzdGF0aWMgY29uc3Qgc3RydWN0IGFkaXNfZGF0YSBhZGlz MTYyNjBfZGF0YSA9IHsNCj4gPiAgCS53cml0ZV9kZWxheSA9IDMwLA0KPiA+ICAJLnJlYWRfZGVs YXkgPSAzMCwNCj4gPiBAQCAtMzQxLDYgKzM0Nyw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgYWRp c19kYXRhIGFkaXMxNjI2MF9kYXRhID0gew0KPiA+ICANCj4gPiAgCS5zZWxmX3Rlc3RfbWFzayA9 IEFESVMxNjI2MF9NU0NfQ1RSTF9NRU1fVEVTVCwNCj4gPiAgCS5zdGFydHVwX2RlbGF5ID0gQURJ UzE2MjYwX1NUQVJUVVBfREVMQVksDQo+ID4gKwkudGltZW91dHMgPSAmYWRpczE2MjYwX3RpbWVv dXRzLA0KPiA+ICANCj4gPiAgCS5zdGF0dXNfZXJyb3JfbXNncyA9IGFkaXMxNjIwX3N0YXR1c19l cnJvcl9tc2dzLA0KPiA+ICAJLnN0YXR1c19lcnJvcl9tYXNrID0gQklUKEFESVMxNjI2MF9ESUFH X1NUQVRfRkxBU0hfQ0hLX0JJVCkgfA0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2lpby9pbXUv YWRpcy5jIGIvZHJpdmVycy9paW8vaW11L2FkaXMuYw0KPiA+IGluZGV4IGM1M2YzZWQzY2I5Ny4u M2UxMmFkNGI3MWJhIDEwMDY0NA0KPiA+IC0tLSBhL2RyaXZlcnMvaWlvL2ltdS9hZGlzLmMNCj4g PiArKysgYi9kcml2ZXJzL2lpby9pbXUvYWRpcy5jDQo+ID4gQEAgLTMxNywxOSArMzE3LDI1IEBA IEVYUE9SVF9TWU1CT0xfR1BMKF9fYWRpc19jaGVja19zdGF0dXMpOw0KPiA+ICBpbnQgX19hZGlz X3Jlc2V0KHN0cnVjdCBhZGlzICphZGlzKQ0KPiA+ICB7DQo+ID4gIAlpbnQgcmV0Ow0KPiA+ICsJ Y29uc3Qgc3RydWN0IGFkaXNfdGltZW91dCAqdGltZW91dHMgPSBhZGlzLT5kYXRhLT50aW1lb3V0 czsNCj4gPiAgDQo+ID4gIAlyZXQgPSBfX2FkaXNfd3JpdGVfcmVnXzgoYWRpcywgYWRpcy0+ZGF0 YS0+Z2xvYl9jbWRfcmVnLA0KPiA+ICAJCQlBRElTX0dMT0JfQ01EX1NXX1JFU0VUKTsNCj4gPiAt CWlmIChyZXQpDQo+ID4gKwlpZiAocmV0KSB7DQo+ID4gIAkJZGV2X2VycigmYWRpcy0+c3BpLT5k ZXYsICJGYWlsZWQgdG8gcmVzZXQgZGV2aWNlOiAlZFxuIiwNCj4gPiByZXQpOw0KPiA+ICsJCXJl dHVybiByZXQ7DQo+ID4gKwl9DQo+ID4gIA0KPiA+IC0JcmV0dXJuIHJldDsNCj4gPiArCW1zbGVl cCh0aW1lb3V0cy0+c3dfcmVzZXRfbXMpOw0KPiA+ICsNCj4gPiArCXJldHVybiAwOw0KPiA+ICB9 DQo+ID4gIEVYUE9SVF9TWU1CT0xfR1BMKF9fYWRpc19yZXNldCk7DQo+ID4gIA0KPiA+ICBzdGF0 aWMgaW50IGFkaXNfc2VsZl90ZXN0KHN0cnVjdCBhZGlzICphZGlzKQ0KPiA+ICB7DQo+ID4gIAlp bnQgcmV0Ow0KPiA+ICsJY29uc3Qgc3RydWN0IGFkaXNfdGltZW91dCAqdGltZW91dHMgPSBhZGlz LT5kYXRhLT50aW1lb3V0czsNCj4gPiAgDQo+ID4gIAlyZXQgPSBfX2FkaXNfd3JpdGVfcmVnXzE2 KGFkaXMsIGFkaXMtPmRhdGEtPm1zY19jdHJsX3JlZywNCj4gPiAgCQkJYWRpcy0+ZGF0YS0+c2Vs Zl90ZXN0X21hc2spOw0KPiA+IEBAIC0zMzksNyArMzQ1LDcgQEAgc3RhdGljIGludCBhZGlzX3Nl bGZfdGVzdChzdHJ1Y3QgYWRpcyAqYWRpcykNCj4gPiAgCQlyZXR1cm4gcmV0Ow0KPiA+ICAJfQ0K PiA+ICANCj4gPiAtCW1zbGVlcChhZGlzLT5kYXRhLT5zdGFydHVwX2RlbGF5KTsNCj4gPiArCW1z bGVlcCh0aW1lb3V0cy0+c2VsZl90ZXN0X21zKTsNCj4gPiAgDQo+ID4gIAlyZXQgPSBfX2FkaXNf Y2hlY2tfc3RhdHVzKGFkaXMpOw0KPiA+ICANCj4gPiBAQCAtMzY4LDcgKzM3NCw2IEBAIGludCBh ZGlzX2luaXRpYWxfc3RhcnR1cChzdHJ1Y3QgYWRpcyAqYWRpcykNCj4gPiAgCWlmIChyZXQpIHsN Cj4gPiAgCQlkZXZfZXJyKCZhZGlzLT5zcGktPmRldiwgIlNlbGYtdGVzdCBmYWlsZWQsIHRyeWlu Zw0KPiA+IHJlc2V0LlxuIik7DQo+ID4gIAkJX19hZGlzX3Jlc2V0KGFkaXMpOw0KPiA+IC0JCW1z bGVlcChhZGlzLT5kYXRhLT5zdGFydHVwX2RlbGF5KTsNCj4gPiAgCQlyZXQgPSBhZGlzX3NlbGZf dGVzdChhZGlzKTsNCj4gPiAgCQlpZiAocmV0KSB7DQo+ID4gIAkJCWRldl9lcnIoJmFkaXMtPnNw aS0+ZGV2LCAiU2Vjb25kIHNlbGYtdGVzdCBmYWlsZWQsDQo+ID4gZ2l2aW5nIHVwLlxuIik7DQo+ ID4gQEAgLTQ0NCw2ICs0NDksMTEgQEAgRVhQT1JUX1NZTUJPTF9HUEwoYWRpc19zaW5nbGVfY29u dmVyc2lvbik7DQo+ID4gIGludCBhZGlzX2luaXQoc3RydWN0IGFkaXMgKmFkaXMsIHN0cnVjdCBp aW9fZGV2ICppbmRpb19kZXYsDQo+ID4gIAlzdHJ1Y3Qgc3BpX2RldmljZSAqc3BpLCBjb25zdCBz dHJ1Y3QgYWRpc19kYXRhICpkYXRhKQ0KPiA+ICB7DQo+ID4gKwlpZiAoIWRhdGEgfHwgIWRhdGEt PnRpbWVvdXRzKSB7DQo+ID4gKwkJZGV2X2Vycigmc3BpLT5kZXYsICJObyBjb25maWcgZGF0YSBv ciB0aW1lb3V0cyBub3QNCj4gPiBkZWZpbmVkIVxuIik7DQo+ID4gKwkJcmV0dXJuIC1FSU5WQUw7 DQo+ID4gKwl9DQo+ID4gKw0KPiA+ICAJbXV0ZXhfaW5pdCgmYWRpcy0+c3RhdGVfbG9jayk7DQo+ ID4gIAlhZGlzLT5zcGkgPSBzcGk7DQo+ID4gIAlhZGlzLT5kYXRhID0gZGF0YTsNCj4gPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9paW8vaW11L2FkaXMxNjQwMC5jIGIvZHJpdmVycy9paW8vaW11L2Fk aXMxNjQwMC5jDQo+ID4gaW5kZXggNjYyY2I1MzY3YzExLi41MWIxZWMyM2I4ZWYgMTAwNjQ0DQo+ ID4gLS0tIGEvZHJpdmVycy9paW8vaW11L2FkaXMxNjQwMC5jDQo+ID4gKysrIGIvZHJpdmVycy9p aW8vaW11L2FkaXMxNjQwMC5jDQo+ID4gQEAgLTE1Niw2ICsxNTYsNyBAQCBzdHJ1Y3QgYWRpczE2 NDAwX3N0YXRlOw0KPiA+ICANCj4gPiAgc3RydWN0IGFkaXMxNjQwMF9jaGlwX2luZm8gew0KPiA+ ICAJY29uc3Qgc3RydWN0IGlpb19jaGFuX3NwZWMgKmNoYW5uZWxzOw0KPiA+ICsJY29uc3Qgc3Ry dWN0IGFkaXNfdGltZW91dCAqdGltZW91dHM7DQo+ID4gIAljb25zdCBpbnQgbnVtX2NoYW5uZWxz Ow0KPiA+ICAJY29uc3QgbG9uZyBmbGFnczsNCj4gPiAgCXVuc2lnbmVkIGludCBneXJvX3NjYWxl X21pY3JvOw0KPiA+IEBAIC05MjksNiArOTMwLDM2IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgaWlv X2NoYW5fc3BlYw0KPiA+IGFkaXMxNjMzNF9jaGFubmVsc1tdID0gew0KPiA+ICAJSUlPX0NIQU5f U09GVF9USU1FU1RBTVAoQURJUzE2NDAwX1NDQU5fVElNRVNUQU1QKSwNCj4gPiAgfTsNCj4gPiAg DQo+ID4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgYWRpc190aW1lb3V0IGFkaXMxNjMwMF90aW1lb3V0 cyA9IHsNCj4gPiArCS5yZXNldF9tcyA9IEFESVMxNjQwMF9TVEFSVFVQX0RFTEFZLA0KPiA+ICsJ LnN3X3Jlc2V0X21zID0gQURJUzE2NDAwX1NUQVJUVVBfREVMQVksDQo+ID4gKwkuc2VsZl90ZXN0 X21zID0gQURJUzE2NDAwX1NUQVJUVVBfREVMQVksDQo+ID4gK307DQo+ID4gKw0KPiA+ICtzdGF0 aWMgY29uc3Qgc3RydWN0IGFkaXNfdGltZW91dCBhZGlzMTYzNjJfdGltZW91dHMgPSB7DQo+ID4g KwkucmVzZXRfbXMgPSAxMzAsDQo+ID4gKwkuc3dfcmVzZXRfbXMgPSAxMzAsDQo+ID4gKwkuc2Vs Zl90ZXN0X21zID0gMTIsDQo+ID4gK307DQo+ID4gKw0KPiA+ICtzdGF0aWMgY29uc3Qgc3RydWN0 IGFkaXNfdGltZW91dCBhZGlzMTY0MDBfdGltZW91dHMgPSB7DQo+ID4gKwkucmVzZXRfbXMgPSAx NzAsDQo+ID4gKwkuc3dfcmVzZXRfbXMgPSAxNzAsDQo+ID4gKwkuc2VsZl90ZXN0X21zID0gMTIs DQo+ID4gK307DQo+ID4gKw0KPiA+ICtzdGF0aWMgY29uc3Qgc3RydWN0IGFkaXNfdGltZW91dCBh ZGlzMTY0NDVfdGltZW91dHMgPSB7DQo+ID4gKwkucmVzZXRfbXMgPSA1NSwNCj4gPiArCS5zd19y ZXNldF9tcyA9IDU1LA0KPiA+ICsJLnNlbGZfdGVzdF9tcyA9IDE2LA0KPiA+ICt9Ow0KPiA+ICsN Cj4gPiArc3RhdGljIGNvbnN0IHN0cnVjdCBhZGlzX3RpbWVvdXQgYWRpczE2NDQ4X3RpbWVvdXRz ID0gew0KPiA+ICsJLnJlc2V0X21zID0gOTAsDQo+ID4gKwkuc3dfcmVzZXRfbXMgPSA5MCwNCj4g PiArCS5zZWxmX3Rlc3RfbXMgPSA0NSwNCj4gPiArfTsNCj4gPiArDQo+ID4gIHN0YXRpYyBzdHJ1 Y3QgYWRpczE2NDAwX2NoaXBfaW5mbyBhZGlzMTY0MDBfY2hpcHNbXSA9IHsNCj4gPiAgCVtBRElT MTYzMDBdID0gew0KPiA+ICAJCS5jaGFubmVscyA9IGFkaXMxNjMwMF9jaGFubmVscywNCj4gPiBA QCAtOTQxLDYgKzk3Miw3IEBAIHN0YXRpYyBzdHJ1Y3QgYWRpczE2NDAwX2NoaXBfaW5mbyBhZGlz MTY0MDBfY2hpcHNbXQ0KPiA+ID0gew0KPiA+ICAJCS50ZW1wX29mZnNldCA9IDI1MDAwMDAwIC8g MTQwMDAwLCAvKiAyNSBDID0gMHgwMCAqLw0KPiA+ICAJCS5zZXRfZnJlcSA9IGFkaXMxNjQwMF9z ZXRfZnJlcSwNCj4gPiAgCQkuZ2V0X2ZyZXEgPSBhZGlzMTY0MDBfZ2V0X2ZyZXEsDQo+ID4gKwkJ LnRpbWVvdXRzID0gJmFkaXMxNjMwMF90aW1lb3V0cywNCj4gPiAgCX0sDQo+ID4gIAlbQURJUzE2 MzM0XSA9IHsNCj4gPiAgCQkuY2hhbm5lbHMgPSBhZGlzMTYzMzRfY2hhbm5lbHMsDQo+ID4gQEAg LTk2NCw2ICs5OTYsNyBAQCBzdGF0aWMgc3RydWN0IGFkaXMxNjQwMF9jaGlwX2luZm8gYWRpczE2 NDAwX2NoaXBzW10NCj4gPiA9IHsNCj4gPiAgCQkuZmxhZ3MgPSBBRElTMTY0MDBfTk9fQlVSU1Qg fCBBRElTMTY0MDBfSEFTX1NMT1dfTU9ERSwNCj4gPiAgCQkuc2V0X2ZyZXEgPSBhZGlzMTY0MDBf c2V0X2ZyZXEsDQo+ID4gIAkJLmdldF9mcmVxID0gYWRpczE2NDAwX2dldF9mcmVxLA0KPiA+ICsJ CS50aW1lb3V0cyA9ICZhZGlzMTYzMDBfdGltZW91dHMsDQo+ID4gIAl9LA0KPiA+ICAJW0FESVMx NjM2MF0gPSB7DQo+ID4gIAkJLmNoYW5uZWxzID0gYWRpczE2MzUwX2NoYW5uZWxzLA0KPiA+IEBA IC05NzYsNiArMTAwOSw3IEBAIHN0YXRpYyBzdHJ1Y3QgYWRpczE2NDAwX2NoaXBfaW5mbw0KPiA+ IGFkaXMxNjQwMF9jaGlwc1tdID0gew0KPiA+ICAJCS50ZW1wX29mZnNldCA9IDI1MDAwMDAwIC8g MTM2MDAwLCAvKiAyNSBDID0gMHgwMCAqLw0KPiA+ICAJCS5zZXRfZnJlcSA9IGFkaXMxNjQwMF9z ZXRfZnJlcSwNCj4gPiAgCQkuZ2V0X2ZyZXEgPSBhZGlzMTY0MDBfZ2V0X2ZyZXEsDQo+ID4gKwkJ LnRpbWVvdXRzID0gJmFkaXMxNjMwMF90aW1lb3V0cywNCj4gPiAgCX0sDQo+ID4gIAlbQURJUzE2 MzYyXSA9IHsNCj4gPiAgCQkuY2hhbm5lbHMgPSBhZGlzMTYzNTBfY2hhbm5lbHMsDQo+ID4gQEAg LTk4OCw2ICsxMDIyLDcgQEAgc3RhdGljIHN0cnVjdCBhZGlzMTY0MDBfY2hpcF9pbmZvDQo+ID4g YWRpczE2NDAwX2NoaXBzW10gPSB7DQo+ID4gIAkJLnRlbXBfb2Zmc2V0ID0gMjUwMDAwMDAgLyAx MzYwMDAsIC8qIDI1IEMgPSAweDAwICovDQo+ID4gIAkJLnNldF9mcmVxID0gYWRpczE2NDAwX3Nl dF9mcmVxLA0KPiA+ICAJCS5nZXRfZnJlcSA9IGFkaXMxNjQwMF9nZXRfZnJlcSwNCj4gPiArCQku dGltZW91dHMgPSAmYWRpczE2MzYyX3RpbWVvdXRzLA0KPiA+ICAJfSwNCj4gPiAgCVtBRElTMTYz NjRdID0gew0KPiA+ICAJCS5jaGFubmVscyA9IGFkaXMxNjM1MF9jaGFubmVscywNCj4gPiBAQCAt MTAwMCw2ICsxMDM1LDcgQEAgc3RhdGljIHN0cnVjdCBhZGlzMTY0MDBfY2hpcF9pbmZvDQo+ID4g YWRpczE2NDAwX2NoaXBzW10gPSB7DQo+ID4gIAkJLnRlbXBfb2Zmc2V0ID0gMjUwMDAwMDAgLyAx MzYwMDAsIC8qIDI1IEMgPSAweDAwICovDQo+ID4gIAkJLnNldF9mcmVxID0gYWRpczE2NDAwX3Nl dF9mcmVxLA0KPiA+ICAJCS5nZXRfZnJlcSA9IGFkaXMxNjQwMF9nZXRfZnJlcSwNCj4gPiArCQku dGltZW91dHMgPSAmYWRpczE2MzYyX3RpbWVvdXRzLA0KPiA+ICAJfSwNCj4gPiAgCVtBRElTMTYz NjddID0gew0KPiA+ICAJCS5jaGFubmVscyA9IGFkaXMxNjM1MF9jaGFubmVscywNCj4gPiBAQCAt MTAxMiw2ICsxMDQ4LDcgQEAgc3RhdGljIHN0cnVjdCBhZGlzMTY0MDBfY2hpcF9pbmZvDQo+ID4g YWRpczE2NDAwX2NoaXBzW10gPSB7DQo+ID4gIAkJLnRlbXBfb2Zmc2V0ID0gMjUwMDAwMDAgLyAx MzYwMDAsIC8qIDI1IEMgPSAweDAwICovDQo+ID4gIAkJLnNldF9mcmVxID0gYWRpczE2NDAwX3Nl dF9mcmVxLA0KPiA+ICAJCS5nZXRfZnJlcSA9IGFkaXMxNjQwMF9nZXRfZnJlcSwNCj4gPiArCQku dGltZW91dHMgPSAmYWRpczE2MzAwX3RpbWVvdXRzLA0KPiA+ICAJfSwNCj4gPiAgCVtBRElTMTY0 MDBdID0gew0KPiA+ICAJCS5jaGFubmVscyA9IGFkaXMxNjQwMF9jaGFubmVscywNCj4gPiBAQCAt MTAyMyw2ICsxMDYwLDcgQEAgc3RhdGljIHN0cnVjdCBhZGlzMTY0MDBfY2hpcF9pbmZvDQo+ID4g YWRpczE2NDAwX2NoaXBzW10gPSB7DQo+ID4gIAkJLnRlbXBfb2Zmc2V0ID0gMjUwMDAwMDAgLyAx NDAwMDAsIC8qIDI1IEMgPSAweDAwICovDQo+ID4gIAkJLnNldF9mcmVxID0gYWRpczE2NDAwX3Nl dF9mcmVxLA0KPiA+ICAJCS5nZXRfZnJlcSA9IGFkaXMxNjQwMF9nZXRfZnJlcSwNCj4gPiArCQku dGltZW91dHMgPSAmYWRpczE2NDAwX3RpbWVvdXRzLA0KPiA+ICAJfSwNCj4gPiAgCVtBRElTMTY0 NDVdID0gew0KPiA+ICAJCS5jaGFubmVscyA9IGFkaXMxNjQ0NV9jaGFubmVscywNCj4gPiBAQCAt MTAzNiw2ICsxMDc0LDcgQEAgc3RhdGljIHN0cnVjdCBhZGlzMTY0MDBfY2hpcF9pbmZvDQo+ID4g YWRpczE2NDAwX2NoaXBzW10gPSB7DQo+ID4gIAkJLnRlbXBfb2Zmc2V0ID0gMzEwMDAwMDAgLyA3 Mzg2MCwgLyogMzEgQyA9IDB4MDAgKi8NCj4gPiAgCQkuc2V0X2ZyZXEgPSBhZGlzMTYzMzRfc2V0 X2ZyZXEsDQo+ID4gIAkJLmdldF9mcmVxID0gYWRpczE2MzM0X2dldF9mcmVxLA0KPiA+ICsJCS50 aW1lb3V0cyA9ICZhZGlzMTY0NDVfdGltZW91dHMsDQo+ID4gIAl9LA0KPiA+ICAJW0FESVMxNjQ0 OF0gPSB7DQo+ID4gIAkJLmNoYW5uZWxzID0gYWRpczE2NDQ4X2NoYW5uZWxzLA0KPiA+IEBAIC0x MDQ5LDYgKzEwODgsNyBAQCBzdGF0aWMgc3RydWN0IGFkaXMxNjQwMF9jaGlwX2luZm8NCj4gPiBh ZGlzMTY0MDBfY2hpcHNbXSA9IHsNCj4gPiAgCQkudGVtcF9vZmZzZXQgPSAzMTAwMDAwMCAvIDcz ODYwLCAvKiAzMSBDID0gMHgwMCAqLw0KPiA+ICAJCS5zZXRfZnJlcSA9IGFkaXMxNjMzNF9zZXRf ZnJlcSwNCj4gPiAgCQkuZ2V0X2ZyZXEgPSBhZGlzMTYzMzRfZ2V0X2ZyZXEsDQo+ID4gKwkJLnRp bWVvdXRzID0gJmFkaXMxNjQ0OF90aW1lb3V0cywNCj4gPiAgCX0NCj4gPiAgfTsNCj4gPiAgDQo+ ID4gQEAgLTExMjAsMTEgKzExNjAsMjggQEAgc3RhdGljIHZvaWQgYWRpczE2NDAwX3NldHVwX2No YW5fbWFzayhzdHJ1Y3QNCj4gPiBhZGlzMTY0MDBfc3RhdGUgKnN0KQ0KPiA+ICAJfQ0KPiA+ICB9 DQo+ID4gIA0KPiA+ICtzdGF0aWMgc3RydWN0IGFkaXNfZGF0YSAqYWRpczE2NDAwX2FkaXNfZGF0 YV9hbGxvYyhzdHJ1Y3QNCj4gPiBhZGlzMTY0MDBfc3RhdGUgKnN0LA0KPiA+ICsJCQkJCQkgICBz dHJ1Y3QgZGV2aWNlICpkZXYpDQo+ID4gK3sNCj4gPiArCXN0cnVjdCBhZGlzX2RhdGEgKmRhdGE7 DQo+ID4gKw0KPiA+ICsJZGF0YSA9IGRldm1fa21hbGxvYyhkZXYsIHNpemVvZihzdHJ1Y3QgYWRp c19kYXRhKSwgR0ZQX0tFUk5FTCk7DQo+ID4gKwlpZiAoIWRhdGEpDQo+ID4gKwkJcmV0dXJuIEVS Ul9QVFIoLUVOT01FTSk7DQo+ID4gKw0KPiA+ICsJbWVtY3B5KGRhdGEsICZhZGlzMTY0MDBfZGF0 YSwgc2l6ZW9mKCpkYXRhKSk7DQo+ID4gKw0KPiA+ICsJZGF0YS0+dGltZW91dHMgPSBzdC0+dmFy aWFudC0+dGltZW91dHM7DQo+ID4gKw0KPiA+ICsJcmV0dXJuIGRhdGE7DQo+ID4gK30NCj4gPiAr DQo+ID4gIHN0YXRpYyBpbnQgYWRpczE2NDAwX3Byb2JlKHN0cnVjdCBzcGlfZGV2aWNlICpzcGkp DQo+ID4gIHsNCj4gPiAgCXN0cnVjdCBhZGlzMTY0MDBfc3RhdGUgKnN0Ow0KPiA+ICAJc3RydWN0 IGlpb19kZXYgKmluZGlvX2RldjsNCj4gPiAgCWludCByZXQ7DQo+ID4gKwljb25zdCBzdHJ1Y3Qg YWRpc19kYXRhICphZGlzMTY0MDBfZGF0YTsNCj4gPiAgDQo+ID4gIAlpbmRpb19kZXYgPSBkZXZt X2lpb19kZXZpY2VfYWxsb2MoJnNwaS0+ZGV2LCBzaXplb2YoKnN0KSk7DQo+ID4gIAlpZiAoaW5k aW9fZGV2ID09IE5VTEwpDQo+ID4gQEAgLTExNTEsNyArMTIwOCwxMSBAQCBzdGF0aWMgaW50IGFk aXMxNjQwMF9wcm9iZShzdHJ1Y3Qgc3BpX2RldmljZQ0KPiA+ICpzcGkpDQo+ID4gIAkJCXN0LT5h ZGlzLmJ1cnN0LT5leHRyYV9sZW4gPSBzaXplb2YodTE2KTsNCj4gPiAgCX0NCj4gPiAgDQo+ID4g LQlyZXQgPSBhZGlzX2luaXQoJnN0LT5hZGlzLCBpbmRpb19kZXYsIHNwaSwgJmFkaXMxNjQwMF9k YXRhKTsNCj4gPiArCWFkaXMxNjQwMF9kYXRhID0gYWRpczE2NDAwX2FkaXNfZGF0YV9hbGxvYyhz dCwgJnNwaS0+ZGV2KTsNCj4gPiArCWlmIChJU19FUlIoYWRpczE2NDAwX2RhdGEpKQ0KPiA+ICsJ CXJldHVybiBQVFJfRVJSKGFkaXMxNjQwMF9kYXRhKTsNCj4gPiArDQo+ID4gKwlyZXQgPSBhZGlz X2luaXQoJnN0LT5hZGlzLCBpbmRpb19kZXYsIHNwaSwgYWRpczE2NDAwX2RhdGEpOw0KPiA+ICAJ aWYgKHJldCkNCj4gPiAgCQlyZXR1cm4gcmV0Ow0KPiA+ICANCj4gPiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9paW8vaW11L2FkaXMxNjQ2MC5jIGIvZHJpdmVycy9paW8vaW11L2FkaXMxNjQ2MC5jDQo+ ID4gaW5kZXggYjU1ODEyNTIxNTM3Li45NTM5Y2ZlNGEyNTkgMTAwNjQ0DQo+ID4gLS0tIGEvZHJp dmVycy9paW8vaW11L2FkaXMxNjQ2MC5jDQo+ID4gKysrIGIvZHJpdmVycy9paW8vaW11L2FkaXMx NjQ2MC5jDQo+ID4gQEAgLTM4Myw2ICszODMsMTIgQEAgc3RhdGljIGNvbnN0IGNoYXIgKiBjb25z dA0KPiA+IGFkaXMxNjQ2MF9zdGF0dXNfZXJyb3JfbXNnc1tdID0gew0KPiA+ICAJW0FESVMxNjQ2 MF9ESUFHX1NUQVRfRkxBU0hfVVBUXSA9ICJGbGFzaCB1cGRhdGUgZmFpbHVyZSIsDQo+ID4gIH07 DQo+ID4gIA0KPiA+ICtzdGF0aWMgY29uc3Qgc3RydWN0IGFkaXNfdGltZW91dCBhZGlzMTY0NjBf dGltZW91dHMgPSB7DQo+ID4gKwkucmVzZXRfbXMgPSAyMjUsDQo+ID4gKwkuc3dfcmVzZXRfbXMg PSAyMjUsDQo+ID4gKwkuc2VsZl90ZXN0X21zID0gMTAsDQo+ID4gK307DQo+ID4gKw0KPiA+ICBz dGF0aWMgY29uc3Qgc3RydWN0IGFkaXNfZGF0YSBhZGlzMTY0NjBfZGF0YSA9IHsNCj4gPiAgCS5k aWFnX3N0YXRfcmVnID0gQURJUzE2NDYwX1JFR19ESUFHX1NUQVQsDQo+ID4gIAkuZ2xvYl9jbWRf cmVnID0gQURJUzE2NDYwX1JFR19HTE9CX0NNRCwNCj4gPiBAQCAtMzk4LDYgKzQwNCw3IEBAIHN0 YXRpYyBjb25zdCBzdHJ1Y3QgYWRpc19kYXRhIGFkaXMxNjQ2MF9kYXRhID0gew0KPiA+ICAJCUJJ VChBRElTMTY0NjBfRElBR19TVEFUX1NQSV9DT01NKSB8DQo+ID4gIAkJQklUKEFESVMxNjQ2MF9E SUFHX1NUQVRfRkxBU0hfVVBUKSwNCj4gPiAgCS5lbmFibGVfaXJxID0gYWRpczE2NDYwX2VuYWJs ZV9pcnEsDQo+ID4gKwkudGltZW91dHMgPSAmYWRpczE2NDYwX3RpbWVvdXRzLA0KPiA+ICB9Ow0K PiA+ICANCj4gPiAgc3RhdGljIGludCBhZGlzMTY0NjBfcHJvYmUoc3RydWN0IHNwaV9kZXZpY2Ug KnNwaSkNCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9paW8vaW11L2FkaXMxNjQ4MC5jIGIvZHJp dmVycy9paW8vaW11L2FkaXMxNjQ4MC5jDQo+ID4gaW5kZXggZjczMDk0ZThkMzVkLi5mMGFkN2Nl NjQ4NjEgMTAwNjQ0DQo+ID4gLS0tIGEvZHJpdmVycy9paW8vaW11L2FkaXMxNjQ4MC5jDQo+ID4g KysrIGIvZHJpdmVycy9paW8vaW11L2FkaXMxNjQ4MC5jDQo+ID4gQEAgLTEzOCw2ICsxMzgsNyBA QCBzdHJ1Y3QgYWRpczE2NDgwX2NoaXBfaW5mbyB7DQo+ID4gIAl1bnNpZ25lZCBpbnQgbWF4X2Rl Y19yYXRlOw0KPiA+ICAJY29uc3QgdW5zaWduZWQgaW50ICpmaWx0ZXJfZnJlcXM7DQo+ID4gIAli b29sIGhhc19wcHNfY2xrX21vZGU7DQo+ID4gKwljb25zdCBzdHJ1Y3QgYWRpc190aW1lb3V0ICp0 aW1lb3V0czsNCj4gPiAgfTsNCj4gPiAgDQo+ID4gIGVudW0gYWRpczE2NDgwX2ludF9waW4gew0K PiA+IEBAIC03OTQsNiArNzk1LDMwIEBAIGVudW0gYWRpczE2NDgwX3ZhcmlhbnQgew0KPiA+ICAJ QURJUzE2NDk3XzMsDQo+ID4gIH07DQo+ID4gIA0KPiA+ICtzdGF0aWMgY29uc3Qgc3RydWN0IGFk aXNfdGltZW91dCBhZGlzMTY0ODVfdGltZW91dHMgPSB7DQo+ID4gKwkucmVzZXRfbXMgPSA1NjAs DQo+ID4gKwkuc3dfcmVzZXRfbXMgPSAxMjAsDQo+ID4gKwkuc2VsZl90ZXN0X21zID0gMTIsDQo+ ID4gK307DQo+ID4gKw0KPiA+ICtzdGF0aWMgY29uc3Qgc3RydWN0IGFkaXNfdGltZW91dCBhZGlz MTY0ODBfdGltZW91dHMgPSB7DQo+ID4gKwkucmVzZXRfbXMgPSA1NjAsDQo+ID4gKwkuc3dfcmVz ZXRfbXMgPSA1NjAsDQo+ID4gKwkuc2VsZl90ZXN0X21zID0gMTIsDQo+ID4gK307DQo+ID4gKw0K PiA+ICtzdGF0aWMgY29uc3Qgc3RydWN0IGFkaXNfdGltZW91dCBhZGlzMTY0OTVfdGltZW91dHMg PSB7DQo+ID4gKwkucmVzZXRfbXMgPSAxNzAsDQo+ID4gKwkuc3dfcmVzZXRfbXMgPSAxMzAsDQo+ ID4gKwkuc2VsZl90ZXN0X21zID0gNDAsDQo+ID4gK307DQo+ID4gKw0KPiA+ICtzdGF0aWMgY29u c3Qgc3RydWN0IGFkaXNfdGltZW91dCBhZGlzMTY0OTVfMV90aW1lb3V0cyA9IHsNCj4gPiArCS5y ZXNldF9tcyA9IDI1MCwNCj4gPiArCS5zd19yZXNldF9tcyA9IDIxMCwNCj4gPiArCS5zZWxmX3Rl c3RfbXMgPSAyMCwNCj4gPiArfTsNCj4gPiArDQo+ID4gIHN0YXRpYyBjb25zdCBzdHJ1Y3QgYWRp czE2NDgwX2NoaXBfaW5mbyBhZGlzMTY0ODBfY2hpcF9pbmZvW10gPSB7DQo+ID4gIAlbQURJUzE2 Mzc1XSA9IHsNCj4gPiAgCQkuY2hhbm5lbHMgPSBhZGlzMTY0ODVfY2hhbm5lbHMsDQo+ID4gQEAg LTgxMiw2ICs4MzcsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGFkaXMxNjQ4MF9jaGlwX2luZm8N Cj4gPiBhZGlzMTY0ODBfY2hpcF9pbmZvW10gPSB7DQo+ID4gIAkJLmludF9jbGsgPSAyNDYwMDAw LA0KPiA+ICAJCS5tYXhfZGVjX3JhdGUgPSAyMDQ4LA0KPiA+ICAJCS5maWx0ZXJfZnJlcXMgPSBh ZGlzMTY0ODBfZGVmX2ZpbHRlcl9mcmVxcywNCj4gPiArCQkudGltZW91dHMgPSAmYWRpczE2NDg1 X3RpbWVvdXRzLA0KPiA+ICAJfSwNCj4gPiAgCVtBRElTMTY0ODBdID0gew0KPiA+ICAJCS5jaGFu bmVscyA9IGFkaXMxNjQ4MF9jaGFubmVscywNCj4gPiBAQCAtODI0LDYgKzg1MCw3IEBAIHN0YXRp YyBjb25zdCBzdHJ1Y3QgYWRpczE2NDgwX2NoaXBfaW5mbw0KPiA+IGFkaXMxNjQ4MF9jaGlwX2lu Zm9bXSA9IHsNCj4gPiAgCQkuaW50X2NsayA9IDI0NjAwMDAsDQo+ID4gIAkJLm1heF9kZWNfcmF0 ZSA9IDIwNDgsDQo+ID4gIAkJLmZpbHRlcl9mcmVxcyA9IGFkaXMxNjQ4MF9kZWZfZmlsdGVyX2Zy ZXFzLA0KPiA+ICsJCS50aW1lb3V0cyA9ICZhZGlzMTY0ODBfdGltZW91dHMsDQo+ID4gIAl9LA0K PiA+ICAJW0FESVMxNjQ4NV0gPSB7DQo+ID4gIAkJLmNoYW5uZWxzID0gYWRpczE2NDg1X2NoYW5u ZWxzLA0KPiA+IEBAIC04MzYsNiArODYzLDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBhZGlzMTY0 ODBfY2hpcF9pbmZvDQo+ID4gYWRpczE2NDgwX2NoaXBfaW5mb1tdID0gew0KPiA+ICAJCS5pbnRf Y2xrID0gMjQ2MDAwMCwNCj4gPiAgCQkubWF4X2RlY19yYXRlID0gMjA0OCwNCj4gPiAgCQkuZmls dGVyX2ZyZXFzID0gYWRpczE2NDgwX2RlZl9maWx0ZXJfZnJlcXMsDQo+ID4gKwkJLnRpbWVvdXRz ID0gJmFkaXMxNjQ4NV90aW1lb3V0cywNCj4gPiAgCX0sDQo+ID4gIAlbQURJUzE2NDg4XSA9IHsN Cj4gPiAgCQkuY2hhbm5lbHMgPSBhZGlzMTY0ODBfY2hhbm5lbHMsDQo+ID4gQEAgLTg0OCw2ICs4 NzYsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGFkaXMxNjQ4MF9jaGlwX2luZm8NCj4gPiBhZGlz MTY0ODBfY2hpcF9pbmZvW10gPSB7DQo+ID4gIAkJLmludF9jbGsgPSAyNDYwMDAwLA0KPiA+ICAJ CS5tYXhfZGVjX3JhdGUgPSAyMDQ4LA0KPiA+ICAJCS5maWx0ZXJfZnJlcXMgPSBhZGlzMTY0ODBf ZGVmX2ZpbHRlcl9mcmVxcywNCj4gPiArCQkudGltZW91dHMgPSAmYWRpczE2NDg1X3RpbWVvdXRz LA0KPiA+ICAJfSwNCj4gPiAgCVtBRElTMTY0OTVfMV0gPSB7DQo+ID4gIAkJLmNoYW5uZWxzID0g YWRpczE2NDg1X2NoYW5uZWxzLA0KPiA+IEBAIC04NjEsNiArODkwLDcgQEAgc3RhdGljIGNvbnN0 IHN0cnVjdCBhZGlzMTY0ODBfY2hpcF9pbmZvDQo+ID4gYWRpczE2NDgwX2NoaXBfaW5mb1tdID0g ew0KPiA+ICAJCS5tYXhfZGVjX3JhdGUgPSA0MjUwLA0KPiA+ICAJCS5maWx0ZXJfZnJlcXMgPSBh ZGlzMTY0OTVfZGVmX2ZpbHRlcl9mcmVxcywNCj4gPiAgCQkuaGFzX3Bwc19jbGtfbW9kZSA9IHRy dWUsDQo+ID4gKwkJLnRpbWVvdXRzID0gJmFkaXMxNjQ5NV8xX3RpbWVvdXRzLA0KPiA+ICAJfSwN Cj4gPiAgCVtBRElTMTY0OTVfMl0gPSB7DQo+ID4gIAkJLmNoYW5uZWxzID0gYWRpczE2NDg1X2No YW5uZWxzLA0KPiA+IEBAIC04NzQsNiArOTA0LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBhZGlz MTY0ODBfY2hpcF9pbmZvDQo+ID4gYWRpczE2NDgwX2NoaXBfaW5mb1tdID0gew0KPiA+ICAJCS5t YXhfZGVjX3JhdGUgPSA0MjUwLA0KPiA+ICAJCS5maWx0ZXJfZnJlcXMgPSBhZGlzMTY0OTVfZGVm X2ZpbHRlcl9mcmVxcywNCj4gPiAgCQkuaGFzX3Bwc19jbGtfbW9kZSA9IHRydWUsDQo+ID4gKwkJ LnRpbWVvdXRzID0gJmFkaXMxNjQ5NV8xX3RpbWVvdXRzLA0KPiA+ICAJfSwNCj4gPiAgCVtBRElT MTY0OTVfM10gPSB7DQo+ID4gIAkJLmNoYW5uZWxzID0gYWRpczE2NDg1X2NoYW5uZWxzLA0KPiA+ IEBAIC04ODcsNiArOTE4LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBhZGlzMTY0ODBfY2hpcF9p bmZvDQo+ID4gYWRpczE2NDgwX2NoaXBfaW5mb1tdID0gew0KPiA+ICAJCS5tYXhfZGVjX3JhdGUg PSA0MjUwLA0KPiA+ICAJCS5maWx0ZXJfZnJlcXMgPSBhZGlzMTY0OTVfZGVmX2ZpbHRlcl9mcmVx cywNCj4gPiAgCQkuaGFzX3Bwc19jbGtfbW9kZSA9IHRydWUsDQo+ID4gKwkJLnRpbWVvdXRzID0g JmFkaXMxNjQ5NV8xX3RpbWVvdXRzLA0KPiA+ICAJfSwNCj4gPiAgCVtBRElTMTY0OTdfMV0gPSB7 DQo+ID4gIAkJLmNoYW5uZWxzID0gYWRpczE2NDg1X2NoYW5uZWxzLA0KPiA+IEBAIC05MDAsNiAr OTMyLDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBhZGlzMTY0ODBfY2hpcF9pbmZvDQo+ID4gYWRp czE2NDgwX2NoaXBfaW5mb1tdID0gew0KPiA+ICAJCS5tYXhfZGVjX3JhdGUgPSA0MjUwLA0KPiA+ ICAJCS5maWx0ZXJfZnJlcXMgPSBhZGlzMTY0OTVfZGVmX2ZpbHRlcl9mcmVxcywNCj4gPiAgCQku aGFzX3Bwc19jbGtfbW9kZSA9IHRydWUsDQo+ID4gKwkJLnRpbWVvdXRzID0gJmFkaXMxNjQ5NV8x X3RpbWVvdXRzLA0KPiA+ICAJfSwNCj4gPiAgCVtBRElTMTY0OTdfMl0gPSB7DQo+ID4gIAkJLmNo YW5uZWxzID0gYWRpczE2NDg1X2NoYW5uZWxzLA0KPiA+IEBAIC05MTMsNiArOTQ2LDcgQEAgc3Rh dGljIGNvbnN0IHN0cnVjdCBhZGlzMTY0ODBfY2hpcF9pbmZvDQo+ID4gYWRpczE2NDgwX2NoaXBf aW5mb1tdID0gew0KPiA+ICAJCS5tYXhfZGVjX3JhdGUgPSA0MjUwLA0KPiA+ICAJCS5maWx0ZXJf ZnJlcXMgPSBhZGlzMTY0OTVfZGVmX2ZpbHRlcl9mcmVxcywNCj4gPiAgCQkuaGFzX3Bwc19jbGtf bW9kZSA9IHRydWUsDQo+ID4gKwkJLnRpbWVvdXRzID0gJmFkaXMxNjQ5NV8xX3RpbWVvdXRzLA0K PiA+ICAJfSwNCj4gPiAgCVtBRElTMTY0OTdfM10gPSB7DQo+ID4gIAkJLmNoYW5uZWxzID0gYWRp czE2NDg1X2NoYW5uZWxzLA0KPiA+IEBAIC05MjYsNiArOTYwLDcgQEAgc3RhdGljIGNvbnN0IHN0 cnVjdCBhZGlzMTY0ODBfY2hpcF9pbmZvDQo+ID4gYWRpczE2NDgwX2NoaXBfaW5mb1tdID0gew0K PiA+ICAJCS5tYXhfZGVjX3JhdGUgPSA0MjUwLA0KPiA+ICAJCS5maWx0ZXJfZnJlcXMgPSBhZGlz MTY0OTVfZGVmX2ZpbHRlcl9mcmVxcywNCj4gPiAgCQkuaGFzX3Bwc19jbGtfbW9kZSA9IHRydWUs DQo+ID4gKwkJLnRpbWVvdXRzID0gJmFkaXMxNjQ5NV8xX3RpbWVvdXRzLA0KPiA+ICAJfSwNCj4g PiAgfTsNCj4gPiAgDQo+ID4gQEAgLTExOTUsOSArMTIzMCwyNiBAQCBzdGF0aWMgaW50IGFkaXMx NjQ4MF9nZXRfZXh0X2Nsb2NrcyhzdHJ1Y3QNCj4gPiBhZGlzMTY0ODAgKnN0KQ0KPiA+ICAJcmV0 dXJuIDA7DQo+ID4gIH0NCj4gPiAgDQo+ID4gK3N0YXRpYyBzdHJ1Y3QgYWRpc19kYXRhICphZGlz MTY0ODBfYWRpc19kYXRhX2FsbG9jKHN0cnVjdCBhZGlzMTY0ODANCj4gPiAqc3QsDQo+ID4gKwkJ CQkJCSAgIHN0cnVjdCBkZXZpY2UgKmRldikNCj4gPiArew0KPiA+ICsJc3RydWN0IGFkaXNfZGF0 YSAqZGF0YTsNCj4gPiArDQo+ID4gKwlkYXRhID0gZGV2bV9rbWFsbG9jKGRldiwgc2l6ZW9mKHN0 cnVjdCBhZGlzX2RhdGEpLCBHRlBfS0VSTkVMKTsNCj4gPiArCWlmICghZGF0YSkNCj4gPiArCQly ZXR1cm4gRVJSX1BUUigtRU5PTUVNKTsNCj4gPiArDQo+ID4gKwltZW1jcHkoZGF0YSwgJmFkaXMx NjQ4MF9kYXRhLCBzaXplb2YoKmRhdGEpKTsNCj4gPiArDQo+ID4gKwlkYXRhLT50aW1lb3V0cyA9 IHN0LT5jaGlwX2luZm8tPnRpbWVvdXRzOw0KPiA+ICsNCj4gPiArCXJldHVybiBkYXRhOw0KPiA+ ICt9DQo+ID4gKw0KPiA+ICBzdGF0aWMgaW50IGFkaXMxNjQ4MF9wcm9iZShzdHJ1Y3Qgc3BpX2Rl dmljZSAqc3BpKQ0KPiA+ICB7DQo+ID4gIAljb25zdCBzdHJ1Y3Qgc3BpX2RldmljZV9pZCAqaWQg PSBzcGlfZ2V0X2RldmljZV9pZChzcGkpOw0KPiA+ICsJY29uc3Qgc3RydWN0IGFkaXNfZGF0YSAq YWRpczE2NDgwX2RhdGE7DQo+ID4gIAlzdHJ1Y3QgaWlvX2RldiAqaW5kaW9fZGV2Ow0KPiA+ICAJ c3RydWN0IGFkaXMxNjQ4MCAqc3Q7DQo+ID4gIAlpbnQgcmV0Ow0KPiA+IEBAIC0xMjE4LDcgKzEy NzAsMTEgQEAgc3RhdGljIGludCBhZGlzMTY0ODBfcHJvYmUoc3RydWN0IHNwaV9kZXZpY2UNCj4g PiAqc3BpKQ0KPiA+ICAJaW5kaW9fZGV2LT5pbmZvID0gJmFkaXMxNjQ4MF9pbmZvOw0KPiA+ICAJ aW5kaW9fZGV2LT5tb2RlcyA9IElORElPX0RJUkVDVF9NT0RFOw0KPiA+ICANCj4gPiAtCXJldCA9 IGFkaXNfaW5pdCgmc3QtPmFkaXMsIGluZGlvX2Rldiwgc3BpLCAmYWRpczE2NDgwX2RhdGEpOw0K PiA+ICsJYWRpczE2NDgwX2RhdGEgPSBhZGlzMTY0ODBfYWRpc19kYXRhX2FsbG9jKHN0LCAmc3Bp LT5kZXYpOw0KPiA+ICsJaWYgKElTX0VSUihhZGlzMTY0ODBfZGF0YSkpDQo+ID4gKwkJcmV0dXJu IFBUUl9FUlIoYWRpczE2NDgwX2RhdGEpOw0KPiA+ICsNCj4gPiArCXJldCA9IGFkaXNfaW5pdCgm c3QtPmFkaXMsIGluZGlvX2Rldiwgc3BpLCBhZGlzMTY0ODBfZGF0YSk7DQo+ID4gIAlpZiAocmV0 KQ0KPiA+ICAJCXJldHVybiByZXQ7DQo+ID4gIA0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3N0 YWdpbmcvaWlvL2FjY2VsL2FkaXMxNjIwMy5jDQo+ID4gYi9kcml2ZXJzL3N0YWdpbmcvaWlvL2Fj Y2VsL2FkaXMxNjIwMy5jDQo+ID4gaW5kZXggMzk2ODcxMzlhN2QzLi4zZDcwNmVlMDJkZjAgMTAw NjQ0DQo+ID4gLS0tIGEvZHJpdmVycy9zdGFnaW5nL2lpby9hY2NlbC9hZGlzMTYyMDMuYw0KPiA+ ICsrKyBiL2RyaXZlcnMvc3RhZ2luZy9paW8vYWNjZWwvYWRpczE2MjAzLmMNCj4gPiBAQCAtMjM3 LDYgKzIzNywxMiBAQCBzdGF0aWMgY29uc3QgY2hhciAqIGNvbnN0DQo+ID4gYWRpczE2MjAzX3N0 YXR1c19lcnJvcl9tc2dzW10gPSB7DQo+ID4gIAlbQURJUzE2MjAzX0RJQUdfU1RBVF9QT1dFUl9M T1dfQklUXSA9ICJQb3dlciBzdXBwbHkgYmVsb3cgMi45NzVWIiwNCj4gPiAgfTsNCj4gPiAgDQo+ ID4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgYWRpc190aW1lb3V0IGFkaXMxNjIwM190aW1lb3V0cyA9 IHsNCj4gPiArCS5yZXNldF9tcyA9IEFESVMxNjIwM19TVEFSVFVQX0RFTEFZLA0KPiA+ICsJLnN3 X3Jlc2V0X21zID0gQURJUzE2MjAzX1NUQVJUVVBfREVMQVksDQo+ID4gKwkuc2VsZl90ZXN0X21z ID0gQURJUzE2MjAzX1NUQVJUVVBfREVMQVkNCj4gPiArfTsNCj4gPiArDQo+ID4gIHN0YXRpYyBj b25zdCBzdHJ1Y3QgYWRpc19kYXRhIGFkaXMxNjIwM19kYXRhID0gew0KPiA+ICAJLnJlYWRfZGVs YXkgPSAyMCwNCj4gPiAgCS5tc2NfY3RybF9yZWcgPSBBRElTMTYyMDNfTVNDX0NUUkwsDQo+ID4g QEAgLTI0Niw2ICsyNTIsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGFkaXNfZGF0YSBhZGlzMTYy MDNfZGF0YSA9IHsNCj4gPiAgCS5zZWxmX3Rlc3RfbWFzayA9IEFESVMxNjIwM19NU0NfQ1RSTF9T RUxGX1RFU1RfRU4sDQo+ID4gIAkuc2VsZl90ZXN0X25vX2F1dG9jbGVhciA9IHRydWUsDQo+ID4g IAkuc3RhcnR1cF9kZWxheSA9IEFESVMxNjIwM19TVEFSVFVQX0RFTEFZLA0KPiA+ICsJLnRpbWVv dXRzID0gJmFkaXMxNjIwM190aW1lb3V0cywNCj4gPiAgDQo+ID4gIAkuc3RhdHVzX2Vycm9yX21z Z3MgPSBhZGlzMTYyMDNfc3RhdHVzX2Vycm9yX21zZ3MsDQo+ID4gIAkuc3RhdHVzX2Vycm9yX21h c2sgPSBCSVQoQURJUzE2MjAzX0RJQUdfU1RBVF9TRUxGVEVTVF9GQUlMX0JJVCkgfA0KPiA+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL3N0YWdpbmcvaWlvL2FjY2VsL2FkaXMxNjI0MC5jDQo+ID4gYi9k cml2ZXJzL3N0YWdpbmcvaWlvL2FjY2VsL2FkaXMxNjI0MC5jDQo+ID4gaW5kZXggNzk0ZjA2M2U2 Yzg2Li5kNDg0OGVmNzhjNzUgMTAwNjQ0DQo+ID4gLS0tIGEvZHJpdmVycy9zdGFnaW5nL2lpby9h Y2NlbC9hZGlzMTYyNDAuYw0KPiA+ICsrKyBiL2RyaXZlcnMvc3RhZ2luZy9paW8vYWNjZWwvYWRp czE2MjQwLmMNCj4gPiBAQCAtMzU5LDYgKzM1OSwxMiBAQCBzdGF0aWMgY29uc3QgY2hhciAqIGNv bnN0DQo+ID4gYWRpczE2MjQwX3N0YXR1c19lcnJvcl9tc2dzW10gPSB7DQo+ID4gIAlbQURJUzE2 MjQwX0RJQUdfU1RBVF9QT1dFUl9MT1dfQklUXSA9ICJQb3dlciBzdXBwbHkgYmVsb3cgMi4yMjVW IiwNCj4gPiAgfTsNCj4gPiAgDQo+ID4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgYWRpc190aW1lb3V0 IGFkaXMxNjI0MF90aW1lb3V0cyA9IHsNCj4gPiArCS5yZXNldF9tcyA9IEFESVMxNjI0MF9TVEFS VFVQX0RFTEFZLA0KPiA+ICsJLnN3X3Jlc2V0X21zID0gQURJUzE2MjQwX1NUQVJUVVBfREVMQVks DQo+ID4gKwkuc2VsZl90ZXN0X21zID0gQURJUzE2MjQwX1NUQVJUVVBfREVMQVksDQo+ID4gK307 DQo+ID4gKw0KPiA+ICBzdGF0aWMgY29uc3Qgc3RydWN0IGFkaXNfZGF0YSBhZGlzMTYyNDBfZGF0 YSA9IHsNCj4gPiAgCS53cml0ZV9kZWxheSA9IDM1LA0KPiA+ICAJLnJlYWRfZGVsYXkgPSAzNSwN Cj4gPiBAQCAtMzY5LDYgKzM3NSw3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgYWRpc19kYXRhIGFk aXMxNjI0MF9kYXRhID0gew0KPiA+ICAJLnNlbGZfdGVzdF9tYXNrID0gQURJUzE2MjQwX01TQ19D VFJMX1NFTEZfVEVTVF9FTiwNCj4gPiAgCS5zZWxmX3Rlc3Rfbm9fYXV0b2NsZWFyID0gdHJ1ZSwN Cj4gPiAgCS5zdGFydHVwX2RlbGF5ID0gQURJUzE2MjQwX1NUQVJUVVBfREVMQVksDQo+ID4gKwku dGltZW91dHMgPSAmYWRpczE2MjQwX3RpbWVvdXRzLA0KPiA+ICANCj4gPiAgCS5zdGF0dXNfZXJy b3JfbXNncyA9IGFkaXMxNjI0MF9zdGF0dXNfZXJyb3JfbXNncywNCj4gPiAgCS5zdGF0dXNfZXJy b3JfbWFzayA9IEJJVChBRElTMTYyNDBfRElBR19TVEFUX1BXUk9OX0ZBSUxfQklUKSB8DQo+ID4g ZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvaWlvL2ltdS9hZGlzLmgNCj4gPiBiL2luY2x1ZGUv bGludXgvaWlvL2ltdS9hZGlzLmgNCj4gPiBpbmRleCA0YjViYzBlMDZlNjkuLjg1M2RjOGM4MzY1 YyAxMDA2NDQNCj4gPiAtLS0gYS9pbmNsdWRlL2xpbnV4L2lpby9pbXUvYWRpcy5oDQo+ID4gKysr IGIvaW5jbHVkZS9saW51eC9paW8vaW11L2FkaXMuaA0KPiA+IEBAIC0yMiw2ICsyMiwxNyBAQA0K PiA+ICBzdHJ1Y3QgYWRpczsNCj4gPiAgc3RydWN0IGFkaXNfYnVyc3Q7DQo+ID4gIA0KPiA+ICsv KioNCj4gPiArICogc3RydWN0IGFkaXNfdGltZW91dHMgLSBBRElTIGNoaXAgdmFyaWFudCB0aW1l b3V0cw0KPiA+ICsgKiBAcmVzZXRfbXMgLSBXYWl0IHRpbWUgYWZ0ZXIgcnN0IHBpbiBnb2VzIGlu YWN0aXZlDQo+ID4gKyAqIEBzd19yZXNldF9tcyAtIFdhaXQgdGltZSBhZnRlciBzdyByZXNldCBj b21tYW5kDQo+ID4gKyAqIEBzZWxmX3Rlc3RfbXMgLSBXYWl0IHRpbWUgYWZ0ZXIgc2VsZiB0ZXN0 IGNvbW1hbmQNCj4gPiArICovDQo+ID4gK3N0cnVjdCBhZGlzX3RpbWVvdXQgew0KPiA+ICsJdTE2 IHJlc2V0X21zOw0KPiA+ICsJdTE2IHN3X3Jlc2V0X21zOw0KPiA+ICsJdTE2IHNlbGZfdGVzdF9t czsNCj4gPiArfTsNCj4gPiAgLyoqDQo+ID4gICAqIHN0cnVjdCBhZGlzX2RhdGEgLSBBRElTIGNo aXAgdmFyaWFudCBzcGVjaWZpYyBkYXRhDQo+ID4gICAqIEByZWFkX2RlbGF5OiBTUEkgZGVsYXkg Zm9yIHJlYWQgb3BlcmF0aW9ucyBpbiB1cw0KPiA+IEBAIC0zMiw2ICs0Myw3IEBAIHN0cnVjdCBh ZGlzX2J1cnN0Ow0KPiA+ICAgKiBAZGlhZ19zdGF0X3JlZzogUmVnaXN0ZXIgYWRkcmVzcyBvZiB0 aGUgRElBR19TVEFUIHJlZ2lzdGVyDQo+ID4gICAqIEBzdGF0dXNfZXJyb3JfbXNnczogQXJyYXkg b2YgZXJyb3IgbWVzc2dhZXMNCj4gPiAgICogQHN0YXR1c19lcnJvcl9tYXNrOg0KPiA+ICsgKiBA dGltZW91dHM6IENoaXAgc3BlY2lmaWMgZGVsYXlzDQo+ID4gICAqLw0KPiA+ICBzdHJ1Y3QgYWRp c19kYXRhIHsNCj4gPiAgCXVuc2lnbmVkIGludCByZWFkX2RlbGF5Ow0KPiA+IEBAIC00NSw2ICs1 Nyw3IEBAIHN0cnVjdCBhZGlzX2RhdGEgew0KPiA+ICAJdW5zaWduZWQgaW50IHNlbGZfdGVzdF9t YXNrOw0KPiA+ICAJYm9vbCBzZWxmX3Rlc3Rfbm9fYXV0b2NsZWFyOw0KPiA+ICAJdW5zaWduZWQg aW50IHN0YXJ0dXBfZGVsYXk7DQo+ID4gKwljb25zdCBzdHJ1Y3QgYWRpc190aW1lb3V0ICp0aW1l b3V0czsNCj4gPiAgDQo+ID4gIAljb25zdCBjaGFyICogY29uc3QgKnN0YXR1c19lcnJvcl9tc2dz Ow0KPiA+ICAJdW5zaWduZWQgaW50IHN0YXR1c19lcnJvcl9tYXNrOw0K