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=-7.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_PASS autolearn=ham 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 87EFEC43381 for ; Tue, 26 Feb 2019 15:06:10 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 386D6217F9 for ; Tue, 26 Feb 2019 15:06:10 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=Mellanox.com header.i=@Mellanox.com header.b="LEZDxTsX" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727108AbfBZPGI (ORCPT ); Tue, 26 Feb 2019 10:06:08 -0500 Received: from mail-eopbgr60061.outbound.protection.outlook.com ([40.107.6.61]:44166 "EHLO EUR04-DB3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726478AbfBZPGI (ORCPT ); Tue, 26 Feb 2019 10:06:08 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OX+6LwBLUSZWk03T5LG2UqnjKeXKztCi7tLe1wwUj7I=; b=LEZDxTsXt+gezqTqkn4Il1bKjzUXgpe9mDIPyidZhw8SXfJNG85LtmCZ4ozzep/YblaDY3tmgFBm23MIyOK2hsiuHGWDVOiknXLEG8qV4T1CbrblzmNSgNmu9j8YktFJBbu5yJwolEqR/aFw87n2m5lrCtxBRVPDuYOa/kmhRdk= Received: from AM6PR05MB5460.eurprd05.prod.outlook.com (20.177.118.158) by AM6PR05MB6038.eurprd05.prod.outlook.com (20.179.2.85) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1643.19; Tue, 26 Feb 2019 15:05:47 +0000 Received: from AM6PR05MB5460.eurprd05.prod.outlook.com ([fe80::6c:a664:73ad:9804]) by AM6PR05MB5460.eurprd05.prod.outlook.com ([fe80::6c:a664:73ad:9804%4]) with mapi id 15.20.1643.019; Tue, 26 Feb 2019 15:05:47 +0000 From: Boris Pismenny To: Vakul Garg , Aviad Yehezkel , "davejwatson@fb.com" , "john.fastabend@gmail.com" , "daniel@iogearbox.net" , "netdev@vger.kernel.org" CC: Eran Ben Elisha Subject: Re: [PATCH net 1/4] tls: Fix tls_device handling of partial records Thread-Topic: [PATCH net 1/4] tls: Fix tls_device handling of partial records Thread-Index: AQHUzcyhRhSEXBHnokaECpBPv6nTMKXyK6EAgAAAY4A= Date: Tue, 26 Feb 2019 15:05:47 +0000 Message-ID: <5e5d02fd-b22b-de5a-ac9e-288d0ffe9781@mellanox.com> References: <20190226121235.20784-1-borisp@mellanox.com> <20190226121235.20784-2-borisp@mellanox.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: AM6PR07CA0028.eurprd07.prod.outlook.com (2603:10a6:209:2a::41) To AM6PR05MB5460.eurprd05.prod.outlook.com (2603:10a6:20b:5b::30) authentication-results: spf=none (sender IP is ) smtp.mailfrom=borisp@mellanox.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [193.47.165.251] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 4ad50eb3-5f37-4081-d30b-08d69bfbe385 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600127)(711020)(4605104)(4618075)(2017052603328)(7153060)(7193020);SRVR:AM6PR05MB6038; x-ms-traffictypediagnostic: AM6PR05MB6038: x-microsoft-exchange-diagnostics: =?utf-8?B?MTtBTTZQUjA1TUI2MDM4OzIzOkdBaTB5dVBuSzlCQkFydFlxeXFVS0tORnRy?= =?utf-8?B?eDYzQk04eXUzbFBIZDAwRmhsZWg5RW9VcmQwVDFabWorMVJtYXBvcmpPbVpI?= =?utf-8?B?V3lPamZPRmRBSW9LdG9yVHQvcDdKS0hyMVQybjhaaGhhQkNpMHBWMURWazVO?= =?utf-8?B?SEl1NlIzdHVwNUxSQjcvQ3lZMkJaL0NjclZYbElNR3Z3eWE0SVA3d2VPd1Bq?= =?utf-8?B?bVcvN0xpRFhNK2ZUSTh6UmE1ZER6RzIvODhaODN4QnFFMFRTaUxzTGNyQTFL?= =?utf-8?B?L0xQWVhUV3paQjZXRHZIWnNrTVl1aGI5U2dKZ1RlUGFkR1pFY01NMFdmdWdV?= =?utf-8?B?dUh6ZEZlc3pabmNZS21JbUhXL3d3SFllYXlEN3lob3J5Wjk4cGU1bFp2OHFP?= =?utf-8?B?cjhsTzZIblYxMXdLc1pnMHdkVGRidG1JRnhMQWRySGV3b2R1RFQwS0hRejZE?= =?utf-8?B?NzVTZ0VYUTlLTXJESWdtMlI4MlFiRk1LSzBnR0FZSnN6Y0loemJ4MElNMWNF?= =?utf-8?B?OHRxeUp0bHU2VktPS2p3Tk9hQ3ZEQmxIYzlsUFNkVE5mQ0pBSjdHQXRIaGNv?= =?utf-8?B?UkhMYVNIaGovVTV3bnM2RTZKQXc0c3cyT2d3UnJoL09XbVp2aGk5M2hNOFMw?= =?utf-8?B?UTM1dnNBRDhLdDRVd09xSGlIT0p4WWpQNkpiaHBhczdyYzF3WitZZmlsWXZa?= =?utf-8?B?dFdNZm9RUjY5Vm1iMzJmajVtVGxnRzh5OTgyK2trbWtmUU03ZVJuWTdTRjIw?= =?utf-8?B?TWM0VC9zTFlaWnkyUGx4em9aT3BLYnBIcDlzRnR2bXVtUXM5M0hOdHZCYlZm?= =?utf-8?B?Q1NkU3JIQXZ6TWplVDNETytnUEx6UUxtaXA4VTU5UFhSZHlVaWJVR052K2pD?= =?utf-8?B?SmNsQVhrWlltVk92aEFXM25zVTVvT2w5R2xZcVBvMXo4RDhKWTV3VndJRzdV?= =?utf-8?B?eGRtV1hCaWNERXZpOUlaVUw3K3paTmI2NDZUMU9mMGVYcFdPaFBaQ1Bud1pO?= =?utf-8?B?dEw1b09TcmhVSWNha1h0NUVUMTFsd0xHZlBLaGN0eUpmNXJHV3lSNmpUcU0v?= =?utf-8?B?bThKUFdMTVZSTFVWdXpxNVkvSXkyWktiTzJVOVlrWEhJR29jSks5VWd6dDY3?= =?utf-8?B?Q1NGdXdhYURyeEkxMHNwZEUxMGt4Q1dxRG5BaGZyc0NMcWRiMzFIT2NzUE83?= =?utf-8?B?bi9sUWtZYWhlOXFYQXhkQktsLzNsZTl1QmdLVmQvTDIwYkVjOExZdG1XUXl3?= =?utf-8?B?T3JabWErRWNRdWZlSk9vRlRST1UvZ2dNMlgrRzR4VHpWZmVmVXFOd0c0cHpL?= =?utf-8?B?YXlPVHUxM1FPR2tTU3V1WUhScmt3dThiL3pwYUhpaytadnRKekl4dDN4VnJC?= =?utf-8?B?QWtaaSsrQ3ZYSTAzcjY5a2Q0Ymw1WlJQdXR0NDZOZFpucXdtMkxRMjN2a2FO?= =?utf-8?B?ekxHaFZTcmc0TjVyR3NGS1ZWVC8yeng3ckN2TmVOK1lTVW13WVZaTHpNR3Zz?= =?utf-8?B?aEtzcklHSzRPZE9BSjNHeUx6WTkzVWY1SDBGWkFaVFRJMlVaYXh4SXNUeEJE?= =?utf-8?B?V1cyRGdyUUE5Qmh5T3kvY2VVRkpUdzFwd2gxUnZIeUZEYUVubUovZ0VIS2tv?= =?utf-8?B?WnIrR2ZRRmNkUURJZTZSWVdjdWJkblBKenB5QjV3OVlSN3JyS1ZzSFBldlMy?= =?utf-8?B?WjlnSmFxMzZjeGxpY05iV0Y3MWpFbHN6U2FCTHZFTEQ2NlhHVTNqMStwcXBG?= =?utf-8?B?RTI2MVpSaTNPT3lxMEhPcGlIN2paZW5BOGVZQWxGQVdianNXRHQ1MW9uNHV6?= =?utf-8?B?TjJ2OThRTUFyNzROWWtWbXREL09kc1JaY1RkWThidkQ5UUc3YjBHazhRVzAr?= =?utf-8?Q?mJ+tcK+aQ1o=3D?= x-microsoft-antispam-prvs: x-forefront-prvs: 096029FF66 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(366004)(346002)(376002)(136003)(396003)(39860400002)(13464003)(199004)(189003)(66066001)(25786009)(102836004)(86362001)(71200400001)(71190400001)(229853002)(8936002)(3846002)(81156014)(81166006)(8676002)(36756003)(6116002)(14454004)(110136005)(6436002)(2906002)(7736002)(6486002)(305945005)(316002)(6512007)(53936002)(53546011)(386003)(6506007)(2501003)(99286004)(2201001)(478600001)(52116002)(476003)(256004)(106356001)(486006)(2616005)(11346002)(14444005)(31696002)(446003)(6246003)(31686004)(186003)(107886003)(26005)(68736007)(76176011)(105586002)(5660300002)(4326008)(97736004)(309714004);DIR:OUT;SFP:1101;SCL:1;SRVR:AM6PR05MB6038;H:AM6PR05MB5460.eurprd05.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: cojIFdSyS/drRV/o6XkDHwNPAm3rbsnLuBfICxO/Lq0f0r0PknW4UPrBLP9FO6uB0g27qorGstUlPERbhhGCwOOfEn7GGWKeAKsTr94GCruOGTcBRS29lQCf+146Zi7mIqxu6japabEmbRy/h0UEa+NZpIKdoPq4GXpbnYKvbfQt/Khkurhnt1sTSz0V5Mdam+6y4wRYxLzSi8EaadazAP5payzk1nMeVOqoNFZ/iSrbnxa9N2wQpCRzaIZIh/1Nb4kC1IjM108mkLutvpNtA/dXEuvN2FJ2G4aUwxE1S8YjP1nysVlG/6FHz53uwVkjJBdaY3porR/h/D69vbybDUNvwXRvYwpSQO0RrllWYYln7E5Ns+CQdfoEKQdndmw6G3p3iVE44VaMtluDccb2oeLzDsoF4eg95/lFoiSq/qk= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4ad50eb3-5f37-4081-d30b-08d69bfbe385 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Feb 2019 15:05:46.9204 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR05MB6038 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org DQoNCk9uIDIvMjYvMjAxOSA0OjU3IFBNLCBWYWt1bCBHYXJnIHdyb3RlOg0KPiANCj4gDQo+PiAt LS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPj4gRnJvbTogQm9yaXMgUGlzbWVubnkgPGJvcmlz cEBtZWxsYW5veC5jb20+DQo+PiBTZW50OiBUdWVzZGF5LCBGZWJydWFyeSAyNiwgMjAxOSA1OjQz IFBNDQo+PiBUbzogYXZpYWR5ZUBtZWxsYW5veC5jb207IGRhdmVqd2F0c29uQGZiLmNvbTsNCj4+ IGpvaG4uZmFzdGFiZW5kQGdtYWlsLmNvbTsgZGFuaWVsQGlvZ2VhcmJveC5uZXQ7IFZha3VsIEdh cmcNCj4+IDx2YWt1bC5nYXJnQG54cC5jb20+OyBuZXRkZXZAdmdlci5rZXJuZWwub3JnDQo+PiBD YzogZXJhbmJlQG1lbGxhbm94LmNvbTsgYm9yaXNwQG1lbGxhbm94LmNvbQ0KPj4gU3ViamVjdDog W1BBVENIIG5ldCAxLzRdIHRsczogRml4IHRsc19kZXZpY2UgaGFuZGxpbmcgb2YgcGFydGlhbCBy ZWNvcmRzDQo+Pg0KPj4gQ2xlYW51cCB0aGUgaGFuZGxpbmcgb2YgcGFydGlhbCByZWNvcmRzIHdo aWxlIGZpeGluZyBhIGJ1ZyB3aGVyZSB0aGUNCj4+IHRsc19wdXNoX3BlbmRpbmdfY2xvc2VkX3Jl Y29yZCBmdW5jdGlvbiBpcyB1c2luZyB0aGUgc29mdHdhcmUgdGxzDQo+PiBjb250ZXh0IGluc3Rl YWQgb2YgdGhlIGhhcmR3YXJlIGNvbnRleHQuDQo+IA0KPiBDYW4geW91IHByb3ZpZGUgZGV0YWls cyBvZiB3aGF0IGNsZWFudXAgaGFzIGJlZW4gZG9uZT8NCj4gSSBzZWUgdGhhdCB3ZSBnb3Qgcmlk IG9mIGNvbmNlcHQgb2YgJ1RMU19QRU5ESU5HX0NMT1NFRF9SRUNPUkQnLg0KPiBJIHZhZ3VlbHkg cmVtZW1iZXIgdGhhdCBhdCBvbmUgcG9pbnQgaW4gdGltZSwgaXQgc2VlbWVkIHRvIG1lIHJlZHVu ZGFudC4NCj4gQnV0IEkgd2FzIG5vdCBzdXJlLiBQbGVhc2UgY29uZmlybSBpZiBpdCBpcyB0aGUg Y2FzZS4NCj4NCg0KVGhlIGNsZWFudXAgcmVmZXJzIHRvIHRoZSBQRU5ESU5HX0NMT1NFRF9SRUNP UkQuIFRoaXMgY29kZSB3YXMgDQpwcmV2aW91c2x5IHVzZWQgYnkgYm90aCB0bHNfc3cgYW5kIHRs c19kZXZpY2UgdG8gaGFuZGxlIHRoZSBjbG9zZWQgDQpyZWNvcmRzLiBIb3dldmVyLCBhdCBzb21l IHBvaW50IHRsc19zdyBtb3ZlZCB0byB1c2luZyB0aGUgcGFydGlhbGx5IHNlbnQgDQpyZWNvcmQg Y29kZSwgd2hpY2ggaXMgZXF1aXZhbGVudC4gU28gdGhpcyBjb2RlIGJlY2FtZSB1bnVzZWQgYWZ0 ZXIgd2UgDQpmaXhlZCB0aGUgdGxzX2RldmljZSBjb2RlIHBhdGgsIGFuZCB0aGlzIGlzIHdoeSBp dCBpcyByZW1vdmVkIGhlcmUuDQoNCg0KPiBDYW4gdGhpcyBwYXRjaCBiZSBzcGxpdCBpbnRvIHR3 bz8gT25lIGZvciB0aGUgY2xlYW51cCBhbmQgb25lIGZvciB0aGUgYnVnLg0KPiANCg0KVGhlIGJ1 ZyBmaXggd2lsbCBjYXVzZSB0aGUgUEVORElOR19DTE9TRURfUkVDT1JEIGNvZGUgdG8gYmUgdW51 c2VkLiBJTU8sIA0KaXQgaXMgYmV0dGVyIHRvIGtlZXAgdGhpcyBhcy1pcyB0byBhdm9pZCB0aGlz Lg0KDQo+Pg0KPj4gVGhlIGJ1ZyByZXN1bHRlZCBpbiB0aGUgZm9sbG93aW5nIGNyYXNoOg0KPj4g WyAgIDg4Ljc5MTIyOV0gQlVHOiB1bmFibGUgdG8gaGFuZGxlIGtlcm5lbCBOVUxMIHBvaW50ZXIg ZGVyZWZlcmVuY2UgYXQNCj4+IDAwMDAwMDAwMDAwMDAwMDANCj4+IFsgICA4OC43OTMyNzFdICNQ RiBlcnJvcjogW25vcm1hbCBrZXJuZWwgcmVhZCBmYXVsdF0NCj4+IFsgICA4OC43OTQ0NDldIFBH RCA4MDAwMDAwMjJhNDI2MDY3IFA0RCA4MDAwMDAwMjJhNDI2MDY3IFBVRA0KPj4gMjJhMTU2MDY3 IFBNRCAwDQo+PiBbICAgODguNzk1OTU4XSBPb3BzOiAwMDAwIFsjMV0gU01QIFBUSQ0KPj4gWyAg IDg4Ljc5Njg4NF0gQ1BVOiAyIFBJRDogNDk3MyBDb21tOiBvcGVuc3NsIE5vdCB0YWludGVkIDUu MC4wLXJjNCsgIzMNCj4+IFsgICA4OC43OTgzMTRdIEhhcmR3YXJlIG5hbWU6IFFFTVUgU3RhbmRh cmQgUEMgKGk0NDBGWCArIFBJSVgsIDE5OTYpLA0KPj4gQklPUyBCb2NocyAwMS8wMS8yMDExDQo+ PiBbICAgODguODAwMDY3XSBSSVA6IDAwMTA6dGxzX3R4X3JlY29yZHMrMHhlZi8weDFkMCBbdGxz XQ0KPj4gWyAgIDg4LjgwMTI1Nl0gQ29kZTogMDAgMDIgNDggODkgNDMgMDggZTggYTAgMGIgOTYg ZDkgNDggODkgZGYgZTggNDggZGQNCj4+IDRkIGQ5IDRjIDg5IGY4IDRkIDhiIGJmIDk4IDAwIDAw IDAwIDQ4IDA1IDk4IDAwIDAwIDAwIDQ4IDg5IDA0IDI0IDQ5IDM5DQo+PiBjNyA8NDk+IDhiIDFm IDRkIDg5IGZkIDBmIDg0IGFmIDAwIDAwIDAwIDQxIDhiIDQ3IDEwIDg1IGMwIDBmIDg1IDhkIDAw DQo+PiBbICAgODguODA1MTc5XSBSU1A6IDAwMTg6ZmZmZmJkODg4MTg2ZmNhOCBFRkxBR1M6IDAw MDEwMjEzDQo+PiBbICAgODguODA2NDU4XSBSQVg6IGZmZmY5YWYxZWQ2NTdjOTggUkJYOiBmZmZm OWFmMWU4OGExOTgwIFJDWDoNCj4+IDAwMDAwMDAwMDAwMDAwMDANCj4+IFsgICA4OC44MDgwNTBd IFJEWDogMDAwMDAwMDAwMDAwMDAwMCBSU0k6IDAwMDAwMDAwMDAwMDAwMDAgUkRJOg0KPj4gZmZm ZjlhZjFlODhhMTk4MA0KPj4gWyAgIDg4LjgwOTcyNF0gUkJQOiBmZmZmOWFmMWU4OGExOTgwIFIw ODogMDAwMDAwMDAwMDAwMDAxNyBSMDk6DQo+PiBmZmZmOWFmMWViZWViNzAwDQo+PiBbICAgODgu ODExMjk0XSBSMTA6IDAwMDAwMDAwMDAwMDAwMDAgUjExOiAwMDAwMDAwMDAwMDAwMDAwIFIxMjoN Cj4+IDAwMDAwMDAwMDAwMDAwMDANCj4+IFsgICA4OC44MTI5MTddIFIxMzogZmZmZjlhZjFlODhh MTk4MCBSMTQ6IGZmZmY5YWYxZWMxM2Y4MDAgUjE1Og0KPj4gMDAwMDAwMDAwMDAwMDAwMA0KPj4g WyAgIDg4LjgxNDUwNl0gRlM6ICAwMDAwN2ZjYWQyMjQwNzQwKDAwMDApIEdTOmZmZmY5YWYxZjc4 ODAwMDAoMDAwMCkNCj4+IGtubEdTOjAwMDAwMDAwMDAwMDAwMDANCj4+IFsgICA4OC44MTYzMzdd IENTOiAgMDAxMCBEUzogMDAwMCBFUzogMDAwMCBDUjA6IDAwMDAwMDAwODAwNTAwMzMNCj4+IFsg ICA4OC44MTc3MTddIENSMjogMDAwMDAwMDAwMDAwMDAwMCBDUjM6IDAwMDAwMDAyMjhiM2UwMDAg Q1I0Og0KPj4gMDAwMDAwMDAwMDE0MDZlMA0KPj4gWyAgIDg4LjgxOTMyOF0gQ2FsbCBUcmFjZToN Cj4+IFsgICA4OC44MjAxMjNdICB0bHNfcHVzaF9kYXRhKzB4NjI4LzB4NmEwIFt0bHNdDQo+PiBb ICAgODguODIxMjgzXSAgPyByZW1vdmVfd2FpdF9xdWV1ZSsweDIwLzB4NjANCj4+IFsgICA4OC44 MjIzODNdICA/IG5fdHR5X3JlYWQrMHg2ODMvMHg5MTANCj4+IFsgICA4OC44MjMzNjNdICB0bHNf ZGV2aWNlX3NlbmRtc2crMHg1My8weGEwIFt0bHNdDQo+PiBbICAgODguODI0NTA1XSAgc29ja19z ZW5kbXNnKzB4MzYvMHg1MA0KPj4gWyAgIDg4LjgyNTQ5Ml0gIHNvY2tfd3JpdGVfaXRlcisweDg3 LzB4MTAwDQo+PiBbICAgODguODI2NTIxXSAgX192ZnNfd3JpdGUrMHgxMjcvMHgxYjANCj4+IFsg ICA4OC44Mjc0OTldICB2ZnNfd3JpdGUrMHhhZC8weDFiMA0KPj4gWyAgIDg4LjgyODQ1NF0gIGtz eXNfd3JpdGUrMHg1Mi8weGMwDQo+PiBbICAgODguODI5Mzc4XSAgZG9fc3lzY2FsbF82NCsweDVi LzB4MTgwDQo+PiBbICAgODguODMwMzY5XSAgZW50cnlfU1lTQ0FMTF82NF9hZnRlcl9od2ZyYW1l KzB4NDQvMHhhOQ0KPj4gWyAgIDg4LjgzMTYwM10gUklQOiAwMDMzOjB4N2ZjYWQxNDUxNjgwDQo+ Pg0KPj4gWyAxMjQ4LjQ3MDYyNl0gQlVHOiB1bmFibGUgdG8gaGFuZGxlIGtlcm5lbCBOVUxMIHBv aW50ZXIgZGVyZWZlcmVuY2UgYXQNCj4+IDAwMDAwMDAwMDAwMDAwMDANCj4+IFsgMTI0OC40NzI1 NjRdICNQRiBlcnJvcjogW25vcm1hbCBrZXJuZWwgcmVhZCBmYXVsdF0NCj4+IFsgMTI0OC40NzM3 OTBdIFBHRCAwIFA0RCAwDQo+PiBbIDEyNDguNDc0NjQyXSBPb3BzOiAwMDAwIFsjMV0gU01QIFBU SQ0KPj4gWyAxMjQ4LjQ3NTY1MV0gQ1BVOiAzIFBJRDogNzE5NyBDb21tOiBvcGVuc3NsIFRhaW50 ZWQ6IEcgICAgICAgICAgIE9FIDUuMC4wLQ0KPj4gcmM0KyAjMw0KPj4gWyAxMjQ4LjQ3NzQyNl0g SGFyZHdhcmUgbmFtZTogUUVNVSBTdGFuZGFyZCBQQyAoaTQ0MEZYICsgUElJWCwgMTk5NiksDQo+ PiBCSU9TIEJvY2hzIDAxLzAxLzIwMTENCj4+IFsgMTI0OC40NzkzMTBdIFJJUDogMDAxMDp0bHNf dHhfcmVjb3JkcysweDExMC8weDFmMCBbdGxzXQ0KPj4gWyAxMjQ4LjQ4MDY0NF0gQ29kZTogMDAg MDIgNDggODkgNDMgMDggZTggNGYgY2IgNjMgZDcgNDggODkgZGYgZTggZjcgOWMNCj4+IDFiIGQ3 IDRjIDg5IGY4IDRkIDhiIGJmIDk4IDAwIDAwIDAwIDQ4IDA1IDk4IDAwIDAwIDAwIDQ4IDg5IDA0 IDI0IDQ5IDM5DQo+PiBjNyA8NDk+IDhiIDFmIDRkIDg5IGZkIDBmIDg0IGFmIDAwIDAwIDAwIDQx IDhiIDQ3IDEwIDg1IGMwIDBmIDg1IDhkIDAwDQo+PiBbIDEyNDguNDg0ODI1XSBSU1A6IDAwMTg6 ZmZmZmFhMGE0MTU0M2MwOCBFRkxBR1M6IDAwMDEwMjEzDQo+PiBbIDEyNDguNDg2MTU0XSBSQVg6 IGZmZmY5NTVhMjc1NWRjOTggUkJYOiBmZmZmOTU1YTM2MDMxOTgwIFJDWDoNCj4+IDAwMDAwMDAw MDAwMDAwMDYNCj4+IFsgMTI0OC40ODc4NTVdIFJEWDogMDAwMDAwMDAwMDAwMDAwMCBSU0k6IDAw MDAwMDAwMDAwMDAwMmIgUkRJOg0KPj4gMDAwMDAwMDAwMDAwMDI4Ng0KPj4gWyAxMjQ4LjQ4OTUy NF0gUkJQOiBmZmZmOTU1YTM2MDMxOTgwIFIwODogMDAwMDAwMDAwMDAwMDAwMCBSMDk6DQo+PiAw MDAwMDAwMDAwMDAwMmIxDQo+PiBbIDEyNDguNDkxMzk0XSBSMTA6IDAwMDAwMDAwMDAwMDAwMDMg UjExOiAwMDAwMDAwMGFkNTVhZDU1IFIxMjoNCj4+IDAwMDAwMDAwMDAwMDAwMDANCj4+IFsgMTI0 OC40OTMxNjJdIFIxMzogMDAwMDAwMDAwMDAwMDAwMCBSMTQ6IGZmZmY5NTVhMmFiZTZjMDAgUjE1 Og0KPj4gMDAwMDAwMDAwMDAwMDAwMA0KPj4gWyAxMjQ4LjQ5NDkyM10gRlM6ICAwMDAwMDAwMDAw MDAwMDAwKDAwMDApIEdTOmZmZmY5NTVhMzc4YzAwMDAoMDAwMCkNCj4+IGtubEdTOjAwMDAwMDAw MDAwMDAwMDANCj4+IFsgMTI0OC40OTY4NDddIENTOiAgMDAxMCBEUzogMDAwMCBFUzogMDAwMCBD UjA6IDAwMDAwMDAwODAwNTAwMzMNCj4+IFsgMTI0OC40OTgzNTddIENSMjogMDAwMDAwMDAwMDAw MDAwMCBDUjM6IDAwMDAwMDAyMGM0MGUwMDAgQ1I0Og0KPj4gMDAwMDAwMDAwMDE0MDZlMA0KPj4g WyAxMjQ4LjUwMDEzNl0gQ2FsbCBUcmFjZToNCj4+IFsgMTI0OC41MDA5OThdICA/IHRjcF9jaGVj a19vb20rMHhkMC8weGQwDQo+PiBbIDEyNDguNTAyMTA2XSAgdGxzX3NrX3Byb3RvX2Nsb3NlKzB4 MTI3LzB4MWUwIFt0bHNdDQo+PiBbIDEyNDguNTAzNDExXSAgaW5ldF9yZWxlYXNlKzB4M2MvMHg2 MA0KPj4gWyAxMjQ4LjUwNDUzMF0gIF9fc29ja19yZWxlYXNlKzB4M2QvMHhiMA0KPj4gWyAxMjQ4 LjUwNTYxMV0gIHNvY2tfY2xvc2UrMHgxMS8weDIwDQo+PiBbIDEyNDguNTA2NjEyXSAgX19mcHV0 KzB4YjQvMHgyMjANCj4+IFsgMTI0OC41MDc1NTldICB0YXNrX3dvcmtfcnVuKzB4ODgvMHhhMA0K Pj4gWyAxMjQ4LjUwODYxN10gIGRvX2V4aXQrMHgyY2IvMHhiYzANCj4+IFsgMTI0OC41MDk1OTdd ICA/IGNvcmVfc3lzX3NlbGVjdCsweDE3YS8weDI4MA0KPj4gWyAxMjQ4LjUxMDc0MF0gIGRvX2dy b3VwX2V4aXQrMHgzOS8weGIwDQo+PiBbIDEyNDguNTExNzg5XSAgZ2V0X3NpZ25hbCsweDFkMC8w eDYzMA0KPj4gWyAxMjQ4LjUxMjgyM10gIGRvX3NpZ25hbCsweDM2LzB4NjIwDQo+PiBbIDEyNDgu NTEzODIyXSAgZXhpdF90b191c2VybW9kZV9sb29wKzB4NWMvMHhjNg0KPj4gWyAxMjQ4LjUxNTAw M10gIGRvX3N5c2NhbGxfNjQrMHgxNTcvMHgxODANCj4+IFsgMTI0OC41MTYwOTRdICBlbnRyeV9T WVNDQUxMXzY0X2FmdGVyX2h3ZnJhbWUrMHg0NC8weGE5DQo+PiBbIDEyNDguNTE3NDU2XSBSSVA6 IDAwMzM6MHg3ZmIzOThiZDNmNTMNCj4+IFsgMTI0OC41MTg1MzddIENvZGU6IEJhZCBSSVAgdmFs dWUuDQo+Pg0KPj4gRml4ZXM6IGE0MjA1NWU4ZDJjMyAoIm5ldC90bHM6IEFkZCBzdXBwb3J0IGZv ciBhc3luYyBlbmNyeXB0aW9uIG9mIHJlY29yZHMNCj4+IGZvciBwZXJmb3JtYW5jZSIpDQo+PiBT aWduZWQtb2ZmLWJ5OiBCb3JpcyBQaXNtZW5ueSA8Ym9yaXNwQG1lbGxhbm94LmNvbT4NCj4+IFNp Z25lZC1vZmYtYnk6IEVyYW4gQmVuIEVsaXNoYSA8ZXJhbmJlQG1lbGxhbm94LmNvbT4NCj4+IC0t LQ0KPj4gICBpbmNsdWRlL25ldC90bHMuaCAgICB8IDIwICsrKystLS0tLS0tLS0tLS0tLS0tDQo+ PiAgIG5ldC90bHMvdGxzX2RldmljZS5jIHwgIDkgKysrKystLS0tDQo+PiAgIG5ldC90bHMvdGxz X21haW4uYyAgIHwgMTMgLS0tLS0tLS0tLS0tLQ0KPj4gICAzIGZpbGVzIGNoYW5nZWQsIDkgaW5z ZXJ0aW9ucygrKSwgMzMgZGVsZXRpb25zKC0pDQo+Pg0KPj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUv bmV0L3Rscy5oIGIvaW5jbHVkZS9uZXQvdGxzLmgNCj4+IGluZGV4IDlmNDExN2FlMjI5Ny4uYTUy OGEwODJkYTczIDEwMDY0NA0KPj4gLS0tIGEvaW5jbHVkZS9uZXQvdGxzLmgNCj4+ICsrKyBiL2lu Y2x1ZGUvbmV0L3Rscy5oDQo+PiBAQCAtMTk5LDEwICsxOTksNiBAQCBzdHJ1Y3QgdGxzX29mZmxv YWRfY29udGV4dF90eCB7DQo+PiAgIAkoQUxJR04oc2l6ZW9mKHN0cnVjdCB0bHNfb2ZmbG9hZF9j b250ZXh0X3R4KSwgc2l6ZW9mKHZvaWQgKikpICsgICAgICAgIFwNCj4+ICAgCSBUTFNfRFJJVkVS X1NUQVRFX1NJWkUpDQo+Pg0KPj4gLWVudW0gew0KPj4gLQlUTFNfUEVORElOR19DTE9TRURfUkVD T1JEDQo+PiAtfTsNCj4+IC0NCj4+ICAgc3RydWN0IGNpcGhlcl9jb250ZXh0IHsNCj4+ICAgCWNo YXIgKml2Ow0KPj4gICAJY2hhciAqcmVjX3NlcTsNCj4+IEBAIC0zMzUsMTcgKzMzMSwxNCBAQCBp bnQgdGxzX3B1c2hfc2coc3RydWN0IHNvY2sgKnNrLCBzdHJ1Y3QgdGxzX2NvbnRleHQNCj4+ICpj dHgsDQo+PiAgIGludCB0bHNfcHVzaF9wYXJ0aWFsX3JlY29yZChzdHJ1Y3Qgc29jayAqc2ssIHN0 cnVjdCB0bHNfY29udGV4dCAqY3R4LA0KPj4gICAJCQkgICAgaW50IGZsYWdzKTsNCj4+DQo+PiAt aW50IHRsc19wdXNoX3BlbmRpbmdfY2xvc2VkX3JlY29yZChzdHJ1Y3Qgc29jayAqc2ssIHN0cnVj dCB0bHNfY29udGV4dCAqY3R4LA0KPj4gLQkJCQkgICBpbnQgZmxhZ3MsIGxvbmcgKnRpbWVvKTsN Cj4+IC0NCj4+ICAgc3RhdGljIGlubGluZSBzdHJ1Y3QgdGxzX21zZyAqdGxzX21zZyhzdHJ1Y3Qg c2tfYnVmZiAqc2tiKQ0KPj4gICB7DQo+PiAgIAlyZXR1cm4gKHN0cnVjdCB0bHNfbXNnICopc3Ry cF9tc2coc2tiKTsNCj4+ICAgfQ0KPj4NCj4+IC1zdGF0aWMgaW5saW5lIGJvb2wgdGxzX2lzX3Bl bmRpbmdfY2xvc2VkX3JlY29yZChzdHJ1Y3QgdGxzX2NvbnRleHQgKmN0eCkNCj4+ICtzdGF0aWMg aW5saW5lIGJvb2wgdGxzX2lzX3BhcnRpYWxseV9zZW50X3JlY29yZChzdHJ1Y3QgdGxzX2NvbnRl eHQgKmN0eCkNCj4+ICAgew0KPj4gLQlyZXR1cm4gdGVzdF9iaXQoVExTX1BFTkRJTkdfQ0xPU0VE X1JFQ09SRCwgJmN0eC0+ZmxhZ3MpOw0KPj4gKwlyZXR1cm4gISFjdHgtPnBhcnRpYWxseV9zZW50 X3JlY29yZDsNCj4+ICAgfQ0KPj4NCj4+ICAgc3RhdGljIGlubGluZSBpbnQgdGxzX2NvbXBsZXRl X3BlbmRpbmdfd29yayhzdHJ1Y3Qgc29jayAqc2ssDQo+PiBAQCAtMzU3LDE3ICszNTAsMTIgQEAg c3RhdGljIGlubGluZSBpbnQgdGxzX2NvbXBsZXRlX3BlbmRpbmdfd29yayhzdHJ1Y3QNCj4+IHNv Y2sgKnNrLA0KPj4gICAJaWYgKHVubGlrZWx5KHNrLT5za193cml0ZV9wZW5kaW5nKSkNCj4+ICAg CQlyYyA9IHdhaXRfb25fcGVuZGluZ193cml0ZXIoc2ssIHRpbWVvKTsNCj4+DQo+PiAtCWlmICgh cmMgJiYgdGxzX2lzX3BlbmRpbmdfY2xvc2VkX3JlY29yZChjdHgpKQ0KPj4gLQkJcmMgPSB0bHNf cHVzaF9wZW5kaW5nX2Nsb3NlZF9yZWNvcmQoc2ssIGN0eCwgZmxhZ3MsIHRpbWVvKTsNCj4+ICsJ aWYgKCFyYyAmJiB0bHNfaXNfcGFydGlhbGx5X3NlbnRfcmVjb3JkKGN0eCkpDQo+PiArCQlyYyA9 IHRsc19wdXNoX3BhcnRpYWxfcmVjb3JkKHNrLCBjdHgsIGZsYWdzKTsNCj4+DQo+PiAgIAlyZXR1 cm4gcmM7DQo+PiAgIH0NCj4+DQo+PiAtc3RhdGljIGlubGluZSBib29sIHRsc19pc19wYXJ0aWFs bHlfc2VudF9yZWNvcmQoc3RydWN0IHRsc19jb250ZXh0ICpjdHgpDQo+PiAtew0KPj4gLQlyZXR1 cm4gISFjdHgtPnBhcnRpYWxseV9zZW50X3JlY29yZDsNCj4+IC19DQo+PiAtDQo+PiAgIHN0YXRp YyBpbmxpbmUgYm9vbCB0bHNfaXNfcGVuZGluZ19vcGVuX3JlY29yZChzdHJ1Y3QgdGxzX2NvbnRl eHQgKnRsc19jdHgpDQo+PiAgIHsNCj4+ICAgCXJldHVybiB0bHNfY3R4LT5wZW5kaW5nX29wZW5f cmVjb3JkX2ZyYWdzOw0KPj4gZGlmZiAtLWdpdCBhL25ldC90bHMvdGxzX2RldmljZS5jIGIvbmV0 L3Rscy90bHNfZGV2aWNlLmMNCj4+IGluZGV4IGE1YzE3YzQ3ZDA4YS4uM2U1ZThlMDIxYTg3IDEw MDY0NA0KPj4gLS0tIGEvbmV0L3Rscy90bHNfZGV2aWNlLmMNCj4+ICsrKyBiL25ldC90bHMvdGxz X2RldmljZS5jDQo+PiBAQCAtMjcxLDcgKzI3MSw2IEBAIHN0YXRpYyBpbnQgdGxzX3B1c2hfcmVj b3JkKHN0cnVjdCBzb2NrICpzaywNCj4+ICAgCWxpc3RfYWRkX3RhaWwoJnJlY29yZC0+bGlzdCwg Jm9mZmxvYWRfY3R4LT5yZWNvcmRzX2xpc3QpOw0KPj4gICAJc3Bpbl91bmxvY2tfaXJxKCZvZmZs b2FkX2N0eC0+bG9jayk7DQo+PiAgIAlvZmZsb2FkX2N0eC0+b3Blbl9yZWNvcmQgPSBOVUxMOw0K Pj4gLQlzZXRfYml0KFRMU19QRU5ESU5HX0NMT1NFRF9SRUNPUkQsICZjdHgtPmZsYWdzKTsNCj4+ ICAgCXRsc19hZHZhbmNlX3JlY29yZF9zbihzaywgJmN0eC0+dHgsIGN0eC0+Y3J5cHRvX3NlbmQu aW5mby52ZXJzaW9uKTsNCj4+DQo+PiAgIAlmb3IgKGkgPSAwOyBpIDwgcmVjb3JkLT5udW1fZnJh Z3M7IGkrKykgew0KPj4gQEAgLTM2OCw5ICszNjcsMTEgQEAgc3RhdGljIGludCB0bHNfcHVzaF9k YXRhKHN0cnVjdCBzb2NrICpzaywNCj4+ICAgCQlyZXR1cm4gLXNrLT5za19lcnI7DQo+Pg0KPj4g ICAJdGltZW8gPSBzb2NrX3NuZHRpbWVvKHNrLCBmbGFncyAmIE1TR19ET05UV0FJVCk7DQo+PiAt CXJjID0gdGxzX2NvbXBsZXRlX3BlbmRpbmdfd29yayhzaywgdGxzX2N0eCwgZmxhZ3MsICZ0aW1l byk7DQo+PiAtCWlmIChyYyA8IDApDQo+PiAtCQlyZXR1cm4gcmM7DQo+PiArCWlmICh0bHNfaXNf cGFydGlhbGx5X3NlbnRfcmVjb3JkKHRsc19jdHgpKSB7DQo+PiArCQlyYyA9IHRsc19wdXNoX3Bh cnRpYWxfcmVjb3JkKHNrLCB0bHNfY3R4LCBmbGFncyk7DQo+PiArCQlpZiAocmMgPCAwKQ0KPj4g KwkJCXJldHVybiByYzsNCj4+ICsJfQ0KPj4NCj4+ICAgCXBmcmFnID0gc2tfcGFnZV9mcmFnKHNr KTsNCj4+DQo+PiBkaWZmIC0tZ2l0IGEvbmV0L3Rscy90bHNfbWFpbi5jIGIvbmV0L3Rscy90bHNf bWFpbi5jDQo+PiBpbmRleCBjYWZmMTViMmY5YjIuLjdlMDVhZjc1NTM2ZCAxMDA2NDQNCj4+IC0t LSBhL25ldC90bHMvdGxzX21haW4uYw0KPj4gKysrIGIvbmV0L3Rscy90bHNfbWFpbi5jDQo+PiBA QCAtMjA5LDE5ICsyMDksNiBAQCBpbnQgdGxzX3B1c2hfcGFydGlhbF9yZWNvcmQoc3RydWN0IHNv Y2sgKnNrLCBzdHJ1Y3QNCj4+IHRsc19jb250ZXh0ICpjdHgsDQo+PiAgIAlyZXR1cm4gdGxzX3B1 c2hfc2coc2ssIGN0eCwgc2csIG9mZnNldCwgZmxhZ3MpOw0KPj4gICB9DQo+Pg0KPj4gLWludCB0 bHNfcHVzaF9wZW5kaW5nX2Nsb3NlZF9yZWNvcmQoc3RydWN0IHNvY2sgKnNrLA0KPj4gLQkJCQkg ICBzdHJ1Y3QgdGxzX2NvbnRleHQgKnRsc19jdHgsDQo+PiAtCQkJCSAgIGludCBmbGFncywgbG9u ZyAqdGltZW8pDQo+PiAtew0KPj4gLQlzdHJ1Y3QgdGxzX3N3X2NvbnRleHRfdHggKmN0eCA9IHRs c19zd19jdHhfdHgodGxzX2N0eCk7DQo+PiAtDQo+PiAtCWlmICh0bHNfaXNfcGFydGlhbGx5X3Nl bnRfcmVjb3JkKHRsc19jdHgpIHx8DQo+PiAtCSAgICAhbGlzdF9lbXB0eSgmY3R4LT50eF9saXN0 KSkNCj4+IC0JCXJldHVybiB0bHNfdHhfcmVjb3JkcyhzaywgZmxhZ3MpOw0KPj4gLQllbHNlDQo+ PiAtCQlyZXR1cm4gdGxzX2N0eC0+cHVzaF9wZW5kaW5nX3JlY29yZChzaywgZmxhZ3MpOw0KPj4g LX0NCj4+IC0NCj4+ICAgc3RhdGljIHZvaWQgdGxzX3dyaXRlX3NwYWNlKHN0cnVjdCBzb2NrICpz aykNCj4+ICAgew0KPj4gICAJc3RydWN0IHRsc19jb250ZXh0ICpjdHggPSB0bHNfZ2V0X2N0eChz ayk7DQo+PiAtLQ0KPj4gMi4xMi4yDQo+IA0K