From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 64948 invoked by alias); 6 Feb 2017 09:33:43 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 64921 invoked by uid 89); 6 Feb 2017 09:33:42 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=0.2 required=5.0 tests=AWL,BAYES_40,KAM_LOTSOFHASH,MIME_BASE64_BLANKS,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS autolearn=no version=3.3.2 spammy=2028, 1876, sk:alanha, sk:alan.ha X-HELO: EUR02-HE1-obe.outbound.protection.outlook.com Received: from mail-eopbgr10051.outbound.protection.outlook.com (HELO EUR02-HE1-obe.outbound.protection.outlook.com) (40.107.1.51) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 06 Feb 2017 09:33:32 +0000 Received: from VI1PR0801MB1822.eurprd08.prod.outlook.com (10.168.68.7) by VI1PR0801MB1821.eurprd08.prod.outlook.com (10.168.67.150) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.888.16; Mon, 6 Feb 2017 09:33:25 +0000 Received: from VI1PR0801MB1822.eurprd08.prod.outlook.com ([10.168.68.7]) by VI1PR0801MB1822.eurprd08.prod.outlook.com ([10.168.68.7]) with mapi id 15.01.0888.022; Mon, 6 Feb 2017 09:33:25 +0000 From: Alan Hayward To: Yao Qi CC: Pedro Alves , Joel Brobecker , "gdb-patches@sourceware.org" , nd Subject: Re: [PATCH] Removal of uses of MAX_REGISTER_SIZE Date: Mon, 06 Feb 2017 09:33:00 -0000 Message-ID: <1E0030CE-FB37-4821-AA53-9C6D1CC285C9@arm.com> References: <7CF07197-4FED-4970-BB4B-2FE828E29A63@arm.com> <45e3a5e1-a9aa-1bc0-5d08-526b89fc458e@redhat.com> <20170201124123.GA27498@E107787-LIN> <20170202094012.dge4r6rsl2skdrii@adacore.com> <20170203102819.GA11916@E107787-LIN> <25716edf-096e-20c5-4170-fb8ca04d897b@redhat.com> <0C6A0D51-4C49-4400-8C46-E77DD512DF56@arm.com> <20170203165022.GB11916@E107787-LIN> In-Reply-To: <20170203165022.GB11916@E107787-LIN> authentication-results: spf=none (sender IP is ) smtp.mailfrom=Alan.Hayward@arm.com; x-ms-exchange-messagesentrepresentingtype: 1 x-ms-office365-filtering-correlation-id: fd9efeb3-9df8-476f-645f-08d44e733380 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(48565401081);SRVR:VI1PR0801MB1821; x-microsoft-exchange-diagnostics: 1;VI1PR0801MB1821;7:uxUztJJFSnSiF0wXnmhgeCLeC2rYpcLLFh8gaoYv9gKwcqmH85nukMvx2rvO39bRo+qmA/y/k0NBEamV88+aYlXPH88WkRAiKCEwjItopdiQq3eKpotDZqeOPkVZjN9uH5N/8wQzu3LCbIA8Fk4aMO+R8JVG77dUoZNZYCYum5AHz9bex8lJANO99k66zcvGObQCsC/DHJmKgOe3nxUKHirH3xmh2V0Mt1s9XgqT2NCPveHHySDEr9VoOajVe2c/RpAaIwIL/qDCD23nyB2s+DHZDCxagckuTViYya8AJ9YGFXU1/hZ3Mh3xMKPxUV/Ods9pxGS1RYl6+2WrsYzVIf1LaSOfWv/+WZpBpfqt9pQJ6AnhvhrIiWTq3NbmUzJJ1sC7OS9XMdAvPxOa3aTr4dKA2tLDqkgFZTDRuy37TG2EYphoD3lB9GjQy2bojQdL6NQCrtqKd3xwmHCCgXG15+VxynK4bdgHMHqSyZ0unca2pmqqkFCXCai6YwU3HIaehx0kEfQ+ox+qE6N+Egb0hQ== nodisclaimer: True x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(180628864354917); x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(20170203043)(5005006)(8121501046)(3002001)(10201501046)(6055026)(6041248)(20161123555025)(20161123558025)(20161123564025)(20161123560025)(20161123562025)(6072148);SRVR:VI1PR0801MB1821;BCL:0;PCL:0;RULEID:;SRVR:VI1PR0801MB1821; x-forefront-prvs: 0210479ED8 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(6009001)(7916002)(39840400002)(39410400002)(39450400003)(39850400002)(377424004)(24454002)(189002)(199003)(51444003)(3846002)(6116002)(102836003)(83716003)(2900100001)(189998001)(36756003)(7736002)(68736007)(305945005)(33656002)(3280700002)(97736004)(3660700001)(8676002)(81156014)(81166006)(106116001)(6512007)(122556002)(92566002)(8936002)(110136003)(2950100002)(6506006)(106356001)(105586002)(82746002)(6916009)(6436002)(2906002)(25786008)(54906002)(99286003)(5660300001)(86362001)(6246003)(53936002)(39060400001)(38730400001)(6486002)(101416001)(53546003)(76176999)(575784001)(53946003)(77096006)(93886004)(66066001)(229853002)(1411001)(54356999)(4326007)(50986999)(104396002)(559001)(579004);DIR:OUT;SFP:1101;SCL:1;SRVR:VI1PR0801MB1821;H:VI1PR0801MB1822.eurprd08.prod.outlook.com;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="utf-8" Content-ID: <256267985BD1C84597F2659CDB6F11B6@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Feb 2017 09:33:25.6699 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB1821 X-SW-Source: 2017-02/txt/msg00114.txt.bz2 DQo+IE9uIDMgRmViIDIwMTcsIGF0IDE2OjUwLCBZYW8gUWkgPHFpeWFvbHRj QGdtYWlsLmNvbT4gd3JvdGU6DQo+IA0KPiBPbiAxNy0wMi0wMyAxMToyNTo0 MywgQWxhbiBIYXl3YXJkIHdyb3RlOg0KPj4gSWYgc29tZW9uZSBjYW4gb2sg dGhlIGNvbW1vbiBwYXRjaCwgdGhlbiBJ4oCZbGwgbWFrZSBhIHNlY29uZCBw YXRjaCB3aXRoIHRoZQ0KPj4gcmVwbGFjZW1lbnQgb2YgYWxsIHJlbWFpbmlu ZyB1c2VzIG9mIE1BWF9SRUdJU1RFUl9TSVpFIGluIGNvbW1vbiBjb2RlLg0K PiANCj4gSSdkIGxpa2UgdG8gZG8gaXQgaW4gYW4gaXRlcmF0aXZlIHdheSwg c3RhcnQgZnJvbSBzb21lIHNpbXBsZSBwbGFjZXMsIGxpa2UNCj4gYXJtLCBh YXJjaDY0LCBhbmQgaTM4NiwgaW4gd2hpY2ggeW91IGRvbid0IG5lZWQgdG8g ZGVmaW5lIG5ldyBtYWNyb3MuICBUaGVuLA0KPiBtb3ZlIHRvIHNvbWUgKi10 ZGVwLmMgYW5kICotbmF0LmMsIGRlZmluZSAke0FSQ0h9X01BWF9SRUdJU1RF Ul9TSVpFIHdoZW4NCj4gbmVjZXNzYXJ5LiAgRmluYWxseSwgZmlndXJlIG91 dCBob3cgdG8gcmVtb3ZlIE1BWF9SRUdJU1RFUl9TSVpFIGZyb20NCj4gYXJj aC1pbmRlcGVuZGVudCBjb2RlLg0KPiANCj4+IEVuc3VyaW5nIGl04oCZcyBu b3QgdXNlZCBpbiBjb21tb24gY29kZSB3aWxsIGFsbG93IG1lIHRvIGNvbnRp bnVlIG1vdmluZyB3aXRoIHRoZQ0KPj4gYWFyY2g2NCBTVkUgY29kZS4NCj4+ IA0KPj4gDQo+PiBUaGVyZSBhcmUgcXVpdGUgYSBsb3Qgb2YgYXJjaCBzcGVj aWZpYyBmdW5jdGlvbnMgd2hlcmUgd2UgaGF2ZSBhIHJlZ2lzdGVyIG51bWJl cg0KPj4gZnJvbSB3aGljaCB0aGUgcmVnaXN0ZXIgc2l6ZSBjb3VsZCBiZSBl eHRyYWN0ZWQuICBFZzoNCj4+IA0KPj4gdm9pZA0KPj4gU09NRUFSQ0hfcHNl dWRvX3JlZ2lzdGVyX3dyaXRlIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwg c3RydWN0IHJlZ2NhY2hlICpyZWdjYWNoZSwNCj4+IAkJCSAgICBpbnQgcmVn bnVtLCBjb25zdCBnZGJfYnl0ZSAqYnVmKQ0KPj4gew0KPj4gIGdkYl9ieXRl IHJhd19idWZbTUFYX1JFR0lTVEVSX1NJWkVdOw0KPj4gDQo+PiANCj4+IFRo aXMgY291bGQgYmVjb21lOg0KPj4gDQo+PiB2b2lkDQo+PiBTT01FQVJDSF9w c2V1ZG9fcmVnaXN0ZXJfd3JpdGUgKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNo LCBzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2NhY2hlLA0KPj4gCQkJICAgIGludCBy ZWdudW0sIGNvbnN0IGdkYl9ieXRlICpidWYpDQo+PiB7DQo+PiAgZ2RiX2J5 dGUgYnVmW1NPTUVBUkNIX01BWF9SRUdJU1RFUl9TSVpFXTsNCj4+IA0KPj4g DQo+PiBPcjoNCj4+IA0KPj4gdm9pZA0KPj4gU09NRUFSQ0hfcHNldWRvX3Jl Z2lzdGVyX3dyaXRlIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwgc3RydWN0 IHJlZ2NhY2hlICpyZWdjYWNoZSwNCj4+IAkJCSAgICBpbnQgcmVnbnVtLCBj b25zdCBnZGJfYnl0ZSAqYnVmKQ0KPj4gew0KPj4gIHN0ZDo6dmVjdG9yPGdk Yl9ieXRlPiBidWYgKHJlZ2lzdGVyX3NpemUgKGdkYmFyY2gsIHJlZ251bSkp Ow0KPj4gDQo+PiANCj4+IEkgc3VzcGVjdCBwZW9wbGUgd2lsbCB3YW50IHRo ZSBmaXJzdCBhcHByb2FjaD8gSXQgd2lsbCByZXN1bHQgaW4gcXVpdGUgYSBm ZXcgbmV3DQo+PiBkZWZpbmVzIC0gQUxQSEFfTUFYX1JFR0lTVEVSX1NJWkUs IFBQQ19NQVhfUkVHSVNURVJfU0laRSBldGMgZXRjLg0KPj4gDQo+IA0KPiBU aGF0IGlzIGZpbmUsIHdlJ3ZlIGFscmVhZHkgaGFkIEkzODZfTUFYX1JFR0lT VEVSX1NJWkUgYW5kIE02OEtfTUFYX1JFR0lTVEVSX1NJWkUuDQo+IEhvd2V2 ZXIsIEkgdGhpbmsgdGhhdCB3ZSBvbmx5IGhhdmUgdG8gYWRkIHRoZXNlIG1h Y3JvcyB3aGVuIG5lY2Vzc2FyeS4NCj4gDQo+IA0KPiAtLSANCj4gWWFvICjp vZDlsKcpDQoNCg0KT2ssIEdpdmVuIHRoYXQsIEkndmUgcHV0IHRvZ2V0aGVy IGEgcXVpY2sgcGF0Y2ggdG86DQoqIFVzZSBNNjhLX01BWF9SRUdJU1RFUl9T SVpFIGFuZCBJMzg2X01BWF9SRUdJU1RFUl9TSVpFIHdoZXJlIHBvc3NpYmxl Lg0KKiBBZGQgbWF4X3JlZ2lzdGVyX3NpemUoKSBmdW5jdGlvbg0KKiBSZW1v dmUgTUFYX1JFR0lTVEVSX1NJWkUgZnJvbSBhbGwgY29tbW9uIGZpbGVzIGJ5 IHVzaW5nIHN0ZDo6dmVjdG9yLg0KQ29udGVudHMgc2hvdWxkIGJlIHZlcnkg c2ltaWxhciB0byBwcmV2aW91cyBwYXRjaGVzIHBvc3RlZC4NCg0KVGhpcyBw YXRjaCBvaz8NCg0KMjAxNy0wMi0wNiAgQWxhbiBIYXl3YXJkICA8YWxhbi5o YXl3YXJkQGFybS5jb21cXD4NCg0KCSogZnJhbWUuYyAoZnJhbWVfdW53aW5k X3JlZ2lzdGVyX3NpZ25lZCk6IFVzZSBzdGQ6OnZlY3Rvci4NCgkoZnJhbWVf dW53aW5kX3JlZ2lzdGVyX3Vuc2lnbmVkKTogTGlrZXdpc2UuDQoJKGdldF9m cmFtZV9yZWdpc3Rlcl9ieXRlcyk6IExpa2V3aXNlLg0KCShwdXRfZnJhbWVf cmVnaXN0ZXJfYnl0ZXMpOiBMaWtld2lzZS4NCgkqIGkzODYtdGRlcC5jIChp Mzg2X3BzZXVkb19yZWdpc3Rlcl9yZWFkX2ludG9fdmFsdWUpOiBVc2UNCglJ Mzg2X01BWF9SRUdJU1RFUl9TSVpFLg0KCShpMzg2X3BzZXVkb19yZWdpc3Rl cl93cml0ZSk6IExpa2V3aXNlLg0KCShpMzg2X3Byb2Nlc3NfcmVjb3JkKTog TGlrZXdpc2UuDQoJKiBpMzg3LXRkZXAuYyAoaTM4N19zdXBwbHlfeHNhdmUp OiBMaWtld2lzZS4NCgkqIG02OGstbGludXgtbmF0LmMgKGZldGNoX3JlZ2lz dGVyKTogVXNlIE02OEtfTUFYX1JFR0lTVEVSX1NJWkUuDQoJKHN0b3JlX3Jl Z2lzdGVyKTogTGlrZXdpc2UuDQoJKiBtaS9taS1tYWluLmMgKHJlZ2lzdGVy X2NoYW5nZWRfcCk6IFVzZSBzdGQ6OnZlY3Rvci4NCgkqIHJlY29yZC1mdWxs LmMgKHJlY29yZF9mdWxsX2V4ZWNfaW5zbik6IExpa2V3aXNlLg0KCShyZWNv cmRfZnVsbF9jb3JlX29wZW5fMSk6IFVzZSBtYXhfcmVnaXN0ZXJfc2l6ZSAo KS4NCgkocmVjb3JkX2Z1bGxfY29yZV9mZXRjaF9yZWdpc3RlcnMpOiBMaWtl d2lzZS4NCgkocmVjb3JkX2Z1bGxfY29yZV9zdG9yZV9yZWdpc3RlcnMpOiBM aWtld2lzZS4NCgkoaW5pdF9yZWNvcmRfZnVsbF9jb3JlX29wcyk6IExpa2V3 aXNlLg0KCSogcmVtb3RlLXNpbS5jIChnZGJzaW1fZmV0Y2hfcmVnaXN0ZXIp OiBMaWtld2lzZS4NCgkoZ2Ric2ltX3N0b3JlX3JlZ2lzdGVyKTogTGlrZXdp c2UuDQoJKiByZWdjYWNoZS5jIChzdHJ1Y3QgcmVnY2FjaGVfZGVzY3IpOiBB ZGQgbWF4X3JlZ2lzdGVyX3NpemUuDQoJKG1heF9yZWdpc3Rlcl9zaXplKTog TmV3Lg0KCShpbml0X3JlZ2NhY2hlX2Rlc2NyKTogRmluZCBtYXggcmVnaXN0 ZXIgc2l6ZS4NCgkocmVnY2FjaGVfc2F2ZSk6IFVzZSBzdGQ6OnZlY3Rvci4N CgkocmVnY2FjaGVfcmVzdG9yZSk6IExpa2V3aXNlLg0KCShyZWdjYWNoZV9k dW1wKTogTGlrZXdpc2UuDQoJKiByZWdjYWNoZS5oIChtYXhfcmVnaXN0ZXJf c2l6ZSk6IE5ldy4NCgkqIHJlbW90ZS5jIChyZW1vdGVfcHJlcGFyZV90b19z dG9yZSk6IFVzZSBzdGQ6OnZlY3Rvci4NCgkqIHNvbC10aHJlYWQuYyAoc29s X3RocmVhZF9zdG9yZV9yZWdpc3RlcnMpOiBMaWtld2lzZS4NCgkqIHN0YWNr LmMgKGZyYW1lX2luZm8pOiBMaWtld2lzZS4NCgkqIHRhcmdldC5jIChkZWJ1 Z19wcmludF9yZWdpc3Rlcik6IExpa2V3aXNlLg0KDQoNCmRpZmYgLS1naXQg YS9nZGIvZnJhbWUuYyBiL2dkYi9mcmFtZS5jDQppbmRleCBkOTgwMDNkZWU3 YzM0YTYzYmQyNTM1NmU2Njc0NzIxNjY0YTRiMmYzLi4xNzAwMzA4MzcxZDlk Nzk1NTQ1YzBhOGJiMjZkYmEyODliMTgyMTdkIDEwMDY0NA0KLS0tIGEvZ2Ri L2ZyYW1lLmMNCisrKyBiL2dkYi9mcmFtZS5jDQpAQCAtMTI1MiwxMCArMTI1 MiwxMCBAQCBmcmFtZV91bndpbmRfcmVnaXN0ZXJfc2lnbmVkIChzdHJ1Y3Qg ZnJhbWVfaW5mbyAqZnJhbWUsIGludCByZWdudW0pDQogICBzdHJ1Y3QgZ2Ri YXJjaCAqZ2RiYXJjaCA9IGZyYW1lX3Vud2luZF9hcmNoIChmcmFtZSk7DQog ICBlbnVtIGJmZF9lbmRpYW4gYnl0ZV9vcmRlciA9IGdkYmFyY2hfYnl0ZV9v cmRlciAoZ2RiYXJjaCk7DQogICBpbnQgc2l6ZSA9IHJlZ2lzdGVyX3NpemUg KGdkYmFyY2gsIHJlZ251bSk7DQotICBnZGJfYnl0ZSBidWZbTUFYX1JFR0lT VEVSX1NJWkVdOw0KKyAgc3RkOjp2ZWN0b3I8Z2RiX2J5dGU+IGJ1ZiAoc2l6 ZSk7DQoNCi0gIGZyYW1lX3Vud2luZF9yZWdpc3RlciAoZnJhbWUsIHJlZ251 bSwgYnVmKTsNCi0gIHJldHVybiBleHRyYWN0X3NpZ25lZF9pbnRlZ2VyIChi dWYsIHNpemUsIGJ5dGVfb3JkZXIpOw0KKyAgZnJhbWVfdW53aW5kX3JlZ2lz dGVyIChmcmFtZSwgcmVnbnVtLCBidWYuZGF0YSAoKSk7DQorICByZXR1cm4g ZXh0cmFjdF9zaWduZWRfaW50ZWdlciAoYnVmLmRhdGEgKCksIHNpemUsIGJ5 dGVfb3JkZXIpOw0KIH0NCg0KIExPTkdFU1QNCkBAIC0xMjcwLDEwICsxMjcw LDEwIEBAIGZyYW1lX3Vud2luZF9yZWdpc3Rlcl91bnNpZ25lZCAoc3RydWN0 IGZyYW1lX2luZm8gKmZyYW1lLCBpbnQgcmVnbnVtKQ0KICAgc3RydWN0IGdk YmFyY2ggKmdkYmFyY2ggPSBmcmFtZV91bndpbmRfYXJjaCAoZnJhbWUpOw0K ICAgZW51bSBiZmRfZW5kaWFuIGJ5dGVfb3JkZXIgPSBnZGJhcmNoX2J5dGVf b3JkZXIgKGdkYmFyY2gpOw0KICAgaW50IHNpemUgPSByZWdpc3Rlcl9zaXpl IChnZGJhcmNoLCByZWdudW0pOw0KLSAgZ2RiX2J5dGUgYnVmW01BWF9SRUdJ U1RFUl9TSVpFXTsNCisgIHN0ZDo6dmVjdG9yPGdkYl9ieXRlPiBidWYgKHNp emUpOw0KDQotICBmcmFtZV91bndpbmRfcmVnaXN0ZXIgKGZyYW1lLCByZWdu dW0sIGJ1Zik7DQotICByZXR1cm4gZXh0cmFjdF91bnNpZ25lZF9pbnRlZ2Vy IChidWYsIHNpemUsIGJ5dGVfb3JkZXIpOw0KKyAgZnJhbWVfdW53aW5kX3Jl Z2lzdGVyIChmcmFtZSwgcmVnbnVtLCBidWYuZGF0YSAoKSk7DQorICByZXR1 cm4gZXh0cmFjdF91bnNpZ25lZF9pbnRlZ2VyIChidWYuZGF0YSAoKSwgc2l6 ZSwgYnl0ZV9vcmRlcik7DQogfQ0KDQogVUxPTkdFU1QNCkBAIC0xMzg5LDYg KzEzODksOCBAQCBnZXRfZnJhbWVfcmVnaXN0ZXJfYnl0ZXMgKHN0cnVjdCBm cmFtZV9pbmZvICpmcmFtZSwgaW50IHJlZ251bSwNCiAgICAgZXJyb3IgKF8o IkJhZCBkZWJ1ZyBpbmZvcm1hdGlvbiBkZXRlY3RlZDogIg0KIAkgICAgICJB dHRlbXB0IHRvIHJlYWQgJWQgYnl0ZXMgZnJvbSByZWdpc3RlcnMuIiksIGxl bik7DQoNCisgIHN0ZDo6dmVjdG9yPGdkYl9ieXRlPiBidWYgKG1heF9yZWdp c3Rlcl9zaXplIChnZGJhcmNoKSk7DQorDQogICAvKiBDb3B5IHRoZSBkYXRh LiAgKi8NCiAgIHdoaWxlIChsZW4gPiAwKQ0KICAgICB7DQpAQCAtMTQxMCwx NiArMTQxMiwxNSBAQCBnZXRfZnJhbWVfcmVnaXN0ZXJfYnl0ZXMgKHN0cnVj dCBmcmFtZV9pbmZvICpmcmFtZSwgaW50IHJlZ251bSwNCiAJfQ0KICAgICAg IGVsc2UNCiAJew0KLQkgIGdkYl9ieXRlIGJ1ZltNQVhfUkVHSVNURVJfU0la RV07DQogCSAgZW51bSBsdmFsX3R5cGUgbHZhbDsNCiAJICBDT1JFX0FERFIg YWRkcjsNCiAJICBpbnQgcmVhbG51bTsNCg0KIAkgIGZyYW1lX3JlZ2lzdGVy IChmcmFtZSwgcmVnbnVtLCBvcHRpbWl6ZWRwLCB1bmF2YWlsYWJsZXAsDQot CQkJICAmbHZhbCwgJmFkZHIsICZyZWFsbnVtLCBidWYpOw0KKwkJCSAgJmx2 YWwsICZhZGRyLCAmcmVhbG51bSwgYnVmLmRhdGEgKCkpOw0KIAkgIGlmICgq b3B0aW1pemVkcCB8fCAqdW5hdmFpbGFibGVwKQ0KIAkgICAgcmV0dXJuIDA7 DQotCSAgbWVtY3B5IChteWFkZHIsIGJ1ZiArIG9mZnNldCwgY3Vycl9sZW4p Ow0KKwkgIG1lbWNweSAobXlhZGRyLCBidWYuZGF0YSAoKSArIG9mZnNldCwg Y3Vycl9sZW4pOw0KIAl9DQoNCiAgICAgICBteWFkZHIgKz0gY3Vycl9sZW47 DQpAQCAtMTQ0Niw2ICsxNDQ3LDggQEAgcHV0X2ZyYW1lX3JlZ2lzdGVyX2J5 dGVzIChzdHJ1Y3QgZnJhbWVfaW5mbyAqZnJhbWUsIGludCByZWdudW0sDQog ICAgICAgcmVnbnVtKys7DQogICAgIH0NCg0KKyAgc3RkOjp2ZWN0b3I8Z2Ri X2J5dGU+IGJ1ZiAobWF4X3JlZ2lzdGVyX3NpemUgKGdkYmFyY2gpKTsNCisN CiAgIC8qIENvcHkgdGhlIGRhdGEuICAqLw0KICAgd2hpbGUgKGxlbiA+IDAp DQogICAgIHsNCkBAIC0xNDYwLDExICsxNDYzLDkgQEAgcHV0X2ZyYW1lX3Jl Z2lzdGVyX2J5dGVzIChzdHJ1Y3QgZnJhbWVfaW5mbyAqZnJhbWUsIGludCBy ZWdudW0sDQogCX0NCiAgICAgICBlbHNlDQogCXsNCi0JICBnZGJfYnl0ZSBi dWZbTUFYX1JFR0lTVEVSX1NJWkVdOw0KLQ0KLQkgIGRlcHJlY2F0ZWRfZnJh bWVfcmVnaXN0ZXJfcmVhZCAoZnJhbWUsIHJlZ251bSwgYnVmKTsNCi0JICBt ZW1jcHkgKGJ1ZiArIG9mZnNldCwgbXlhZGRyLCBjdXJyX2xlbik7DQotCSAg cHV0X2ZyYW1lX3JlZ2lzdGVyIChmcmFtZSwgcmVnbnVtLCBidWYpOw0KKwkg IGRlcHJlY2F0ZWRfZnJhbWVfcmVnaXN0ZXJfcmVhZCAoZnJhbWUsIHJlZ251 bSwgYnVmLmRhdGEgKCkpOw0KKwkgIG1lbWNweSAoYnVmLmRhdGEgKCkgKyBv ZmZzZXQsIG15YWRkciwgY3Vycl9sZW4pOw0KKwkgIHB1dF9mcmFtZV9yZWdp c3RlciAoZnJhbWUsIHJlZ251bSwgYnVmLmRhdGEgKCkpOw0KIAl9DQoNCiAg ICAgICBteWFkZHIgKz0gY3Vycl9sZW47DQpkaWZmIC0tZ2l0IGEvZ2RiL2kz ODYtdGRlcC5jIGIvZ2RiL2kzODYtdGRlcC5jDQppbmRleCA4YTRkNTlmNmZk YWU4ZWM3ODU0NjJkMGNlZWRjZDY1MDFiOTU1Y2YwLi4wODFhMTZjNjg5NmNl N2FlZTRkYjNiMGJlNDVmYmJkZDJjMjNkYmRiIDEwMDY0NA0KLS0tIGEvZ2Ri L2kzODYtdGRlcC5jDQorKysgYi9nZGIvaTM4Ni10ZGVwLmMNCkBAIC0zMjUw LDcgKzMyNTAsNyBAQCBpMzg2X3BzZXVkb19yZWdpc3Rlcl9yZWFkX2ludG9f dmFsdWUgKHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoLA0KIAkJCQkgICAgICBp bnQgcmVnbnVtLA0KIAkJCQkgICAgICBzdHJ1Y3QgdmFsdWUgKnJlc3VsdF92 YWx1ZSkNCiB7DQotICBnZGJfYnl0ZSByYXdfYnVmW01BWF9SRUdJU1RFUl9T SVpFXTsNCisgIGdkYl9ieXRlIHJhd19idWZbSTM4Nl9NQVhfUkVHSVNURVJf U0laRV07DQogICBlbnVtIHJlZ2lzdGVyX3N0YXR1cyBzdGF0dXM7DQogICBn ZGJfYnl0ZSAqYnVmID0gdmFsdWVfY29udGVudHNfcmF3IChyZXN1bHRfdmFs dWUpOw0KDQpAQCAtMzQ1NSw3ICszNDU1LDcgQEAgdm9pZA0KIGkzODZfcHNl dWRvX3JlZ2lzdGVyX3dyaXRlIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwg c3RydWN0IHJlZ2NhY2hlICpyZWdjYWNoZSwNCiAJCQkgICAgaW50IHJlZ251 bSwgY29uc3QgZ2RiX2J5dGUgKmJ1ZikNCiB7DQotICBnZGJfYnl0ZSByYXdf YnVmW01BWF9SRUdJU1RFUl9TSVpFXTsNCisgIGdkYl9ieXRlIHJhd19idWZb STM4Nl9NQVhfUkVHSVNURVJfU0laRV07DQoNCiAgIGlmIChpMzg2X21teF9y ZWdudW1fcCAoZ2RiYXJjaCwgcmVnbnVtKSkNCiAgICAgew0KQEAgLTUwMzcs NyArNTAzNyw3IEBAIGkzODZfcHJvY2Vzc19yZWNvcmQgKHN0cnVjdCBnZGJh cmNoICpnZGJhcmNoLCBzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2NhY2hlLA0KICAg dWludDMyX3Qgb3Bjb2RlOw0KICAgdWludDhfdCBvcGNvZGU4Ow0KICAgVUxP TkdFU1QgYWRkcjsNCi0gIGdkYl9ieXRlIGJ1ZltNQVhfUkVHSVNURVJfU0la RV07DQorICBnZGJfYnl0ZSBidWZbSTM4Nl9NQVhfUkVHSVNURVJfU0laRV07 DQogICBzdHJ1Y3QgaTM4Nl9yZWNvcmRfcyBpcjsNCiAgIHN0cnVjdCBnZGJh cmNoX3RkZXAgKnRkZXAgPSBnZGJhcmNoX3RkZXAgKGdkYmFyY2gpOw0KICAg dWludDhfdCByZXhfdyA9IC0xOw0KZGlmZiAtLWdpdCBhL2dkYi9pMzg3LXRk ZXAuYyBiL2dkYi9pMzg3LXRkZXAuYw0KaW5kZXggYWRiZTcyMTMzMDg5YmMz NzExMDhkNWRkNzliZjhkOGU2MWJhMjU5Yy4uZmNkNWFkMjQ4ZDZiNzM3Yjlm MjdlMjk0Y2UxNjZhMTE4ZTRiZGNhZCAxMDA2NDQNCi0tLSBhL2dkYi9pMzg3 LXRkZXAuYw0KKysrIGIvZ2RiL2kzODctdGRlcC5jDQpAQCAtODk5LDcgKzg5 OSw3IEBAIGkzODdfc3VwcGx5X3hzYXZlIChzdHJ1Y3QgcmVnY2FjaGUgKnJl Z2NhY2hlLCBpbnQgcmVnbnVtLA0KICAgY29uc3QgZ2RiX2J5dGUgKnJlZ3Mg PSAoY29uc3QgZ2RiX2J5dGUgKikgeHNhdmU7DQogICBpbnQgaTsNCiAgIHVu c2lnbmVkIGludCBjbGVhcl9idjsNCi0gIHN0YXRpYyBjb25zdCBnZGJfYnl0 ZSB6ZXJvW01BWF9SRUdJU1RFUl9TSVpFXSA9IHsgMCB9Ow0KKyAgc3RhdGlj IGNvbnN0IGdkYl9ieXRlIHplcm9bSTM4Nl9NQVhfUkVHSVNURVJfU0laRV0g PSB7IDAgfTsNCiAgIGVudW0NCiAgICAgew0KICAgICAgIG5vbmUgPSAweDAs DQpkaWZmIC0tZ2l0IGEvZ2RiL202OGstbGludXgtbmF0LmMgYi9nZGIvbTY4 ay1saW51eC1uYXQuYw0KaW5kZXggNjk0NGM3NGViMTk4MzgxMTM1ZmRhM2Rk ZjAxYjlkYTNhNjNlNjJkNS4uZTUxODJjYWYzOTE5N2Y3NTljODVjMjMyMWU0 ZDY2YzQyOGY1OTExZSAxMDA2NDQNCi0tLSBhL2dkYi9tNjhrLWxpbnV4LW5h dC5jDQorKysgYi9nZGIvbTY4ay1saW51eC1uYXQuYw0KQEAgLTEwNSw3ICsx MDUsNyBAQCBmZXRjaF9yZWdpc3RlciAoc3RydWN0IHJlZ2NhY2hlICpyZWdj YWNoZSwgaW50IHJlZ25vKQ0KICAgc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gg PSBnZXRfcmVnY2FjaGVfYXJjaCAocmVnY2FjaGUpOw0KICAgbG9uZyByZWdh ZGRyLCB2YWw7DQogICBpbnQgaTsNCi0gIGdkYl9ieXRlIGJ1ZltNQVhfUkVH SVNURVJfU0laRV07DQorICBnZGJfYnl0ZSBidWZbTTY4S19NQVhfUkVHSVNU RVJfU0laRV07DQogICBpbnQgdGlkOw0KDQogICAvKiBPdmVybG9hZCB0aHJl YWQgaWQgb250byBwcm9jZXNzIGlkLiAgKi8NCkBAIC0xNjAsNyArMTYwLDcg QEAgc3RvcmVfcmVnaXN0ZXIgKGNvbnN0IHN0cnVjdCByZWdjYWNoZSAqcmVn Y2FjaGUsIGludCByZWdubykNCiAgIGxvbmcgcmVnYWRkciwgdmFsOw0KICAg aW50IGk7DQogICBpbnQgdGlkOw0KLSAgZ2RiX2J5dGUgYnVmW01BWF9SRUdJ U1RFUl9TSVpFXTsNCisgIGdkYl9ieXRlIGJ1ZltNNjhLX01BWF9SRUdJU1RF Ul9TSVpFXTsNCg0KICAgLyogT3ZlcmxvYWQgdGhyZWFkIGlkIG9udG8gcHJv Y2VzcyBpZC4gICovDQogICB0aWQgPSBwdGlkX2dldF9sd3AgKGluZmVyaW9y X3B0aWQpOw0KZGlmZiAtLWdpdCBhL2dkYi9taS9taS1tYWluLmMgYi9nZGIv bWkvbWktbWFpbi5jDQppbmRleCA1N2MyM2ViZjVkNmIyZDNiMzk4YWE0MGVi ZDliM2NiNzBjNTYxMjVjLi5iMDczMzVkODI3MjNmM2VlOWM3NjAyYThmYTI4 NGFjYjdlM2IzYTI1IDEwMDY0NA0KLS0tIGEvZ2RiL21pL21pLW1haW4uYw0K KysrIGIvZ2RiL21pL21pLW1haW4uYw0KQEAgLTExMzUsOCArMTEzNSw4IEBA IHJlZ2lzdGVyX2NoYW5nZWRfcCAoaW50IHJlZ251bSwgc3RydWN0IHJlZ2Nh Y2hlICpwcmV2X3JlZ3MsDQogCQkgICAgc3RydWN0IHJlZ2NhY2hlICp0aGlz X3JlZ3MpDQogew0KICAgc3RydWN0IGdkYmFyY2ggKmdkYmFyY2ggPSBnZXRf cmVnY2FjaGVfYXJjaCAodGhpc19yZWdzKTsNCi0gIGdkYl9ieXRlIHByZXZf YnVmZmVyW01BWF9SRUdJU1RFUl9TSVpFXTsNCi0gIGdkYl9ieXRlIHRoaXNf YnVmZmVyW01BWF9SRUdJU1RFUl9TSVpFXTsNCisgIHN0ZDo6dmVjdG9yPGdk Yl9ieXRlPiBwcmV2X2J1ZmZlciAobWF4X3JlZ2lzdGVyX3NpemUgKGdkYmFy Y2gpKTsNCisgIHN0ZDo6dmVjdG9yPGdkYl9ieXRlPiB0aGlzX2J1ZmZlciAo bWF4X3JlZ2lzdGVyX3NpemUgKGdkYmFyY2gpKTsNCiAgIGVudW0gcmVnaXN0 ZXJfc3RhdHVzIHByZXZfc3RhdHVzOw0KICAgZW51bSByZWdpc3Rlcl9zdGF0 dXMgdGhpc19zdGF0dXM7DQoNCkBAIC0xMTQ2LDEzICsxMTQ2LDEzIEBAIHJl Z2lzdGVyX2NoYW5nZWRfcCAoaW50IHJlZ251bSwgc3RydWN0IHJlZ2NhY2hl ICpwcmV2X3JlZ3MsDQogICAgIHJldHVybiAxOw0KDQogICAvKiBHZXQgcmVn aXN0ZXIgY29udGVudHMgYW5kIGNvbXBhcmUuICAqLw0KLSAgcHJldl9zdGF0 dXMgPSByZWdjYWNoZV9jb29rZWRfcmVhZCAocHJldl9yZWdzLCByZWdudW0s IHByZXZfYnVmZmVyKTsNCi0gIHRoaXNfc3RhdHVzID0gcmVnY2FjaGVfY29v a2VkX3JlYWQgKHRoaXNfcmVncywgcmVnbnVtLCB0aGlzX2J1ZmZlcik7DQor ICBwcmV2X3N0YXR1cyA9IHJlZ2NhY2hlX2Nvb2tlZF9yZWFkIChwcmV2X3Jl Z3MsIHJlZ251bSwgcHJldl9idWZmZXIuZGF0YSAoKSk7DQorICB0aGlzX3N0 YXR1cyA9IHJlZ2NhY2hlX2Nvb2tlZF9yZWFkICh0aGlzX3JlZ3MsIHJlZ251 bSwgdGhpc19idWZmZXIuZGF0YSAoKSk7DQoNCiAgIGlmICh0aGlzX3N0YXR1 cyAhPSBwcmV2X3N0YXR1cykNCiAgICAgcmV0dXJuIDE7DQogICBlbHNlIGlm ICh0aGlzX3N0YXR1cyA9PSBSRUdfVkFMSUQpDQotICAgIHJldHVybiBtZW1j bXAgKHByZXZfYnVmZmVyLCB0aGlzX2J1ZmZlciwNCisgICAgcmV0dXJuIG1l bWNtcCAocHJldl9idWZmZXIuZGF0YSAoKSwgdGhpc19idWZmZXIuZGF0YSAo KSwNCiAJCSAgIHJlZ2lzdGVyX3NpemUgKGdkYmFyY2gsIHJlZ251bSkpICE9 IDA7DQogICBlbHNlDQogICAgIHJldHVybiAwOw0KZGlmZiAtLWdpdCBhL2dk Yi9yZWNvcmQtZnVsbC5jIGIvZ2RiL3JlY29yZC1mdWxsLmMNCmluZGV4IGZk ZDYxM2I2ZTQxYmJmY2Q4NjQ0YjAyY2NmZWI5OGI1M2I1MThiZmYuLmE2MTll MDlhNjQ2YzQ4YzYzMmE2MDQwN2Q3MDE4OTc5ZDgwNWEwOGYgMTAwNjQ0DQot LS0gYS9nZGIvcmVjb3JkLWZ1bGwuYw0KKysrIGIvZ2RiL3JlY29yZC1mdWxs LmMNCkBAIC02OTgsNyArNjk4LDcgQEAgcmVjb3JkX2Z1bGxfZXhlY19pbnNu IChzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2NhY2hlLA0KICAgICB7DQogICAgIGNh c2UgcmVjb3JkX2Z1bGxfcmVnOiAvKiByZWcgKi8NCiAgICAgICB7DQotICAg ICAgICBnZGJfYnl0ZSByZWdbTUFYX1JFR0lTVEVSX1NJWkVdOw0KKwlzdGQ6 OnZlY3RvcjxnZGJfYnl0ZT4gcmVnIChyZWdpc3Rlcl9zaXplIChnZGJhcmNo LCBlbnRyeS0+dS5yZWcubnVtKSk7DQoNCiAgICAgICAgIGlmIChyZWNvcmRf ZGVidWcgPiAxKQ0KICAgICAgICAgICBmcHJpbnRmX3VuZmlsdGVyZWQgKGdk Yl9zdGRsb2csDQpAQCAtNzA3LDEwICs3MDcsMTAgQEAgcmVjb3JkX2Z1bGxf ZXhlY19pbnNuIChzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2NhY2hlLA0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGhvc3RfYWRkcmVzc190b19zdHJp bmcgKGVudHJ5KSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBl bnRyeS0+dS5yZWcubnVtKTsNCg0KLSAgICAgICAgcmVnY2FjaGVfY29va2Vk X3JlYWQgKHJlZ2NhY2hlLCBlbnRyeS0+dS5yZWcubnVtLCByZWcpOw0KLSAg ICAgICAgcmVnY2FjaGVfY29va2VkX3dyaXRlIChyZWdjYWNoZSwgZW50cnkt PnUucmVnLm51bSwNCisJcmVnY2FjaGVfY29va2VkX3JlYWQgKHJlZ2NhY2hl LCBlbnRyeS0+dS5yZWcubnVtLCByZWcuZGF0YSAoKSk7DQorCXJlZ2NhY2hl X2Nvb2tlZF93cml0ZSAocmVnY2FjaGUsIGVudHJ5LT51LnJlZy5udW0sDQog CQkJICAgICAgIHJlY29yZF9mdWxsX2dldF9sb2MgKGVudHJ5KSk7DQotICAg ICAgICBtZW1jcHkgKHJlY29yZF9mdWxsX2dldF9sb2MgKGVudHJ5KSwgcmVn LCBlbnRyeS0+dS5yZWcubGVuKTsNCisJbWVtY3B5IChyZWNvcmRfZnVsbF9n ZXRfbG9jIChlbnRyeSksIHJlZy5kYXRhICgpLCBlbnRyeS0+dS5yZWcubGVu KTsNCiAgICAgICB9DQogICAgICAgYnJlYWs7DQoNCkBAIC03OTIsMTUgKzc5 MiwxNyBAQCBzdGF0aWMgdm9pZA0KIHJlY29yZF9mdWxsX2NvcmVfb3Blbl8x IChjb25zdCBjaGFyICpuYW1lLCBpbnQgZnJvbV90dHkpDQogew0KICAgc3Ry dWN0IHJlZ2NhY2hlICpyZWdjYWNoZSA9IGdldF9jdXJyZW50X3JlZ2NhY2hl ICgpOw0KLSAgaW50IHJlZ251bSA9IGdkYmFyY2hfbnVtX3JlZ3MgKGdldF9y ZWdjYWNoZV9hcmNoIChyZWdjYWNoZSkpOw0KKyAgc3RydWN0IGdkYmFyY2gg KmdkYmFyY2ggPSBnZXRfcmVnY2FjaGVfYXJjaCAocmVnY2FjaGUpOw0KKyAg aW50IHJlZ251bSA9IGdkYmFyY2hfbnVtX3JlZ3MgKGdkYmFyY2gpOw0KKyAg aW50IHJlZ21heHNpemUgPSBtYXhfcmVnaXN0ZXJfc2l6ZSAoZ2RiYXJjaCk7 DQogICBpbnQgaTsNCg0KICAgLyogR2V0IHJlY29yZF9mdWxsX2NvcmVfcmVn YnVmLiAgKi8NCiAgIHRhcmdldF9mZXRjaF9yZWdpc3RlcnMgKHJlZ2NhY2hl LCAtMSk7DQotICByZWNvcmRfZnVsbF9jb3JlX3JlZ2J1ZiA9IChnZGJfYnl0 ZSAqKSB4bWFsbG9jIChNQVhfUkVHSVNURVJfU0laRSAqIHJlZ251bSk7DQor ICByZWNvcmRfZnVsbF9jb3JlX3JlZ2J1ZiA9IChnZGJfYnl0ZSAqKSB4bWFs bG9jIChyZWdtYXhzaXplICogcmVnbnVtKTsNCiAgIGZvciAoaSA9IDA7IGkg PCByZWdudW07IGkgKyspDQogICAgIHJlZ2NhY2hlX3Jhd19jb2xsZWN0IChy ZWdjYWNoZSwgaSwNCi0JCQkgIHJlY29yZF9mdWxsX2NvcmVfcmVnYnVmICsg TUFYX1JFR0lTVEVSX1NJWkUgKiBpKTsNCisJCQkgIHJlY29yZF9mdWxsX2Nv cmVfcmVnYnVmICsgcmVnbWF4c2l6ZSAqIGkpOw0KDQogICAvKiBHZXQgcmVj b3JkX2Z1bGxfY29yZV9zdGFydCBhbmQgcmVjb3JkX2Z1bGxfY29yZV9lbmQu ICAqLw0KICAgaWYgKGJ1aWxkX3NlY3Rpb25fdGFibGUgKGNvcmVfYmZkLCAm cmVjb3JkX2Z1bGxfY29yZV9zdGFydCwNCkBAIC0yMDM4LDYgKzIwNDAsOSBA QCByZWNvcmRfZnVsbF9jb3JlX2ZldGNoX3JlZ2lzdGVycyAoc3RydWN0IHRh cmdldF9vcHMgKm9wcywNCiAJCQkJICBzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2Nh Y2hlLA0KIAkJCQkgIGludCByZWdubykNCiB7DQorICBzdHJ1Y3QgZ2RiYXJj aCAqZ2RiYXJjaCA9IGdldF9yZWdjYWNoZV9hcmNoIChyZWdjYWNoZSk7DQor ICBpbnQgcmVnbWF4c2l6ZSA9IG1heF9yZWdpc3Rlcl9zaXplIChnZGJhcmNo KTsNCisNCiAgIGlmIChyZWdubyA8IDApDQogICAgIHsNCiAgICAgICBpbnQg bnVtID0gZ2RiYXJjaF9udW1fcmVncyAoZ2V0X3JlZ2NhY2hlX2FyY2ggKHJl Z2NhY2hlKSk7DQpAQCAtMjA0NSwxMSArMjA1MCwxMSBAQCByZWNvcmRfZnVs bF9jb3JlX2ZldGNoX3JlZ2lzdGVycyAoc3RydWN0IHRhcmdldF9vcHMgKm9w cywNCg0KICAgICAgIGZvciAoaSA9IDA7IGkgPCBudW07IGkgKyspDQogICAg ICAgICByZWdjYWNoZV9yYXdfc3VwcGx5IChyZWdjYWNoZSwgaSwNCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHJlY29yZF9mdWxsX2NvcmVfcmVn YnVmICsgTUFYX1JFR0lTVEVSX1NJWkUgKiBpKTsNCisJCQkgICAgIHJlY29y ZF9mdWxsX2NvcmVfcmVnYnVmICsgcmVnbWF4c2l6ZSAqIGkpOw0KICAgICB9 DQogICBlbHNlDQogICAgIHJlZ2NhY2hlX3Jhd19zdXBwbHkgKHJlZ2NhY2hl LCByZWdubywNCi0gICAgICAgICAgICAgICAgICAgICAgICAgcmVjb3JkX2Z1 bGxfY29yZV9yZWdidWYgKyBNQVhfUkVHSVNURVJfU0laRSAqIHJlZ25vKTsN CisJCQkgcmVjb3JkX2Z1bGxfY29yZV9yZWdidWYgKyByZWdtYXhzaXplICog cmVnbm8pOw0KIH0NCg0KIC8qICJ0b19wcmVwYXJlX3RvX3N0b3JlIiBtZXRo b2QgZm9yIHByZWMgb3ZlciBjb3JlZmlsZS4gICovDQpAQCAtMjA2Nyw5ICsy MDcyLDEyIEBAIHJlY29yZF9mdWxsX2NvcmVfc3RvcmVfcmVnaXN0ZXJzIChz dHJ1Y3QgdGFyZ2V0X29wcyAqb3BzLA0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgc3RydWN0IHJlZ2NhY2hlICpyZWdjYWNoZSwNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGludCByZWdubykNCiB7DQorICBzdHJ1 Y3QgZ2RiYXJjaCAqZ2RiYXJjaCA9IGdldF9yZWdjYWNoZV9hcmNoIChyZWdj YWNoZSk7DQorICBpbnQgcmVnbWF4c2l6ZSA9IG1heF9yZWdpc3Rlcl9zaXpl IChnZGJhcmNoKTsNCisNCiAgIGlmIChyZWNvcmRfZnVsbF9nZGJfb3BlcmF0 aW9uX2Rpc2FibGUpDQogICAgIHJlZ2NhY2hlX3Jhd19jb2xsZWN0IChyZWdj YWNoZSwgcmVnbm8sDQotICAgICAgICAgICAgICAgICAgICAgICAgICByZWNv cmRfZnVsbF9jb3JlX3JlZ2J1ZiArIE1BWF9SRUdJU1RFUl9TSVpFICogcmVn bm8pOw0KKwkJCSAgcmVjb3JkX2Z1bGxfY29yZV9yZWdidWYgKyByZWdtYXhz aXplICogcmVnbm8pOw0KICAgZWxzZQ0KICAgICBlcnJvciAoXygiWW91IGNh bid0IGRvIHRoYXQgd2l0aG91dCBhIHByb2Nlc3MgdG8gZGVidWcuIikpOw0K IH0NCkBAIC0yMjY1LDcgKzIyNzMsNyBAQCBpbml0X3JlY29yZF9mdWxsX2Nv cmVfb3BzICh2b2lkKQ0KICAgICAgcmVjb3JkX2Z1bGxfcmVnOg0KICAgICAg ICAxIGJ5dGU6ICByZWNvcmQgdHlwZSAocmVjb3JkX2Z1bGxfcmVnLCBzZWUg ZW51bSByZWNvcmRfZnVsbF90eXBlKS4NCiAgICAgICAgOCBieXRlczogcmVn aXN0ZXIgaWQgKG5ldHdvcmsgYnl0ZSBvcmRlcikuDQotICAgICAgIE1BWF9S RUdJU1RFUl9TSVpFIGJ5dGVzOiByZWdpc3RlciB2YWx1ZS4NCisgICAgICAg bWF4X3JlZ2lzdGVyX3NpemUgYnl0ZXM6IHJlZ2lzdGVyIHZhbHVlLg0KICAg ICAgcmVjb3JkX2Z1bGxfbWVtOg0KICAgICAgICAxIGJ5dGU6ICByZWNvcmQg dHlwZSAocmVjb3JkX2Z1bGxfbWVtLCBzZWUgZW51bSByZWNvcmRfZnVsbF90 eXBlKS4NCiAgICAgICAgOCBieXRlczogbWVtb3J5IGxlbmd0aCAobmV0d29y ayBieXRlIG9yZGVyKS4NCmRpZmYgLS1naXQgYS9nZGIvcmVnY2FjaGUuaCBi L2dkYi9yZWdjYWNoZS5oDQppbmRleCBlNWE3Y2Y1NTMyNzliOGNjMGQ1NDZl YzFiODI3NGNiZjk3ZTI0NmQ1Li41YmM5OWY1YzFlZjg3MzE4ZWRmNGU5MzRl YzYwYzdmMTIyNWU3NTYxIDEwMDY0NA0KLS0tIGEvZ2RiL3JlZ2NhY2hlLmgN CisrKyBiL2dkYi9yZWdjYWNoZS5oDQpAQCAtMjAyLDYgKzIwMiw4IEBAIGV4 dGVybiBzdHJ1Y3QgdHlwZSAqcmVnaXN0ZXJfdHlwZSAoc3RydWN0IGdkYmFy Y2ggKmdkYmFyY2gsIGludCByZWdudW0pOw0KDQogZXh0ZXJuIGludCByZWdp c3Rlcl9zaXplIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwgaW50IHJlZ251 bSk7DQoNCisvKiBSZXR1cm4gdGhlIHNpemUgb2YgdGhlIGxhcmdlc3QgcmVn aXN0ZXIuICAqLw0KK2V4dGVybiBsb25nIG1heF9yZWdpc3Rlcl9zaXplIChz dHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCk7DQoNCiAvKiBTYXZlL3Jlc3RvcmUg YSByZWdpc3RlciBjYWNoZS4gIFRoZSBzZXQgb2YgcmVnaXN0ZXJzIHNhdmVk IC8NCiAgICByZXN0b3JlZCBpbnRvIHRoZSBEU1QgcmVnY2FjaGUgZGV0ZXJt aW5lZCBieSB0aGUgc2F2ZV9yZWdncm91cCAvDQpkaWZmIC0tZ2l0IGEvZ2Ri L3JlZ2NhY2hlLmMgYi9nZGIvcmVnY2FjaGUuYw0KaW5kZXggOWQyOGFhMmMy MTE0ZTBmMWM1Mjc1OGJiMmZiZTk2NjlhMzI5YzEzZS4uNTIyNjMzYWUwZmRm NmQ4MDUwOGQ3MjViYzFkNjhkMDU1NjdmZDlmZiAxMDA2NDQNCi0tLSBhL2dk Yi9yZWdjYWNoZS5jDQorKysgYi9nZGIvcmVnY2FjaGUuYw0KQEAgLTczLDYg KzczLDkgQEAgc3RydWN0IHJlZ2NhY2hlX2Rlc2NyDQoNCiAgIC8qIENhY2hl ZCB0YWJsZSBjb250YWluaW5nIHRoZSB0eXBlIG9mIGVhY2ggcmVnaXN0ZXIu ICAqLw0KICAgc3RydWN0IHR5cGUgKipyZWdpc3Rlcl90eXBlOw0KKw0KKyAg LyogU2l6ZSBvZiB0aGUgbGFyZ2VzdCByZWdpc3Rlci4gICovDQorICBsb25n IG1heF9yZWdpc3Rlcl9zaXplOw0KIH07DQoNCiBzdGF0aWMgdm9pZCAqDQpA QCAtMTI2LDYgKzEyOSw4IEBAIGluaXRfcmVnY2FjaGVfZGVzY3IgKHN0cnVj dCBnZGJhcmNoICpnZGJhcmNoKQ0KIAlkZXNjci0+cmVnaXN0ZXJfb2Zmc2V0 W2ldID0gb2Zmc2V0Ow0KIAlvZmZzZXQgKz0gZGVzY3ItPnNpemVvZl9yZWdp c3RlcltpXTsNCiAJZ2RiX2Fzc2VydCAoTUFYX1JFR0lTVEVSX1NJWkUgPj0g ZGVzY3ItPnNpemVvZl9yZWdpc3RlcltpXSk7DQorCWRlc2NyLT5tYXhfcmVn aXN0ZXJfc2l6ZSA9IHN0ZDo6bWF4IChkZXNjci0+bWF4X3JlZ2lzdGVyX3Np emUsDQorCQkJCQkgICAgIGRlc2NyLT5zaXplb2ZfcmVnaXN0ZXJbaV0pOw0K ICAgICAgIH0NCiAgICAgLyogU2V0IHRoZSByZWFsIHNpemUgb2YgdGhlIHJh dyByZWdpc3RlciBjYWNoZSBidWZmZXIuICAqLw0KICAgICBkZXNjci0+c2l6 ZW9mX3Jhd19yZWdpc3RlcnMgPSBvZmZzZXQ7DQpAQCAtMTM2LDYgKzE0MSw4 IEBAIGluaXRfcmVnY2FjaGVfZGVzY3IgKHN0cnVjdCBnZGJhcmNoICpnZGJh cmNoKQ0KIAlkZXNjci0+cmVnaXN0ZXJfb2Zmc2V0W2ldID0gb2Zmc2V0Ow0K IAlvZmZzZXQgKz0gZGVzY3ItPnNpemVvZl9yZWdpc3RlcltpXTsNCiAJZ2Ri X2Fzc2VydCAoTUFYX1JFR0lTVEVSX1NJWkUgPj0gZGVzY3ItPnNpemVvZl9y ZWdpc3RlcltpXSk7DQorCWRlc2NyLT5tYXhfcmVnaXN0ZXJfc2l6ZSA9IHN0 ZDo6bWF4IChkZXNjci0+bWF4X3JlZ2lzdGVyX3NpemUsDQorCQkJCQkgICAg IGRlc2NyLT5zaXplb2ZfcmVnaXN0ZXJbaV0pOw0KICAgICAgIH0NCiAgICAg LyogU2V0IHRoZSByZWFsIHNpemUgb2YgdGhlIHJlYWRvbmx5IHJlZ2lzdGVy IGNhY2hlIGJ1ZmZlci4gICovDQogICAgIGRlc2NyLT5zaXplb2ZfY29va2Vk X3JlZ2lzdGVycyA9IG9mZnNldDsNCkBAIC0xODcsNiArMTk0LDEzIEBAIHJl Z2NhY2hlX3JlZ2lzdGVyX3NpemUgKGNvbnN0IHN0cnVjdCByZWdjYWNoZSAq cmVnY2FjaGUsIGludCBuKQ0KICAgcmV0dXJuIHJlZ2lzdGVyX3NpemUgKGdl dF9yZWdjYWNoZV9hcmNoIChyZWdjYWNoZSksIG4pOw0KIH0NCg0KK2xvbmcN CittYXhfcmVnaXN0ZXJfc2l6ZSAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gp DQorew0KKyAgc3RydWN0IHJlZ2NhY2hlX2Rlc2NyICpkZXNjciA9IHJlZ2Nh Y2hlX2Rlc2NyIChnZGJhcmNoKTsNCisgIHJldHVybiBkZXNjci0+bWF4X3Jl Z2lzdGVyX3NpemU7DQorfQ0KKw0KIC8qIFRoZSByZWdpc3RlciBjYWNoZSBm b3Igc3RvcmluZyByYXcgcmVnaXN0ZXIgdmFsdWVzLiAgKi8NCg0KIHN0cnVj dCByZWdjYWNoZQ0KQEAgLTMyNyw3ICszNDEsNyBAQCByZWdjYWNoZV9zYXZl IChzdHJ1Y3QgcmVnY2FjaGUgKmRzdCwgcmVnY2FjaGVfY29va2VkX3JlYWRf ZnR5cGUgKmNvb2tlZF9yZWFkLA0KIAkgICAgICAgdm9pZCAqc3JjKQ0KIHsN CiAgIHN0cnVjdCBnZGJhcmNoICpnZGJhcmNoID0gZHN0LT5kZXNjci0+Z2Ri YXJjaDsNCi0gIGdkYl9ieXRlIGJ1ZltNQVhfUkVHSVNURVJfU0laRV07DQor ICBzdGQ6OnZlY3RvcjxnZGJfYnl0ZT4gYnVmIChtYXhfcmVnaXN0ZXJfc2l6 ZSAoZ2RiYXJjaCkpOw0KICAgaW50IHJlZ251bTsNCg0KICAgLyogVGhlIERT VCBzaG91bGQgYmUgYHJlYWQtb25seScsIGlmIGl0IHdhc24ndCB0aGVuIHRo ZSBzYXZlIHdvdWxkDQpAQCAtMzQ2LDEwICszNjAsMTAgQEAgcmVnY2FjaGVf c2F2ZSAoc3RydWN0IHJlZ2NhY2hlICpkc3QsIHJlZ2NhY2hlX2Nvb2tlZF9y ZWFkX2Z0eXBlICpjb29rZWRfcmVhZCwNCiAgICAgew0KICAgICAgIGlmIChn ZGJhcmNoX3JlZ2lzdGVyX3JlZ2dyb3VwX3AgKGdkYmFyY2gsIHJlZ251bSwg c2F2ZV9yZWdncm91cCkpDQogCXsNCi0JICBlbnVtIHJlZ2lzdGVyX3N0YXR1 cyBzdGF0dXMgPSBjb29rZWRfcmVhZCAoc3JjLCByZWdudW0sIGJ1Zik7DQor CSAgZW51bSByZWdpc3Rlcl9zdGF0dXMgc3RhdHVzID0gY29va2VkX3JlYWQg KHNyYywgcmVnbnVtLCBidWYuZGF0YSAoKSk7DQoNCiAJICBpZiAoc3RhdHVz ID09IFJFR19WQUxJRCkNCi0JICAgIG1lbWNweSAocmVnaXN0ZXJfYnVmZmVy IChkc3QsIHJlZ251bSksIGJ1ZiwNCisJICAgIG1lbWNweSAocmVnaXN0ZXJf YnVmZmVyIChkc3QsIHJlZ251bSksIGJ1Zi5kYXRhICgpLA0KIAkJICAgIHJl Z2lzdGVyX3NpemUgKGdkYmFyY2gsIHJlZ251bSkpOw0KIAkgIGVsc2UNCiAJ ICAgIHsNCkBAIC0zNjksNyArMzgzLDcgQEAgcmVnY2FjaGVfcmVzdG9yZSAo c3RydWN0IHJlZ2NhY2hlICpkc3QsDQogCQkgIHZvaWQgKmNvb2tlZF9yZWFk X2NvbnRleHQpDQogew0KICAgc3RydWN0IGdkYmFyY2ggKmdkYmFyY2ggPSBk c3QtPmRlc2NyLT5nZGJhcmNoOw0KLSAgZ2RiX2J5dGUgYnVmW01BWF9SRUdJ U1RFUl9TSVpFXTsNCisgIHN0ZDo6dmVjdG9yPGdkYl9ieXRlPiBidWYgKG1h eF9yZWdpc3Rlcl9zaXplIChnZGJhcmNoKSk7DQogICBpbnQgcmVnbnVtOw0K DQogICAvKiBUaGUgZHN0IGhhZCBiZXR0ZXIgbm90IGJlIHJlYWQtb25seS4g IElmIGl0IGlzLCB0aGUgYHJlc3RvcmUnDQpAQCAtMzg1LDkgKzM5OSw5IEBA IHJlZ2NhY2hlX3Jlc3RvcmUgKHN0cnVjdCByZWdjYWNoZSAqZHN0LA0KIAl7 DQogCSAgZW51bSByZWdpc3Rlcl9zdGF0dXMgc3RhdHVzOw0KDQotCSAgc3Rh dHVzID0gY29va2VkX3JlYWQgKGNvb2tlZF9yZWFkX2NvbnRleHQsIHJlZ251 bSwgYnVmKTsNCisJICBzdGF0dXMgPSBjb29rZWRfcmVhZCAoY29va2VkX3Jl YWRfY29udGV4dCwgcmVnbnVtLCBidWYuZGF0YSAoKSk7DQogCSAgaWYgKHN0 YXR1cyA9PSBSRUdfVkFMSUQpDQotCSAgICByZWdjYWNoZV9jb29rZWRfd3Jp dGUgKGRzdCwgcmVnbnVtLCBidWYpOw0KKwkgICAgcmVnY2FjaGVfY29va2Vk X3dyaXRlIChkc3QsIHJlZ251bSwgYnVmLmRhdGEgKCkpOw0KIAl9DQogICAg IH0NCiB9DQpAQCAtMTI3OSw3ICsxMjkzLDcgQEAgcmVnY2FjaGVfZHVtcCAo c3RydWN0IHJlZ2NhY2hlICpyZWdjYWNoZSwgc3RydWN0IHVpX2ZpbGUgKmZp bGUsDQogICBpbnQgZm9vdG5vdGVfcmVnaXN0ZXJfb2Zmc2V0ID0gMDsNCiAg IGludCBmb290bm90ZV9yZWdpc3Rlcl90eXBlX25hbWVfbnVsbCA9IDA7DQog ICBsb25nIHJlZ2lzdGVyX29mZnNldCA9IDA7DQotICBnZGJfYnl0ZSBidWZb TUFYX1JFR0lTVEVSX1NJWkVdOw0KKyAgc3RkOjp2ZWN0b3I8Z2RiX2J5dGU+ IGJ1ZiAobWF4X3JlZ2lzdGVyX3NpemUgKGdkYmFyY2gpKTsNCg0KICNpZiAw DQogICBmcHJpbnRmX3VuZmlsdGVyZWQgKGZpbGUsICJucl9yYXdfcmVnaXN0 ZXJzICVkXG4iLA0KQEAgLTE0MDYsOCArMTQyMCw4IEBAIHJlZ2NhY2hlX2R1 bXAgKHN0cnVjdCByZWdjYWNoZSAqcmVnY2FjaGUsIHN0cnVjdCB1aV9maWxl ICpmaWxlLA0KIAkgICAgZnByaW50Zl91bmZpbHRlcmVkIChmaWxlLCAiPHVu YXZhaWxhYmxlPiIpOw0KIAkgIGVsc2UNCiAJICAgIHsNCi0JICAgICAgcmVn Y2FjaGVfcmF3X3JlYWQgKHJlZ2NhY2hlLCByZWdudW0sIGJ1Zik7DQotCSAg ICAgIHByaW50X2hleF9jaGFycyAoZmlsZSwgYnVmLA0KKwkgICAgICByZWdj YWNoZV9yYXdfcmVhZCAocmVnY2FjaGUsIHJlZ251bSwgYnVmLmRhdGEgKCkp Ow0KKwkgICAgICBwcmludF9oZXhfY2hhcnMgKGZpbGUsIGJ1Zi5kYXRhICgp LA0KIAkJCSAgICAgICByZWdjYWNoZS0+ZGVzY3ItPnNpemVvZl9yZWdpc3Rl cltyZWdudW1dLA0KIAkJCSAgICAgICBnZGJhcmNoX2J5dGVfb3JkZXIgKGdk YmFyY2gpKTsNCiAJICAgIH0NCkBAIC0xNDIyLDEzICsxNDM2LDEzIEBAIHJl Z2NhY2hlX2R1bXAgKHN0cnVjdCByZWdjYWNoZSAqcmVnY2FjaGUsIHN0cnVj dCB1aV9maWxlICpmaWxlLA0KIAkgICAgew0KIAkgICAgICBlbnVtIHJlZ2lz dGVyX3N0YXR1cyBzdGF0dXM7DQoNCi0JICAgICAgc3RhdHVzID0gcmVnY2Fj aGVfY29va2VkX3JlYWQgKHJlZ2NhY2hlLCByZWdudW0sIGJ1Zik7DQorCSAg ICAgIHN0YXR1cyA9IHJlZ2NhY2hlX2Nvb2tlZF9yZWFkIChyZWdjYWNoZSwg cmVnbnVtLCBidWYuZGF0YSAoKSk7DQogCSAgICAgIGlmIChzdGF0dXMgPT0g UkVHX1VOS05PV04pDQogCQlmcHJpbnRmX3VuZmlsdGVyZWQgKGZpbGUsICI8 aW52YWxpZD4iKTsNCiAJICAgICAgZWxzZSBpZiAoc3RhdHVzID09IFJFR19V TkFWQUlMQUJMRSkNCiAJCWZwcmludGZfdW5maWx0ZXJlZCAoZmlsZSwgIjx1 bmF2YWlsYWJsZT4iKTsNCiAJICAgICAgZWxzZQ0KLQkJcHJpbnRfaGV4X2No YXJzIChmaWxlLCBidWYsDQorCQlwcmludF9oZXhfY2hhcnMgKGZpbGUsIGJ1 Zi5kYXRhICgpLA0KIAkJCQkgcmVnY2FjaGUtPmRlc2NyLT5zaXplb2ZfcmVn aXN0ZXJbcmVnbnVtXSwNCiAJCQkJIGdkYmFyY2hfYnl0ZV9vcmRlciAoZ2Ri YXJjaCkpOw0KIAkgICAgfQ0KZGlmZiAtLWdpdCBhL2dkYi9yZW1vdGUtc2lt LmMgYi9nZGIvcmVtb3RlLXNpbS5jDQppbmRleCBiMGM2OGM2MTdlMzY1YzBl YTE4YWMyZWNhNTI1NTk4YjY4OGZmYmI1Li5jNWIxYTQ4MGM1MmUxMmFmMDFk YzJkNmM5NTlmZDQyOTczNWJjODA1IDEwMDY0NA0KLS0tIGEvZ2RiL3JlbW90 ZS1zaW0uYw0KKysrIGIvZ2RiL3JlbW90ZS1zaW0uYw0KQEAgLTQzOSw2ICs0 MzksOSBAQCBnZGJzaW1fZmV0Y2hfcmVnaXN0ZXIgKHN0cnVjdCB0YXJnZXRf b3BzICpvcHMsDQogICAgICAgcmV0dXJuOw0KICAgICB9DQoNCisgIGludCBy ZWdzaXplID0gcmVnaXN0ZXJfc2l6ZSAoZ2RiYXJjaCwgcmVnbm8pOw0KKyAg c3RkOjp2ZWN0b3I8Z2RiX2J5dGU+IGJ1ZiAocmVnc2l6ZSk7DQorDQogICBz d2l0Y2ggKGdkYmFyY2hfcmVnaXN0ZXJfc2ltX3JlZ25vIChnZGJhcmNoLCBy ZWdubykpDQogICAgIHsNCiAgICAgY2FzZSBMRUdBQ1lfU0lNX1JFR05PX0lH Tk9SRToNCkBAIC00NDcsMTAgKzQ1MCw5IEBAIGdkYnNpbV9mZXRjaF9yZWdp c3RlciAoc3RydWN0IHRhcmdldF9vcHMgKm9wcywNCiAgICAgICB7DQogCS8q IEZvciBtb21lbnQgdHJlYXQgYSBgZG9lcyBub3QgZXhpc3QnIHJlZ2lzdGVy IHRoZSBzYW1lIHdheQ0KIAkgICBhcyBhbiBgYHVuYXZhaWxhYmxlJycgcmVn aXN0ZXIuICAqLw0KLQlnZGJfYnl0ZSBidWZbTUFYX1JFR0lTVEVSX1NJWkVd Ow0KIAlpbnQgbnJfYnl0ZXM7DQoNCi0JbWVtc2V0IChidWYsIDAsIE1BWF9S RUdJU1RFUl9TSVpFKTsNCisJbWVtc2V0IChidWYsIDAsIHJlZ3NpemUpOw0K IAlyZWdjYWNoZV9yYXdfc3VwcGx5IChyZWdjYWNoZSwgcmVnbm8sIGJ1Zik7 DQogCWJyZWFrOw0KICAgICAgIH0NCkBAIC00NTgsMTggKzQ2MCwxNyBAQCBn ZGJzaW1fZmV0Y2hfcmVnaXN0ZXIgKHN0cnVjdCB0YXJnZXRfb3BzICpvcHMs DQogICAgIGRlZmF1bHQ6DQogICAgICAgew0KIAlzdGF0aWMgaW50IHdhcm5f dXNlciA9IDE7DQotCWdkYl9ieXRlIGJ1ZltNQVhfUkVHSVNURVJfU0laRV07 DQogCWludCBucl9ieXRlczsNCg0KIAlnZGJfYXNzZXJ0IChyZWdubyA+PSAw ICYmIHJlZ25vIDwgZ2RiYXJjaF9udW1fcmVncyAoZ2RiYXJjaCkpOw0KLQlt ZW1zZXQgKGJ1ZiwgMCwgTUFYX1JFR0lTVEVSX1NJWkUpOw0KKwltZW1zZXQg KGJ1ZiwgMCwgcmVnc2l6ZSk7DQogCW5yX2J5dGVzID0gc2ltX2ZldGNoX3Jl Z2lzdGVyIChzaW1fZGF0YS0+Z2Ric2ltX2Rlc2MsDQogCQkJCSAgICAgICBn ZGJhcmNoX3JlZ2lzdGVyX3NpbV9yZWdubw0KIAkJCQkJIChnZGJhcmNoLCBy ZWdubyksDQogCQkJCSAgICAgICBidWYsDQotCQkJCSAgICAgICByZWdpc3Rl cl9zaXplIChnZGJhcmNoLCByZWdubykpOw0KKwkJCQkgICAgICAgcmVnc2l6 ZSk7DQogCWlmIChucl9ieXRlcyA+IDANCi0JICAgICYmIG5yX2J5dGVzICE9 IHJlZ2lzdGVyX3NpemUgKGdkYmFyY2gsIHJlZ25vKSAmJiB3YXJuX3VzZXIp DQorCSAgICAmJiBucl9ieXRlcyAhPSByZWdzaXplICYmIHdhcm5fdXNlcikN CiAJICB7DQogCSAgICBmcHJpbnRmX3VuZmlsdGVyZWQgKGdkYl9zdGRlcnIs DQogCQkJCSJTaXplIG9mIHJlZ2lzdGVyICVzICglZC8lZCkgIg0KQEAgLTQ3 OCw3ICs0NzksNyBAQCBnZGJzaW1fZmV0Y2hfcmVnaXN0ZXIgKHN0cnVjdCB0 YXJnZXRfb3BzICpvcHMsDQogCQkJCXJlZ25vLA0KIAkJCQlnZGJhcmNoX3Jl Z2lzdGVyX3NpbV9yZWdubw0KIAkJCQkgIChnZGJhcmNoLCByZWdubyksDQot CQkJCW5yX2J5dGVzLCByZWdpc3Rlcl9zaXplIChnZGJhcmNoLCByZWdubykp Ow0KKwkJCQlucl9ieXRlcywgcmVnc2l6ZSk7DQogCSAgICB3YXJuX3VzZXIg PSAwOw0KIAkgIH0NCiAJLyogRklYTUU6IGNhZ25leS8yMDAyLTA1LTI3OiBT aG91bGQgY2hlY2sgYG5yX2J5dGVzID09IDAnDQpAQCAtNDkyLDcgKzQ5Myw3 IEBAIGdkYnNpbV9mZXRjaF9yZWdpc3RlciAoc3RydWN0IHRhcmdldF9vcHMg Km9wcywNCiAJICAgIGZwcmludGZfdW5maWx0ZXJlZCAoZ2RiX3N0ZGxvZywN CiAJCQkJImdkYnNpbV9mZXRjaF9yZWdpc3RlcjogJWQiLCByZWdubyk7DQog CSAgICAvKiBGSVhNRTogV2UgY291bGQgcHJpbnQgc29tZXRoaW5nIG1vcmUg aW50ZWxsaWdpYmxlLiAgKi8NCi0JICAgIGR1bXBfbWVtIChidWYsIHJlZ2lz dGVyX3NpemUgKGdkYmFyY2gsIHJlZ25vKSk7DQorCSAgICBkdW1wX21lbSAo YnVmLCByZWdzaXplKTsNCiAJICB9DQogCWJyZWFrOw0KICAgICAgIH0NCkBA IC01MTYsMTUgKzUxNywxNiBAQCBnZGJzaW1fc3RvcmVfcmVnaXN0ZXIgKHN0 cnVjdCB0YXJnZXRfb3BzICpvcHMsDQogICAgIH0NCiAgIGVsc2UgaWYgKGdk YmFyY2hfcmVnaXN0ZXJfc2ltX3JlZ25vIChnZGJhcmNoLCByZWdubykgPj0g MCkNCiAgICAgew0KLSAgICAgIGdkYl9ieXRlIHRtcFtNQVhfUkVHSVNURVJf U0laRV07DQorICAgICAgaW50IHJlZ3NpemUgPSByZWdpc3Rlcl9zaXplIChn ZGJhcmNoLCByZWdubyk7DQorICAgICAgc3RkOjp2ZWN0b3I8Z2RiX2J5dGU+ IHRtcCAocmVnc2l6ZSk7DQogICAgICAgaW50IG5yX2J5dGVzOw0KDQogICAg ICAgcmVnY2FjaGVfY29va2VkX3JlYWQgKHJlZ2NhY2hlLCByZWdubywgdG1w KTsNCiAgICAgICBucl9ieXRlcyA9IHNpbV9zdG9yZV9yZWdpc3RlciAoc2lt X2RhdGEtPmdkYnNpbV9kZXNjLA0KIAkJCQkgICAgIGdkYmFyY2hfcmVnaXN0 ZXJfc2ltX3JlZ25vDQogCQkJCSAgICAgICAoZ2RiYXJjaCwgcmVnbm8pLA0K LQkJCQkgICAgIHRtcCwgcmVnaXN0ZXJfc2l6ZSAoZ2RiYXJjaCwgcmVnbm8p KTsNCi0gICAgICBpZiAobnJfYnl0ZXMgPiAwICYmIG5yX2J5dGVzICE9IHJl Z2lzdGVyX3NpemUgKGdkYmFyY2gsIHJlZ25vKSkNCisJCQkJICAgICB0bXAs IHJlZ3NpemUpOw0KKyAgICAgIGlmIChucl9ieXRlcyA+IDAgJiYgbnJfYnl0 ZXMgIT0gcmVnc2l6ZSkNCiAJaW50ZXJuYWxfZXJyb3IgKF9fRklMRV9fLCBf X0xJTkVfXywNCiAJCQlfKCJSZWdpc3RlciBzaXplIGRpZmZlcmVudCB0byBl eHBlY3RlZCIpKTsNCiAgICAgICBpZiAobnJfYnl0ZXMgPCAwKQ0KQEAgLTUz OCw3ICs1NDAsNyBAQCBnZGJzaW1fc3RvcmVfcmVnaXN0ZXIgKHN0cnVjdCB0 YXJnZXRfb3BzICpvcHMsDQogCXsNCiAJICBmcHJpbnRmX3VuZmlsdGVyZWQg KGdkYl9zdGRsb2csICJnZGJzaW1fc3RvcmVfcmVnaXN0ZXI6ICVkIiwgcmVn bm8pOw0KIAkgIC8qIEZJWE1FOiBXZSBjb3VsZCBwcmludCBzb21ldGhpbmcg bW9yZSBpbnRlbGxpZ2libGUuICAqLw0KLQkgIGR1bXBfbWVtICh0bXAsIHJl Z2lzdGVyX3NpemUgKGdkYmFyY2gsIHJlZ25vKSk7DQorCSAgZHVtcF9tZW0g KHRtcCwgcmVnc2l6ZSk7DQogCX0NCiAgICAgfQ0KIH0NCmRpZmYgLS1naXQg YS9nZGIvcmVtb3RlLmMgYi9nZGIvcmVtb3RlLmMNCmluZGV4IGM0Y2VjOTEw YzQ0Y2Y5MWNjN2YzNmI3ZjJkODdjZGUzZjQ2ZGU0MWUuLjE1N2ExYjE3ODlk MmEyNDhjMTFkY2M0ZWZlYmQ4Y2U1NGRhODIwNDUgMTAwNjQ0DQotLS0gYS9n ZGIvcmVtb3RlLmMNCisrKyBiL2dkYi9yZW1vdGUuYw0KQEAgLTc3NTcsOSAr Nzc1NywxMCBAQCByZW1vdGVfZmV0Y2hfcmVnaXN0ZXJzIChzdHJ1Y3QgdGFy Z2V0X29wcyAqb3BzLA0KIHN0YXRpYyB2b2lkDQogcmVtb3RlX3ByZXBhcmVf dG9fc3RvcmUgKHN0cnVjdCB0YXJnZXRfb3BzICpzZWxmLCBzdHJ1Y3QgcmVn Y2FjaGUgKnJlZ2NhY2hlKQ0KIHsNCisgIHN0cnVjdCBnZGJhcmNoICpnZGJh cmNoID0gZ2V0X3JlZ2NhY2hlX2FyY2ggKHJlZ2NhY2hlKTsNCiAgIHN0cnVj dCByZW1vdGVfYXJjaF9zdGF0ZSAqcnNhID0gZ2V0X3JlbW90ZV9hcmNoX3N0 YXRlICgpOw0KICAgaW50IGk7DQotICBnZGJfYnl0ZSBidWZbTUFYX1JFR0lT VEVSX1NJWkVdOw0KKyAgc3RkOjp2ZWN0b3I8Z2RiX2J5dGU+IGJ1ZiAobWF4 X3JlZ2lzdGVyX3NpemUgKGdkYmFyY2gpKTsNCg0KICAgLyogTWFrZSBzdXJl IHRoZSBlbnRpcmUgcmVnaXN0ZXJzIGFycmF5IGlzIHZhbGlkLiAgKi8NCiAg IHN3aXRjaCAocGFja2V0X3N1cHBvcnQgKFBBQ0tFVF9QKSkNCkBAIC03NzY5 LDcgKzc3NzAsNyBAQCByZW1vdGVfcHJlcGFyZV90b19zdG9yZSAoc3RydWN0 IHRhcmdldF9vcHMgKnNlbGYsIHN0cnVjdCByZWdjYWNoZSAqcmVnY2FjaGUp DQogICAgICAgLyogTWFrZSBzdXJlIGFsbCB0aGUgbmVjZXNzYXJ5IHJlZ2lz dGVycyBhcmUgY2FjaGVkLiAgKi8NCiAgICAgICBmb3IgKGkgPSAwOyBpIDwg Z2RiYXJjaF9udW1fcmVncyAoZ2V0X3JlZ2NhY2hlX2FyY2ggKHJlZ2NhY2hl KSk7IGkrKykNCiAJaWYgKHJzYS0+cmVnc1tpXS5pbl9nX3BhY2tldCkNCi0J ICByZWdjYWNoZV9yYXdfcmVhZCAocmVnY2FjaGUsIHJzYS0+cmVnc1tpXS5y ZWdudW0sIGJ1Zik7DQorCSAgcmVnY2FjaGVfcmF3X3JlYWQgKHJlZ2NhY2hl LCByc2EtPnJlZ3NbaV0ucmVnbnVtLCBidWYuZGF0YSAoKSk7DQogICAgICAg YnJlYWs7DQogICAgIGNhc2UgUEFDS0VUX0VOQUJMRToNCiAgICAgICBicmVh azsNCmRpZmYgLS1naXQgYS9nZGIvc29sLXRocmVhZC5jIGIvZ2RiL3NvbC10 aHJlYWQuYw0KaW5kZXggYTA5YTNhYjlhOGJjNTZmMzY3ZTNiYTE1MzdmNTY3 NGYwYTdmNDkxZi4uNWU3NDQzYTk3NjI0ZmJlYWU1YjY1Y2I1MzQ0MDFlNjM3 MTc1NTQyMyAxMDA2NDQNCi0tLSBhL2dkYi9zb2wtdGhyZWFkLmMNCisrKyBi L2dkYi9zb2wtdGhyZWFkLmMNCkBAIC01MTQsNiArNTE0LDcgQEAgc29sX3Ro cmVhZF9zdG9yZV9yZWdpc3RlcnMgKHN0cnVjdCB0YXJnZXRfb3BzICpvcHMs DQogICB0ZF9lcnJfZSB2YWw7DQogICBwcmdyZWdzZXRfdCBncmVnc2V0Ow0K ICAgcHJmcHJlZ3NldF90IGZwcmVnc2V0Ow0KKyAgc3RydWN0IGdkYmFyY2gg KmdkYmFyY2ggPSBnZXRfcmVnY2FjaGVfYXJjaCAocmVnY2FjaGUpOw0KDQog ICBpZiAoIXB0aWRfdGlkX3AgKGluZmVyaW9yX3B0aWQpKQ0KICAgICB7DQpA QCAtNTM1LDEwICs1MzYsMTAgQEAgc29sX3RocmVhZF9zdG9yZV9yZWdpc3Rl cnMgKHN0cnVjdCB0YXJnZXRfb3BzICpvcHMsDQogICBpZiAocmVnbnVtICE9 IC0xKQ0KICAgICB7DQogICAgICAgLyogTm90IHdyaXRpbmcgYWxsIHRoZSBy ZWdpc3RlcnMuICAqLw0KLSAgICAgIGNoYXIgb2xkX3ZhbHVlW01BWF9SRUdJ U1RFUl9TSVpFXTsNCisgICAgICBzdGQ6OnZlY3RvcjxnZGJfYnl0ZT4gb2xk X3ZhbHVlIChyZWdpc3Rlcl9zaXplIChnZGJhcmNoLCByZWdudW0pKTsNCg0K ICAgICAgIC8qIFNhdmUgbmV3IHJlZ2lzdGVyIHZhbHVlLiAgKi8NCi0gICAg ICByZWdjYWNoZV9yYXdfY29sbGVjdCAocmVnY2FjaGUsIHJlZ251bSwgb2xk X3ZhbHVlKTsNCisgICAgICByZWdjYWNoZV9yYXdfY29sbGVjdCAocmVnY2Fj aGUsIHJlZ251bSwgb2xkX3ZhbHVlLmRhdGEgKCkpOw0KDQogICAgICAgdmFs ID0gcF90ZF90aHJfZ2V0Z3JlZ3MgKCZ0aGFuZGxlLCBncmVnc2V0KTsNCiAg ICAgICBpZiAodmFsICE9IFREX09LKQ0KQEAgLTU1MCw3ICs1NTEsNyBAQCBz b2xfdGhyZWFkX3N0b3JlX3JlZ2lzdGVycyAoc3RydWN0IHRhcmdldF9vcHMg Km9wcywNCiAJICAgICAgIHRkX2Vycl9zdHJpbmcgKHZhbCkpOw0KDQogICAg ICAgLyogUmVzdG9yZSBuZXcgcmVnaXN0ZXIgdmFsdWUuICAqLw0KLSAgICAg IHJlZ2NhY2hlX3Jhd19zdXBwbHkgKHJlZ2NhY2hlLCByZWdudW0sIG9sZF92 YWx1ZSk7DQorICAgICAgcmVnY2FjaGVfcmF3X3N1cHBseSAocmVnY2FjaGUs IHJlZ251bSwgb2xkX3ZhbHVlLmRhdGEgKCkpOw0KICAgICB9DQoNCiAgIGZp bGxfZ3JlZ3NldCAocmVnY2FjaGUsIChnZGJfZ3JlZ3NldF90ICopICZncmVn c2V0LCByZWdudW0pOw0KZGlmZiAtLWdpdCBhL2dkYi9zdGFjay5jIGIvZ2Ri L3N0YWNrLmMNCmluZGV4IGUwMGUyOTcyY2YyMGJjNjM5MTdhZjE5Zjg2YmY1 N2YxYzZiMGI1YjAuLjliODQ0MzVmZTczYjlhZjliMTNmMDFjODE5Zjc3Zjgz YmJiNzExN2IgMTAwNjQ0DQotLS0gYS9nZGIvc3RhY2suYw0KKysrIGIvZ2Ri L3N0YWNrLmMNCkBAIC0xNjY3LDE2ICsxNjY3LDE2IEBAIGZyYW1lX2luZm8g KGNoYXIgKmFkZHJfZXhwLCBpbnQgZnJvbV90dHkpDQogCSAgew0KIAkgICAg ZW51bSBiZmRfZW5kaWFuIGJ5dGVfb3JkZXIgPSBnZGJhcmNoX2J5dGVfb3Jk ZXIgKGdkYmFyY2gpOw0KIAkgICAgaW50IHNwX3NpemUgPSByZWdpc3Rlcl9z aXplIChnZGJhcmNoLCBnZGJhcmNoX3NwX3JlZ251bSAoZ2RiYXJjaCkpOw0K LQkgICAgZ2RiX2J5dGUgdmFsdWVbTUFYX1JFR0lTVEVSX1NJWkVdOw0KKwkg ICAgc3RkOjp2ZWN0b3I8Z2RiX2J5dGU+IHZhbHVlIChzcF9zaXplKTsNCiAJ ICAgIENPUkVfQUREUiBzcDsNCg0KIAkgICAgZnJhbWVfcmVnaXN0ZXJfdW53 aW5kIChmaSwgZ2RiYXJjaF9zcF9yZWdudW0gKGdkYmFyY2gpLA0KIAkJCQkg ICAmb3B0aW1pemVkLCAmdW5hdmFpbGFibGUsICZsdmFsLCAmYWRkciwNCi0J CQkJICAgJnJlYWxudW0sIHZhbHVlKTsNCisJCQkJICAgJnJlYWxudW0sIHZh bHVlLmRhdGEgKCkpOw0KIAkgICAgLyogTk9URTogY2FnbmV5LzIwMDMtMDUt MjI6IFRoaXMgaXMgYXNzdW1pbmcgdGhhdCB0aGUNCiAgICAgICAgICAgICAg ICBzdGFjayBwb2ludGVyIHdhcyBwYWNrZWQgYXMgYW4gdW5zaWduZWQgaW50 ZWdlci4gIFRoYXQNCiAgICAgICAgICAgICAgICBtYXkgb3IgbWF5IG5vdCBi ZSB2YWxpZC4gICovDQotCSAgICBzcCA9IGV4dHJhY3RfdW5zaWduZWRfaW50 ZWdlciAodmFsdWUsIHNwX3NpemUsIGJ5dGVfb3JkZXIpOw0KKwkgICAgc3Ag PSBleHRyYWN0X3Vuc2lnbmVkX2ludGVnZXIgKHZhbHVlLmRhdGEgKCksIHNw X3NpemUsIGJ5dGVfb3JkZXIpOw0KIAkgICAgcHJpbnRmX2ZpbHRlcmVkICgi IFByZXZpb3VzIGZyYW1lJ3Mgc3AgaXMgIik7DQogCSAgICBmcHV0c19maWx0 ZXJlZCAocGFkZHJlc3MgKGdkYmFyY2gsIHNwKSwgZ2RiX3N0ZG91dCk7DQog CSAgICBwcmludGZfZmlsdGVyZWQgKCJcbiIpOw0KZGlmZiAtLWdpdCBhL2dk Yi90YXJnZXQuYyBiL2dkYi90YXJnZXQuYw0KaW5kZXggM2M0MDlmMGY2MTkx NDEyMDVkZmRjYmJmOGU0NmEyNzc1ODVlZDY4My4uNTJiYjU5MjU1ZmNiZGM3 NGE2NzRlMDhmNmUxNjhiZTViNjI5NDgxOSAxMDA2NDQNCi0tLSBhL2dkYi90 YXJnZXQuYw0KKysrIGIvZ2RiL3RhcmdldC5jDQpAQCAtMzU2NSwxNyArMzU2 NSwxOCBAQCBkZWJ1Z19wcmludF9yZWdpc3RlciAoY29uc3QgY2hhciAqIGZ1 bmMsDQogICAgIHsNCiAgICAgICBlbnVtIGJmZF9lbmRpYW4gYnl0ZV9vcmRl ciA9IGdkYmFyY2hfYnl0ZV9vcmRlciAoZ2RiYXJjaCk7DQogICAgICAgaW50 IGksIHNpemUgPSByZWdpc3Rlcl9zaXplIChnZGJhcmNoLCByZWdubyk7DQot ICAgICAgZ2RiX2J5dGUgYnVmW01BWF9SRUdJU1RFUl9TSVpFXTsNCisgICAg ICBzdGQ6OnZlY3RvcjxnZGJfYnl0ZT4gYnVmIChzaXplKTsNCg0KLSAgICAg IHJlZ2NhY2hlX3Jhd19jb2xsZWN0IChyZWdjYWNoZSwgcmVnbm8sIGJ1Zik7 DQorICAgICAgcmVnY2FjaGVfcmF3X2NvbGxlY3QgKHJlZ2NhY2hlLCByZWdu bywgYnVmLmRhdGEgKCkpOw0KICAgICAgIGZwcmludGZfdW5maWx0ZXJlZCAo Z2RiX3N0ZGxvZywgIiA9ICIpOw0KICAgICAgIGZvciAoaSA9IDA7IGkgPCBz aXplOyBpKyspDQogCXsNCi0JICBmcHJpbnRmX3VuZmlsdGVyZWQgKGdkYl9z dGRsb2csICIlMDJ4IiwgYnVmW2ldKTsNCisJICBmcHJpbnRmX3VuZmlsdGVy ZWQgKGdkYl9zdGRsb2csICIlMDJ4IiwgYnVmLmRhdGEgKClbaV0pOw0KIAl9 DQogICAgICAgaWYgKHNpemUgPD0gc2l6ZW9mIChMT05HRVNUKSkNCiAJew0K LQkgIFVMT05HRVNUIHZhbCA9IGV4dHJhY3RfdW5zaWduZWRfaW50ZWdlciAo YnVmLCBzaXplLCBieXRlX29yZGVyKTsNCisJICBVTE9OR0VTVCB2YWwgPSBl eHRyYWN0X3Vuc2lnbmVkX2ludGVnZXIgKGJ1Zi5kYXRhICgpLCBzaXplLA0K KwkJCQkJCSAgIGJ5dGVfb3JkZXIpOw0KDQogCSAgZnByaW50Zl91bmZpbHRl cmVkIChnZGJfc3RkbG9nLCAiICVzICVzIiwNCiAJCQkgICAgICBjb3JlX2Fk ZHJfdG9fc3RyaW5nX256ICh2YWwpLCBwbG9uZ2VzdCAodmFsKSk7DQoNCg0K