Re: PATCH: Arla CVS Current on Linux 2.6.24-2.6.35-rc1
Bo Brantén <[email protected]> Sat, 5 Jun 2010 18:36:10 +0200 (CEST)
| Newsgroups | gmane.comp.file-systems.arla.general |
|---|---|
| Message-ID | <[email protected]> |
This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. ---2098261369-518684459-1275755770=:549032 Content-Type: TEXT/PLAIN; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Updated to the latest kernel. Bo Brant=E9n ---2098261369-518684459-1275755770=:549032 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=patch-arla-cvs-Linux3 Content-Transfer-Encoding: BASE64 Content-ID: <[email protected]> Content-Description: Content-Disposition: attachment; filename=patch-arla-cvs-Linux3 ZGlmZiAtdXByTiBhcmxhLWN2cy9ubnBmcy9saW51eC9ubnBmc19ibG9ja3Mu YyBhcmxhLWN2cy1uZXcvbm5wZnMvbGludXgvbm5wZnNfYmxvY2tzLmMNCi0t LSBhcmxhLWN2cy9ubnBmcy9saW51eC9ubnBmc19ibG9ja3MuYwkyMDA4LTAz LTA4IDIyOjM4OjE2LjAwMDAwMDAwMCArMDEwMA0KKysrIGFybGEtY3ZzLW5l dy9ubnBmcy9saW51eC9ubnBmc19ibG9ja3MuYwkyMDEwLTA2LTAzIDIzOjMy OjA4LjIzMjYxMTM4MyArMDIwMA0KQEAgLTM0MCw2ICszNDAsMTAgQEAgbm5w ZnNfYmxvY2tfb3BlbihzdHJ1Y3Qgbm5wZnNfbm9kZSAqbm9kZQ0KICAgICB1 aWRfdCBzYXZldWlkOw0KICAgICBnaWRfdCBzYXZlZ2lkOw0KICAgICBpbnQg cmV0Ow0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPj0gS0VSTkVMX1ZFUlNJ T04oMiw2LDI5KQ0KKyAgICBjb25zdCBzdHJ1Y3QgY3JlZCAqb2xkX2NyZWQ7 DQorICAgIHN0cnVjdCBjcmVkICpvdmVycmlkZV9jcmVkOw0KKyNlbmRpZg0K IA0KICAgICBCVUdfT04oIW5ucGZzcCk7DQogICAgIEJVR19PTihmbGFncyAm IE9fQ1JFQVQgJiYgZmlsZSAhPSBOVUxMKTsNCkBAIC0zNjQsMTAgKzM2OCwy MSBAQCBubnBmc19ibG9ja19vcGVuKHN0cnVjdCBubnBmc19ub2RlICpub2Rl DQogICAgIEJVR19PTighbm5wZnNwLT5jYWNoZWRpciB8fCAhbm5wZnNwLT5j YWNoZXJvb3QpOw0KICAgICANCiAgICAgLyogdXNlIHRoZSBuZnNkIHRyaWNr IHRvIGdpdmUgdXMgYWNjZXNzICovDQorI2lmIExJTlVYX1ZFUlNJT05fQ09E RSA8PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQogICAgIHNhdmV1aWQgPSBj dXJyZW50LT5mc3VpZDsNCiAgICAgc2F2ZWdpZCA9IGN1cnJlbnQtPmZzZ2lk Ow0KICAgICBjdXJyZW50LT5mc3VpZCA9IG5ucGZzcC0+dWlkOw0KICAgICBj dXJyZW50LT5mc2dpZCA9IG5ucGZzcC0+Z2lkOw0KKyNlbHNlDQorICAgIHNh dmV1aWQgPSBjdXJyZW50X2ZzdWlkKCk7DQorICAgIHNhdmVnaWQgPSBjdXJy ZW50X2ZzZ2lkKCk7DQorICAgIG92ZXJyaWRlX2NyZWQgPSBwcmVwYXJlX2Ny ZWRzKCk7DQorICAgIGlmICghb3ZlcnJpZGVfY3JlZCkNCisgICAgICAgIHJl dHVybiAtRU5PTUVNOw0KKyAgICBvdmVycmlkZV9jcmVkLT5mc3VpZCA9IG5u cGZzcC0+dWlkOw0KKyAgICBvdmVycmlkZV9jcmVkLT5mc2dpZCA9IG5ucGZz cC0+Z2lkOw0KKyAgICBvbGRfY3JlZCA9IG92ZXJyaWRlX2NyZWRzKG92ZXJy aWRlX2NyZWQpOw0KKyNlbmRpZg0KIA0KICAgICByZXQgPSB2ZnNfcGF0aF9s b29rdXAobm5wZnNwLT5jYWNoZWRpciwgbm5wZnNwLT5jYWNoZXJvb3QsDQog CQkJICBjYWNoZW5hbWUsDQpAQCAtNDAzLDEyICs0MTgsMjEgQEAgbm5wZnNf YmxvY2tfb3BlbihzdHJ1Y3Qgbm5wZnNfbm9kZSAqbm9kZQ0KIAlpZiAoSVNf RVJSKGRlbnRyeSkpIHsNCiAJICAgIHJldCA9IFBUUl9FUlIoZGVudHJ5KTsN CiAJfSBlbHNlIHsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVM X1ZFUlNJT04oMiw2LDI1KQ0KIAkgICAgcmV0ID0gdmZzX2NyZWF0ZShuZC5k ZW50cnktPmRfaW5vZGUsIGRlbnRyeSwgU19JUlVTUnxTX0lXVVNSLCAmbmQp Ow0KKyNlbHNlDQorCSAgICByZXQgPSB2ZnNfY3JlYXRlKG5kLnBhdGguZGVu dHJ5LT5kX2lub2RlLCBkZW50cnksIFNfSVJVU1J8U19JV1VTUiwgJm5kKTsN CisjZW5kaWYNCiAJICAgIGRwdXQoZGVudHJ5KTsNCiAJfQ0KIA0KKyNpZiBM SU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjUpDQog CW11dGV4X3VubG9jaygmbmQuZGVudHJ5LT5kX2lub2RlLT5pX211dGV4KTsN CiAJcGF0aF9yZWxlYXNlKCZuZCk7DQorI2Vsc2UNCisJbXV0ZXhfdW5sb2Nr KCZuZC5wYXRoLmRlbnRyeS0+ZF9pbm9kZS0+aV9tdXRleCk7DQorCXBhdGhf cHV0KCZuZC5wYXRoKTsNCisjZW5kaWYNCiANCiAJaWYgKHJldCkgew0KIAkg ICAgcHJpbnRrKCJubnBmc19ibG9ja19vcGVuKCVzKSBjcmVhdGUgZmFpbGVk OiAlZFxuIiwgY2FjaGVuYW1lLCAtcmV0KTsNCkBAIC00MjIsMTIgKzQ0Niwy MiBAQCBubnBmc19ibG9ja19vcGVuKHN0cnVjdCBubnBmc19ub2RlICpub2Rl DQogCSAgICByZXQgPSBubnBmc19ibG9ja19leHRlbmQobm9kZSwgb2Zmc2V0 KTsNCiAJfQ0KICAgICB9IGVsc2Ugew0KKyNpZiBMSU5VWF9WRVJTSU9OX0NP REUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjUpDQogCXN0cnVjdCBmaWxlICpm ID0gZGVudHJ5X29wZW4obmQuZGVudHJ5LCBuZC5tbnQsIGZsYWdzKTsNCisj ZWxpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYs MjkpDQorCXN0cnVjdCBmaWxlICpmID0gZGVudHJ5X29wZW4obmQucGF0aC5k ZW50cnksIG5kLnBhdGgubW50LCBmbGFncyk7DQorI2Vsc2UNCisgICAgICAg IHN0cnVjdCBmaWxlICpmID0gZGVudHJ5X29wZW4obmQucGF0aC5kZW50cnks IG5kLnBhdGgubW50LCBmbGFncywgY3VycmVudF9jcmVkKCkpOw0KKyNlbmRp Zg0KIAlpZiAoSVNfRVJSKGYpKSB7DQogCSAgICByZXQgPSBQVFJfRVJSKGYp Ow0KIAkgICAgcHJpbnRrKCJubnBmc19ibG9ja19vcGVuKCVzKSBvcGVuIGZh aWxlZDogJWRcbiIsIGNhY2hlbmFtZSwgLXJldCk7DQogCSAgICBubnBmc19k ZWJ1Z19vb3BzKCk7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8IEtFUk5F TF9WRVJTSU9OKDIsNiwyNSkNCiAJICAgIHBhdGhfcmVsZWFzZSgmbmQpOw0K KyNlbHNlDQorCSAgICBwYXRoX3B1dCgmbmQucGF0aCk7DQorI2VuZGlmDQog CX0gZWxzZSB7DQogCSAgICAqZmlsZSA9IGY7DQogCX0NCkBAIC00MzYsOCAr NDcwLDEzIEBAIG5ucGZzX2Jsb2NrX29wZW4oc3RydWN0IG5ucGZzX25vZGUg Km5vZGUNCiAgICAgLyogcGF0aF9yZWxlYXNlKCkgaXMgdXN1YWxseSBoYW5k bGVkIG9uIGNsb3NlICovDQogDQogIG91dDoNCisjaWYgTElOVVhfVkVSU0lP Tl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9OKDIsNiwyOCkNCiAgICAgY3VycmVu dC0+ZnN1aWQgPSBzYXZldWlkOw0KICAgICBjdXJyZW50LT5mc2dpZCA9IHNh dmVnaWQ7DQorI2Vsc2UNCisgICAgcmV2ZXJ0X2NyZWRzKG9sZF9jcmVkKTsN CisgICAgcHV0X2NyZWQob3ZlcnJpZGVfY3JlZCk7DQorI2VuZGlmDQogDQog ICAgIHJldHVybiByZXQ7DQogfQ0KZGlmZiAtdXByTiBhcmxhLWN2cy9ubnBm cy9saW51eC9ubnBmc19pbm9kZW9wcy5jIGFybGEtY3ZzLW5ldy9ubnBmcy9s aW51eC9ubnBmc19pbm9kZW9wcy5jDQotLS0gYXJsYS1jdnMvbm5wZnMvbGlu dXgvbm5wZnNfaW5vZGVvcHMuYwkyMDA4LTAzLTA4IDIyOjQwOjEwLjAwMDAw MDAwMCArMDEwMA0KKysrIGFybGEtY3ZzLW5ldy9ubnBmcy9saW51eC9ubnBm c19pbm9kZW9wcy5jCTIwMTAtMDYtMDUgMTY6NTY6MjUuNzIyNjgxNjQ3ICsw MjAwDQpAQCAtMTM4LDEyICsxMzgsMTQgQEAgbm5wZnNfcHJpbnRfcGF0aChz dHJ1Y3QgZGVudHJ5ICpkZW50cnkpDQogICoNCiAgKi8NCiANCisjaWYgMA0K IHZvaWQNCiBubnBmc19wcmludF9sb2NrKGNoYXIgKnMsIHN0cnVjdCBzZW1h cGhvcmUgKnNlbSkNCiB7DQogICAgIE5OUEZTREVCKFhERUJMT0NLLCAoImxv Y2s6ICVzIHNlbTogJXAgY291bnQ6ICVkXG4iLA0KIAkJICAgICAgcywgc2Vt LCAoaW50KWF0b21pY19yZWFkKCZzZW0tPmNvdW50KSkpOw0KIH0NCisjZW5k aWYNCiANCiAvKg0KICAqDQpAQCAtMjQ0LDcgKzI0NiwxMSBAQCBubnBmc19s b29rdXAgKHN0cnVjdCBpbm9kZSAqZGlyLCBzdHJ1Y3QgDQogDQogCW1zZy5o ZWFkZXIub3Bjb2RlID0gTk5QRlNfTVNHX0dFVE5PREU7DQogICAgICAgICAN CisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9OKDIs NiwyOCkNCiAJbXNnLmNyZWQudWlkID0gY3VycmVudC0+dWlkOw0KKyNlbHNl DQorICAgICAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50X3VpZCgpOw0KKyNl bmRpZg0KIAltc2cuY3JlZC5wYWcgPSBubnBmc19nZXRfcGFnKCk7DQogCW1z Zy5wYXJlbnRfaGFuZGxlID0gZC0+aGFuZGxlOw0KICAgICAgICAgDQpAQCAt MzE0LDcgKzMyMCwxMSBAQCBubnBmc19vcGVuX3ZhbGlkKHN0cnVjdCBpbm9k ZSAqdnAsIHVfaW50DQogICAgICAgew0KIAlzdHJ1Y3Qgbm5wZnNfbWVzc2Fn ZV9vcGVuIG1zZzsNCiAJbXNnLmhlYWRlci5vcGNvZGUgPSBOTlBGU19NU0df T1BFTjsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJT SU9OKDIsNiwyOCkNCiAJbXNnLmNyZWQudWlkID0gY3VycmVudC0+dWlkOw0K KyNlbHNlDQorICAgICAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50X3VpZCgp Ow0KKyNlbmRpZg0KIAltc2cuY3JlZC5wYWcgPSBubnBmc19nZXRfcGFnKCk7 DQogCW1zZy5oYW5kbGUgPSB4bi0+aGFuZGxlOw0KIAltc2cudG9rZW5zID0g dG9rOw0KQEAgLTQyOSw3ICs0MzksMTEgQEAgbm5wZnNfZnN5bmNfaW50KHN0 cnVjdCBmaWxlICpmaWxlLCB1X2ludA0KIA0KIAltc2cuaGVhZGVyLm9wY29k ZSA9IE5OUEZTX01TR19QVVREQVRBOw0KIAltc2cuY3JlZC5wYWcgPSBubnBm c19nZXRfcGFnKCk7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJO RUxfVkVSU0lPTigyLDYsMjgpDQogCW1zZy5jcmVkLnVpZCA9IGN1cnJlbnQt PnVpZDsNCisjZWxzZQ0KKyAgICAgICAgbXNnLmNyZWQudWlkID0gY3VycmVu dF91aWQoKTsNCisjZW5kaWYNCiAJbXNnLmhhbmRsZSA9IHhuLT5oYW5kbGU7 DQogCW1zZy5mbGFnICAgPSBmbGFnOw0KIAltc2cub2Zmc2V0ID0gb2ZmOw0K QEAgLTQ2NCw5ICs0NzgsMTcgQEAgbm5wZnNfZnN5bmNfaW50KHN0cnVjdCBm aWxlICpmaWxlLCB1X2ludA0KICAqDQogICovDQogDQorI2lmIExJTlVYX1ZF UlNJT05fQ09ERSA8IEtFUk5FTF9WRVJTSU9OKDIsIDYsIDM1KQ0KIHN0YXRp YyBpbnQNCiBubnBmc19mc3luYyhzdHJ1Y3QgZmlsZSAqZmlsZSwgc3RydWN0 IGRlbnRyeSAqZGVudHJ5LCBpbnQgZGF0YXN5bmMpDQorI2Vsc2UNCitzdGF0 aWMgaW50DQorbm5wZnNfZnN5bmMoc3RydWN0IGZpbGUgKmZpbGUsIGludCBk YXRhc3luYykNCisjZW5kaWYNCiB7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09E RSA+PSBLRVJORUxfVkVSU0lPTigyLCA2LCAzNSkNCisgICAgc3RydWN0IGRl bnRyeSAqZGVudHJ5ID0gZmlsZS0+Zl9wYXRoLmRlbnRyeTsNCisjZW5kaWYN CiAgICAgc3RydWN0IGlub2RlICppbm9kZSA9IERFTlRSWV9UT19JTk9ERShk ZW50cnkpOw0KICAgICBzdHJ1Y3Qgbm5wZnMgKm5ucGZzcDsNCiAgICAgc3Ry dWN0IG5ucGZzX25vZGUgKnhuOw0KQEAgLTUxNSw3ICs1MzcsMTEgQEAgbm5w ZnNfYXR0cl92YWxpZChzdHJ1Y3QgaW5vZGUgKiB2cCwgdV9pbg0KICAgICAg ICAgICAgIHN0cnVjdCBubnBmc19tZXNzYWdlX2dldGF0dHIgbXNnOw0KIA0K ICAgICAgICAgICAgIG1zZy5oZWFkZXIub3Bjb2RlID0gTk5QRlNfTVNHX0dF VEFUVFI7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJORUxfVkVS U0lPTigyLDYsMjgpDQogICAgICAgICAgICAgbXNnLmNyZWQudWlkID0gY3Vy cmVudC0+dWlkOw0KKyNlbHNlDQorICAgICAgICAgICAgbXNnLmNyZWQudWlk ID0gY3VycmVudF91aWQoKTsNCisjZW5kaWYNCiAgICAgICAgICAgICBtc2cu Y3JlZC5wYWcgPSBwYWc7DQogICAgICAgICAgICAgbXNnLmhhbmRsZSA9IHhu LT5oYW5kbGU7DQogICAgICAgICAgICAgZXJyb3IgPSBubnBmc19tZXNzYWdl X3JwYyhubnBmc3AsICZtc2cuaGVhZGVyLCBzaXplb2YobXNnKSk7DQpAQCAt NTU1LDcgKzU4MSwxMSBAQCBubnBmc19yaWdodHNfdmFsaWQoc3RydWN0IGlu b2RlICogdnAsIG5uDQogICAgICAgICAgICAgc3RydWN0IG5ucGZzX21lc3Nh Z2VfZ2V0YXR0ciBtc2c7DQogDQogICAgICAgICAgICAgbXNnLmhlYWRlci5v cGNvZGUgPSBOTlBGU19NU0dfR0VUQVRUUjsNCisjaWYgTElOVVhfVkVSU0lP Tl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9OKDIsNiwyOCkNCiAgICAgICAgICAg ICBtc2cuY3JlZC51aWQgPSBjdXJyZW50LT51aWQ7DQorI2Vsc2UNCisgICAg ICAgICAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50X3VpZCgpOw0KKyNlbmRp Zg0KICAgICAgICAgICAgIG1zZy5jcmVkLnBhZyA9IHBhZzsNCiAgICAgICAg ICAgICBtc2cuaGFuZGxlID0geG4tPmhhbmRsZTsNCiAgICAgICAgICAgICBl cnJvciA9IG5ucGZzX21lc3NhZ2VfcnBjKG5ucGZzcCwgJm1zZy5oZWFkZXIs IHNpemVvZihtc2cpKTsNCkBAIC01OTYsOCArNjI2LDEzIEBAIGNoZWNrX3Jp Z2h0cyAobm5wZnNfcmlnaHRzIHJpZ2h0cywgaW50IG0NCiAgKiBXZSBkb24n dCBob2xkIGlfbXV0ZXguDQogICovDQogDQorI2lmIExJTlVYX1ZFUlNJT05f Q09ERSA8IEtFUk5FTF9WRVJTSU9OKDIsNiwyNykNCiBzdGF0aWMgaW50DQog bm5wZnNfcGVybWlzc2lvbihzdHJ1Y3QgaW5vZGUgKmlub2RlLCBpbnQgbW9k ZSwgc3RydWN0IG5hbWVpZGF0YSAqbmQpDQorI2Vsc2UNCitzdGF0aWMgaW50 DQorbm5wZnNfcGVybWlzc2lvbihzdHJ1Y3QgaW5vZGUgKmlub2RlLCBpbnQg bW9kZSkNCisjZW5kaWYNCiB7DQogICAgIGludCBlcnJvciA9IDA7DQogICAg IG5ucGZzX3BhZ190IHBhZyA9IG5ucGZzX2dldF9wYWcoKTsNCkBAIC02NDAs NyArNjc1LDExIEBAIG5ucGZzX2RvX2dldGRhdGEoc3RydWN0IG5ucGZzX25v ZGUgKnhuLCANCiAgICAgaW50IGVycm9yOw0KIA0KICAgICBtc2cuaGVhZGVy Lm9wY29kZSA9IE5OUEZTX01TR19HRVREQVRBOw0KKyNpZiBMSU5VWF9WRVJT SU9OX0NPREUgPD0gS0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0KICAgICBtc2cu Y3JlZC51aWQgPSBjdXJyZW50LT51aWQ7DQorI2Vsc2UNCisgICAgbXNnLmNy ZWQudWlkID0gY3VycmVudF91aWQoKTsNCisjZW5kaWYNCiAgICAgbXNnLmNy ZWQucGFnID0gbm5wZnNfZ2V0X3BhZygpOw0KICAgICBtc2cuaGFuZGxlID0g eG4tPmhhbmRsZTsNCiAgICAgbXNnLnRva2VucyA9IHRvazsNCkBAIC05MDcs OSArOTQ2LDE3IEBAIG5ucGZzX2NyZWF0ZShzdHJ1Y3QgaW5vZGUgKmRpciwg c3RydWN0IGQNCiAgICAgWEFfQ0xFQVIoJm1zZy5hdHRyKTsNCiAgICAgWEFf U0VUX01PREUoJm1zZy5hdHRyLCBtb2RlKTsNCiAgICAgWEFfU0VUX1RZUEUo Jm1zZy5hdHRyLCBOTlBGU19GSUxFX1JFRyk7DQorI2lmIExJTlVYX1ZFUlNJ T05fQ09ERSA8PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQogICAgIFhBX1NF VF9HSUQoJm1zZy5hdHRyLCBjdXJyZW50LT5mc2dpZCk7DQorI2Vsc2UNCisg ICAgWEFfU0VUX0dJRCgmbXNnLmF0dHIsIGN1cnJlbnRfZnNnaWQoKSk7DQor I2VuZGlmDQogICAgIG1zZy5tb2RlID0gMDsJCS8qIFhYWCAqLw0KKyNpZiBM SU5VWF9WRVJTSU9OX0NPREUgPD0gS0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0K ICAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50LT51aWQ7DQorI2Vsc2UNCisg ICAgbXNnLmNyZWQudWlkID0gY3VycmVudF91aWQoKTsNCisjZW5kaWYNCiAg ICAgbXNnLmNyZWQucGFnID0gbm5wZnNfZ2V0X3BhZygpOw0KICAgICBlcnJv ciA9IG5ucGZzX21lc3NhZ2VfcnBjKG5ucGZzcCwgJm1zZy5oZWFkZXIsIHNp emVvZihtc2cpKTsNCiAgICAgaWYgKGVycm9yID09IDApDQpAQCAtOTUwLDcg Kzk5NywxMSBAQCBubnBmc191bmxpbmsgKHN0cnVjdCBpbm9kZSAqIGRpciwg c3RydWN0DQogICAgIGlmIChzdHJsY3B5KG1zZy5uYW1lLCBkZW50cnktPmRf bmFtZS5uYW1lLCBzaXplb2YobXNnLm5hbWUpKSA+PSBOTlBGU19NQVhfTkFN RSkNCiAJcmV0dXJuIC1FTkFNRVRPT0xPTkc7DQogDQorI2lmIExJTlVYX1ZF UlNJT05fQ09ERSA8PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQogICAgIG1z Zy5jcmVkLnVpZCA9IGN1cnJlbnQtPnVpZDsNCisjZWxzZQ0KKyAgICBtc2cu Y3JlZC51aWQgPSBjdXJyZW50X3VpZCgpOw0KKyNlbmRpZg0KICAgICBtc2cu Y3JlZC5wYWcgPSBubnBmc19nZXRfcGFnKCk7DQogICAgIGVycm9yID0gbm5w ZnNfbWVzc2FnZV9ycGMobm5wZnNwLCAmbXNnLmhlYWRlciwgc2l6ZW9mKG1z ZykpOw0KICAgICBpZiAoZXJyb3IgPT0gMCkNCkBAIC05OTUsNyArMTA0Niwx MSBAQCBubnBmc19yZW5hbWUgKHN0cnVjdCBpbm9kZSAqIG9sZF9kaXIsIHN0 DQogICAgIGlmIChzdHJsY3B5KG1zZy5uZXdfbmFtZSwgbmV3X2RlbnRyeS0+ ZF9uYW1lLm5hbWUsIHNpemVvZihtc2cubmV3X25hbWUpKSA+PSBOTlBGU19N QVhfTkFNRSkNCiAJcmV0dXJuIC1FTkFNRVRPT0xPTkc7DQogCQ0KKyNpZiBM SU5VWF9WRVJTSU9OX0NPREUgPD0gS0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0K ICAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50LT51aWQ7DQorI2Vsc2UNCisg ICAgbXNnLmNyZWQudWlkID0gY3VycmVudF91aWQoKTsNCisjZW5kaWYNCiAg ICAgbXNnLmNyZWQucGFnID0gbm5wZnNfZ2V0X3BhZygpOw0KICAgICBlcnJv ciA9IG5ucGZzX21lc3NhZ2VfcnBjKG5ucGZzcCwgJm1zZy5oZWFkZXIsIHNp emVvZihtc2cpKTsNCiAgICAgaWYgKGVycm9yID09IDApDQpAQCAtMTA0NCw5 ICsxMDk5LDE3IEBAIG5ucGZzX21rZGlyKHN0cnVjdCBpbm9kZSAqIGRpciwg c3RydWN0IGQNCiAJWEFfQ0xFQVIoJm1zZy5hdHRyKTsNCiAJWEFfU0VUX01P REUoJm1zZy5hdHRyLCBtb2RlKTsNCiAJWEFfU0VUX1RZUEUoJm1zZy5hdHRy LCBOTlBGU19GSUxFX0RJUik7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8 PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQogCVhBX1NFVF9HSUQoJm1zZy5h dHRyLCBjdXJyZW50LT5mc2dpZCk7DQorI2Vsc2UNCisgICAgICAgIFhBX1NF VF9HSUQoJm1zZy5hdHRyLCBjdXJyZW50X2ZzZ2lkKCkpOw0KKyNlbmRpZg0K IA0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPD0gS0VSTkVMX1ZFUlNJT04o Miw2LDI4KQ0KIAltc2cuY3JlZC51aWQgPSBjdXJyZW50LT51aWQ7DQorI2Vs c2UNCisgICAgICAgIG1zZy5jcmVkLnVpZCA9IGN1cnJlbnRfdWlkKCk7DQor I2VuZGlmDQogCW1zZy5jcmVkLnBhZyA9IG5ucGZzX2dldF9wYWcoKTsNCiAJ ZXJyb3IgPSBubnBmc19tZXNzYWdlX3JwYyhubnBmc3AsICZtc2cuaGVhZGVy LCBzaXplb2YobXNnKSk7DQogCWlmIChlcnJvciA9PSAwKQ0KQEAgLTEwODcs NyArMTE1MCwxMSBAQCBubnBmc19ybWRpcihzdHJ1Y3QgaW5vZGUgKiBkaXIs IHN0cnVjdCBkDQogICAgIG1zZy5wYXJlbnRfaGFuZGxlID0geG4tPmhhbmRs ZTsNCiAgICAgaWYgKHN0cmxjcHkobXNnLm5hbWUsIGRlbnRyeS0+ZF9uYW1l Lm5hbWUsIHNpemVvZihtc2cubmFtZSkpID49IE5OUEZTX01BWF9OQU1FKQ0K IAkgICAgcmV0dXJuIC1FTkFNRVRPT0xPTkc7DQorI2lmIExJTlVYX1ZFUlNJ T05fQ09ERSA8PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQogICAgIG1zZy5j cmVkLnVpZCA9IGN1cnJlbnQtPnVpZDsNCisjZWxzZQ0KKyAgICBtc2cuY3Jl ZC51aWQgPSBjdXJyZW50X3VpZCgpOw0KKyNlbmRpZg0KICAgICBtc2cuY3Jl ZC5wYWcgPSBubnBmc19nZXRfcGFnKCk7DQogICAgIGVycm9yID0gbm5wZnNf bWVzc2FnZV9ycGMobm5wZnNwLCAmbXNnLmhlYWRlciwgc2l6ZW9mKG1zZykp Ow0KICAgICBpZiAoZXJyb3IgPT0gMCkNCkBAIC0xMTMyLDcgKzExOTksMTEg QEAgc3RhdGljIGludCBubnBmc19saW5rKHN0cnVjdCBkZW50cnkgKm9sZA0K IAlpZiAoc3RybGNweShtc2cubmFtZSwgbmFtZSwgc2l6ZW9mKG1zZy5uYW1l KSkgPj0gTk5QRlNfTUFYX05BTUUpDQogCSAgICByZXR1cm4gLUVOQU1FVE9P TE9ORzsNCiANCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9W RVJTSU9OKDIsNiwyOCkNCiAJbXNnLmNyZWQudWlkID0gY3VycmVudC0+dWlk Ow0KKyNlbHNlDQorICAgICAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50X3Vp ZCgpOw0KKyNlbmRpZg0KIAltc2cuY3JlZC5wYWcgPSBubnBmc19nZXRfcGFn KCk7DQogCWVycm9yID0gbm5wZnNfbWVzc2FnZV9ycGMobm5wZnNwLCAmbXNn LmhlYWRlciwgc2l6ZW9mKG1zZykpOw0KIAlpZiAoZXJyb3IgPT0gMCkNCkBA IC0xMTYxLDI5ICsxMjMyLDQ3IEBAIHN0YXRpYyBpbnQgbm5wZnNfc3ltbGlu ayhzdHJ1Y3QgaW5vZGUgKmQNCiAgICAgeG4gPSBWTk9ERV9UT19YTk9ERShk aXIpOw0KIA0KICAgICB7DQotCXN0cnVjdCBubnBmc19tZXNzYWdlX3N5bWxp bmsgbXNnOw0KKwlzdHJ1Y3Qgbm5wZnNfbWVzc2FnZV9zeW1saW5rICptc2cg PSBOVUxMOw0KIA0KLQltc2cuaGVhZGVyLm9wY29kZSA9IE5OUEZTX01TR19T WU1MSU5LOw0KLQltc2cucGFyZW50X2hhbmRsZSA9IHhuLT5oYW5kbGU7DQot CWlmIChzdHJsY3B5KG1zZy5uYW1lLCBuYW1lLCBzaXplb2YobXNnLm5hbWUp KSA+PSBOTlBGU19NQVhfTkFNRSkNCi0JICAgIHJldHVybiAtRU5BTUVUT09M T05HOw0KLQlpZiAoc3RybGNweShtc2cuY29udGVudHMsIHN5bW5hbWUsIHNp emVvZihtc2cuY29udGVudHMpKSA+PSBOTlBGU19NQVhfU1lNTElOS19DT05U RU5UKQ0KLQkgICAgcmV0dXJuIC1FTkFNRVRPT0xPTkc7DQotCVhBX0NMRUFS KCZtc2cuYXR0cik7DQotCVhBX1NFVF9NT0RFKCZtc2cuYXR0ciwgMDc3Nyk7 DQotCVhBX1NFVF9UWVBFKCZtc2cuYXR0ciwgTk5QRlNfRklMRV9MTkspOw0K LQlYQV9TRVRfR0lEKCZtc2cuYXR0ciwgY3VycmVudC0+ZnNnaWQpOw0KKwlt c2cgPSBrbWFsbG9jKHNpemVvZihzdHJ1Y3Qgbm5wZnNfbWVzc2FnZV9zeW1s aW5rKSwgR0ZQX0tFUk5FTCk7DQogDQotCW1zZy5jcmVkLnVpZCA9IGN1cnJl bnQtPnVpZDsNCi0JbXNnLmNyZWQucGFnID0gbm5wZnNfZ2V0X3BhZygpOw0K LQllcnJvciA9IG5ucGZzX21lc3NhZ2VfcnBjKG5ucGZzcCwgJm1zZy5oZWFk ZXIsIHNpemVvZihtc2cpKTsNCisJaWYgKCFtc2cpDQorCSAgcmV0dXJuIC1F Tk9NRU07DQorDQorCW1zZy0+aGVhZGVyLm9wY29kZSA9IE5OUEZTX01TR19T WU1MSU5LOw0KKwltc2ctPnBhcmVudF9oYW5kbGUgPSB4bi0+aGFuZGxlOw0K KwlpZiAoc3RybGNweShtc2ctPm5hbWUsIG5hbWUsIHNpemVvZihtc2ctPm5h bWUpKSA+PSBOTlBGU19NQVhfTkFNRSkgew0KKwkgIGtmcmVlKG1zZyk7DQor CSAgcmV0dXJuIC1FTkFNRVRPT0xPTkc7DQorCX0NCisJaWYgKHN0cmxjcHko bXNnLT5jb250ZW50cywgc3ltbmFtZSwgc2l6ZW9mKG1zZy0+Y29udGVudHMp KSA+PSBOTlBGU19NQVhfU1lNTElOS19DT05URU5UKSB7DQorCSAga2ZyZWUo bXNnKTsNCisJICByZXR1cm4gLUVOQU1FVE9PTE9ORzsNCisJfQ0KKwlYQV9D TEVBUigmbXNnLT5hdHRyKTsNCisJWEFfU0VUX01PREUoJm1zZy0+YXR0ciwg MDc3Nyk7DQorCVhBX1NFVF9UWVBFKCZtc2ctPmF0dHIsIE5OUEZTX0ZJTEVf TE5LKTsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJT SU9OKDIsNiwyOCkNCisJWEFfU0VUX0dJRCgmbXNnLT5hdHRyLCBjdXJyZW50 LT5mc2dpZCk7DQorI2Vsc2UNCisgICAgICAgIFhBX1NFVF9HSUQoJm1zZy0+ YXR0ciwgY3VycmVudF9mc2dpZCgpKTsNCisjZW5kaWYNCisNCisjaWYgTElO VVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9OKDIsNiwyOCkNCisJ bXNnLT5jcmVkLnVpZCA9IGN1cnJlbnQtPnVpZDsNCisjZWxzZQ0KKyAgICAg ICAgbXNnLT5jcmVkLnVpZCA9IGN1cnJlbnRfdWlkKCk7DQorI2VuZGlmDQor CW1zZy0+Y3JlZC5wYWcgPSBubnBmc19nZXRfcGFnKCk7DQorCWVycm9yID0g bm5wZnNfbWVzc2FnZV9ycGMobm5wZnNwLCAmbXNnLT5oZWFkZXIsIHNpemVv ZihzdHJ1Y3Qgbm5wZnNfbWVzc2FnZV9zeW1saW5rKSk7DQogCWlmIChlcnJv ciA9PSAwKQ0KLQkgICAgZXJyb3IgPSBOTlBGU19NU0dfV0FLRVVQX0VSUk9S KCZtc2cpOw0KKwkgICAgZXJyb3IgPSBOTlBGU19NU0dfV0FLRVVQX0VSUk9S KG1zZyk7DQogDQogCS8qIFhYWCBzaG91bGQgdGhpcyByZWFsbHkgYmUgaGVy ZSAqLw0KIAlpZiAoREVOVFJZX1RPX1hERU5UUlkoZGVudHJ5KS0+eGRfZmxh Z3MgPT0gMCkgew0KIAkgICAgcHJpbnRrKEtFUk5fRU1FUkcgIk5OUEZTIFBh bmljOiBubnBmc19zeW1saW5rOiBkZW50cnkgbm90IHZhbGlkXG4iKTsNCiAJ fQ0KKwlrZnJlZShtc2cpOw0KICAgICB9DQogDQogICAgIHJldHVybiBlcnJv cjsNCkBAIC0xNDAyLDcgKzE0OTEsMTEgQEAgbm5wZnNfc2V0YXR0ciAoc3Ry dWN0IGRlbnRyeSAqZGVudHJ5LCBzdA0KICAgICAgICAgc3RydWN0IG5ucGZz X21lc3NhZ2VfcHV0YXR0ciBtc2c7DQogDQogICAgICAgICBtc2cuaGVhZGVy Lm9wY29kZSA9IE5OUEZTX01TR19QVVRBVFRSOw0KKyNpZiBMSU5VWF9WRVJT SU9OX0NPREUgPD0gS0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0KIAltc2cuY3Jl ZC51aWQgPSBjdXJyZW50LT51aWQ7DQorI2Vsc2UNCisgICAgICAgIG1zZy5j cmVkLnVpZCA9IGN1cnJlbnRfdWlkKCk7DQorI2VuZGlmDQogCW1zZy5jcmVk LnBhZyA9IG5ucGZzX2dldF9wYWcoKTsNCiAgICAgICAgIG1zZy5oYW5kbGUg PSB4bi0+aGFuZGxlOw0KICAgICAgICAgbm5wZnNfaWF0dHIyYXR0cih4biwg YXR0ciwgJm1zZy5hdHRyKTsNCkBAIC0xNjcyLDExICsxNzY1LDE1IEBAIG5u cGZzX3dyaXRlX2JhY2twYWdlKHN0cnVjdCBwYWdlICpwYWdlLCANCiAJc3Ry dWN0IGFkZHJlc3Nfc3BhY2UgKm1hcHBpbmcgPSBiYWNrZmlsZS0+Zl9tYXBw aW5nOw0KIAl1bnNpZ25lZCBsZW4gPSBQQUdFX0NBQ0hFX1NJWkU7DQogCXN0 cnVjdCBwYWdlICpiYWNrcGFnZTsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RF ID49IEtFUk5FTF9WRVJTSU9OKDIsNiwyNCkNCisJdm9pZCAqZnNkYXRhOw0K KyNlbmRpZg0KIAl1bnNpZ25lZCBsb25nIG9mZnNldDsNCiANCiAJaW50IGVy cm9yOw0KIAkNCiAJZG8gew0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBL RVJORUxfVkVSU0lPTigyLDYsMjQpDQogCQliYWNrcGFnZSA9IGdyYWJfY2Fj aGVfcGFnZShtYXBwaW5nLCBubnBmc19nZXRfYmFja2luZGV4KHBhZ2UpKTsN CiAJCWlmICghYmFja3BhZ2UpIHsNCiAJCQlwcmludGsoIm5ucGZzX3dyaXRl X2JhY2twYWdlOiBubyBwYWdlXG4iKTsNCkBAIC0xNjg1LDIxICsxNzgyLDM2 IEBAIG5ucGZzX3dyaXRlX2JhY2twYWdlKHN0cnVjdCBwYWdlICpwYWdlLCAN CiANCiAJCWVycm9yID0gbWFwcGluZy0+YV9vcHMtPnByZXBhcmVfd3JpdGUo YmFja2ZpbGUsIGJhY2twYWdlLA0KIAkJCQkJCSAgICAgIDAsIGxlbik7DQor I2Vsc2UNCisJCWVycm9yID0gcGFnZWNhY2hlX3dyaXRlX2JlZ2luKGJhY2tm aWxlLCBtYXBwaW5nLCAwLCBsZW4sDQorCQkJCUFPUF9GTEFHX1VOSU5URVJS VVBUSUJMRSwgJmJhY2twYWdlLCAmZnNkYXRhKTsNCisjZW5kaWYNCiAJCWlm ICghZXJyb3IpIHsNCiAJCQljb3B5X2hpZ2hwYWdlKGJhY2twYWdlLCBwYWdl KTsNCiAJCQlmbHVzaF9kY2FjaGVfcGFnZShiYWNrcGFnZSk7DQorI2lmIExJ TlVYX1ZFUlNJT05fQ09ERSA8IEtFUk5FTF9WRVJTSU9OKDIsNiwyNCkNCiAJ CQllcnJvciA9IG1hcHBpbmctPmFfb3BzLT5jb21taXRfd3JpdGUoYmFja2Zp bGUsIGJhY2twYWdlLA0KIAkJCQkJCQkgICAgIDAsIGxlbik7DQorI2Vsc2UN CisJCQllcnJvciA9IHBhZ2VjYWNoZV93cml0ZV9lbmQoYmFja2ZpbGUsIG1h cHBpbmcsIDAsIGxlbiwNCisJCQkJCWxlbiwgYmFja3BhZ2UsIGZzZGF0YSk7 DQorCQkJaWYgKGVycm9yID4gMCkNCisJCQkJZXJyb3IgPSAwOw0KKyNlbmRp Zg0KIAkJfQ0KIAkJaWYgKGVycm9yID09IEFPUF9UUlVOQ0FURURfUEFHRSkg ew0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigy LDYsMjQpDQogCQkJcGFnZV9jYWNoZV9yZWxlYXNlKGJhY2twYWdlKTsNCisj ZW5kaWYNCiAJCQljb250aW51ZTsNCiAJCX0NCiAJfSB3aGlsZSAoMCk7DQog DQogCW9mZnNldCA9IHBhZ2Vfb2Zmc2V0KGJhY2twYWdlKTsNCisjaWYgTElO VVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oMiw2LDI0KQ0KIAl1 bmxvY2tfcGFnZShiYWNrcGFnZSk7DQogCXBhZ2VfY2FjaGVfcmVsZWFzZShi YWNrcGFnZSk7DQorI2VuZGlmDQogDQogCWlmIChlcnJvcikNCiAJCXByaW50 aygibm5wZnNfd3JpdGVfYmFja3BhZ2U6IEVJT1xuIik7DQpAQCAtMTkwNSw2 ICsyMDE3LDM0IEBAIG5ucGZzX3ByZXBhcmVfd3JpdGUoc3RydWN0IGZpbGUg KmZpbGUsIHMNCiAJcmV0dXJuIHJldDsNCiB9DQogDQorI2lmIExJTlVYX1ZF UlNJT05fQ09ERSA+PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQorDQorc3Rh dGljIGludA0KK25ucGZzX3dyaXRlX2JlZ2luKHN0cnVjdCBmaWxlICpmaWxl LCBzdHJ1Y3QgYWRkcmVzc19zcGFjZSAqbWFwcGluZywgbG9mZl90IHBvcywN Cit1bnNpZ25lZCBsZW4sIHVuc2lnbmVkIGZsYWdzLCBzdHJ1Y3QgcGFnZSAq KnBhZ2VwLCB2b2lkICoqZnNkYXRhKQ0KK3sNCisJc3RydWN0IHBhZ2UgKnBh Z2U7DQorCXBnb2ZmX3QgaW5kZXg7DQorCXVuc2lnbmVkIGZyb207DQorDQor CWluZGV4ID0gcG9zID4+IFBBR0VfQ0FDSEVfU0hJRlQ7DQorCWZyb20gPSBw b3MgJiAoUEFHRV9DQUNIRV9TSVpFIC0gMSk7DQorDQorI2lmbmRlZiBBT1Bf RkxBR19OT0ZTDQorCXBhZ2UgPSBfX2dyYWJfY2FjaGVfcGFnZShtYXBwaW5n LCBpbmRleCk7DQorI2Vsc2UNCisJcGFnZSA9IGdyYWJfY2FjaGVfcGFnZV93 cml0ZV9iZWdpbihtYXBwaW5nLCBpbmRleCwgZmxhZ3MpOw0KKyNlbmRpZg0K KwlpZiAoIXBhZ2UpDQorCQlyZXR1cm4gLUVOT01FTTsNCisNCisJKnBhZ2Vw ID0gcGFnZTsNCisNCisJcmV0dXJuIG5ucGZzX3ByZXBhcmVfd3JpdGUoZmls ZSwgcGFnZSwgZnJvbSwgZnJvbStsZW4pOw0KK30NCisNCisjZW5kaWYNCisN CiBzdGF0aWMgaW50DQogbm5wZnNfY29tbWl0X3dyaXRlKHN0cnVjdCBmaWxl ICpmaWxlLCBzdHJ1Y3QgcGFnZSAqcGFnZSwgdW5zaWduZWQgZnJvbSwgdW5z aWduZWQgdG8pDQogew0KQEAgLTE5MzUsMTQgKzIwNzUsNDUgQEAgbm5wZnNf Y29tbWl0X3dyaXRlKHN0cnVjdCBmaWxlICpmaWxlLCBzdA0KICAgICByZXR1 cm4gMDsNCiB9DQogDQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJO RUxfVkVSU0lPTigyLDYsMjgpDQorDQorc3RhdGljIGludA0KK25ucGZzX3dy aXRlX2VuZChzdHJ1Y3QgZmlsZSAqZmlsZSwgc3RydWN0IGFkZHJlc3Nfc3Bh Y2UgKm1hcHBpbmcsIGxvZmZfdCBwb3MsDQordW5zaWduZWQgbGVuLCB1bnNp Z25lZCBjb3BpZWQsIHN0cnVjdCBwYWdlICpwYWdlLCB2b2lkICpmc2RhdGEp DQorew0KKwl1bnNpZ25lZCBmcm9tID0gcG9zICYgKFBBR0VfQ0FDSEVfU0la RSAtIDEpOw0KKw0KKwkvKiB6ZXJvIHRoZSBzdGFsZSBwYXJ0IG9mIHRoZSBw YWdlIGlmIHdlIGRpZCBhIHNob3J0IGNvcHkgKi8NCisJaWYgKGNvcGllZCA8 IGxlbikgew0KKwkJdm9pZCAqa2FkZHIgPSBrbWFwX2F0b21pYyhwYWdlLCBL TV9VU0VSMCk7DQorCQltZW1zZXQoa2FkZHIgKyBmcm9tICsgY29waWVkLCAw LCBsZW4gLSBjb3BpZWQpOw0KKwkJZmx1c2hfZGNhY2hlX3BhZ2UocGFnZSk7 DQorCQlrdW5tYXBfYXRvbWljKGthZGRyLCBLTV9VU0VSMCk7DQorCX0NCisN CisJbm5wZnNfY29tbWl0X3dyaXRlKGZpbGUsIHBhZ2UsIGZyb20sIGZyb20r Y29waWVkKTsNCisNCisJdW5sb2NrX3BhZ2UocGFnZSk7DQorCXBhZ2VfY2Fj aGVfcmVsZWFzZShwYWdlKTsNCisNCisJcmV0dXJuIGNvcGllZDsNCit9DQor DQorI2VuZGlmDQorDQogI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJO RUxfVkVSU0lPTigyLDYsMTgpDQogY29uc3QNCiAjZW5kaWYNCiBzdHJ1Y3Qg YWRkcmVzc19zcGFjZV9vcGVyYXRpb25zIG5ucGZzX2FvcHMgPSB7DQogCS5y ZWFkcGFnZSA9IG5ucGZzX3JlYWRwYWdlLA0KIAkud3JpdGVwYWdlID0gbm5w ZnNfd3JpdGVwYWdlLA0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJO RUxfVkVSU0lPTigyLDYsMjgpDQogCS5wcmVwYXJlX3dyaXRlID0gbm5wZnNf cHJlcGFyZV93cml0ZSwNCiAJLmNvbW1pdF93cml0ZSA9IG5ucGZzX2NvbW1p dF93cml0ZSwNCisjZWxzZQ0KKwkud3JpdGVfYmVnaW4gPSBubnBmc193cml0 ZV9iZWdpbiwNCisJLndyaXRlX2VuZCA9IG5ucGZzX3dyaXRlX2VuZCwNCisj ZW5kaWYNCiB9Ow0KIA0KIC8qDQpkaWZmIC11cHJOIGFybGEtY3ZzL25ucGZz L2xpbnV4L25ucGZzX21lc3NhZ2UuYyBhcmxhLWN2cy1uZXcvbm5wZnMvbGlu dXgvbm5wZnNfbWVzc2FnZS5jDQotLS0gYXJsYS1jdnMvbm5wZnMvbGludXgv bm5wZnNfbWVzc2FnZS5jCTIwMDYtMTItMTEgMTc6NDA6MjQuMDAwMDAwMDAw ICswMTAwDQorKysgYXJsYS1jdnMtbmV3L25ucGZzL2xpbnV4L25ucGZzX21l c3NhZ2UuYwkyMDEwLTA2LTAzIDIzOjMyOjA4LjIzMjYxMTM4MyArMDIwMA0K QEAgLTczNSwxMiArNzM1LDIzIEBAIG5ucGZzX21lc3NhZ2VfdmVyc2lvbihz dHJ1Y3Qgbm5wZnMgKm5ucGYNCiAJCSAgICJubnBmc19tZXNzYWdlX3ZlcnNp b24gZmFpbGVkIHBhdGhfbG9va3VwLCAiDQogCQkgICAiZXJybm86ICVkXG4i LCBlcnJvcik7DQogCX0gZWxzZSB7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09E RSA8IEtFUk5FTF9WRVJTSU9OKDIsNiwyNSkNCiAJICAgIG5ucGZzcC0+Y2Fj aGVyb290ID0gbW50Z2V0KG5kLm1udCk7DQogCSAgICBubnBmc3AtPmNhY2hl ZGlyID0gZGdldChuZC5kZW50cnkpOw0KIAkgICAgcGF0aF9yZWxlYXNlKCZu ZCk7DQorI2Vsc2UNCisJICAgIG5ucGZzcC0+Y2FjaGVyb290ID0gbW50Z2V0 KG5kLnBhdGgubW50KTsNCisJICAgIG5ucGZzcC0+Y2FjaGVkaXIgPSBkZ2V0 KG5kLnBhdGguZGVudHJ5KTsNCisJICAgIHBhdGhfcHV0KCZuZC5wYXRoKTsN CisjZW5kaWYNCiAJICAgIA0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPD0g S0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0KIAkgICAgbm5wZnNwLT51aWQgPSBj dXJyZW50LT5mc3VpZDsNCiAJICAgIG5ucGZzcC0+Z2lkID0gY3VycmVudC0+ ZnNnaWQ7DQorI2Vsc2UNCisgICAgICAgICAgICBubnBmc3AtPnVpZCA9IGN1 cnJlbnRfZnN1aWQoKTsNCisgICAgICAgICAgICBubnBmc3AtPmdpZCA9IGN1 cnJlbnRfZnNnaWQoKTsNCisjZW5kaWYNCiANCiAJICAgIC8qIFhYWCB3ZSBz aG91bGQgdmFsaWRhdGUgdGhlc2UgdmFsdWVzICovDQogCSAgICBubnBmc19i bG9ja3NpemUgPSBibG9ja3NpemU7DQpkaWZmIC11cHJOIGFybGEtY3ZzL25u cGZzL2xpbnV4L25ucGZzX3N5c2NhbGxzLmMgYXJsYS1jdnMtbmV3L25ucGZz L2xpbnV4L25ucGZzX3N5c2NhbGxzLmMNCi0tLSBhcmxhLWN2cy9ubnBmcy9s aW51eC9ubnBmc19zeXNjYWxscy5jCTIwMDctMDEtMDMgMTU6MjY6MjcuMDAw MDAwMDAwICswMTAwDQorKysgYXJsYS1jdnMtbmV3L25ucGZzL2xpbnV4L25u cGZzX3N5c2NhbGxzLmMJMjAxMC0wNi0wNCAwMToxOToyMi44MzI2MDk0Mzcg KzAyMDANCkBAIC0xNDcsMTAgKzE0NywxNiBAQCBzdGF0aWMgaW50IG5ucGZz X3NlY19yZWdpc3RlcmVkID0gMDsNCiAjZGVmaW5lIFNFQzJQQUcocykgKG5u cGZzX3BhZ190KSh1bnNpZ25lZCBsb25nKShzKQ0KICNkZWZpbmUgUEFHMlNF QyhwKSAodm9pZCAqKSh1bnNpZ25lZCBsb25nKShwKQ0KIA0KKyNpZiBMSU5V WF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjQpDQorDQog c3RhdGljIGludA0KIG5ucGZzX3NlY190YXNrX2FsbG9jKHN0cnVjdCB0YXNr X3N0cnVjdCAqcCkNCiB7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBL RVJORUxfVkVSU0lPTigyLDYsMjgpDQogICAgIG5ucGZzX3BhZ190IHBhZyA9 IFNFQzJQQUcoY3VycmVudC0+c2VjdXJpdHkpOw0KKyNlbHNlDQorICAgIG5u cGZzX3BhZ190IHBhZyA9IFNFQzJQQUcoY3VycmVudF9zZWN1cml0eSgpKTsN CisjZW5kaWYNCiAgICAgaWYgKHBhZykNCiAJcC0+c2VjdXJpdHkgPSBQQUcy U0VDKHBhZyk7DQogICAgIHJldHVybiAwOw0KQEAgLTE2NCwzNSArMTcwLDU1 IEBAIG5ucGZzX3NlY190YXNrX2ZyZWUoc3RydWN0IHRhc2tfc3RydWN0ICoN CiAJcC0+c2VjdXJpdHkgPSBOVUxMOw0KIH0NCiANCisjZW5kaWYNCisNCiBz dGF0aWMgbm5wZnNfcGFnX3QNCiBubnBmc19nZXRfcGFnX3NlYyh2b2lkKQ0K IHsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9O KDIsNiwyOCkNCiAgICAgbm5wZnNfcGFnX3QgcGFnID0gU0VDMlBBRyhjdXJy ZW50LT5zZWN1cml0eSk7DQorI2Vsc2UNCisgICAgbm5wZnNfcGFnX3QgcGFn ID0gU0VDMlBBRyhjdXJyZW50X3NlY3VyaXR5KCkpOw0KKyNlbmRpZg0KICAg ICBpZiAocGFnKQ0KIAlyZXR1cm4gcGFnOw0KIA0KKyNpZiBMSU5VWF9WRVJT SU9OX0NPREUgPD0gS0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0KICAgICByZXR1 cm4gY3VycmVudC0+dWlkOw0KKyNlbHNlDQorICAgIHJldHVybiBjdXJyZW50 X3VpZCgpOw0KKyNlbmRpZg0KIH0NCiANCiBzdGF0aWMgaW50DQogbm5wZnNf c2V0X3BhZ19zZWModm9pZCkNCiB7DQogICAgIHN0YXRpYyBubnBmc19wYWdf dCBwYWdudW0gPSBOTlBGU19QQUdfTExJTTsNCisjaWYgTElOVVhfVkVSU0lP Tl9DT0RFID49IEtFUk5FTF9WRVJTSU9OKDIsNiwyOSkNCisgICAgc3RydWN0 IGNyZWQgKmNyZWQ7DQorI2VuZGlmDQogDQogICAgIGlmIChwYWdudW0gPT0g Tk5QRlNfUEFHX1VMSU0pDQogCXJldHVybiAtRU5PTUVNOw0KICAgICAvKiBw YWdudW0gPSBOTlBGU19QQUdfTExJTTsgKi8NCiAgICAgDQorI2lmIExJTlVY X1ZFUlNJT05fQ09ERSA8PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQogICAg IGN1cnJlbnQtPnNlY3VyaXR5ID0gUEFHMlNFQyhwYWdudW0pOw0KKyNlbHNl DQorICAgIGNyZWQgPSAoc3RydWN0IGNyZWQgKikgY3VycmVudC0+Y3JlZDsN CisgICAgY3JlZC0+c2VjdXJpdHkgPSBQQUcyU0VDKHBhZ251bSk7DQorI2Vu ZGlmDQogICAgIHBhZ251bSsrOw0KICAgICByZXR1cm4gMDsNCiB9DQogDQor I2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8IEtFUk5FTF9WRVJTSU9OKDIsNiwy NCkNCiBzdGF0aWMgc3RydWN0IHNlY3VyaXR5X29wZXJhdGlvbnMgbm5wZnNf c2VjX29wcyA9IHsNCiAgICAgLnRhc2tfYWxsb2Nfc2VjdXJpdHkgPSBubnBm c19zZWNfdGFza19hbGxvYywNCiAgICAgLnRhc2tfZnJlZV9zZWN1cml0eSA9 IG5ucGZzX3NlY190YXNrX2ZyZWUsDQogLy8gICAgLnRhc2tfcmVwYXJlbnRf dG9faW5pdCA9IG5ucGZzX3NlY19yZXBhcmVudF90b19pbml0LA0KIH07DQor I2VuZGlmDQogDQogI2VuZGlmIC8qIENPTkZJR19TRUNVUklUWSAqLw0KIA0K QEAgLTIyMiw4ICsyNDgsMTMgQEAgZmluZF9wYWcoc3RydWN0IGdyb3VwX2lu Zm8gKmdpKQ0KIHN0YXRpYyBubnBmc19wYWdfdA0KIG5ucGZzX2dldF9wYWdf Z3JvdXAodm9pZCkNCiB7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBL RVJORUxfVkVSU0lPTigyLDYsMjgpDQogICAgIHN0cnVjdCBncm91cF9pbmZv ICpnaSA9IGN1cnJlbnQtPmdyb3VwX2luZm87DQogICAgIG5ucGZzX3BhZ190 IHJldCA9IGN1cnJlbnQtPnVpZDsNCisjZWxzZQ0KKyAgICBzdHJ1Y3QgZ3Jv dXBfaW5mbyAqZ2kgPSBnZXRfY3VycmVudF9ncm91cHMoKTsNCisgICAgbm5w ZnNfcGFnX3QgcmV0ID0gY3VycmVudF91aWQoKTsNCisjZW5kaWYNCiAgICAg aW50IGk7DQogDQogICAgIGdldF9ncm91cF9pbmZvKGdpKTsNCkBAIC0yNDIs OSArMjczLDE3IEBAIG5ucGZzX2dldF9wYWdfZ3JvdXAodm9pZCkNCiBzdGF0 aWMgaW50DQogc3RvcmVfcGFnKG5ucGZzX3BhZ190IHBhZ251bSkNCiB7DQor I2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJORUxfVkVSU0lPTigyLDYs MjgpDQogICAgIHN0cnVjdCBncm91cF9pbmZvICpvbGRfZ2kgPSBjdXJyZW50 LT5ncm91cF9pbmZvOw0KKyNlbHNlDQorICAgc3RydWN0IGdyb3VwX2luZm8g Km9sZF9naSA9IGdldF9jdXJyZW50X2dyb3VwcygpOw0KKyNlbmRpZg0KICAg ICBzdHJ1Y3QgZ3JvdXBfaW5mbyAqbmV3X2dpOw0KKyNpZiBMSU5VWF9WRVJT SU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjUpDQogICAgIGludCBu YmxvY2tzLCBjb3VudDsNCisjZWxzZQ0KKyAgICB1bnNpZ25lZCBpbnQgbmJs b2NrcywgY291bnQ7DQorI2VuZGlmDQogICAgIGludCBmb3VuZCA9IDA7DQog ICAgIGludCBpLCBrOw0KICAgICANCkBAIC0zMTcsNyArMzU2LDExIEBAIG5u cGZzX2dldF9wYWcoKQ0KICAgICByZXR1cm4gbm5wZnNfZ2V0X3BhZ19ncm91 cCgpOw0KICNlbmRpZiAvKiBHUk9VUFBBR1MgKi8NCiANCisjaWYgTElOVVhf VkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9OKDIsNiwyOCkNCiAgICAg cmV0dXJuIGN1cnJlbnQtPnVpZDsNCisjZWxzZQ0KKyAgICByZXR1cm4gY3Vy cmVudF91aWQoKTsNCisjZW5kaWYNCiB9DQogDQogc3RhdGljIGlubGluZSBp bnQNCkBAIC01MjgsNyArNTcxLDExIEBAIHVzZXJfcGF0aDJkZW50cnkgKHN0 cnVjdCBuYW1laWRhdGEgKm5kLCANCiAgICAgcHV0bmFtZShrbmFtZSk7DQog ICAgIGlmIChlcnJvcikNCiAJcmV0dXJuIEVSUl9QVFIoZXJyb3IpOw0KKyNp ZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjUp DQogICAgIHJldHVybiBuZC0+ZGVudHJ5Ow0KKyNlbHNlDQorICAgIHJldHVy biBuZC0+cGF0aC5kZW50cnk7DQorI2VuZGlmDQogfQ0KIA0KIGFzbWxpbmth Z2UgbG9uZw0KQEAgLTU0MCwxMSArNTg3LDE2IEBAIHN5c19hZnNfaW50IChp bnQgb3BlcmF0aW9uLA0KIHsNCiAgICAgbG9uZyBlcnJvciA9IDA7DQogICAg IHN0cnVjdCBhcmxhVmljZUlvY3RsIHZpY2VfaW9jdGw7IA0KLSAgICBzdHJ1 Y3Qgbm5wZnNfbWVzc2FnZV9waW9jdGwgbXNnOw0KKyAgICBzdHJ1Y3Qgbm5w ZnNfbWVzc2FnZV9waW9jdGwgKm1zZyA9IE5VTEw7DQogICAgIHN0cnVjdCBu bnBmc19tZXNzYWdlX3dha2V1cCAqbXNnMjsNCiAgICAgc3RydWN0IGRlbnRy eSAqZGVudHJ5ID0gTlVMTDsNCiAgICAgc3RydWN0IG5hbWVpZGF0YSBuZDsN Ci0gICAgDQorDQorICAgIG1zZyA9IGttYWxsb2Moc2l6ZW9mKHN0cnVjdCBu bnBmc19tZXNzYWdlX3Bpb2N0bCksIEdGUF9LRVJORUwpOw0KKw0KKyAgICBp ZiAoIW1zZykNCisgICAgICByZXR1cm4gLUVOT01FTTsNCisNCiAgICAgbG9j a19rZXJuZWwoKTsNCiANCiAgICAgTk5QRlNERUIoWERFQlNZUywgKCJzeXNf YWZzIGtlcm5lbCBsb2NrZWRcbiIpKTsNCkBAIC01NzUsNyArNjI3LDcgQEAg c3lzX2Fmc19pbnQgKGludCBvcGVyYXRpb24sDQogCSAgICBnb3RvIHVubG9j azsNCiAJfQ0KIAlpZiAodmljZV9pb2N0bC5pbl9zaXplICE9IDApIHsNCi0J ICAgIGlmKGNvcHlfZnJvbV91c2VyKCZtc2cubXNnLA0KKwkgICAgaWYoY29w eV9mcm9tX3VzZXIoJm1zZy0+bXNnLA0KIAkJCSAgICAgIHZpY2VfaW9jdGwu aW4sDQogCQkJICAgICAgdmljZV9pb2N0bC5pbl9zaXplKSAhPSAwKSB7DQog CQllcnJvciA9IC1FRkFVTFQ7DQpAQCAtNjI4LDE5ICs2ODAsMjMgQEAgc3lz X2Fmc19pbnQgKGludCBvcGVyYXRpb24sDQogCQllcnJvciA9IC1FSU5WQUw7 DQogCQlnb3RvIHVubG9jazsNCiAJICAgIH0NCi0JICAgIG1zZy5oYW5kbGUg PSB4bi0+aGFuZGxlOw0KKwkgICAgbXNnLT5oYW5kbGUgPSB4bi0+aGFuZGxl Ow0KIAl9DQogDQotCW1zZy5oZWFkZXIub3Bjb2RlID0gTk5QRlNfTVNHX1BJ T0NUTDsNCi0JbXNnLm9wY29kZSA9IGFfb3Bjb2RlOw0KKwltc2ctPmhlYWRl ci5vcGNvZGUgPSBOTlBGU19NU0dfUElPQ1RMOw0KKwltc2ctPm9wY29kZSA9 IGFfb3Bjb2RlOw0KIAkNCi0JbXNnLmluc2l6ZSAgID0gdmljZV9pb2N0bC5p bl9zaXplOw0KLQltc2cub3V0c2l6ZSAgPSB2aWNlX2lvY3RsLm91dF9zaXpl Ow0KLQltc2cuY3JlZC51aWQgPSBjdXJyZW50LT51aWQ7DQotCW1zZy5jcmVk LnBhZyA9IG5ucGZzX2dldF9wYWcoKTsNCisJbXNnLT5pbnNpemUgICA9IHZp Y2VfaW9jdGwuaW5fc2l6ZTsNCisJbXNnLT5vdXRzaXplICA9IHZpY2VfaW9j dGwub3V0X3NpemU7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJO RUxfVkVSU0lPTigyLDYsMjgpDQorCW1zZy0+Y3JlZC51aWQgPSBjdXJyZW50 LT51aWQ7DQorI2Vsc2UNCisgICAgICAgIG1zZy0+Y3JlZC51aWQgPSBjdXJy ZW50X3VpZCgpOw0KKyNlbmRpZg0KKwltc2ctPmNyZWQucGFnID0gbm5wZnNf Z2V0X3BhZygpOw0KIAkNCi0JZXJyb3IgPSBubnBmc19tZXNzYWdlX3JwYygm bm5wZnNbMF0sICZtc2cuaGVhZGVyLCBzaXplb2YobXNnKSk7IC8qIFhYWCAq Lw0KLQltc2cyID0gKHN0cnVjdCBubnBmc19tZXNzYWdlX3dha2V1cCAqKSAm bXNnOw0KKwllcnJvciA9IG5ucGZzX21lc3NhZ2VfcnBjKCZubnBmc1swXSwg Jm1zZy0+aGVhZGVyLCBzaXplb2Yoc3RydWN0IG5ucGZzX21lc3NhZ2VfcGlv Y3RsKSk7IC8qIFhYWCAqLw0KKwltc2cyID0gKHN0cnVjdCBubnBmc19tZXNz YWdlX3dha2V1cCAqKSBtc2c7DQogCWlmIChlcnJvciA9PSAwKQ0KIAkgICAg ZXJyb3IgPSBtc2cyLT5lcnJvcjsNCiANCkBAIC02NzUsMTEgKzczMSwxNiBA QCBzeXNfYWZzX2ludCAoaW50IG9wZXJhdGlvbiwNCiAgICAgDQogIHVubG9j azoNCiAgICAgaWYgKGRlbnRyeSkNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RF IDwgS0VSTkVMX1ZFUlNJT04oMiw2LDI1KQ0KIAlwYXRoX3JlbGVhc2UoJm5k KTsNCisjZWxzZQ0KKwlwYXRoX3B1dCgmbmQucGF0aCk7DQorI2VuZGlmDQog DQogICAgIE5OUEZTREVCKFhERUJTWVMsICgibm5wZnNfc3lzY2FsbCByZXR1 cm5zIGVycm9yOiAlbGRcbiIsIGVycm9yKSk7DQogDQogICAgIE5OUEZTREVC KFhERUJTWVMsICgic3lzX2FmcyBrZXJuZWwgdW5sb2NrXG4iKSk7DQorICAg IGtmcmVlKG1zZyk7DQogICAgIHVubG9ja19rZXJuZWwoKTsNCiANCiAgICAg cmV0dXJuIGVycm9yOw0KQEAgLTc4MCwyMCArODQxLDMyIEBAIHN0YXRpYyBp bnQgbm5wZnNfaW5pdF9wcm9jZnModm9pZCkNCiB7DQogICAgIHN0cnVjdCBw cm9jX2Rpcl9lbnRyeSAqZW50cnk7DQogICAgIA0KKyNpZiBMSU5VWF9WRVJT SU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjYpDQogICAgIG5ucGZz X3Byb2Nmc19kaXIgPSBwcm9jX21rZGlyKE5OUEZTX1BST0NfRElSLCBwcm9j X3Jvb3RfZnMpOw0KKyNlbHNlDQorICAgIG5ucGZzX3Byb2Nmc19kaXIgPSBw cm9jX21rZGlyKCJmcy8iIE5OUEZTX1BST0NfRElSLCBOVUxMKTsNCisjZW5k aWYNCiAgICAgaWYgKG5ucGZzX3Byb2Nmc19kaXIgPT0gTlVMTCkNCiAJcmV0 dXJuIC1FTk9NRU07DQogICAgIA0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUg PCBLRVJORUxfVkVSU0lPTigyLDYsMzApDQogICAgIG5ucGZzX3Byb2Nmc19k aXItPm93bmVyID0gVEhJU19NT0RVTEU7DQorI2VuZGlmDQogICAgIA0KICAg ICBlbnRyeSA9IGNyZWF0ZV9wcm9jX2VudHJ5KE5OUEZTX1BST0NfTk9ERSwg MDY2Niwgbm5wZnNfcHJvY2ZzX2Rpcik7DQogICAgIGlmIChlbnRyeSA9PSBO VUxMKSB7DQogCU5OUEZTREVCKFhERUJTWVMsICgibm5wZnNfaW5pdF9wcm9j ZnM6IG5vIG5vZGVcbiIpKTsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwg S0VSTkVMX1ZFUlNJT04oMiw2LDI2KQ0KIAlyZW1vdmVfcHJvY19lbnRyeShO TlBGU19QUk9DX0RJUiwgcHJvY19yb290X2ZzKTsNCisjZWxzZQ0KKwlyZW1v dmVfcHJvY19lbnRyeSgiZnMvIiBOTlBGU19QUk9DX0RJUiwgTlVMTCk7DQor I2VuZGlmDQogCXJldHVybiAtRU5PTUVNOw0KICAgICB9DQogICAgIA0KKyNp ZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYsMzAp DQogICAgIGVudHJ5LT5vd25lciA9IFRISVNfTU9EVUxFOw0KKyNlbmRpZg0K ICAgICBlbnRyeS0+cHJvY19mb3BzID0gJm5ucGZzX3Byb2Nmc19mb3BzOw0K IA0KICNpZmRlZiBTWVNDQUxMQ09NUEFUDQpAQCAtODE1LDcgKzg4OCwxMSBA QCBzdGF0aWMgdm9pZCBubnBmc19leGl0X3Byb2Nmcyh2b2lkKQ0KICAgICB9 DQogI2VuZGlmIC8qIFNZU0NBTExDT01QQVQgKi8NCiAgICAgcmVtb3ZlX3By b2NfZW50cnkoTk5QRlNfUFJPQ19OT0RFLCBubnBmc19wcm9jZnNfZGlyKTsN CisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oMiw2 LDI2KQ0KICAgICByZW1vdmVfcHJvY19lbnRyeShOTlBGU19QUk9DX0RJUiwg cHJvY19yb290X2ZzKTsNCisjZWxzZQ0KKyAgICByZW1vdmVfcHJvY19lbnRy eSgiZnMvIiBOTlBGU19QUk9DX0RJUiwgTlVMTCk7DQorI2VuZGlmDQogfQ0K IA0KICNpZmRlZiBHUk9VUFBBR1MNCkBAIC04NDAsMTIgKzkxNywxNCBAQCB2 b2lkDQogaW5zdGFsbF9hZnNfc3lzY2FsbCh2b2lkKQ0KIHsNCiAjaWZkZWYg Q09ORklHX1NFQ1VSSVRZDQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8IEtF Uk5FTF9WRVJTSU9OKDIsNiwyNCkNCiAgICAgaWYgKHJlZ2lzdGVyX3NlY3Vy aXR5KCZubnBmc19zZWNfb3BzKSkNCiAJTk5QRlNERUIoWERFQlNZUywNCiAJ CSAoImluc3RhbGxfYWZzX3N5c2NhbGw6IG5ucGZzX2luaXRfc2VjIGZhaWxl ZFxuIikpOw0KICAgICBlbHNlDQogCW5ucGZzX3NlY19yZWdpc3RlcmVkID0g MTsNCiAjZW5kaWYNCisjZW5kaWYNCiANCiAgICAgbm5wZnNfaW5pdF9wcm9j ZnMoKTsNCiANCkBAIC04ODgsOSArOTY3LDExIEBAIHJlc3RvcmVfYWZzX3N5 c2NhbGwgKHZvaWQpDQogI2VuZGlmIC8qIFNZU0NBTExIQUNLICovDQogDQog I2lmZGVmIENPTkZJR19TRUNVUklUWQ0KKyNpZiBMSU5VWF9WRVJTSU9OX0NP REUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjQpDQogICAgIGlmIChubnBmc19z ZWNfcmVnaXN0ZXJlZCkNCiAJaWYgKHVucmVnaXN0ZXJfc2VjdXJpdHkoJm5u cGZzX3NlY19vcHMpKQ0KIAkgICAgcHJpbnRrKEtFUk5fRU1FUkcgIm5ucGZz X2V4aXRfc2VjOiBjb3VsZG4ndCB1bnJlZ2lzdGVyXG4iKTsNCisjZW5kaWYN CiAjZW5kaWYgLyogIUNPTkZJR19TRUNVUklUWSAqLw0KIA0KICNpZmRlZiBH Uk9VUFBBR1MNCmRpZmYgLXVwck4gYXJsYS1jdnMvbm5wZnMvbGludXgvbm5w ZnNfc3lzY2FsbHMtbG9zc2FnZS5jIGFybGEtY3ZzLW5ldy9ubnBmcy9saW51 eC9ubnBmc19zeXNjYWxscy1sb3NzYWdlLmMNCi0tLSBhcmxhLWN2cy9ubnBm cy9saW51eC9ubnBmc19zeXNjYWxscy1sb3NzYWdlLmMJMjAwNi0xMi0xMSAx NzozMTo0NS4wMDAwMDAwMDAgKzAxMDANCisrKyBhcmxhLWN2cy1uZXcvbm5w ZnMvbGludXgvbm5wZnNfc3lzY2FsbHMtbG9zc2FnZS5jCTIwMTAtMDYtMDMg MjM6MzI6MDguMjMyNjExMzgzICswMjAwDQpAQCAtNjMsNiArNjMsMTEgQEAg Y29uc3QgY2hhciAqIF9fYXR0cmlidXRlX18oKHdlYWspKQ0KIAkJICAgIHVu c2lnbmVkIGxvbmcgKm9mZnNldCwNCiAJCSAgICBjaGFyICoqbW9kbmFtZSwg Y2hhciAqbmFtZWJ1Zik7DQogDQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+ IEtFUk5FTF9WRVJTSU9OKDIsNiwxOCkNCisjaWZkZWYgX194ODZfNjRfXw0K K2V4dGVybiByd2xvY2tfdCB0YXNrbGlzdF9sb2NrIF9fYXR0cmlidXRlX18o KHdlYWspKTsNCisjZW5kaWYNCisjZW5kaWYNCiBzdGF0aWMgdm9pZCAqKg0K IGdldF9zdGFydF9hZGRyKHZvaWQpIHsNCiAjaWZkZWYgX194ODZfNjRfXw0K ZGlmZiAtdXByTiBhcmxhLWN2cy9ubnBmcy9saW51eC9ubnBmc192ZnNvcHMu YyBhcmxhLWN2cy1uZXcvbm5wZnMvbGludXgvbm5wZnNfdmZzb3BzLmMNCi0t LSBhcmxhLWN2cy9ubnBmcy9saW51eC9ubnBmc192ZnNvcHMuYwkyMDA2LTEy LTExIDE3OjQzOjM1LjAwMDAwMDAwMCArMDEwMA0KKysrIGFybGEtY3ZzLW5l dy9ubnBmcy9saW51eC9ubnBmc192ZnNvcHMuYwkyMDEwLTA2LTAzIDIzOjMy OjA4LjIzMjYxMTM4MyArMDIwMA0KQEAgLTQ5LDkgKzQ5LDEzIEBAIFJDU0lE KCIkSWQ6IG5ucGZzX3Zmc29wcy5jLHYgMS4xMDkgMjAwNi8NCiANCiBzdHJ1 Y3Qgbm5wZnMgbm5wZnNbTk5OUEZTXTsNCiANCisjaWYgTElOVVhfVkVSU0lP Tl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oMiw2LDI1KQ0KIHN0YXRpYyB2b2lk IG5ucGZzX3JlYWRfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSk7DQorI2Vu ZGlmDQogc3RhdGljIHZvaWQgbm5wZnNfcHV0X3N1cGVyKHN0cnVjdCBzdXBl cl9ibG9jayAqc2IpOw0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJO RUxfVkVSU0lPTigyLDYsMjUpDQogc3RhdGljIHZvaWQgbm5wZnNfcHV0X2lu b2RlKHN0cnVjdCBpbm9kZSAqaW5vZGUpOw0KKyNlbmRpZg0KIHN0YXRpYyB2 b2lkIG5ucGZzX3dyaXRlX3N1cGVyKHN0cnVjdCBzdXBlcl9ibG9jayAqIHNi KTsNCiANCiAjaWYgTElOVVhfVkVSU0lPTl9DT0RFID49IEtFUk5FTF9WRVJT SU9OKDIsNiwxOCkNCkBAIC02MSw4ICs2NSwxMCBAQCBzdGF0aWMgaW50IG5u cGZzX3N0YXRmcyhzdHJ1Y3Qgc3VwZXJfYmxvDQogI2VuZGlmDQogDQogc3Rh dGljIHN0cnVjdCBzdXBlcl9vcGVyYXRpb25zIG5ucGZzX3NvcHMgPSB7IA0K KyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYs MjUpDQogICAgIHJlYWRfaW5vZGUJCTogbm5wZnNfcmVhZF9pbm9kZSwNCiAg ICAgcHV0X2lub2RlCQk6IG5ucGZzX3B1dF9pbm9kZSwNCisjZW5kaWYNCiAg ICAgYWxsb2NfaW5vZGUJCTogbm5wZnNfbm9kZV9hbGxvYywNCiAgICAgZGVz dHJveV9pbm9kZQk6IG5ucGZzX25vZGVfZnJlZSwNCiAgICAgZHJvcF9pbm9k ZQkJOiBnZW5lcmljX2RlbGV0ZV9pbm9kZSwNCkBAIC0xODksNyArMTk1LDEx IEBAIG5ucGZzX3JlYWRfc3VwZXIgKHN0cnVjdCBzdXBlcl9ibG9jayAqIHMN CiAJaWYgKGVycm9yKQ0KIAkgICAgZGRldiA9IEVSUl9QVFIoZXJyb3IpOw0K IAllbHNlDQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8IEtFUk5FTF9WRVJT SU9OKDIsNiwyNSkNCiAJICAgIGRkZXYgPSBuZC5kZW50cnk7DQorI2Vsc2UN CisJICAgIGRkZXYgPSBuZC5wYXRoLmRlbnRyeTsNCisjZW5kaWYNCiANCiAJ aWYgKCFJU19FUlIoZGRldikpIHsNCiAJICAgIG1pbm9yZGV2aWNlID0gTUlO T1IoZGRldi0+ZF9pbm9kZS0+aV9yZGV2KTsNCkBAIC0yNzMsNiArMjgzLDcg QEAgbm5wZnNfcHV0X3N1cGVyKHN0cnVjdCBzdXBlcl9ibG9jayAqc2IpDQog ICAgIE5OUEZTREVCKFhERUJWRk9QUywgKCJubnBmc19wdXRfc3VwZXIgZXhp dGluZ1xuIikpOw0KIH0NCiANCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwg S0VSTkVMX1ZFUlNJT04oMiw2LDI1KQ0KIHN0YXRpYyB2b2lkDQogbm5wZnNf cmVhZF9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKQ0KIHsNCkBAIC0zMzks NiArMzUwLDcgQEAgbm5wZnNfcHV0X2lub2RlKHN0cnVjdCBpbm9kZSAqaW5v ZGUpDQogDQogICAgIHVwKCZubnBmc3AtPmluYWN0aXZlX3NlbSk7DQogfQ0K KyNlbmRpZiAvLyBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lP TigyLDYsMjUpDQogDQogc3RhdGljIGludA0KIG5ucGZzX3N0YXRmc19pbnQo c3RydWN0IHN1cGVyX2Jsb2NrICpzYiwgc3RydWN0IGtzdGF0ZnMgKmJ1ZikN CkBAIC0zNTIsNyArMzY0LDE1IEBAIG5ucGZzX3N0YXRmc19pbnQoc3RydWN0 IHN1cGVyX2Jsb2NrICpzYiwNCiAgICAgdG1wLmZfYmF2YWlsICA9IDEwMjQq MTAyNCoyLTUwOw0KICAgICB0bXAuZl9maWxlcyAgID0gMTAyNCoxMDI0Ow0K ICAgICB0bXAuZl9mZnJlZSAgID0gMTAyNCoxMDI0LTEwMDsNCisgICAgdG1w LmZfZnNpZC52YWxbMF0gPSAwOw0KKyAgICB0bXAuZl9mc2lkLnZhbFsxXSA9 IDA7DQogICAgIHRtcC5mX25hbWVsZW4gPSBOQU1FX01BWDsNCisgICAgdG1w LmZfZnJzaXplICA9IDA7DQorICAgIHRtcC5mX3NwYXJlWzBdID0gMDsNCisg ICAgdG1wLmZfc3BhcmVbMV0gPSAwOw0KKyAgICB0bXAuZl9zcGFyZVsyXSA9 IDA7DQorICAgIHRtcC5mX3NwYXJlWzNdID0gMDsNCisgICAgdG1wLmZfc3Bh cmVbNF0gPSAwOw0KICAgICAqYnVmID0gdG1wOw0KICAgICByZXR1cm4gMDsN CiB9DQo= ---2098261369-518684459-1275755770=:549032 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Arla-drinkers mailing list [email protected] https://lists.stacken.kth.se/mailman/listinfo/arla-drinkers ---2098261369-518684459-1275755770=:549032--