Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754415AbZF2LY4 (ORCPT ); Mon, 29 Jun 2009 07:24:56 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751463AbZF2LYs (ORCPT ); Mon, 29 Jun 2009 07:24:48 -0400 Received: from 219-87-157-169.static.tfn.net.tw ([219.87.157.169]:38160 "EHLO mswedge2.sunplus.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751226AbZF2LYq (ORCPT ); Mon, 29 Jun 2009 07:24:46 -0400 In-Reply-To: To: Arnd Bergmann Cc: linux-kernel@vger.kernel.org MIME-Version: 1.0 Subject: Re: [PATCH 0/6] score cleanups X-Mailer: Lotus Notes Release 6.5 September 26, 2003 Message-ID: From: liqin.chen@sunplusct.com Date: Mon, 29 Jun 2009 19:18:45 +0800 X-MIMETrack: Serialize by Router on ctmail01/SunplusCT(Release 7.0.3FP1|February 24, 2008) at 2009/06/29 ?? 07:18:46 Content-Type: multipart/mixed; boundary="=_mixed 003E9940482575E4_=" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 50709 Lines: 668 --=_mixed 003E9940482575E4_= Content-Type: text/plain; charset="GB2312" Content-Transfer-Encoding: base64 QXJuZCBCZXJnbWFubiA8YXJuZEBhcm5kYi5kZT4g0LTT2iAyMDA5LTA2LTI3IDIyOjA4OjEyOg0K DQo+IEhpIExpcWluLA0KPiANCj4gSSd2ZSBnb25lIG92ZXIgeW91ciBjb2RlIGEgYml0IHdpdGgg c3BhcnNlIGFuZCBzb21lIGNsdWVzLA0KPiBjbGVhbmluZyB1cCBzb21lIGFyZWFzIHRoYXQgc3R1 Y2sgb3V0Lg0KPiANCj4gUGxlYXNlIGNoZWNrIHRoYXQgdGhlc2UgbWFrZSBzZW5zZS4NCg0KSGkg QXJuZCwNCg0KQ29kZSB1cGRhdGluZyBoYWQgZmluaXNoZWQgYW5kIHZlcmlmaWVkLg0KDQpCZXN0 IFJlZ2FyZHMNCkxpcWluDQotLS0NCg0KRnJvbSAwNWU5Mzc3MjU3ZmNiODBkZTU5NzQwOTk4OWVm MmNiNzE1ZTM4MjdjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQ0KRnJvbTogQ2hlbiBMaXFpbiA8 bGlxaW4uY2hlbkBzdW5wbHVzY3QuY29tPg0KRGF0ZTogTW9uLCAyOSBKdW4gMjAwOSAxOTowMTo0 NCArMDgwMA0KU3ViamVjdDogW1BBVENIXSBzY29yZTogY29kZSBjbGVhbnVwcw0KDQogICAgICAg IHNjb3JlOiBhZGQgbWlzc2luZyAjaW5jbHVkZXMNCiAgICAgICAgc2NvcmU6IGFkZCBhZGRyZXNz IHNwYWNlIGFubm90YXRpb25zDQogICAgICAgIHNjb3JlOiBmaXggZnVuY3Rpb24gcHJvdG90eXBl cw0KICAgICAgICBzY29yZTogY2xlYW51cHM6IGRlYWQgY29kZSwgMCBhcyBwb2ludGVyLCBzaGFk b3dlZCB2YXJpYWJsZXMNCiAgICAgICAgc2NvcmU6IG1ha2UgaXJxLmggZGVmaW5pdGlvbnMgbG9j YWwNCiANCiAgICAgICAgbW9kaWZpZWQ6ICAgYXJjaC9zY29yZS9pbmNsdWRlL2FzbS9pcnEuaA0K ICAgICAgICBtb2RpZmllZDogICBhcmNoL3Njb3JlL2luY2x1ZGUvYXNtL3VhY2Nlc3MuaA0KICAg ICAgICBuZXcgZmlsZTogICBhcmNoL3Njb3JlL2luY2x1ZGUvYXNtL3Vjb250ZXh0LmgNCiAgICAg ICAgbW9kaWZpZWQ6ICAgYXJjaC9zY29yZS9rZXJuZWwvaXJxLmMNCiAgICAgICAgbW9kaWZpZWQ6 ICAgYXJjaC9zY29yZS9rZXJuZWwvbW9kdWxlLmMNCiAgICAgICAgbW9kaWZpZWQ6ICAgYXJjaC9z Y29yZS9rZXJuZWwvcHJvY2Vzcy5jDQogICAgICAgIG1vZGlmaWVkOiAgIGFyY2gvc2NvcmUva2Vy bmVsL3B0cmFjZS5jDQogICAgICAgIG1vZGlmaWVkOiAgIGFyY2gvc2NvcmUva2VybmVsL3NpZ25h bC5jDQogICAgICAgIG1vZGlmaWVkOiAgIGFyY2gvc2NvcmUva2VybmVsL3N5c19zY29yZS5jDQog ICAgICAgIG1vZGlmaWVkOiAgIGFyY2gvc2NvcmUva2VybmVsL3RpbWUuYw0KICAgICAgICBtb2Rp ZmllZDogICBhcmNoL3Njb3JlL21tL2luaXQuYw0KDQpTaWduZWQtb2ZmLWJ5OiBDaGVuIExpcWlu IDxsaXFpbi5jaGVuQHN1bnBsdXNjdC5jb20+DQpTaWduZWQtb2ZmLWJ5OiBBcm5kIEJlcmdtYW5u IDxhcm5kQGFybmRiLmRlPg0KLS0tDQogYXJjaC9zY29yZS9pbmNsdWRlL2FzbS9pcnEuaCAgICAg IHwgICAxOSArKysrKysrKystLS0tLS0tLQ0KIGFyY2gvc2NvcmUvaW5jbHVkZS9hc20vdWFjY2Vz cy5oICB8ICAgIDggKysrLS0tDQogYXJjaC9zY29yZS9pbmNsdWRlL2FzbS91Y29udGV4dC5oIHwg ICAgNiArKysrKw0KIGFyY2gvc2NvcmUva2VybmVsL2lycS5jICAgICAgICAgICB8ICAgMjAgKysr KysrKysrLS0tLS0tLS0tDQogYXJjaC9zY29yZS9rZXJuZWwvbW9kdWxlLmMgICAgICAgIHwgICAx MyArKysrKystLS0tLQ0KIGFyY2gvc2NvcmUva2VybmVsL3Byb2Nlc3MuYyAgICAgICB8ICAgIDMg KysNCiBhcmNoL3Njb3JlL2tlcm5lbC9wdHJhY2UuYyAgICAgICAgfCAgICA3ICsrKy0tDQogYXJj aC9zY29yZS9rZXJuZWwvc2lnbmFsLmMgICAgICAgIHwgICAzOSANCisrKysrKysrKysrKysrKysr KysrLS0tLS0tLS0tLS0tLS0tLQ0KIGFyY2gvc2NvcmUva2VybmVsL3N5c19zY29yZS5jICAgICB8 ICAgMjYgKysrKysrKystLS0tLS0tLS0tLS0tLS0tDQogYXJjaC9zY29yZS9rZXJuZWwvdGltZS5j ICAgICAgICAgIHwgICAgMiArLQ0KIGFyY2gvc2NvcmUvbW0vaW5pdC5jICAgICAgICAgICAgICB8 ICAgMzUgKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiAxMSBmaWxlcyBjaGFuZ2Vk LCA4NyBpbnNlcnRpb25zKCspLCA5MSBkZWxldGlvbnMoLSkNCiBjcmVhdGUgbW9kZSAxMDA2NDQg YXJjaC9zY29yZS9pbmNsdWRlL2FzbS91Y29udGV4dC5oDQoNCmRpZmYgLS1naXQgYS9hcmNoL3Nj b3JlL2luY2x1ZGUvYXNtL2lycS5oIGIvYXJjaC9zY29yZS9pbmNsdWRlL2FzbS9pcnEuaA0KaW5k ZXggNDAxZjY3MC4uODA2YWFmMiAxMDA2NDQNCi0tLSBhL2FyY2gvc2NvcmUvaW5jbHVkZS9hc20v aXJxLmgNCisrKyBiL2FyY2gvc2NvcmUvaW5jbHVkZS9hc20vaXJxLmgNCkBAIC0xOCwxNSArMTgs MTYgQEANCiANCiAjZGVmaW5lIGlycV9jYW5vbmljYWxpemUoaXJxKSAgKGlycSkNCiANCi0jZGVm aW5lIFBfSU5UX1BOREwgICAgICAgICAgICAgMHg5NUY1MDAwMA0KLSNkZWZpbmUgUF9JTlRfUE5E SCAgICAgICAgICAgICAweDk1RjUwMDA0DQotI2RlZmluZSBQX0lOVF9QUklPUklUWV9NICAgICAg IDB4OTVGNTAwMDgNCi0jZGVmaW5lIFBfSU5UX1BSSU9SSVRZX1NHMCAgICAgMHg5NUY1MDAxMA0K LSNkZWZpbmUgUF9JTlRfUFJJT1JJVFlfU0cxICAgICAweDk1RjUwMDE0DQotI2RlZmluZSBQX0lO VF9QUklPUklUWV9TRzIgICAgIDB4OTVGNTAwMTgNCi0jZGVmaW5lIFBfSU5UX1BSSU9SSVRZX1NH MyAgICAgMHg5NUY1MDAxQw0KLSNkZWZpbmUgUF9JTlRfTUFTS0wgICAgICAgICAgICAweDk1RjUw MDIwDQotI2RlZmluZSBQX0lOVF9NQVNLSCAgICAgICAgICAgIDB4OTVGNTAwMjQNCisjZGVmaW5l IElOVENfQkFTRSAgICAgICAgICAgICAgKCh1MzIgX19pb21lbSBfX2ZvcmNlICopMHg5NWY1MDAw MCkNCisjZGVmaW5lIElOVF9QTkRMICAgICAgICAgICAgICAgMCAgICAgICAgICAgICAgIC8qIDB4 OWY1YzAwMDAgKi8NCisjZGVmaW5lIElOVF9QTkRIICAgICAgICAgICAgICAgMSAgICAgICAgICAg ICAgIC8qIDB4OWY1YzAwMDQgKi8NCisjZGVmaW5lIElOVF9QUklPUklUWV9NICAgICAgICAgMiAg ICAgICAgICAgICAgIC8qIDB4OWY1YzAwMDggKi8NCisjZGVmaW5lIElOVF9QUklPUklUWV9TRzAg ICAgICAgNCAgICAgICAgICAgICAgIC8qIDB4OWY1YzAwMTAgKi8NCisjZGVmaW5lIElOVF9QUklP UklUWV9TRzEgICAgICAgNSAgICAgICAgICAgICAgIC8qIDB4OWY1YzAwMTQgKi8NCisjZGVmaW5l IElOVF9QUklPUklUWV9TRzIgICAgICAgNiAgICAgICAgICAgICAgIC8qIDB4OWY1YzAwMTggKi8N CisjZGVmaW5lIElOVF9QUklPUklUWV9TRzMgICAgICAgNyAgICAgICAgICAgICAgIC8qIDB4OWY1 YzAwMUMgKi8NCisjZGVmaW5lIElOVF9NQVNLTCAgICAgICAgICAgICAgOCAgICAgICAgICAgICAg IC8qIDB4OWY1YzAwMjAgKi8NCisjZGVmaW5lIElOVF9NQVNLSCAgICAgICAgICAgICAgOSAgICAg ICAgICAgICAgIC8qIDB4OWY1YzAwMjQgKi8NCiANCiAjZGVmaW5lIElSUV9USU1FUiAoNykgICAg ICAgICAgLyogVGltZXIgSVJRIG51bWJlciBvZiBTUENUNjYwMCAqLw0KIA0KZGlmZiAtLWdpdCBh L2FyY2gvc2NvcmUvaW5jbHVkZS9hc20vdWFjY2Vzcy5oIA0KYi9hcmNoL3Njb3JlL2luY2x1ZGUv YXNtL3VhY2Nlc3MuaA0KaW5kZXggNDNjZTI4YS4uOThmZGI2ZiAxMDA2NDQNCi0tLSBhL2FyY2gv c2NvcmUvaW5jbHVkZS9hc20vdWFjY2Vzcy5oDQorKysgYi9hcmNoL3Njb3JlL2luY2x1ZGUvYXNt L3VhY2Nlc3MuaA0KQEAgLTEzLDEyICsxMywxMiBAQCBleHRlcm4gaW50IGZpeHVwX2V4Y2VwdGlv bihzdHJ1Y3QgcHRfcmVncyAqcmVncyk7DQogI2lmbmRlZiBfX0FTU0VNQkxZX18NCiANCiAjZGVm aW5lIF9fcmFuZ2Vfb2soYWRkciwgc2l6ZSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBcDQotICAgICAgICgoKCh1bnNpZ25lZCBsb25nKShhZGRyKSA+PSAweDgwMDAwMDAwKSAgICAg ICAgICAgICAgICAgXA0KKyAgICAgICAoKCgodW5zaWduZWQgbG9uZyBfX2ZvcmNlKShhZGRyKSA+ PSAweDgwMDAwMDAwKSAgICAgICAgIFwNCiAgICAgICAgfHwgKCh1bnNpZ25lZCBsb25nKShzaXpl KSA+IDB4ODAwMDAwMDApICAgICAgICAgICAgICAgICBcDQotICAgICAgIHx8ICgoKHVuc2lnbmVk IGxvbmcpKGFkZHIpICsgKHVuc2lnbmVkIGxvbmcpKHNpemUpKSA+IA0KMHg4MDAwMDAwMCkpKQ0K KyAgICAgICB8fCAoKCh1bnNpZ25lZCBsb25nIF9fZm9yY2UpKGFkZHIpICsgKHVuc2lnbmVkIGxv bmcpKHNpemUpKSBcDQorICAgICAgICAgICAgICAgPiAweDgwMDAwMDAwKSkpDQogDQotI2RlZmlu ZSBfX2FjY2Vzc19vayhhZGRyLCBzaXplKSBcDQotICAgICAgIChfX3JhbmdlX29rKChhZGRyKSwg KHNpemUpKSA9PSAwKQ0KKyNkZWZpbmUgX19hY2Nlc3Nfb2soYWRkciwgc2l6ZSkgICAgICAgICAg ICAgICAgKF9fcmFuZ2Vfb2soKGFkZHIpLCANCihzaXplKSkgPT0gMCkNCiANCiAjaW5jbHVkZSA8 YXNtLWdlbmVyaWMvdWFjY2Vzcy5oPg0KIA0KZGlmZiAtLWdpdCBhL2FyY2gvc2NvcmUvaW5jbHVk ZS9hc20vdWNvbnRleHQuaCANCmIvYXJjaC9zY29yZS9pbmNsdWRlL2FzbS91Y29udGV4dC5oDQpu ZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMC4uOWM1ZmU1Yg0KLS0tIC9kZXYvbnVs bA0KKysrIGIvYXJjaC9zY29yZS9pbmNsdWRlL2FzbS91Y29udGV4dC5oDQpAQCAtMCwwICsxLDYg QEANCisjaWZuZGVmIF9BU01fU0NPUkVfVUNPTlRFWFRfSA0KKyNkZWZpbmUgX0FTTV9TQ09SRV9V Q09OVEVYVF9IDQorDQorI2luY2x1ZGUgPGFzbS1nZW5lcmljL3Vjb250ZXh0Lmg+DQorDQorI2Vu ZGlmIC8qIF9BU01fU0NPUkVfVUNPTlRFWFRfSCAqLw0KZGlmZiAtLWdpdCBhL2FyY2gvc2NvcmUv a2VybmVsL2lycS5jIGIvYXJjaC9zY29yZS9rZXJuZWwvaXJxLmMNCmluZGV4IDU1NDc0ZTguLjNh N2YxNTUgMTAwNjQ0DQotLS0gYS9hcmNoL3Njb3JlL2tlcm5lbC9pcnEuYw0KKysrIGIvYXJjaC9z Y29yZS9rZXJuZWwvaXJxLmMNCkBAIC00NCwxMSArNDQsMTEgQEAgc3RhdGljIHZvaWQgc2NvcmVf bWFzayh1bnNpZ25lZCBpbnQgaXJxX25yKQ0KICAgICAgICB1bnNpZ25lZCBpbnQgaXJxX3NvdXJj ZSA9IDYzIC0gaXJxX25yOw0KIA0KICAgICAgICBpZiAoaXJxX3NvdXJjZSA8IDMyKQ0KLSAgICAg ICAgICAgICAgIF9fcmF3X3dyaXRlbCgoX19yYXdfcmVhZGwoKHZvaWQgKilQX0lOVF9NQVNLTCkg fCBcDQotICAgICAgICAgICAgICAgICAgICAgICAoMSA8PCBpcnFfc291cmNlKSksICh2b2lkICop UF9JTlRfTUFTS0wpOw0KKyAgICAgICAgICAgICAgIF9fcmF3X3dyaXRlbCgoX19yYXdfcmVhZGwo SU5UQ19CQVNFICsgSU5UX01BU0tMKSB8IFwNCisgICAgICAgICAgICAgICAgICAgICAgICgxIDw8 IGlycV9zb3VyY2UpKSwgSU5UQ19CQVNFICsgSU5UX01BU0tMKTsNCiAgICAgICAgZWxzZQ0KLSAg ICAgICAgICAgICAgIF9fcmF3X3dyaXRlbCgoX19yYXdfcmVhZGwoKHZvaWQgKilQX0lOVF9NQVNL SCkgfCBcDQotICAgICAgICAgICAgICAgICAgICAgICAoMSA8PCAoaXJxX3NvdXJjZSAtIDMyKSkp LCAodm9pZCAqKVBfSU5UX01BU0tIKTsNCisgICAgICAgICAgICAgICBfX3Jhd193cml0ZWwoKF9f cmF3X3JlYWRsKElOVENfQkFTRSArIElOVF9NQVNLSCkgfCBcDQorICAgICAgICAgICAgICAgICAg ICAgICAoMSA8PCAoaXJxX3NvdXJjZSAtIDMyKSkpLCBJTlRDX0JBU0UgKyBJTlRfTUFTS0gpOw0K IH0NCiANCiBzdGF0aWMgdm9pZCBzY29yZV91bm1hc2sodW5zaWduZWQgaW50IGlycV9ucikNCkBA IC01NiwxMSArNTYsMTEgQEAgc3RhdGljIHZvaWQgc2NvcmVfdW5tYXNrKHVuc2lnbmVkIGludCBp cnFfbnIpDQogICAgICAgIHVuc2lnbmVkIGludCBpcnFfc291cmNlID0gNjMgLSBpcnFfbnI7DQog DQogICAgICAgIGlmIChpcnFfc291cmNlIDwgMzIpDQotICAgICAgICAgICAgICAgX19yYXdfd3Jp dGVsKChfX3Jhd19yZWFkbCgodm9pZCAqKVBfSU5UX01BU0tMKSAmIFwNCi0gICAgICAgICAgICAg ICAgICAgICAgIH4oMSA8PCBpcnFfc291cmNlKSksICh2b2lkICopUF9JTlRfTUFTS0wpOw0KKyAg ICAgICAgICAgICAgIF9fcmF3X3dyaXRlbCgoX19yYXdfcmVhZGwoSU5UQ19CQVNFICsgSU5UX01B U0tMKSAmIFwNCisgICAgICAgICAgICAgICAgICAgICAgIH4oMSA8PCBpcnFfc291cmNlKSksIElO VENfQkFTRSArIElOVF9NQVNLTCk7DQogICAgICAgIGVsc2UNCi0gICAgICAgICAgICAgICBfX3Jh d193cml0ZWwoKF9fcmF3X3JlYWRsKCh2b2lkICopUF9JTlRfTUFTS0gpICYgXA0KLSAgICAgICAg ICAgICAgICAgICAgICAgfigxIDw8IChpcnFfc291cmNlIC0gMzIpKSksICh2b2lkICopUF9JTlRf TUFTS0gpOw0KKyAgICAgICAgICAgICAgIF9fcmF3X3dyaXRlbCgoX19yYXdfcmVhZGwoSU5UQ19C QVNFICsgSU5UX01BU0tIKSAmIFwNCisgICAgICAgICAgICAgICAgICAgICAgIH4oMSA8PCAoaXJx X3NvdXJjZSAtIDMyKSkpLCBJTlRDX0JBU0UgKyANCklOVF9NQVNLSCk7DQogfQ0KIA0KIHN0cnVj dCBpcnFfY2hpcCBzY29yZV9pcnFfY2hpcCA9IHsNCkBAIC04OCw4ICs4OCw4IEBAIHZvaWQgX19p bml0IGluaXRfSVJRKHZvaWQpDQogICAgICAgICAgICAgICAgbWVtY3B5KCh2b2lkICopdGFyZ2V0 X2FkZHIsIFwNCiAgICAgICAgICAgICAgICAgICAgICAgIGludGVycnVwdF9leGNlcHRpb25fdmVj dG9yLCBJUlFfVkVDVE9SX1NJWkUpOw0KIA0KLSAgICAgICBfX3Jhd193cml0ZWwoMHhmZmZmZmZm ZiwgKHZvaWQgKilQX0lOVF9NQVNLTCk7DQotICAgICAgIF9fcmF3X3dyaXRlbCgweGZmZmZmZmZm LCAodm9pZCAqKVBfSU5UX01BU0tIKTsNCisgICAgICAgX19yYXdfd3JpdGVsKDB4ZmZmZmZmZmYs IElOVENfQkFTRSArIElOVF9NQVNLTCk7DQorICAgICAgIF9fcmF3X3dyaXRlbCgweGZmZmZmZmZm LCBJTlRDX0JBU0UgKyBJTlRfTUFTS0gpOw0KIA0KICAgICAgICBfX2FzbV9fIF9fdm9sYXRpbGVf XygNCiAgICAgICAgICAgICAgICAibXRjciAgICUwLCBjcjNcblx0Ig0KZGlmZiAtLWdpdCBhL2Fy Y2gvc2NvcmUva2VybmVsL21vZHVsZS5jIGIvYXJjaC9zY29yZS9rZXJuZWwvbW9kdWxlLmMNCmlu ZGV4IDRmZmNlN2YuLjRkZThkNDcgMTAwNjQ0DQotLS0gYS9hcmNoL3Njb3JlL2tlcm5lbC9tb2R1 bGUuYw0KKysrIGIvYXJjaC9zY29yZS9rZXJuZWwvbW9kdWxlLmMNCkBAIC0yMyw2ICsyMyw3IEBA DQogICogNTEgRnJhbmtsaW4gU3QsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAx ICBVU0ENCiAgKi8NCiANCisjaW5jbHVkZSA8bGludXgvbW9kdWxlbG9hZGVyLmg+DQogI2luY2x1 ZGUgPGxpbnV4L21vZHVsZS5oPg0KICNpbmNsdWRlIDxsaW51eC92bWFsbG9jLmg+DQogDQpAQCAt NTYsMTcgKzU3LDE3IEBAIGludCBhcHBseV9yZWxvY2F0ZShFbGZfU2hkciAqc2VjaGRycywgY29u c3QgY2hhciANCipzdHJ0YWIsDQogICAgICAgIGZvciAoaSA9IDA7IGkgPCByZWxzZWMtPnNoX3Np emUgLyBzaXplb2YoRWxmMzJfUmVsKTsgaSsrLCByZWwrKykgew0KICAgICAgICAgICAgICAgIHVu c2lnbmVkIGxvbmcgbG9jOw0KICAgICAgICAgICAgICAgIEVsZjMyX1N5bSAqc3ltOw0KLSAgICAg ICAgICAgICAgIHMzMiBvZmZzZXQ7DQorICAgICAgICAgICAgICAgczMyIHJfb2Zmc2V0Ow0KIA0K LSAgICAgICAgICAgICAgIG9mZnNldCA9IEVMRjMyX1JfU1lNKHJlbC0+cl9pbmZvKTsNCi0gICAg ICAgICAgICAgICBpZiAoKG9mZnNldCA8IDApIHx8DQotICAgICAgICAgICAgICAgICAgIChvZmZz ZXQgPiAoc3ltc2VjLT5zaF9zaXplIC8gc2l6ZW9mKEVsZjMyX1N5bSkpKSkgew0KKyAgICAgICAg ICAgICAgIHJfb2Zmc2V0ID0gRUxGMzJfUl9TWU0ocmVsLT5yX2luZm8pOw0KKyAgICAgICAgICAg ICAgIGlmICgocl9vZmZzZXQgPCAwKSB8fA0KKyAgICAgICAgICAgICAgICAgICAocl9vZmZzZXQg PiAoc3ltc2VjLT5zaF9zaXplIC8gc2l6ZW9mKEVsZjMyX1N5bSkpKSkgew0KICAgICAgICAgICAg ICAgICAgICAgICAgcHJpbnRrKEtFUk5fRVJSICIlczogYmFkIHJlbG9jYXRpb24sIHNlY3Rpb24g JWQgDQpyZWxvYyAlZFxuIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWUtPm5h bWUsIHJlbGluZGV4LCBpKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJu IC1FTk9FWEVDOw0KICAgICAgICAgICAgICAgIH0NCiANCi0gICAgICAgICAgICAgICBzeW0gPSAo KEVsZjMyX1N5bSAqKXN5bXNlYy0+c2hfYWRkcikgKyBvZmZzZXQ7DQorICAgICAgICAgICAgICAg c3ltID0gKChFbGYzMl9TeW0gKilzeW1zZWMtPnNoX2FkZHIpICsgcl9vZmZzZXQ7DQogDQogICAg ICAgICAgICAgICAgaWYgKChyZWwtPnJfb2Zmc2V0IDwgMCkgfHwNCiAgICAgICAgICAgICAgICAg ICAgKHJlbC0+cl9vZmZzZXQgPiBkc3RzZWMtPnNoX3NpemUgLSBzaXplb2YodTMyKSkpIHsNCkBA IC0xNTEsNyArMTUyLDcgQEAgaW50IGFwcGx5X3JlbG9jYXRlX2FkZChFbGZfU2hkciAqc2VjaGRy cywgY29uc3QgY2hhciANCipzdHJ0YWIsDQogLyogR2l2ZW4gYW4gYWRkcmVzcywgbG9vayBmb3Ig aXQgaW4gdGhlIG1vZHVsZSBleGNlcHRpb24gdGFibGVzLiAqLw0KIGNvbnN0IHN0cnVjdCBleGNl cHRpb25fdGFibGVfZW50cnkgKnNlYXJjaF9tb2R1bGVfZGJldGFibGVzKHVuc2lnbmVkIGxvbmcg DQphZGRyKQ0KIHsNCi0gICAgICAgcmV0dXJuIDA7DQorICAgICAgIHJldHVybiBOVUxMOw0KIH0N CiANCiAvKiBQdXQgaW4gZGJlIGxpc3QgaWYgbmVjZXNzYXJ5LiAqLw0KZGlmZiAtLWdpdCBhL2Fy Y2gvc2NvcmUva2VybmVsL3Byb2Nlc3MuYyBiL2FyY2gvc2NvcmUva2VybmVsL3Byb2Nlc3MuYw0K aW5kZXggZDkzOTY2Zi4uODQ1NzViMiAxMDA2NDQNCi0tLSBhL2FyY2gvc2NvcmUva2VybmVsL3By b2Nlc3MuYw0KKysrIGIvYXJjaC9zY29yZS9rZXJuZWwvcHJvY2Vzcy5jDQpAQCAtMjMsNyArMjMs MTAgQEANCiAgKiA1MSBGcmFua2xpbiBTdCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEw LTEzMDEgIFVTQQ0KICAqLw0KIA0KKyNpbmNsdWRlIDxsaW51eC9lbGZjb3JlLmg+DQogI2luY2x1 ZGUgPGxpbnV4L21vZHVsZS5oPg0KKyNpbmNsdWRlIDxsaW51eC9wbS5oPg0KKyNpbmNsdWRlIDxs aW51eC9yZWJvb3QuaD4NCiANCiB2b2lkICgqcG1fcG93ZXJfb2ZmKSh2b2lkKTsNCiBFWFBPUlRf U1lNQk9MKHBtX3Bvd2VyX29mZik7DQpkaWZmIC0tZ2l0IGEvYXJjaC9zY29yZS9rZXJuZWwvcHRy YWNlLmMgYi9hcmNoL3Njb3JlL2tlcm5lbC9wdHJhY2UuYw0KaW5kZXggMTk5MTFlMy4uODk3ZGQ3 YyAxMDA2NDQNCi0tLSBhL2FyY2gvc2NvcmUva2VybmVsL3B0cmFjZS5jDQorKysgYi9hcmNoL3Nj b3JlL2tlcm5lbC9wdHJhY2UuYw0KQEAgLTI2Nyw2ICsyNjcsNyBAQCBsb25nDQogYXJjaF9wdHJh Y2Uoc3RydWN0IHRhc2tfc3RydWN0ICpjaGlsZCwgbG9uZyByZXF1ZXN0LCBsb25nIGFkZHIsIGxv bmcgDQpkYXRhKQ0KIHsNCiAgICAgICAgaW50IHJldDsNCisgICAgICAgdW5zaWduZWQgbG9uZyBf X3VzZXIgKmRhdGFwID0gKHZvaWQgX191c2VyICopZGF0YTsNCiANCiAgICAgICAgc3dpdGNoIChy ZXF1ZXN0KSB7DQogICAgICAgIC8qIFJlYWQgdGhlIHdvcmQgYXQgbG9jYXRpb24gYWRkciBpbiB0 aGUgVVNFUiBhcmVhLiAgKi8NCkBAIC0zMTYsNyArMzE3LDcgQEAgYXJjaF9wdHJhY2Uoc3RydWN0 IHRhc2tfc3RydWN0ICpjaGlsZCwgbG9uZyByZXF1ZXN0LCANCmxvbmcgYWRkciwgbG9uZyBkYXRh KQ0KICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC1FSU87DQogICAgICAgICAgICAgICAg fQ0KIA0KLSAgICAgICAgICAgICAgIHJldCA9IHB1dF91c2VyKHRtcCwgKHVuc2lnbmVkIGxvbmcg KikgZGF0YSk7DQorICAgICAgICAgICAgICAgcmV0ID0gcHV0X3VzZXIodG1wLCAodW5zaWduZWQg bG9uZyAqKSBkYXRhcCk7DQogICAgICAgICAgICAgICAgcmV0dXJuIHJldDsNCiAgICAgICAgfQ0K IA0KQEAgLTM1NSwxMSArMzU2LDExIEBAIGFyY2hfcHRyYWNlKHN0cnVjdCB0YXNrX3N0cnVjdCAq Y2hpbGQsIGxvbmcgcmVxdWVzdCwgDQpsb25nIGFkZHIsIGxvbmcgZGF0YSkNCiAgICAgICAgfQ0K IA0KICAgICAgICBjYXNlIFBUUkFDRV9HRVRSRUdTOg0KLSAgICAgICAgICAgICAgIHJldCA9IHB0 cmFjZV9nZXRyZWdzKGNoaWxkLCAodm9pZCBfX3VzZXIgKilkYXRhKTsNCisgICAgICAgICAgICAg ICByZXQgPSBwdHJhY2VfZ2V0cmVncyhjaGlsZCwgKHZvaWQgX191c2VyICopZGF0YXApOw0KICAg ICAgICAgICAgICAgIGJyZWFrOw0KIA0KICAgICAgICBjYXNlIFBUUkFDRV9TRVRSRUdTOg0KLSAg ICAgICAgICAgICAgIHJldCA9IHB0cmFjZV9zZXRyZWdzKGNoaWxkLCAodm9pZCBfX3VzZXIgKilk YXRhKTsNCisgICAgICAgICAgICAgICByZXQgPSBwdHJhY2Vfc2V0cmVncyhjaGlsZCwgKHZvaWQg X191c2VyICopZGF0YXApOw0KICAgICAgICAgICAgICAgIGJyZWFrOw0KIA0KICAgICAgICBkZWZh dWx0Og0KZGlmZiAtLWdpdCBhL2FyY2gvc2NvcmUva2VybmVsL3NpZ25hbC5jIGIvYXJjaC9zY29y ZS9rZXJuZWwvc2lnbmFsLmMNCmluZGV4IDVjMDA0MDguLmUzNTFjMDIgMTAwNjQ0DQotLS0gYS9h cmNoL3Njb3JlL2tlcm5lbC9zaWduYWwuYw0KKysrIGIvYXJjaC9zY29yZS9rZXJuZWwvc2lnbmFs LmMNCkBAIC0yNyw3ICsyNyw5IEBADQogI2luY2x1ZGUgPGxpbnV4L3NpZ25hbC5oPg0KICNpbmNs dWRlIDxsaW51eC91bmlzdGQuaD4NCiAjaW5jbHVkZSA8bGludXgvdWFjY2Vzcy5oPg0KLSNpbmNs dWRlIDxhc20tZ2VuZXJpYy91Y29udGV4dC5oPg0KKw0KKyNpbmNsdWRlIDxhc20vc3lzY2FsbHMu aD4NCisjaW5jbHVkZSA8YXNtL3Vjb250ZXh0Lmg+DQogDQogI2luY2x1ZGUgPGFzbS9jYWNoZWZs dXNoLmg+DQogDQpAQCAtNDAsNyArNDIsOCBAQCBzdHJ1Y3QgcnRfc2lnZnJhbWUgew0KICAgICAg ICBzdHJ1Y3QgdWNvbnRleHQgcnNfdWM7DQogfTsNCiANCi1pbnQgc2V0dXBfc2lnY29udGV4dChz dHJ1Y3QgcHRfcmVncyAqcmVncywgc3RydWN0IHNpZ2NvbnRleHQgX191c2VyICpzYykNCitzdGF0 aWMgaW50DQorc2V0dXBfc2lnY29udGV4dChzdHJ1Y3QgcHRfcmVncyAqcmVncywgc3RydWN0IHNp Z2NvbnRleHQgX191c2VyICpzYykNCiB7DQogICAgICAgIGludCBlcnIgPSAwOw0KICAgICAgICB1 bnNpZ25lZCBsb25nIHJlZzsNCkBAIC03NCw3ICs3Nyw4IEBAIGludCBzZXR1cF9zaWdjb250ZXh0 KHN0cnVjdCBwdF9yZWdzICpyZWdzLCBzdHJ1Y3QgDQpzaWdjb250ZXh0IF9fdXNlciAqc2MpDQog ICAgICAgIHJldHVybiBlcnI7DQogfQ0KIA0KLWludCByZXN0b3JlX3NpZ2NvbnRleHQoc3RydWN0 IHB0X3JlZ3MgKnJlZ3MsIHN0cnVjdCBzaWdjb250ZXh0IF9fdXNlciANCipzYykNCitzdGF0aWMg aW50DQorcmVzdG9yZV9zaWdjb250ZXh0KHN0cnVjdCBwdF9yZWdzICpyZWdzLCBzdHJ1Y3Qgc2ln Y29udGV4dCBfX3VzZXIgKnNjKQ0KIHsNCiAgICAgICAgaW50IGVyciA9IDA7DQogICAgICAgIHUz MiByZWc7DQpAQCAtMTE2LDggKzEyMCw4IEBAIGludCByZXN0b3JlX3NpZ2NvbnRleHQoc3RydWN0 IHB0X3JlZ3MgKnJlZ3MsIHN0cnVjdCANCnNpZ2NvbnRleHQgX191c2VyICpzYykNCiAvKg0KICAq IERldGVybWluZSB3aGljaCBzdGFjayB0byB1c2UuLg0KICAqLw0KLXZvaWQgX191c2VyICpnZXRf c2lnZnJhbWUoc3RydWN0IGtfc2lnYWN0aW9uICprYSwgc3RydWN0IHB0X3JlZ3MgKnJlZ3MsDQot ICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgZnJhbWVfc2l6ZSkNCitzdGF0aWMgdm9pZCBf X3VzZXIgKg0KK2dldF9zaWdmcmFtZShzdHJ1Y3Qga19zaWdhY3Rpb24gKmthLCBzdHJ1Y3QgcHRf cmVncyAqcmVncywgc2l6ZV90IA0KZnJhbWVfc2l6ZSkNCiB7DQogICAgICAgIHVuc2lnbmVkIGxv bmcgc3A7DQogDQpAQCAtMTI5LDE5ICsxMzMsMTkgQEAgdm9pZCBfX3VzZXIgKmdldF9zaWdmcmFt ZShzdHJ1Y3Qga19zaWdhY3Rpb24gKmthLCANCnN0cnVjdCBwdF9yZWdzICpyZWdzLA0KICAgICAg ICBpZiAoKGthLT5zYS5zYV9mbGFncyAmIFNBX09OU1RBQ0spICYmICghb25fc2lnX3N0YWNrKHNw KSkpDQogICAgICAgICAgICAgICAgc3AgPSBjdXJyZW50LT5zYXNfc3Nfc3AgKyBjdXJyZW50LT5z YXNfc3Nfc2l6ZTsNCiANCi0gICAgICAgcmV0dXJuICh2b2lkICopKChzcCAtIGZyYW1lX3NpemUp ICYgfjcpOw0KKyAgICAgICByZXR1cm4gKHZvaWQgX191c2VyICopKChzcCAtIGZyYW1lX3NpemUp ICYgfjcpOw0KIH0NCiANCi1pbnQgc2NvcmVfc2lnYWx0c3RhY2soc3RydWN0IHB0X3JlZ3MgKnJl Z3MpDQorYXNtbGlua2FnZSBsb25nIHNjb3JlX3NpZ2FsdHN0YWNrKHN0cnVjdCBwdF9yZWdzICpy ZWdzKQ0KIHsNCi0gICAgICAgY29uc3Qgc3RhY2tfdCAqdXNzID0gKGNvbnN0IHN0YWNrX3QgKikg cmVncy0+cmVnc1s0XTsNCi0gICAgICAgc3RhY2tfdCAqdW9zcyA9IChzdGFja190ICopIHJlZ3Mt PnJlZ3NbNV07DQorICAgICAgIGNvbnN0IHN0YWNrX3QgX191c2VyICp1c3MgPSAoY29uc3Qgc3Rh Y2tfdCBfX3VzZXIgKikgDQpyZWdzLT5yZWdzWzRdOw0KKyAgICAgICBzdGFja190IF9fdXNlciAq dW9zcyA9IChzdGFja190IF9fdXNlciAqKSByZWdzLT5yZWdzWzVdOw0KICAgICAgICB1bnNpZ25l ZCBsb25nIHVzcCA9IHJlZ3MtPnJlZ3NbMF07DQogDQogICAgICAgIHJldHVybiBkb19zaWdhbHRz dGFjayh1c3MsIHVvc3MsIHVzcCk7DQogfQ0KIA0KLXZvaWQgc2NvcmVfcnRfc2lncmV0dXJuKHN0 cnVjdCBwdF9yZWdzICpyZWdzKQ0KK2FzbWxpbmthZ2UgbG9uZyBzY29yZV9ydF9zaWdyZXR1cm4o c3RydWN0IHB0X3JlZ3MgKnJlZ3MpDQogew0KICAgICAgICBzdHJ1Y3QgcnRfc2lnZnJhbWUgX191 c2VyICpmcmFtZTsNCiAgICAgICAgc2lnc2V0X3Qgc2V0Ow0KQEAgLTE4MSwxMiArMTg1LDEzIEBA IHZvaWQgc2NvcmVfcnRfc2lncmV0dXJuKHN0cnVjdCBwdF9yZWdzICpyZWdzKQ0KIA0KIGJhZGZy YW1lOg0KICAgICAgICBmb3JjZV9zaWcoU0lHU0VHViwgY3VycmVudCk7DQorICAgICAgIHJldHVy biAwOw0KIH0NCiANCi1pbnQgc2V0dXBfcnRfZnJhbWUoc3RydWN0IGtfc2lnYWN0aW9uICprYSwg c3RydWN0IHB0X3JlZ3MgKnJlZ3MsDQotICAgICAgICAgICAgICAgaW50IHNpZ25yLCBzaWdzZXRf dCAqc2V0LCBzaWdpbmZvX3QgKmluZm8pDQorc3RhdGljIGludCBzZXR1cF9ydF9mcmFtZShzdHJ1 Y3Qga19zaWdhY3Rpb24gKmthLCBzdHJ1Y3QgcHRfcmVncyAqcmVncywNCisgICAgICAgICAgICAg ICAgICAgICAgIGludCBzaWduciwgc2lnc2V0X3QgKnNldCwgc2lnaW5mb190ICppbmZvKQ0KIHsN Ci0gICAgICAgc3RydWN0IHJ0X3NpZ2ZyYW1lICpmcmFtZTsNCisgICAgICAgc3RydWN0IHJ0X3Np Z2ZyYW1lIF9fdXNlciAqZnJhbWU7DQogICAgICAgIGludCBlcnIgPSAwOw0KIA0KICAgICAgICBm cmFtZSA9IGdldF9zaWdmcmFtZShrYSwgcmVncywgc2l6ZW9mKCpmcmFtZSkpOw0KQEAgLTIwNiw4 ICsyMTEsOCBAQCBpbnQgc2V0dXBfcnRfZnJhbWUoc3RydWN0IGtfc2lnYWN0aW9uICprYSwgc3Ry dWN0IA0KcHRfcmVncyAqcmVncywNCiANCiAgICAgICAgZXJyIHw9IGNvcHlfc2lnaW5mb190b191 c2VyKCZmcmFtZS0+cnNfaW5mbywgaW5mbyk7DQogICAgICAgIGVyciB8PSBfX3B1dF91c2VyKDAs ICZmcmFtZS0+cnNfdWMudWNfZmxhZ3MpOw0KLSAgICAgICBlcnIgfD0gX19wdXRfdXNlcigwLCAm ZnJhbWUtPnJzX3VjLnVjX2xpbmspOw0KLSAgICAgICBlcnIgfD0gX19wdXRfdXNlcigodm9pZCAq KWN1cnJlbnQtPnNhc19zc19zcCwNCisgICAgICAgZXJyIHw9IF9fcHV0X3VzZXIoTlVMTCwgJmZy YW1lLT5yc191Yy51Y19saW5rKTsNCisgICAgICAgZXJyIHw9IF9fcHV0X3VzZXIoKHZvaWQgX191 c2VyICopY3VycmVudC0+c2FzX3NzX3NwLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAmZnJhbWUtPnJzX3VjLnVjX3N0YWNrLnNzX3NwKTsNCiAgICAgICAgZXJyIHw9IF9fcHV0X3Vz ZXIoc2FzX3NzX2ZsYWdzKHJlZ3MtPnJlZ3NbMF0pLA0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAmZnJhbWUtPnJzX3VjLnVjX3N0YWNrLnNzX2ZsYWdzKTsNCkBAIC0yMzYsNyArMjQx LDcgQEAgZ2l2ZV9zaWdzZWd2Og0KICAgICAgICByZXR1cm4gLUVGQVVMVDsNCiB9DQogDQotaW50 IGhhbmRsZV9zaWduYWwodW5zaWduZWQgbG9uZyBzaWcsIHNpZ2luZm9fdCAqaW5mbywNCitzdGF0 aWMgaW50IGhhbmRsZV9zaWduYWwodW5zaWduZWQgbG9uZyBzaWcsIHNpZ2luZm9fdCAqaW5mbywN CiAgICAgICAgc3RydWN0IGtfc2lnYWN0aW9uICprYSwgc2lnc2V0X3QgKm9sZHNldCwgc3RydWN0 IHB0X3JlZ3MgKnJlZ3MpDQogew0KICAgICAgICBpbnQgcmV0Ow0KQEAgLTI3Niw3ICsyODEsNyBA QCBpbnQgaGFuZGxlX3NpZ25hbCh1bnNpZ25lZCBsb25nIHNpZywgc2lnaW5mb190ICppbmZvLA0K ICAgICAgICByZXR1cm4gcmV0Ow0KIH0NCiANCi12b2lkIGRvX3NpZ25hbChzdHJ1Y3QgcHRfcmVn cyAqcmVncykNCitzdGF0aWMgdm9pZCBkb19zaWduYWwoc3RydWN0IHB0X3JlZ3MgKnJlZ3MpDQog ew0KICAgICAgICBzdHJ1Y3Qga19zaWdhY3Rpb24ga2E7DQogICAgICAgIHNpZ3NldF90ICpvbGRz ZXQ7DQpkaWZmIC0tZ2l0IGEvYXJjaC9zY29yZS9rZXJuZWwvc3lzX3Njb3JlLmMgYi9hcmNoL3Nj b3JlL2tlcm5lbC9zeXNfc2NvcmUuYw0KaW5kZXggMzMxODg2MS4uYzVhM2ZiYyAxMDA2NDQNCi0t LSBhL2FyY2gvc2NvcmUva2VybmVsL3N5c19zY29yZS5jDQorKysgYi9hcmNoL3Njb3JlL2tlcm5l bC9zeXNfc2NvcmUuYw0KQEAgLTI3LDEyICsyNywxMiBAQA0KICNpbmNsdWRlIDxsaW51eC9mcy5o Pg0KICNpbmNsdWRlIDxsaW51eC9tbWFuLmg+DQogI2luY2x1ZGUgPGxpbnV4L21vZHVsZS5oPg0K KyNpbmNsdWRlIDxsaW51eC9zeXNjYWxscy5oPg0KICNpbmNsdWRlIDxsaW51eC91bmlzdGQuaD4N CiANCi11bnNpZ25lZCBsb25nIHNobV9hbGlnbl9tYXNrID0gUEFHRV9TSVpFIC0gMTsNCi1FWFBP UlRfU1lNQk9MKHNobV9hbGlnbl9tYXNrKTsNCisjaW5jbHVkZSA8YXNtL3N5c2NhbGxzLmg+DQog DQotYXNtbGlua2FnZSB1bnNpZ25lZCBsb25nDQorYXNtbGlua2FnZSBsb25nDQogc3lzX21tYXAy KHVuc2lnbmVkIGxvbmcgYWRkciwgdW5zaWduZWQgbG9uZyBsZW4sIHVuc2lnbmVkIGxvbmcgcHJv dCwNCiAgICAgICAgICB1bnNpZ25lZCBsb25nIGZsYWdzLCB1bnNpZ25lZCBsb25nIGZkLCB1bnNp Z25lZCBsb25nIHBnb2ZmKQ0KIHsNCkBAIC02NCw3ICs2NCw3IEBAIHN5c19tbWFwMih1bnNpZ25l ZCBsb25nIGFkZHIsIHVuc2lnbmVkIGxvbmcgbGVuLCANCnVuc2lnbmVkIGxvbmcgcHJvdCwNCiAg KiBDbG9uZSBhIHRhc2sgLSB0aGlzIGNsb25lcyB0aGUgY2FsbGluZyBwcm9ncmFtIHRocmVhZC4N CiAgKiBUaGlzIGlzIGNhbGxlZCBpbmRpcmVjdGx5IHZpYSBhIHNtYWxsIHdyYXBwZXINCiAgKi8N Ci1pbnQgc2NvcmVfY2xvbmUoc3RydWN0IHB0X3JlZ3MgKnJlZ3MpDQorYXNtbGlua2FnZSBsb25n IHNjb3JlX2Nsb25lKHN0cnVjdCBwdF9yZWdzICpyZWdzKQ0KIHsNCiAgICAgICAgdW5zaWduZWQg bG9uZyBjbG9uZV9mbGFnczsNCiAgICAgICAgdW5zaWduZWQgbG9uZyBuZXdzcDsNCkBAIC04NSwz MyArODUsMjUgQEAgaW50IHNjb3JlX2Nsb25lKHN0cnVjdCBwdF9yZWdzICpyZWdzKQ0KICAqIHN5 c19leGVjdmUoKSBleGVjdXRlcyBhIG5ldyBwcm9ncmFtLg0KICAqIFRoaXMgaXMgY2FsbGVkIGlu ZGlyZWN0bHkgdmlhIGEgc21hbGwgd3JhcHBlcg0KICAqLw0KLWludCBzY29yZV9leGVjdmUoc3Ry dWN0IHB0X3JlZ3MgKnJlZ3MpDQorYXNtbGlua2FnZSBsb25nIHNjb3JlX2V4ZWN2ZShzdHJ1Y3Qg cHRfcmVncyAqcmVncykNCiB7DQogICAgICAgIGludCBlcnJvcjsNCiAgICAgICAgY2hhciAqZmls ZW5hbWU7DQogDQotICAgICAgIGZpbGVuYW1lID0gZ2V0bmFtZSgoY2hhciAqKSAobG9uZykgcmVn cy0+cmVnc1s0XSk7DQorICAgICAgIGZpbGVuYW1lID0gZ2V0bmFtZSgoY2hhciBfX3VzZXIgKily ZWdzLT5yZWdzWzRdKTsNCiAgICAgICAgZXJyb3IgPSBQVFJfRVJSKGZpbGVuYW1lKTsNCiAgICAg ICAgaWYgKElTX0VSUihmaWxlbmFtZSkpDQogICAgICAgICAgICAgICAgcmV0dXJuIGVycm9yOw0K IA0KLSAgICAgICBlcnJvciA9IGRvX2V4ZWN2ZShmaWxlbmFtZSwgKGNoYXIgKiopIChsb25nKSBy ZWdzLT5yZWdzWzVdLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAoY2hhciAqKikgKGxvbmcp IHJlZ3MtPnJlZ3NbNl0sIHJlZ3MpOw0KKyAgICAgICBlcnJvciA9IGRvX2V4ZWN2ZShmaWxlbmFt ZSwNCisgICAgICAgICAgICAgICAgICAgICAgIChjaGFyIF9fdXNlciAqIF9fdXNlciAqKShsb25n KXJlZ3MtPnJlZ3NbNV0sDQorICAgICAgICAgICAgICAgICAgICAgICAoY2hhciBfX3VzZXIgKiBf X3VzZXIgKikobG9uZylyZWdzLT5yZWdzWzZdLCANCnJlZ3MpOw0KIA0KICAgICAgICBwdXRuYW1l KGZpbGVuYW1lKTsNCiAgICAgICAgcmV0dXJuIGVycm9yOw0KIH0NCiANCiAvKg0KLSAqIElmIHdl IGV2ZXIgY29tZSBoZXJlIHRoZSB1c2VyIHNwIGlzIGJhZC4gIFphcCB0aGUgcHJvY2VzcyByaWdo dCBhd2F5Lg0KLSAqIER1ZSB0byB0aGUgYmFkIHN0YWNrIHNpZ25hbGluZyB3b3VsZG4ndCB3b3Jr Lg0KLSAqLw0KLXZvaWQgYmFkX3N0YWNrKHZvaWQpDQotew0KLSAgICAgICBkb19leGl0KFNJR1NF R1YpOw0KLX0NCi0NCi0vKg0KICAqIERvIGEgc3lzdGVtIGNhbGwgZnJvbSBrZXJuZWwgaW5zdGVh ZCBvZiBjYWxsaW5nIHN5c19leGVjdmUgc28gd2UNCiAgKiBlbmQgdXAgd2l0aCBwcm9wZXIgcHRf cmVncy4NCiAgKi8NCmRpZmYgLS1naXQgYS9hcmNoL3Njb3JlL2tlcm5lbC90aW1lLmMgYi9hcmNo L3Njb3JlL2tlcm5lbC90aW1lLmMNCmluZGV4IGNkNjZiYTMuLmYwYTQzYWYgMTAwNjQ0DQotLS0g YS9hcmNoL3Njb3JlL2tlcm5lbC90aW1lLmMNCisrKyBiL2FyY2gvc2NvcmUva2VybmVsL3RpbWUu Yw0KQEAgLTI4LDcgKzI4LDcgQEANCiANCiAjaW5jbHVkZSA8YXNtL3Njb3JlcmVncy5oPg0KIA0K LWlycXJldHVybl90IHRpbWVyX2ludGVycnVwdChpbnQgaXJxLCB2b2lkICpkZXZfaWQpDQorc3Rh dGljIGlycXJldHVybl90IHRpbWVyX2ludGVycnVwdChpbnQgaXJxLCB2b2lkICpkZXZfaWQpDQog ew0KICAgICAgICBzdHJ1Y3QgY2xvY2tfZXZlbnRfZGV2aWNlICpldmRldiA9IGRldl9pZDsNCiAN CmRpZmYgLS1naXQgYS9hcmNoL3Njb3JlL21tL2luaXQuYyBiL2FyY2gvc2NvcmUvbW0vaW5pdC5j DQppbmRleCA3NzgwZWVjLi5lNWY2ZjJlIDEwMDY0NA0KLS0tIGEvYXJjaC9zY29yZS9tbS9pbml0 LmMNCisrKyBiL2FyY2gvc2NvcmUvbW0vaW5pdC5jDQpAQCAtMzIsNDQgKzMyLDMwIEBADQogI2lu Y2x1ZGUgPGxpbnV4L3BhZ2VtYXAuaD4NCiAjaW5jbHVkZSA8bGludXgvcHJvY19mcy5oPg0KICNp bmNsdWRlIDxsaW51eC9zY2hlZC5oPg0KLSNpbmNsdWRlIDxhc20tZ2VuZXJpYy9zZWN0aW9ucy5o Pg0KKyNpbmNsdWRlIDxsaW51eC9pbml0cmQuaD4NCiANCisjaW5jbHVkZSA8YXNtL3NlY3Rpb25z Lmg+DQogI2luY2x1ZGUgPGFzbS90bGIuaD4NCiANCiBERUZJTkVfUEVSX0NQVShzdHJ1Y3QgbW11 X2dhdGhlciwgbW11X2dhdGhlcnMpOw0KIA0KLS8qDQotICogV2UgaGF2ZSB1cCB0byA4IGVtcHR5 IHplcm9lZCBwYWdlcyBzbyB3ZSBjYW4gbWFwIG9uZSBvZiB0aGUgcmlnaHQgDQpjb2xvdXINCi0g KiB3aGVuIG5lZWRlZC4NCi0gKi8NCi11bnNpZ25lZCBsb25nIHplcm9fcGFnZV9tYXNrOw0KIHVu c2lnbmVkIGxvbmcgZW1wdHlfemVyb19wYWdlOw0KIEVYUE9SVF9TWU1CT0xfR1BMKGVtcHR5X3pl cm9fcGFnZSk7DQogDQogc3RhdGljIHN0cnVjdCBrY29yZV9saXN0IGtjb3JlX21lbSwga2NvcmVf dm1hbGxvYzsNCiANCi11bnNpZ25lZCBsb25nIHNldHVwX3plcm9fcGFnZXModm9pZCkNCitzdGF0 aWMgdW5zaWduZWQgbG9uZyBzZXR1cF96ZXJvX3BhZ2Uodm9pZCkNCiB7DQotICAgICAgIHVuc2ln bmVkIGludCBvcmRlciA9IDA7DQotICAgICAgIHVuc2lnbmVkIGxvbmcgc2l6ZTsNCiAgICAgICAg c3RydWN0IHBhZ2UgKnBhZ2U7DQogDQotICAgICAgIGVtcHR5X3plcm9fcGFnZSA9IF9fZ2V0X2Zy ZWVfcGFnZXMoR0ZQX0tFUk5FTCB8IF9fR0ZQX1pFUk8sIA0Kb3JkZXIpOw0KKyAgICAgICBlbXB0 eV96ZXJvX3BhZ2UgPSBfX2dldF9mcmVlX3BhZ2VzKEdGUF9LRVJORUwgfCBfX0dGUF9aRVJPLCAw KTsNCiAgICAgICAgaWYgKCFlbXB0eV96ZXJvX3BhZ2UpDQogICAgICAgICAgICAgICAgcGFuaWMo Ik9oIGJveSwgdGhhdCBlYXJseSBvdXQgb2YgbWVtb3J5PyIpOw0KIA0KICAgICAgICBwYWdlID0g dmlydF90b19wYWdlKCh2b2lkICopIGVtcHR5X3plcm9fcGFnZSk7DQotICAgICAgIHNwbGl0X3Bh Z2UocGFnZSwgb3JkZXIpOw0KLSAgICAgICB3aGlsZSAocGFnZSA8IHZpcnRfdG9fcGFnZSgodm9p ZCAqKSAoZW1wdHlfemVyb19wYWdlICsNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChQQUdFX1NJWkUgPDwgb3JkZXIpKSkpIHsNCi0gICAgICAgICAgICAgICBT ZXRQYWdlUmVzZXJ2ZWQocGFnZSk7DQotICAgICAgICAgICAgICAgcGFnZSsrOw0KLSAgICAgICB9 DQotDQotICAgICAgIHNpemUgPSBQQUdFX1NJWkUgPDwgb3JkZXI7DQotICAgICAgIHplcm9fcGFn ZV9tYXNrID0gKHNpemUgLSAxKSAmIFBBR0VfTUFTSzsNCisgICAgICAgU2V0UGFnZVJlc2VydmVk KHBhZ2UpOw0KIA0KLSAgICAgICByZXR1cm4gMVVMIDw8IG9yZGVyOw0KKyAgICAgICByZXR1cm4g MVVMOw0KIH0NCiANCiAjaWZuZGVmIENPTkZJR19ORUVEX01VTFRJUExFX05PREVTDQpAQCAtMTAw LDcgKzg2LDcgQEAgdm9pZCBfX2luaXQgbWVtX2luaXQodm9pZCkNCiAgICAgICAgbWF4X21hcG5y ID0gbWF4X2xvd19wZm47DQogICAgICAgIGhpZ2hfbWVtb3J5ID0gKHZvaWQgKikgX192YShtYXhf bG93X3BmbiA8PCBQQUdFX1NISUZUKTsNCiAgICAgICAgdG90YWxyYW1fcGFnZXMgKz0gZnJlZV9h bGxfYm9vdG1lbSgpOw0KLSAgICAgICB0b3RhbHJhbV9wYWdlcyAtPSBzZXR1cF96ZXJvX3BhZ2Vz KCk7ICAgLyogU2V0dXAgemVyb2VkIHBhZ2VzLiAqLw0KKyAgICAgICB0b3RhbHJhbV9wYWdlcyAt PSBzZXR1cF96ZXJvX3BhZ2UoKTsgICAgLyogU2V0dXAgemVyb2VkIHBhZ2VzLiAqLw0KICAgICAg ICByZXNlcnZlZHBhZ2VzID0gMDsNCiANCiAgICAgICAgZm9yICh0bXAgPSAwOyB0bXAgPCBtYXhf bG93X3BmbjsgdG1wKyspDQpAQCAtMTI5LDcgKzExNSw4IEBAIHZvaWQgX19pbml0IG1lbV9pbml0 KHZvaWQpDQogfQ0KICNlbmRpZiAvKiAhQ09ORklHX05FRURfTVVMVElQTEVfTk9ERVMgKi8NCiAN Ci12b2lkIGZyZWVfaW5pdF9wYWdlcyhjb25zdCBjaGFyICp3aGF0LCB1bnNpZ25lZCBsb25nIGJl Z2luLCB1bnNpZ25lZCBsb25nIA0KZW5kKQ0KK3N0YXRpYyB2b2lkDQorZnJlZV9pbml0X3BhZ2Vz KGNvbnN0IGNoYXIgKndoYXQsIHVuc2lnbmVkIGxvbmcgYmVnaW4sIHVuc2lnbmVkIGxvbmcgZW5k KQ0KIHsNCiAgICAgICAgdW5zaWduZWQgbG9uZyBwZm47DQogDQpAQCAtMTUwLDggKzEzNyw4IEBA IHZvaWQgZnJlZV9pbml0X3BhZ2VzKGNvbnN0IGNoYXIgKndoYXQsIHVuc2lnbmVkIGxvbmcgDQpi ZWdpbiwgdW5zaWduZWQgbG9uZyBlbmQpDQogdm9pZCBmcmVlX2luaXRyZF9tZW0odW5zaWduZWQg bG9uZyBzdGFydCwgdW5zaWduZWQgbG9uZyBlbmQpDQogew0KICAgICAgICBmcmVlX2luaXRfcGFn ZXMoImluaXRyZCBtZW1vcnkiLA0KLSAgICAgICB2aXJ0X3RvX3BoeXMoKHZvaWQgKikgc3RhcnQp LA0KLSAgICAgICB2aXJ0X3RvX3BoeXMoKHZvaWQgKikgZW5kKSk7DQorICAgICAgICAgICAgICAg ICAgICAgICB2aXJ0X3RvX3BoeXMoKHZvaWQgKikgc3RhcnQpLA0KKyAgICAgICAgICAgICAgICAg ICAgICAgdmlydF90b19waHlzKCh2b2lkICopIGVuZCkpOw0KIH0NCiAjZW5kaWYNCiANCi0tIA0K MS42LjINCg0KDQoNCg== --=_mixed 003E9940482575E4_= Content-Type: application/octet-stream; name="0001-score-code-cleanups.patch" Content-Disposition: attachment; filename="0001-score-code-cleanups.patch" Content-Transfer-Encoding: base64 RnJvbSAwNWU5Mzc3MjU3ZmNiODBkZTU5NzQwOTk4OWVmMmNiNzE1ZTM4MjdjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBDaGVuIExpcWluIDxsaXFpbi5jaGVuQHN1bnBsdXNjdC5jb20+ CkRhdGU6IE1vbiwgMjkgSnVuIDIwMDkgMTk6MDE6NDQgKzA4MDAKU3ViamVjdDogW1BBVENIXSBz Y29yZTogY29kZSBjbGVhbnVwcwoKCXNjb3JlOiBhZGQgbWlzc2luZyAjaW5jbHVkZXMKCXNjb3Jl OiBhZGQgYWRkcmVzcyBzcGFjZSBhbm5vdGF0aW9ucwoJc2NvcmU6IGZpeCBmdW5jdGlvbiBwcm90 b3R5cGVzCglzY29yZTogY2xlYW51cHM6IGRlYWQgY29kZSwgMCBhcyBwb2ludGVyLCBzaGFkb3dl ZCB2YXJpYWJsZXMKCXNjb3JlOiBtYWtlIGlycS5oIGRlZmluaXRpb25zIGxvY2FsCgkKCW1vZGlm aWVkOiAgIGFyY2gvc2NvcmUvaW5jbHVkZS9hc20vaXJxLmgKCW1vZGlmaWVkOiAgIGFyY2gvc2Nv cmUvaW5jbHVkZS9hc20vdWFjY2Vzcy5oCgluZXcgZmlsZTogICBhcmNoL3Njb3JlL2luY2x1ZGUv YXNtL3Vjb250ZXh0LmgKCW1vZGlmaWVkOiAgIGFyY2gvc2NvcmUva2VybmVsL2lycS5jCgltb2Rp ZmllZDogICBhcmNoL3Njb3JlL2tlcm5lbC9tb2R1bGUuYwoJbW9kaWZpZWQ6ICAgYXJjaC9zY29y ZS9rZXJuZWwvcHJvY2Vzcy5jCgltb2RpZmllZDogICBhcmNoL3Njb3JlL2tlcm5lbC9wdHJhY2Uu YwoJbW9kaWZpZWQ6ICAgYXJjaC9zY29yZS9rZXJuZWwvc2lnbmFsLmMKCW1vZGlmaWVkOiAgIGFy Y2gvc2NvcmUva2VybmVsL3N5c19zY29yZS5jCgltb2RpZmllZDogICBhcmNoL3Njb3JlL2tlcm5l bC90aW1lLmMKCW1vZGlmaWVkOiAgIGFyY2gvc2NvcmUvbW0vaW5pdC5jCgpTaWduZWQtb2ZmLWJ5 OiBDaGVuIExpcWluIDxsaXFpbi5jaGVuQHN1bnBsdXNjdC5jb20+ClNpZ25lZC1vZmYtYnk6IEFy bmQgQmVyZ21hbm4gPGFybmRAYXJuZGIuZGU+Ci0tLQogYXJjaC9zY29yZS9pbmNsdWRlL2FzbS9p cnEuaCAgICAgIHwgICAxOSArKysrKysrKystLS0tLS0tLQogYXJjaC9zY29yZS9pbmNsdWRlL2Fz bS91YWNjZXNzLmggIHwgICAgOCArKystLS0KIGFyY2gvc2NvcmUvaW5jbHVkZS9hc20vdWNvbnRl eHQuaCB8ICAgIDYgKysrKysKIGFyY2gvc2NvcmUva2VybmVsL2lycS5jICAgICAgICAgICB8ICAg MjAgKysrKysrKysrLS0tLS0tLS0tCiBhcmNoL3Njb3JlL2tlcm5lbC9tb2R1bGUuYyAgICAgICAg fCAgIDEzICsrKysrKy0tLS0tCiBhcmNoL3Njb3JlL2tlcm5lbC9wcm9jZXNzLmMgICAgICAgfCAg ICAzICsrCiBhcmNoL3Njb3JlL2tlcm5lbC9wdHJhY2UuYyAgICAgICAgfCAgICA3ICsrKy0tCiBh cmNoL3Njb3JlL2tlcm5lbC9zaWduYWwuYyAgICAgICAgfCAgIDM5ICsrKysrKysrKysrKysrKysr KysrLS0tLS0tLS0tLS0tLS0tLQogYXJjaC9zY29yZS9rZXJuZWwvc3lzX3Njb3JlLmMgICAgIHwg ICAyNiArKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KIGFyY2gvc2NvcmUva2VybmVsL3RpbWUuYyAg ICAgICAgICB8ICAgIDIgKy0KIGFyY2gvc2NvcmUvbW0vaW5pdC5jICAgICAgICAgICAgICB8ICAg MzUgKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDExIGZpbGVzIGNoYW5nZWQsIDg3 IGluc2VydGlvbnMoKyksIDkxIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGFyY2gv c2NvcmUvaW5jbHVkZS9hc20vdWNvbnRleHQuaAoKZGlmZiAtLWdpdCBhL2FyY2gvc2NvcmUvaW5j bHVkZS9hc20vaXJxLmggYi9hcmNoL3Njb3JlL2luY2x1ZGUvYXNtL2lycS5oCmluZGV4IDQwMWY2 NzAuLjgwNmFhZjIgMTAwNjQ0Ci0tLSBhL2FyY2gvc2NvcmUvaW5jbHVkZS9hc20vaXJxLmgKKysr IGIvYXJjaC9zY29yZS9pbmNsdWRlL2FzbS9pcnEuaApAQCAtMTgsMTUgKzE4LDE2IEBACiAKICNk ZWZpbmUgaXJxX2Nhbm9uaWNhbGl6ZShpcnEpCShpcnEpCiAKLSNkZWZpbmUgUF9JTlRfUE5ETAkJ MHg5NUY1MDAwMAotI2RlZmluZSBQX0lOVF9QTkRICQkweDk1RjUwMDA0Ci0jZGVmaW5lIFBfSU5U X1BSSU9SSVRZX00JMHg5NUY1MDAwOAotI2RlZmluZSBQX0lOVF9QUklPUklUWV9TRzAJMHg5NUY1 MDAxMAotI2RlZmluZSBQX0lOVF9QUklPUklUWV9TRzEJMHg5NUY1MDAxNAotI2RlZmluZSBQX0lO VF9QUklPUklUWV9TRzIJMHg5NUY1MDAxOAotI2RlZmluZSBQX0lOVF9QUklPUklUWV9TRzMJMHg5 NUY1MDAxQwotI2RlZmluZSBQX0lOVF9NQVNLTAkJMHg5NUY1MDAyMAotI2RlZmluZSBQX0lOVF9N QVNLSAkJMHg5NUY1MDAyNAorI2RlZmluZSBJTlRDX0JBU0UJCSgodTMyIF9faW9tZW0gX19mb3Jj ZSAqKTB4OTVmNTAwMDApCisjZGVmaW5lIElOVF9QTkRMCQkwCQkvKiAweDlmNWMwMDAwICovCisj ZGVmaW5lIElOVF9QTkRICQkxCQkvKiAweDlmNWMwMDA0ICovCisjZGVmaW5lIElOVF9QUklPUklU WV9NCQkyCQkvKiAweDlmNWMwMDA4ICovCisjZGVmaW5lIElOVF9QUklPUklUWV9TRzAJNAkJLyog MHg5ZjVjMDAxMCAqLworI2RlZmluZSBJTlRfUFJJT1JJVFlfU0cxCTUJCS8qIDB4OWY1YzAwMTQg Ki8KKyNkZWZpbmUgSU5UX1BSSU9SSVRZX1NHMgk2CQkvKiAweDlmNWMwMDE4ICovCisjZGVmaW5l IElOVF9QUklPUklUWV9TRzMJNwkJLyogMHg5ZjVjMDAxQyAqLworI2RlZmluZSBJTlRfTUFTS0wJ CTgJCS8qIDB4OWY1YzAwMjAgKi8KKyNkZWZpbmUgSU5UX01BU0tICQk5CQkvKiAweDlmNWMwMDI0 ICovCiAKICNkZWZpbmUgSVJRX1RJTUVSICg3KQkJLyogVGltZXIgSVJRIG51bWJlciBvZiBTUENU NjYwMCAqLwogCmRpZmYgLS1naXQgYS9hcmNoL3Njb3JlL2luY2x1ZGUvYXNtL3VhY2Nlc3MuaCBi L2FyY2gvc2NvcmUvaW5jbHVkZS9hc20vdWFjY2Vzcy5oCmluZGV4IDQzY2UyOGEuLjk4ZmRiNmYg MTAwNjQ0Ci0tLSBhL2FyY2gvc2NvcmUvaW5jbHVkZS9hc20vdWFjY2Vzcy5oCisrKyBiL2FyY2gv c2NvcmUvaW5jbHVkZS9hc20vdWFjY2Vzcy5oCkBAIC0xMywxMiArMTMsMTIgQEAgZXh0ZXJuIGlu dCBmaXh1cF9leGNlcHRpb24oc3RydWN0IHB0X3JlZ3MgKnJlZ3MpOwogI2lmbmRlZiBfX0FTU0VN QkxZX18KIAogI2RlZmluZSBfX3JhbmdlX29rKGFkZHIsIHNpemUpCQkJCQlcCi0JKCgoKHVuc2ln bmVkIGxvbmcpKGFkZHIpID49IDB4ODAwMDAwMDApCQkJXAorCSgoKCh1bnNpZ25lZCBsb25nIF9f Zm9yY2UpKGFkZHIpID49IDB4ODAwMDAwMDApCQlcCiAJfHwgKCh1bnNpZ25lZCBsb25nKShzaXpl KSA+IDB4ODAwMDAwMDApCQkJXAotCXx8ICgoKHVuc2lnbmVkIGxvbmcpKGFkZHIpICsgKHVuc2ln bmVkIGxvbmcpKHNpemUpKSA+IDB4ODAwMDAwMDApKSkKKwl8fCAoKCh1bnNpZ25lZCBsb25nIF9f Zm9yY2UpKGFkZHIpICsgKHVuc2lnbmVkIGxvbmcpKHNpemUpKSBcCisJCT4gMHg4MDAwMDAwMCkp KQogCi0jZGVmaW5lIF9fYWNjZXNzX29rKGFkZHIsIHNpemUpIFwKLQkoX19yYW5nZV9vaygoYWRk ciksIChzaXplKSkgPT0gMCkKKyNkZWZpbmUgX19hY2Nlc3Nfb2soYWRkciwgc2l6ZSkJCShfX3Jh bmdlX29rKChhZGRyKSwgKHNpemUpKSA9PSAwKQogCiAjaW5jbHVkZSA8YXNtLWdlbmVyaWMvdWFj Y2Vzcy5oPgogCmRpZmYgLS1naXQgYS9hcmNoL3Njb3JlL2luY2x1ZGUvYXNtL3Vjb250ZXh0Lmgg Yi9hcmNoL3Njb3JlL2luY2x1ZGUvYXNtL3Vjb250ZXh0LmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDAwMDAwMC4uOWM1ZmU1YgotLS0gL2Rldi9udWxsCisrKyBiL2FyY2gvc2NvcmUvaW5j bHVkZS9hc20vdWNvbnRleHQuaApAQCAtMCwwICsxLDYgQEAKKyNpZm5kZWYgX0FTTV9TQ09SRV9V Q09OVEVYVF9ICisjZGVmaW5lIF9BU01fU0NPUkVfVUNPTlRFWFRfSAorCisjaW5jbHVkZSA8YXNt LWdlbmVyaWMvdWNvbnRleHQuaD4KKworI2VuZGlmIC8qIF9BU01fU0NPUkVfVUNPTlRFWFRfSCAq LwpkaWZmIC0tZ2l0IGEvYXJjaC9zY29yZS9rZXJuZWwvaXJxLmMgYi9hcmNoL3Njb3JlL2tlcm5l bC9pcnEuYwppbmRleCA1NTQ3NGU4Li4zYTdmMTU1IDEwMDY0NAotLS0gYS9hcmNoL3Njb3JlL2tl cm5lbC9pcnEuYworKysgYi9hcmNoL3Njb3JlL2tlcm5lbC9pcnEuYwpAQCAtNDQsMTEgKzQ0LDEx IEBAIHN0YXRpYyB2b2lkIHNjb3JlX21hc2sodW5zaWduZWQgaW50IGlycV9ucikKIAl1bnNpZ25l ZCBpbnQgaXJxX3NvdXJjZSA9IDYzIC0gaXJxX25yOwogCiAJaWYgKGlycV9zb3VyY2UgPCAzMikK LQkJX19yYXdfd3JpdGVsKChfX3Jhd19yZWFkbCgodm9pZCAqKVBfSU5UX01BU0tMKSB8IFwKLQkJ CSgxIDw8IGlycV9zb3VyY2UpKSwgKHZvaWQgKilQX0lOVF9NQVNLTCk7CisJCV9fcmF3X3dyaXRl bCgoX19yYXdfcmVhZGwoSU5UQ19CQVNFICsgSU5UX01BU0tMKSB8IFwKKwkJCSgxIDw8IGlycV9z b3VyY2UpKSwgSU5UQ19CQVNFICsgSU5UX01BU0tMKTsKIAllbHNlCi0JCV9fcmF3X3dyaXRlbCgo X19yYXdfcmVhZGwoKHZvaWQgKilQX0lOVF9NQVNLSCkgfCBcCi0JCQkoMSA8PCAoaXJxX3NvdXJj ZSAtIDMyKSkpLCAodm9pZCAqKVBfSU5UX01BU0tIKTsKKwkJX19yYXdfd3JpdGVsKChfX3Jhd19y ZWFkbChJTlRDX0JBU0UgKyBJTlRfTUFTS0gpIHwgXAorCQkJKDEgPDwgKGlycV9zb3VyY2UgLSAz MikpKSwgSU5UQ19CQVNFICsgSU5UX01BU0tIKTsKIH0KIAogc3RhdGljIHZvaWQgc2NvcmVfdW5t YXNrKHVuc2lnbmVkIGludCBpcnFfbnIpCkBAIC01NiwxMSArNTYsMTEgQEAgc3RhdGljIHZvaWQg c2NvcmVfdW5tYXNrKHVuc2lnbmVkIGludCBpcnFfbnIpCiAJdW5zaWduZWQgaW50IGlycV9zb3Vy Y2UgPSA2MyAtIGlycV9ucjsKIAogCWlmIChpcnFfc291cmNlIDwgMzIpCi0JCV9fcmF3X3dyaXRl bCgoX19yYXdfcmVhZGwoKHZvaWQgKilQX0lOVF9NQVNLTCkgJiBcCi0JCQl+KDEgPDwgaXJxX3Nv dXJjZSkpLCAodm9pZCAqKVBfSU5UX01BU0tMKTsKKwkJX19yYXdfd3JpdGVsKChfX3Jhd19yZWFk bChJTlRDX0JBU0UgKyBJTlRfTUFTS0wpICYgXAorCQkJfigxIDw8IGlycV9zb3VyY2UpKSwgSU5U Q19CQVNFICsgSU5UX01BU0tMKTsKIAllbHNlCi0JCV9fcmF3X3dyaXRlbCgoX19yYXdfcmVhZGwo KHZvaWQgKilQX0lOVF9NQVNLSCkgJiBcCi0JCQl+KDEgPDwgKGlycV9zb3VyY2UgLSAzMikpKSwg KHZvaWQgKilQX0lOVF9NQVNLSCk7CisJCV9fcmF3X3dyaXRlbCgoX19yYXdfcmVhZGwoSU5UQ19C QVNFICsgSU5UX01BU0tIKSAmIFwKKwkJCX4oMSA8PCAoaXJxX3NvdXJjZSAtIDMyKSkpLCBJTlRD X0JBU0UgKyBJTlRfTUFTS0gpOwogfQogCiBzdHJ1Y3QgaXJxX2NoaXAgc2NvcmVfaXJxX2NoaXAg PSB7CkBAIC04OCw4ICs4OCw4IEBAIHZvaWQgX19pbml0IGluaXRfSVJRKHZvaWQpCiAJCW1lbWNw eSgodm9pZCAqKXRhcmdldF9hZGRyLCBcCiAJCQlpbnRlcnJ1cHRfZXhjZXB0aW9uX3ZlY3Rvciwg SVJRX1ZFQ1RPUl9TSVpFKTsKIAotCV9fcmF3X3dyaXRlbCgweGZmZmZmZmZmLCAodm9pZCAqKVBf SU5UX01BU0tMKTsKLQlfX3Jhd193cml0ZWwoMHhmZmZmZmZmZiwgKHZvaWQgKilQX0lOVF9NQVNL SCk7CisJX19yYXdfd3JpdGVsKDB4ZmZmZmZmZmYsIElOVENfQkFTRSArIElOVF9NQVNLTCk7CisJ X19yYXdfd3JpdGVsKDB4ZmZmZmZmZmYsIElOVENfQkFTRSArIElOVF9NQVNLSCk7CiAKIAlfX2Fz bV9fIF9fdm9sYXRpbGVfXygKIAkJIm10Y3IJJTAsIGNyM1xuXHQiCmRpZmYgLS1naXQgYS9hcmNo L3Njb3JlL2tlcm5lbC9tb2R1bGUuYyBiL2FyY2gvc2NvcmUva2VybmVsL21vZHVsZS5jCmluZGV4 IDRmZmNlN2YuLjRkZThkNDcgMTAwNjQ0Ci0tLSBhL2FyY2gvc2NvcmUva2VybmVsL21vZHVsZS5j CisrKyBiL2FyY2gvc2NvcmUva2VybmVsL21vZHVsZS5jCkBAIC0yMyw2ICsyMyw3IEBACiAgKiA1 MSBGcmFua2xpbiBTdCwgRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEgIFVTQQog ICovCiAKKyNpbmNsdWRlIDxsaW51eC9tb2R1bGVsb2FkZXIuaD4KICNpbmNsdWRlIDxsaW51eC9t b2R1bGUuaD4KICNpbmNsdWRlIDxsaW51eC92bWFsbG9jLmg+CiAKQEAgLTU2LDE3ICs1NywxNyBA QCBpbnQgYXBwbHlfcmVsb2NhdGUoRWxmX1NoZHIgKnNlY2hkcnMsIGNvbnN0IGNoYXIgKnN0cnRh YiwKIAlmb3IgKGkgPSAwOyBpIDwgcmVsc2VjLT5zaF9zaXplIC8gc2l6ZW9mKEVsZjMyX1JlbCk7 IGkrKywgcmVsKyspIHsKIAkJdW5zaWduZWQgbG9uZyBsb2M7CiAJCUVsZjMyX1N5bSAqc3ltOwot CQlzMzIgb2Zmc2V0OworCQlzMzIgcl9vZmZzZXQ7CiAKLQkJb2Zmc2V0ID0gRUxGMzJfUl9TWU0o cmVsLT5yX2luZm8pOwotCQlpZiAoKG9mZnNldCA8IDApIHx8Ci0JCSAgICAob2Zmc2V0ID4gKHN5 bXNlYy0+c2hfc2l6ZSAvIHNpemVvZihFbGYzMl9TeW0pKSkpIHsKKwkJcl9vZmZzZXQgPSBFTEYz Ml9SX1NZTShyZWwtPnJfaW5mbyk7CisJCWlmICgocl9vZmZzZXQgPCAwKSB8fAorCQkgICAgKHJf b2Zmc2V0ID4gKHN5bXNlYy0+c2hfc2l6ZSAvIHNpemVvZihFbGYzMl9TeW0pKSkpIHsKIAkJCXBy aW50ayhLRVJOX0VSUiAiJXM6IGJhZCByZWxvY2F0aW9uLCBzZWN0aW9uICVkIHJlbG9jICVkXG4i LAogCQkJCW1lLT5uYW1lLCByZWxpbmRleCwgaSk7CiAJCQkJcmV0dXJuIC1FTk9FWEVDOwogCQl9 CiAKLQkJc3ltID0gKChFbGYzMl9TeW0gKilzeW1zZWMtPnNoX2FkZHIpICsgb2Zmc2V0OworCQlz eW0gPSAoKEVsZjMyX1N5bSAqKXN5bXNlYy0+c2hfYWRkcikgKyByX29mZnNldDsKIAogCQlpZiAo KHJlbC0+cl9vZmZzZXQgPCAwKSB8fAogCQkgICAgKHJlbC0+cl9vZmZzZXQgPiBkc3RzZWMtPnNo X3NpemUgLSBzaXplb2YodTMyKSkpIHsKQEAgLTE1MSw3ICsxNTIsNyBAQCBpbnQgYXBwbHlfcmVs b2NhdGVfYWRkKEVsZl9TaGRyICpzZWNoZHJzLCBjb25zdCBjaGFyICpzdHJ0YWIsCiAvKiBHaXZl biBhbiBhZGRyZXNzLCBsb29rIGZvciBpdCBpbiB0aGUgbW9kdWxlIGV4Y2VwdGlvbiB0YWJsZXMu ICovCiBjb25zdCBzdHJ1Y3QgZXhjZXB0aW9uX3RhYmxlX2VudHJ5ICpzZWFyY2hfbW9kdWxlX2Ri ZXRhYmxlcyh1bnNpZ25lZCBsb25nIGFkZHIpCiB7Ci0JcmV0dXJuIDA7CisJcmV0dXJuIE5VTEw7 CiB9CiAKIC8qIFB1dCBpbiBkYmUgbGlzdCBpZiBuZWNlc3NhcnkuICovCmRpZmYgLS1naXQgYS9h cmNoL3Njb3JlL2tlcm5lbC9wcm9jZXNzLmMgYi9hcmNoL3Njb3JlL2tlcm5lbC9wcm9jZXNzLmMK aW5kZXggZDkzOTY2Zi4uODQ1NzViMiAxMDA2NDQKLS0tIGEvYXJjaC9zY29yZS9rZXJuZWwvcHJv Y2Vzcy5jCisrKyBiL2FyY2gvc2NvcmUva2VybmVsL3Byb2Nlc3MuYwpAQCAtMjMsNyArMjMsMTAg QEAKICAqIDUxIEZyYW5rbGluIFN0LCBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMw MSAgVVNBCiAgKi8KIAorI2luY2x1ZGUgPGxpbnV4L2VsZmNvcmUuaD4KICNpbmNsdWRlIDxsaW51 eC9tb2R1bGUuaD4KKyNpbmNsdWRlIDxsaW51eC9wbS5oPgorI2luY2x1ZGUgPGxpbnV4L3JlYm9v dC5oPgogCiB2b2lkICgqcG1fcG93ZXJfb2ZmKSh2b2lkKTsKIEVYUE9SVF9TWU1CT0wocG1fcG93 ZXJfb2ZmKTsKZGlmZiAtLWdpdCBhL2FyY2gvc2NvcmUva2VybmVsL3B0cmFjZS5jIGIvYXJjaC9z Y29yZS9rZXJuZWwvcHRyYWNlLmMKaW5kZXggMTk5MTFlMy4uODk3ZGQ3YyAxMDA2NDQKLS0tIGEv YXJjaC9zY29yZS9rZXJuZWwvcHRyYWNlLmMKKysrIGIvYXJjaC9zY29yZS9rZXJuZWwvcHRyYWNl LmMKQEAgLTI2Nyw2ICsyNjcsNyBAQCBsb25nCiBhcmNoX3B0cmFjZShzdHJ1Y3QgdGFza19zdHJ1 Y3QgKmNoaWxkLCBsb25nIHJlcXVlc3QsIGxvbmcgYWRkciwgbG9uZyBkYXRhKQogewogCWludCBy ZXQ7CisJdW5zaWduZWQgbG9uZyBfX3VzZXIgKmRhdGFwID0gKHZvaWQgX191c2VyICopZGF0YTsK IAogCXN3aXRjaCAocmVxdWVzdCkgewogCS8qIFJlYWQgdGhlIHdvcmQgYXQgbG9jYXRpb24gYWRk ciBpbiB0aGUgVVNFUiBhcmVhLiAgKi8KQEAgLTMxNiw3ICszMTcsNyBAQCBhcmNoX3B0cmFjZShz dHJ1Y3QgdGFza19zdHJ1Y3QgKmNoaWxkLCBsb25nIHJlcXVlc3QsIGxvbmcgYWRkciwgbG9uZyBk YXRhKQogCQkJcmV0dXJuIC1FSU87CiAJCX0KIAotCQlyZXQgPSBwdXRfdXNlcih0bXAsICh1bnNp Z25lZCBsb25nICopIGRhdGEpOworCQlyZXQgPSBwdXRfdXNlcih0bXAsICh1bnNpZ25lZCBsb25n ICopIGRhdGFwKTsKIAkJcmV0dXJuIHJldDsKIAl9CiAKQEAgLTM1NSwxMSArMzU2LDExIEBAIGFy Y2hfcHRyYWNlKHN0cnVjdCB0YXNrX3N0cnVjdCAqY2hpbGQsIGxvbmcgcmVxdWVzdCwgbG9uZyBh ZGRyLCBsb25nIGRhdGEpCiAJfQogCiAJY2FzZSBQVFJBQ0VfR0VUUkVHUzoKLQkJcmV0ID0gcHRy YWNlX2dldHJlZ3MoY2hpbGQsICh2b2lkIF9fdXNlciAqKWRhdGEpOworCQlyZXQgPSBwdHJhY2Vf Z2V0cmVncyhjaGlsZCwgKHZvaWQgX191c2VyICopZGF0YXApOwogCQlicmVhazsKIAogCWNhc2Ug UFRSQUNFX1NFVFJFR1M6Ci0JCXJldCA9IHB0cmFjZV9zZXRyZWdzKGNoaWxkLCAodm9pZCBfX3Vz ZXIgKilkYXRhKTsKKwkJcmV0ID0gcHRyYWNlX3NldHJlZ3MoY2hpbGQsICh2b2lkIF9fdXNlciAq KWRhdGFwKTsKIAkJYnJlYWs7CiAKIAlkZWZhdWx0OgpkaWZmIC0tZ2l0IGEvYXJjaC9zY29yZS9r ZXJuZWwvc2lnbmFsLmMgYi9hcmNoL3Njb3JlL2tlcm5lbC9zaWduYWwuYwppbmRleCA1YzAwNDA4 Li5lMzUxYzAyIDEwMDY0NAotLS0gYS9hcmNoL3Njb3JlL2tlcm5lbC9zaWduYWwuYworKysgYi9h cmNoL3Njb3JlL2tlcm5lbC9zaWduYWwuYwpAQCAtMjcsNyArMjcsOSBAQAogI2luY2x1ZGUgPGxp bnV4L3NpZ25hbC5oPgogI2luY2x1ZGUgPGxpbnV4L3VuaXN0ZC5oPgogI2luY2x1ZGUgPGxpbnV4 L3VhY2Nlc3MuaD4KLSNpbmNsdWRlIDxhc20tZ2VuZXJpYy91Y29udGV4dC5oPgorCisjaW5jbHVk ZSA8YXNtL3N5c2NhbGxzLmg+CisjaW5jbHVkZSA8YXNtL3Vjb250ZXh0Lmg+CiAKICNpbmNsdWRl IDxhc20vY2FjaGVmbHVzaC5oPgogCkBAIC00MCw3ICs0Miw4IEBAIHN0cnVjdCBydF9zaWdmcmFt ZSB7CiAJc3RydWN0IHVjb250ZXh0IHJzX3VjOwogfTsKIAotaW50IHNldHVwX3NpZ2NvbnRleHQo c3RydWN0IHB0X3JlZ3MgKnJlZ3MsIHN0cnVjdCBzaWdjb250ZXh0IF9fdXNlciAqc2MpCitzdGF0 aWMgaW50CitzZXR1cF9zaWdjb250ZXh0KHN0cnVjdCBwdF9yZWdzICpyZWdzLCBzdHJ1Y3Qgc2ln Y29udGV4dCBfX3VzZXIgKnNjKQogewogCWludCBlcnIgPSAwOwogCXVuc2lnbmVkIGxvbmcgcmVn OwpAQCAtNzQsNyArNzcsOCBAQCBpbnQgc2V0dXBfc2lnY29udGV4dChzdHJ1Y3QgcHRfcmVncyAq cmVncywgc3RydWN0IHNpZ2NvbnRleHQgX191c2VyICpzYykKIAlyZXR1cm4gZXJyOwogfQogCi1p bnQgcmVzdG9yZV9zaWdjb250ZXh0KHN0cnVjdCBwdF9yZWdzICpyZWdzLCBzdHJ1Y3Qgc2lnY29u dGV4dCBfX3VzZXIgKnNjKQorc3RhdGljIGludAorcmVzdG9yZV9zaWdjb250ZXh0KHN0cnVjdCBw dF9yZWdzICpyZWdzLCBzdHJ1Y3Qgc2lnY29udGV4dCBfX3VzZXIgKnNjKQogewogCWludCBlcnIg PSAwOwogCXUzMiByZWc7CkBAIC0xMTYsOCArMTIwLDggQEAgaW50IHJlc3RvcmVfc2lnY29udGV4 dChzdHJ1Y3QgcHRfcmVncyAqcmVncywgc3RydWN0IHNpZ2NvbnRleHQgX191c2VyICpzYykKIC8q CiAgKiBEZXRlcm1pbmUgd2hpY2ggc3RhY2sgdG8gdXNlLi4KICAqLwotdm9pZCBfX3VzZXIgKmdl dF9zaWdmcmFtZShzdHJ1Y3Qga19zaWdhY3Rpb24gKmthLCBzdHJ1Y3QgcHRfcmVncyAqcmVncywK LQkJCXNpemVfdCBmcmFtZV9zaXplKQorc3RhdGljIHZvaWQgX191c2VyICoKK2dldF9zaWdmcmFt ZShzdHJ1Y3Qga19zaWdhY3Rpb24gKmthLCBzdHJ1Y3QgcHRfcmVncyAqcmVncywgc2l6ZV90IGZy YW1lX3NpemUpCiB7CiAJdW5zaWduZWQgbG9uZyBzcDsKIApAQCAtMTI5LDE5ICsxMzMsMTkgQEAg dm9pZCBfX3VzZXIgKmdldF9zaWdmcmFtZShzdHJ1Y3Qga19zaWdhY3Rpb24gKmthLCBzdHJ1Y3Qg cHRfcmVncyAqcmVncywKIAlpZiAoKGthLT5zYS5zYV9mbGFncyAmIFNBX09OU1RBQ0spICYmICgh b25fc2lnX3N0YWNrKHNwKSkpCiAJCXNwID0gY3VycmVudC0+c2FzX3NzX3NwICsgY3VycmVudC0+ c2FzX3NzX3NpemU7CiAKLQlyZXR1cm4gKHZvaWQgKikoKHNwIC0gZnJhbWVfc2l6ZSkgJiB+Nyk7 CisJcmV0dXJuICh2b2lkIF9fdXNlciAqKSgoc3AgLSBmcmFtZV9zaXplKSAmIH43KTsKIH0KIAot aW50IHNjb3JlX3NpZ2FsdHN0YWNrKHN0cnVjdCBwdF9yZWdzICpyZWdzKQorYXNtbGlua2FnZSBs b25nIHNjb3JlX3NpZ2FsdHN0YWNrKHN0cnVjdCBwdF9yZWdzICpyZWdzKQogewotCWNvbnN0IHN0 YWNrX3QgKnVzcyA9IChjb25zdCBzdGFja190ICopIHJlZ3MtPnJlZ3NbNF07Ci0Jc3RhY2tfdCAq dW9zcyA9IChzdGFja190ICopIHJlZ3MtPnJlZ3NbNV07CisJY29uc3Qgc3RhY2tfdCBfX3VzZXIg KnVzcyA9IChjb25zdCBzdGFja190IF9fdXNlciAqKSByZWdzLT5yZWdzWzRdOworCXN0YWNrX3Qg X191c2VyICp1b3NzID0gKHN0YWNrX3QgX191c2VyICopIHJlZ3MtPnJlZ3NbNV07CiAJdW5zaWdu ZWQgbG9uZyB1c3AgPSByZWdzLT5yZWdzWzBdOwogCiAJcmV0dXJuIGRvX3NpZ2FsdHN0YWNrKHVz cywgdW9zcywgdXNwKTsKIH0KIAotdm9pZCBzY29yZV9ydF9zaWdyZXR1cm4oc3RydWN0IHB0X3Jl Z3MgKnJlZ3MpCithc21saW5rYWdlIGxvbmcgc2NvcmVfcnRfc2lncmV0dXJuKHN0cnVjdCBwdF9y ZWdzICpyZWdzKQogewogCXN0cnVjdCBydF9zaWdmcmFtZSBfX3VzZXIgKmZyYW1lOwogCXNpZ3Nl dF90IHNldDsKQEAgLTE4MSwxMiArMTg1LDEzIEBAIHZvaWQgc2NvcmVfcnRfc2lncmV0dXJuKHN0 cnVjdCBwdF9yZWdzICpyZWdzKQogCiBiYWRmcmFtZToKIAlmb3JjZV9zaWcoU0lHU0VHViwgY3Vy cmVudCk7CisJcmV0dXJuIDA7CiB9CiAKLWludCBzZXR1cF9ydF9mcmFtZShzdHJ1Y3Qga19zaWdh Y3Rpb24gKmthLCBzdHJ1Y3QgcHRfcmVncyAqcmVncywKLQkJaW50IHNpZ25yLCBzaWdzZXRfdCAq c2V0LCBzaWdpbmZvX3QgKmluZm8pCitzdGF0aWMgaW50IHNldHVwX3J0X2ZyYW1lKHN0cnVjdCBr X3NpZ2FjdGlvbiAqa2EsIHN0cnVjdCBwdF9yZWdzICpyZWdzLAorCQkJaW50IHNpZ25yLCBzaWdz ZXRfdCAqc2V0LCBzaWdpbmZvX3QgKmluZm8pCiB7Ci0Jc3RydWN0IHJ0X3NpZ2ZyYW1lICpmcmFt ZTsKKwlzdHJ1Y3QgcnRfc2lnZnJhbWUgX191c2VyICpmcmFtZTsKIAlpbnQgZXJyID0gMDsKIAog CWZyYW1lID0gZ2V0X3NpZ2ZyYW1lKGthLCByZWdzLCBzaXplb2YoKmZyYW1lKSk7CkBAIC0yMDYs OCArMjExLDggQEAgaW50IHNldHVwX3J0X2ZyYW1lKHN0cnVjdCBrX3NpZ2FjdGlvbiAqa2EsIHN0 cnVjdCBwdF9yZWdzICpyZWdzLAogCiAJZXJyIHw9IGNvcHlfc2lnaW5mb190b191c2VyKCZmcmFt ZS0+cnNfaW5mbywgaW5mbyk7CiAJZXJyIHw9IF9fcHV0X3VzZXIoMCwgJmZyYW1lLT5yc191Yy51 Y19mbGFncyk7Ci0JZXJyIHw9IF9fcHV0X3VzZXIoMCwgJmZyYW1lLT5yc191Yy51Y19saW5rKTsK LQllcnIgfD0gX19wdXRfdXNlcigodm9pZCAqKWN1cnJlbnQtPnNhc19zc19zcCwKKwllcnIgfD0g X19wdXRfdXNlcihOVUxMLCAmZnJhbWUtPnJzX3VjLnVjX2xpbmspOworCWVyciB8PSBfX3B1dF91 c2VyKCh2b2lkIF9fdXNlciAqKWN1cnJlbnQtPnNhc19zc19zcCwKIAkJCQkmZnJhbWUtPnJzX3Vj LnVjX3N0YWNrLnNzX3NwKTsKIAllcnIgfD0gX19wdXRfdXNlcihzYXNfc3NfZmxhZ3MocmVncy0+ cmVnc1swXSksCiAJCQkJJmZyYW1lLT5yc191Yy51Y19zdGFjay5zc19mbGFncyk7CkBAIC0yMzYs NyArMjQxLDcgQEAgZ2l2ZV9zaWdzZWd2OgogCXJldHVybiAtRUZBVUxUOwogfQogCi1pbnQgaGFu ZGxlX3NpZ25hbCh1bnNpZ25lZCBsb25nIHNpZywgc2lnaW5mb190ICppbmZvLAorc3RhdGljIGlu dCBoYW5kbGVfc2lnbmFsKHVuc2lnbmVkIGxvbmcgc2lnLCBzaWdpbmZvX3QgKmluZm8sCiAJc3Ry dWN0IGtfc2lnYWN0aW9uICprYSwgc2lnc2V0X3QgKm9sZHNldCwgc3RydWN0IHB0X3JlZ3MgKnJl Z3MpCiB7CiAJaW50IHJldDsKQEAgLTI3Niw3ICsyODEsNyBAQCBpbnQgaGFuZGxlX3NpZ25hbCh1 bnNpZ25lZCBsb25nIHNpZywgc2lnaW5mb190ICppbmZvLAogCXJldHVybiByZXQ7CiB9CiAKLXZv aWQgZG9fc2lnbmFsKHN0cnVjdCBwdF9yZWdzICpyZWdzKQorc3RhdGljIHZvaWQgZG9fc2lnbmFs KHN0cnVjdCBwdF9yZWdzICpyZWdzKQogewogCXN0cnVjdCBrX3NpZ2FjdGlvbiBrYTsKIAlzaWdz ZXRfdCAqb2xkc2V0OwpkaWZmIC0tZ2l0IGEvYXJjaC9zY29yZS9rZXJuZWwvc3lzX3Njb3JlLmMg Yi9hcmNoL3Njb3JlL2tlcm5lbC9zeXNfc2NvcmUuYwppbmRleCAzMzE4ODYxLi5jNWEzZmJjIDEw MDY0NAotLS0gYS9hcmNoL3Njb3JlL2tlcm5lbC9zeXNfc2NvcmUuYworKysgYi9hcmNoL3Njb3Jl L2tlcm5lbC9zeXNfc2NvcmUuYwpAQCAtMjcsMTIgKzI3LDEyIEBACiAjaW5jbHVkZSA8bGludXgv ZnMuaD4KICNpbmNsdWRlIDxsaW51eC9tbWFuLmg+CiAjaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+ CisjaW5jbHVkZSA8bGludXgvc3lzY2FsbHMuaD4KICNpbmNsdWRlIDxsaW51eC91bmlzdGQuaD4K IAotdW5zaWduZWQgbG9uZyBzaG1fYWxpZ25fbWFzayA9IFBBR0VfU0laRSAtIDE7Ci1FWFBPUlRf U1lNQk9MKHNobV9hbGlnbl9tYXNrKTsKKyNpbmNsdWRlIDxhc20vc3lzY2FsbHMuaD4KIAotYXNt bGlua2FnZSB1bnNpZ25lZCBsb25nCithc21saW5rYWdlIGxvbmcKIHN5c19tbWFwMih1bnNpZ25l ZCBsb25nIGFkZHIsIHVuc2lnbmVkIGxvbmcgbGVuLCB1bnNpZ25lZCBsb25nIHByb3QsCiAJICB1 bnNpZ25lZCBsb25nIGZsYWdzLCB1bnNpZ25lZCBsb25nIGZkLCB1bnNpZ25lZCBsb25nIHBnb2Zm KQogewpAQCAtNjQsNyArNjQsNyBAQCBzeXNfbW1hcDIodW5zaWduZWQgbG9uZyBhZGRyLCB1bnNp Z25lZCBsb25nIGxlbiwgdW5zaWduZWQgbG9uZyBwcm90LAogICogQ2xvbmUgYSB0YXNrIC0gdGhp cyBjbG9uZXMgdGhlIGNhbGxpbmcgcHJvZ3JhbSB0aHJlYWQuCiAgKiBUaGlzIGlzIGNhbGxlZCBp bmRpcmVjdGx5IHZpYSBhIHNtYWxsIHdyYXBwZXIKICAqLwotaW50IHNjb3JlX2Nsb25lKHN0cnVj dCBwdF9yZWdzICpyZWdzKQorYXNtbGlua2FnZSBsb25nIHNjb3JlX2Nsb25lKHN0cnVjdCBwdF9y ZWdzICpyZWdzKQogewogCXVuc2lnbmVkIGxvbmcgY2xvbmVfZmxhZ3M7CiAJdW5zaWduZWQgbG9u ZyBuZXdzcDsKQEAgLTg1LDMzICs4NSwyNSBAQCBpbnQgc2NvcmVfY2xvbmUoc3RydWN0IHB0X3Jl Z3MgKnJlZ3MpCiAgKiBzeXNfZXhlY3ZlKCkgZXhlY3V0ZXMgYSBuZXcgcHJvZ3JhbS4KICAqIFRo aXMgaXMgY2FsbGVkIGluZGlyZWN0bHkgdmlhIGEgc21hbGwgd3JhcHBlcgogICovCi1pbnQgc2Nv cmVfZXhlY3ZlKHN0cnVjdCBwdF9yZWdzICpyZWdzKQorYXNtbGlua2FnZSBsb25nIHNjb3JlX2V4 ZWN2ZShzdHJ1Y3QgcHRfcmVncyAqcmVncykKIHsKIAlpbnQgZXJyb3I7CiAJY2hhciAqZmlsZW5h bWU7CiAKLQlmaWxlbmFtZSA9IGdldG5hbWUoKGNoYXIgKikgKGxvbmcpIHJlZ3MtPnJlZ3NbNF0p OworCWZpbGVuYW1lID0gZ2V0bmFtZSgoY2hhciBfX3VzZXIgKilyZWdzLT5yZWdzWzRdKTsKIAll cnJvciA9IFBUUl9FUlIoZmlsZW5hbWUpOwogCWlmIChJU19FUlIoZmlsZW5hbWUpKQogCQlyZXR1 cm4gZXJyb3I7CiAKLQllcnJvciA9IGRvX2V4ZWN2ZShmaWxlbmFtZSwgKGNoYXIgKiopIChsb25n KSByZWdzLT5yZWdzWzVdLAotCQkJICAoY2hhciAqKikgKGxvbmcpIHJlZ3MtPnJlZ3NbNl0sIHJl Z3MpOworCWVycm9yID0gZG9fZXhlY3ZlKGZpbGVuYW1lLAorCQkJKGNoYXIgX191c2VyICogX191 c2VyICopKGxvbmcpcmVncy0+cmVnc1s1XSwKKwkJCShjaGFyIF9fdXNlciAqIF9fdXNlciAqKShs b25nKXJlZ3MtPnJlZ3NbNl0sIHJlZ3MpOwogCiAJcHV0bmFtZShmaWxlbmFtZSk7CiAJcmV0dXJu IGVycm9yOwogfQogCiAvKgotICogSWYgd2UgZXZlciBjb21lIGhlcmUgdGhlIHVzZXIgc3AgaXMg YmFkLiAgWmFwIHRoZSBwcm9jZXNzIHJpZ2h0IGF3YXkuCi0gKiBEdWUgdG8gdGhlIGJhZCBzdGFj ayBzaWduYWxpbmcgd291bGRuJ3Qgd29yay4KLSAqLwotdm9pZCBiYWRfc3RhY2sodm9pZCkKLXsK LQlkb19leGl0KFNJR1NFR1YpOwotfQotCi0vKgogICogRG8gYSBzeXN0ZW0gY2FsbCBmcm9tIGtl cm5lbCBpbnN0ZWFkIG9mIGNhbGxpbmcgc3lzX2V4ZWN2ZSBzbyB3ZQogICogZW5kIHVwIHdpdGgg cHJvcGVyIHB0X3JlZ3MuCiAgKi8KZGlmZiAtLWdpdCBhL2FyY2gvc2NvcmUva2VybmVsL3RpbWUu YyBiL2FyY2gvc2NvcmUva2VybmVsL3RpbWUuYwppbmRleCBjZDY2YmEzLi5mMGE0M2FmIDEwMDY0 NAotLS0gYS9hcmNoL3Njb3JlL2tlcm5lbC90aW1lLmMKKysrIGIvYXJjaC9zY29yZS9rZXJuZWwv dGltZS5jCkBAIC0yOCw3ICsyOCw3IEBACiAKICNpbmNsdWRlIDxhc20vc2NvcmVyZWdzLmg+CiAK LWlycXJldHVybl90IHRpbWVyX2ludGVycnVwdChpbnQgaXJxLCB2b2lkICpkZXZfaWQpCitzdGF0 aWMgaXJxcmV0dXJuX3QgdGltZXJfaW50ZXJydXB0KGludCBpcnEsIHZvaWQgKmRldl9pZCkKIHsK IAlzdHJ1Y3QgY2xvY2tfZXZlbnRfZGV2aWNlICpldmRldiA9IGRldl9pZDsKIApkaWZmIC0tZ2l0 IGEvYXJjaC9zY29yZS9tbS9pbml0LmMgYi9hcmNoL3Njb3JlL21tL2luaXQuYwppbmRleCA3Nzgw ZWVjLi5lNWY2ZjJlIDEwMDY0NAotLS0gYS9hcmNoL3Njb3JlL21tL2luaXQuYworKysgYi9hcmNo L3Njb3JlL21tL2luaXQuYwpAQCAtMzIsNDQgKzMyLDMwIEBACiAjaW5jbHVkZSA8bGludXgvcGFn ZW1hcC5oPgogI2luY2x1ZGUgPGxpbnV4L3Byb2NfZnMuaD4KICNpbmNsdWRlIDxsaW51eC9zY2hl ZC5oPgotI2luY2x1ZGUgPGFzbS1nZW5lcmljL3NlY3Rpb25zLmg+CisjaW5jbHVkZSA8bGludXgv aW5pdHJkLmg+CiAKKyNpbmNsdWRlIDxhc20vc2VjdGlvbnMuaD4KICNpbmNsdWRlIDxhc20vdGxi Lmg+CiAKIERFRklORV9QRVJfQ1BVKHN0cnVjdCBtbXVfZ2F0aGVyLCBtbXVfZ2F0aGVycyk7CiAK LS8qCi0gKiBXZSBoYXZlIHVwIHRvIDggZW1wdHkgemVyb2VkIHBhZ2VzIHNvIHdlIGNhbiBtYXAg b25lIG9mIHRoZSByaWdodCBjb2xvdXIKLSAqIHdoZW4gbmVlZGVkLgotICovCi11bnNpZ25lZCBs b25nIHplcm9fcGFnZV9tYXNrOwogdW5zaWduZWQgbG9uZyBlbXB0eV96ZXJvX3BhZ2U7CiBFWFBP UlRfU1lNQk9MX0dQTChlbXB0eV96ZXJvX3BhZ2UpOwogCiBzdGF0aWMgc3RydWN0IGtjb3JlX2xp c3Qga2NvcmVfbWVtLCBrY29yZV92bWFsbG9jOwogCi11bnNpZ25lZCBsb25nIHNldHVwX3plcm9f cGFnZXModm9pZCkKK3N0YXRpYyB1bnNpZ25lZCBsb25nIHNldHVwX3plcm9fcGFnZSh2b2lkKQog ewotCXVuc2lnbmVkIGludCBvcmRlciA9IDA7Ci0JdW5zaWduZWQgbG9uZyBzaXplOwogCXN0cnVj dCBwYWdlICpwYWdlOwogCi0JZW1wdHlfemVyb19wYWdlID0gX19nZXRfZnJlZV9wYWdlcyhHRlBf S0VSTkVMIHwgX19HRlBfWkVSTywgb3JkZXIpOworCWVtcHR5X3plcm9fcGFnZSA9IF9fZ2V0X2Zy ZWVfcGFnZXMoR0ZQX0tFUk5FTCB8IF9fR0ZQX1pFUk8sIDApOwogCWlmICghZW1wdHlfemVyb19w YWdlKQogCQlwYW5pYygiT2ggYm95LCB0aGF0IGVhcmx5IG91dCBvZiBtZW1vcnk/Iik7CiAKIAlw YWdlID0gdmlydF90b19wYWdlKCh2b2lkICopIGVtcHR5X3plcm9fcGFnZSk7Ci0Jc3BsaXRfcGFn ZShwYWdlLCBvcmRlcik7Ci0Jd2hpbGUgKHBhZ2UgPCB2aXJ0X3RvX3BhZ2UoKHZvaWQgKikgKGVt cHR5X3plcm9fcGFnZSArCi0JCQkJCSAgICAgKFBBR0VfU0laRSA8PCBvcmRlcikpKSkgewotCQlT ZXRQYWdlUmVzZXJ2ZWQocGFnZSk7Ci0JCXBhZ2UrKzsKLQl9Ci0KLQlzaXplID0gUEFHRV9TSVpF IDw8IG9yZGVyOwotCXplcm9fcGFnZV9tYXNrID0gKHNpemUgLSAxKSAmIFBBR0VfTUFTSzsKKwlT ZXRQYWdlUmVzZXJ2ZWQocGFnZSk7CiAKLQlyZXR1cm4gMVVMIDw8IG9yZGVyOworCXJldHVybiAx VUw7CiB9CiAKICNpZm5kZWYgQ09ORklHX05FRURfTVVMVElQTEVfTk9ERVMKQEAgLTEwMCw3ICs4 Niw3IEBAIHZvaWQgX19pbml0IG1lbV9pbml0KHZvaWQpCiAJbWF4X21hcG5yID0gbWF4X2xvd19w Zm47CiAJaGlnaF9tZW1vcnkgPSAodm9pZCAqKSBfX3ZhKG1heF9sb3dfcGZuIDw8IFBBR0VfU0hJ RlQpOwogCXRvdGFscmFtX3BhZ2VzICs9IGZyZWVfYWxsX2Jvb3RtZW0oKTsKLQl0b3RhbHJhbV9w YWdlcyAtPSBzZXR1cF96ZXJvX3BhZ2VzKCk7CS8qIFNldHVwIHplcm9lZCBwYWdlcy4gKi8KKwl0 b3RhbHJhbV9wYWdlcyAtPSBzZXR1cF96ZXJvX3BhZ2UoKTsJLyogU2V0dXAgemVyb2VkIHBhZ2Vz LiAqLwogCXJlc2VydmVkcGFnZXMgPSAwOwogCiAJZm9yICh0bXAgPSAwOyB0bXAgPCBtYXhfbG93 X3BmbjsgdG1wKyspCkBAIC0xMjksNyArMTE1LDggQEAgdm9pZCBfX2luaXQgbWVtX2luaXQodm9p ZCkKIH0KICNlbmRpZiAvKiAhQ09ORklHX05FRURfTVVMVElQTEVfTk9ERVMgKi8KIAotdm9pZCBm cmVlX2luaXRfcGFnZXMoY29uc3QgY2hhciAqd2hhdCwgdW5zaWduZWQgbG9uZyBiZWdpbiwgdW5z aWduZWQgbG9uZyBlbmQpCitzdGF0aWMgdm9pZAorZnJlZV9pbml0X3BhZ2VzKGNvbnN0IGNoYXIg KndoYXQsIHVuc2lnbmVkIGxvbmcgYmVnaW4sIHVuc2lnbmVkIGxvbmcgZW5kKQogewogCXVuc2ln bmVkIGxvbmcgcGZuOwogCkBAIC0xNTAsOCArMTM3LDggQEAgdm9pZCBmcmVlX2luaXRfcGFnZXMo Y29uc3QgY2hhciAqd2hhdCwgdW5zaWduZWQgbG9uZyBiZWdpbiwgdW5zaWduZWQgbG9uZyBlbmQp CiB2b2lkIGZyZWVfaW5pdHJkX21lbSh1bnNpZ25lZCBsb25nIHN0YXJ0LCB1bnNpZ25lZCBsb25n IGVuZCkKIHsKIAlmcmVlX2luaXRfcGFnZXMoImluaXRyZCBtZW1vcnkiLAotCXZpcnRfdG9fcGh5 cygodm9pZCAqKSBzdGFydCksCi0JdmlydF90b19waHlzKCh2b2lkICopIGVuZCkpOworCQkJdmly dF90b19waHlzKCh2b2lkICopIHN0YXJ0KSwKKwkJCXZpcnRfdG9fcGh5cygodm9pZCAqKSBlbmQp KTsKIH0KICNlbmRpZgogCi0tIAoxLjYuMgoK --=_mixed 003E9940482575E4_=-- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/