[4924] in arla-drinkers
PATCH: Arla CVS Current on Linux 2.6.24-2.6.32
daemon@ATHENA.MIT.EDU (=?ISO-8859-1?Q?Bo_Brant=E9n?=)
Fri Jun 4 09:30:08 2010
From arla-drinkers-bounces@stacken.kth.se Fri Jun 04 13:30:08 2010
Return-Path: <arla-drinkers-bounces@stacken.kth.se>
Delivered-To: arla-drinkers-mtg@bloom-picayune.mit.edu
Received: (qmail 9005 invoked from network); 4 Jun 2010 13:30:07 -0000
Received: from mx2.kth.se (130.237.48.98)
by charon.mit.edu with SMTP; 4 Jun 2010 13:30:07 -0000
X-KTH-mail-from: arla-drinkers-bounces@stacken.kth.se
Received: from mx4.kth.se (mx4.kth.se [130.237.48.62])
by mx2.kth.se (Postfix) with ESMTP id 11FC8109841;
Fri, 4 Jun 2010 15:30:05 +0200 (CEST)
X-Virus-Scanned: by amavisd-new at kth.se
Received: from mx2.kth.se ([130.237.48.98])
by mx4.kth.se (mx4.kth.se [130.237.48.62]) (amavisd-new, port 10024)
with LMTP id C7B3yvD-p0nA; Fri, 4 Jun 2010 15:30:03 +0200 (CEST)
X-KTH-mail-from: arla-drinkers-bounces@stacken.kth.se
Received: from tapas.stacken.kth.se (tapas.stacken.kth.se [130.237.234.140])
by mx2.kth.se (Postfix) with ESMTP id CF2D0109748;
Fri, 4 Jun 2010 15:29:43 +0200 (CEST)
Received: from tapas.stacken.kth.se (localhost [127.0.0.1])
by tapas.stacken.kth.se (Postfix) with ESMTP id 0779651EAD;
Fri, 4 Jun 2010 15:29:43 +0200 (CEST)
X-Original-To: arla-drinkers@tapas.stacken.kth.se
Delivered-To: arla-drinkers@tapas.stacken.kth.se
Received: from brev.stacken.kth.se (brev.stacken.kth.se [130.237.234.84])
by tapas.stacken.kth.se (Postfix) with ESMTP id 8939B51EAD
for <arla-drinkers@tapas.stacken.kth.se>;
Fri, 4 Jun 2010 15:29:40 +0200 (CEST)
Received: from mx3.kth.se (mx3.kth.se [130.237.48.97])
by brev.stacken.kth.se (8.12.10/8.12.10) with ESMTP id o54DTeCe010968
for <arla-drinkers@stacken.kth.se>;
Fri, 4 Jun 2010 15:29:40 +0200 (MET DST)
X-KTH-mail-from: bosse@acc.umu.se
X-KTH-rcpt-to: arla-drinkers@stacken.kth.se
Received: from mx4.kth.se (mx4.kth.se [130.237.48.62])
by mx3.kth.se (Postfix) with ESMTP id 11A696AF7D
for <arla-drinkers@stacken.kth.se>;
Fri, 4 Jun 2010 15:29:35 +0200 (CEST)
X-Virus-Scanned: by amavisd-new at kth.se
Received: from mx3.kth.se ([130.237.48.97])
by mx4.kth.se (mx4.kth.se [130.237.48.62]) (amavisd-new, port 10024)
with LMTP id hHz8A1v3++DQ for <arla-drinkers@stacken.kth.se>;
Fri, 4 Jun 2010 15:29:34 +0200 (CEST)
X-KTH-mail-from: bosse@acc.umu.se
X-KTH-rcpt-to: arla-drinkers@stacken.kth.se
Received: from mail.acc.umu.se (mail.acc.umu.se [IPv6:2001:6b0:e:2018::156])
by mx3.kth.se (Postfix) with ESMTP id 07FF26AFCE
for <arla-drinkers@stacken.kth.se>;
Fri, 4 Jun 2010 15:29:33 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
by amavisd-new (Postfix) with ESMTP id 66C816CA
for <arla-drinkers@stacken.kth.se>;
Fri, 4 Jun 2010 15:29:33 +0200 (MEST)
X-Virus-Scanned: amavisd-new at acc.umu.se
Received: from stalin.acc.umu.se (stalin.acc.umu.se [130.239.18.135])
by mail.acc.umu.se (Postfix) with ESMTP id 0929D6C8
for <arla-drinkers@stacken.kth.se>;
Fri, 4 Jun 2010 15:29:27 +0200 (MEST)
Received: by stalin.acc.umu.se (Postfix, from userid 10005)
id E1C6D2D; Fri, 4 Jun 2010 15:29:26 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
by stalin.acc.umu.se (Postfix) with ESMTP id D78A52C
for <arla-drinkers@stacken.kth.se>;
Fri, 4 Jun 2010 15:29:26 +0200 (CEST)
Date: Fri, 4 Jun 2010 15:29:26 +0200 (CEST)
From: =?ISO-8859-1?Q?Bo_Brant=E9n?= <bosse@acc.umu.se>
To: arla-drinkers@stacken.kth.se
Subject: PATCH: Arla CVS Current on Linux 2.6.24-2.6.32
Message-ID: <Pine.A41.4.64.1006041527500.819408@stalin.acc.umu.se>
MIME-Version: 1.0
Content-Type: MULTIPART/MIXED;
BOUNDARY="-2098261369-283268217-1275658166=:819408"
X-BeenThere: arla-drinkers@stacken.kth.se
X-Mailman-Version: 2.1.6
Precedence: list
List-Id: Arla discussions <arla-drinkers.stacken.kth.se>
List-Unsubscribe: <https://lists.stacken.kth.se/mailman/listinfo/arla-drinkers>,
<mailto:arla-drinkers-request@stacken.kth.se?subject=unsubscribe>
List-Archive: <http://lists.stacken.kth.se/pipermail/arla-drinkers>
List-Post: <mailto:arla-drinkers@stacken.kth.se>
List-Help: <mailto:arla-drinkers-request@stacken.kth.se?subject=help>
List-Subscribe: <https://lists.stacken.kth.se/mailman/listinfo/arla-drinkers>,
<mailto:arla-drinkers-request@stacken.kth.se?subject=subscribe>
Sender: arla-drinkers-bounces@stacken.kth.se
Errors-To: arla-drinkers-bounces@stacken.kth.se
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-283268217-1275658166=:819408
Content-Type: TEXT/PLAIN; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8BIT
Hello,
I have updated my patch for the latest kernels of Linux. It would be good
if anyone with CVS access could commit this.
Bo Brantén
---2098261369-283268217-1275658166=:819408
Content-Type: TEXT/PLAIN; charset=US-ASCII; name=patch-arla-cvs-Linux
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.A41.4.64.1006041529260.819408@stalin.acc.umu.se>
Content-Description:
Content-Disposition: attachment; filename=patch-arla-cvs-Linux
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
c19pbm9kZW9wcy5jCTIwMTAtMDYtMDQgMTQ6NTA6MjguMzU4MzQyMTIwICsw
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
QEAgLTUxNSw3ICs1MjksMTEgQEAgbm5wZnNfYXR0cl92YWxpZChzdHJ1Y3Qg
aW5vZGUgKiB2cCwgdV9pbg0KICAgICAgICAgICAgIHN0cnVjdCBubnBmc19t
ZXNzYWdlX2dldGF0dHIgbXNnOw0KIA0KICAgICAgICAgICAgIG1zZy5oZWFk
ZXIub3Bjb2RlID0gTk5QRlNfTVNHX0dFVEFUVFI7DQorI2lmIExJTlVYX1ZF
UlNJT05fQ09ERSA8PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQogICAgICAg
ICAgICAgbXNnLmNyZWQudWlkID0gY3VycmVudC0+dWlkOw0KKyNlbHNlDQor
ICAgICAgICAgICAgbXNnLmNyZWQudWlkID0gY3VycmVudF91aWQoKTsNCisj
ZW5kaWYNCiAgICAgICAgICAgICBtc2cuY3JlZC5wYWcgPSBwYWc7DQogICAg
ICAgICAgICAgbXNnLmhhbmRsZSA9IHhuLT5oYW5kbGU7DQogICAgICAgICAg
ICAgZXJyb3IgPSBubnBmc19tZXNzYWdlX3JwYyhubnBmc3AsICZtc2cuaGVh
ZGVyLCBzaXplb2YobXNnKSk7DQpAQCAtNTU1LDcgKzU3MywxMSBAQCBubnBm
c19yaWdodHNfdmFsaWQoc3RydWN0IGlub2RlICogdnAsIG5uDQogICAgICAg
ICAgICAgc3RydWN0IG5ucGZzX21lc3NhZ2VfZ2V0YXR0ciBtc2c7DQogDQog
ICAgICAgICAgICAgbXNnLmhlYWRlci5vcGNvZGUgPSBOTlBGU19NU0dfR0VU
QVRUUjsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJT
SU9OKDIsNiwyOCkNCiAgICAgICAgICAgICBtc2cuY3JlZC51aWQgPSBjdXJy
ZW50LT51aWQ7DQorI2Vsc2UNCisgICAgICAgICAgICBtc2cuY3JlZC51aWQg
PSBjdXJyZW50X3VpZCgpOw0KKyNlbmRpZg0KICAgICAgICAgICAgIG1zZy5j
cmVkLnBhZyA9IHBhZzsNCiAgICAgICAgICAgICBtc2cuaGFuZGxlID0geG4t
PmhhbmRsZTsNCiAgICAgICAgICAgICBlcnJvciA9IG5ucGZzX21lc3NhZ2Vf
cnBjKG5ucGZzcCwgJm1zZy5oZWFkZXIsIHNpemVvZihtc2cpKTsNCkBAIC01
OTYsOCArNjE4LDEzIEBAIGNoZWNrX3JpZ2h0cyAobm5wZnNfcmlnaHRzIHJp
Z2h0cywgaW50IG0NCiAgKiBXZSBkb24ndCBob2xkIGlfbXV0ZXguDQogICov
DQogDQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8IEtFUk5FTF9WRVJTSU9O
KDIsNiwyNykNCiBzdGF0aWMgaW50DQogbm5wZnNfcGVybWlzc2lvbihzdHJ1
Y3QgaW5vZGUgKmlub2RlLCBpbnQgbW9kZSwgc3RydWN0IG5hbWVpZGF0YSAq
bmQpDQorI2Vsc2UNCitzdGF0aWMgaW50DQorbm5wZnNfcGVybWlzc2lvbihz
dHJ1Y3QgaW5vZGUgKmlub2RlLCBpbnQgbW9kZSkNCisjZW5kaWYNCiB7DQog
ICAgIGludCBlcnJvciA9IDA7DQogICAgIG5ucGZzX3BhZ190IHBhZyA9IG5u
cGZzX2dldF9wYWcoKTsNCkBAIC02NDAsNyArNjY3LDExIEBAIG5ucGZzX2Rv
X2dldGRhdGEoc3RydWN0IG5ucGZzX25vZGUgKnhuLCANCiAgICAgaW50IGVy
cm9yOw0KIA0KICAgICBtc2cuaGVhZGVyLm9wY29kZSA9IE5OUEZTX01TR19H
RVREQVRBOw0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPD0gS0VSTkVMX1ZF
UlNJT04oMiw2LDI4KQ0KICAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50LT51
aWQ7DQorI2Vsc2UNCisgICAgbXNnLmNyZWQudWlkID0gY3VycmVudF91aWQo
KTsNCisjZW5kaWYNCiAgICAgbXNnLmNyZWQucGFnID0gbm5wZnNfZ2V0X3Bh
ZygpOw0KICAgICBtc2cuaGFuZGxlID0geG4tPmhhbmRsZTsNCiAgICAgbXNn
LnRva2VucyA9IHRvazsNCkBAIC05MDcsOSArOTM4LDE4IEBAIG5ucGZzX2Ny
ZWF0ZShzdHJ1Y3QgaW5vZGUgKmRpciwgc3RydWN0IGQNCiAgICAgWEFfQ0xF
QVIoJm1zZy5hdHRyKTsNCiAgICAgWEFfU0VUX01PREUoJm1zZy5hdHRyLCBt
b2RlKTsNCiAgICAgWEFfU0VUX1RZUEUoJm1zZy5hdHRyLCBOTlBGU19GSUxF
X1JFRyk7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJORUxfVkVS
U0lPTigyLDYsMjgpDQogICAgIFhBX1NFVF9HSUQoJm1zZy5hdHRyLCBjdXJy
ZW50LT5mc2dpZCk7DQorI2Vsc2UNCisgICAgWEFfU0VUX0dJRCgmbXNnLmF0
dHIsIGN1cnJlbnRfZnNnaWQoKSk7DQorI2VuZGlmDQogICAgIG1zZy5tb2Rl
ID0gMDsJCS8qIFhYWCAqLw0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPD0g
S0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0KICAgICBtc2cuY3JlZC51aWQgPSBj
dXJyZW50LT51aWQ7DQorI2Vsc2UNCisgICAgbXNnLmNyZWQudWlkID0gY3Vy
cmVudF91aWQoKTsNCisjZW5kaWYNCisNCiAgICAgbXNnLmNyZWQucGFnID0g
bm5wZnNfZ2V0X3BhZygpOw0KICAgICBlcnJvciA9IG5ucGZzX21lc3NhZ2Vf
cnBjKG5ucGZzcCwgJm1zZy5oZWFkZXIsIHNpemVvZihtc2cpKTsNCiAgICAg
aWYgKGVycm9yID09IDApDQpAQCAtOTUwLDcgKzk5MCwxMSBAQCBubnBmc191
bmxpbmsgKHN0cnVjdCBpbm9kZSAqIGRpciwgc3RydWN0DQogICAgIGlmIChz
dHJsY3B5KG1zZy5uYW1lLCBkZW50cnktPmRfbmFtZS5uYW1lLCBzaXplb2Yo
bXNnLm5hbWUpKSA+PSBOTlBGU19NQVhfTkFNRSkNCiAJcmV0dXJuIC1FTkFN
RVRPT0xPTkc7DQogDQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJO
RUxfVkVSU0lPTigyLDYsMjgpDQogICAgIG1zZy5jcmVkLnVpZCA9IGN1cnJl
bnQtPnVpZDsNCisjZWxzZQ0KKyAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50
X3VpZCgpOw0KKyNlbmRpZg0KICAgICBtc2cuY3JlZC5wYWcgPSBubnBmc19n
ZXRfcGFnKCk7DQogICAgIGVycm9yID0gbm5wZnNfbWVzc2FnZV9ycGMobm5w
ZnNwLCAmbXNnLmhlYWRlciwgc2l6ZW9mKG1zZykpOw0KICAgICBpZiAoZXJy
b3IgPT0gMCkNCkBAIC05OTUsNyArMTAzOSwxMSBAQCBubnBmc19yZW5hbWUg
KHN0cnVjdCBpbm9kZSAqIG9sZF9kaXIsIHN0DQogICAgIGlmIChzdHJsY3B5
KG1zZy5uZXdfbmFtZSwgbmV3X2RlbnRyeS0+ZF9uYW1lLm5hbWUsIHNpemVv
Zihtc2cubmV3X25hbWUpKSA+PSBOTlBGU19NQVhfTkFNRSkNCiAJcmV0dXJu
IC1FTkFNRVRPT0xPTkc7DQogCQ0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUg
PD0gS0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0KICAgICBtc2cuY3JlZC51aWQg
PSBjdXJyZW50LT51aWQ7DQorI2Vsc2UNCisgICAgbXNnLmNyZWQudWlkID0g
Y3VycmVudF91aWQoKTsNCisjZW5kaWYNCiAgICAgbXNnLmNyZWQucGFnID0g
bm5wZnNfZ2V0X3BhZygpOw0KICAgICBlcnJvciA9IG5ucGZzX21lc3NhZ2Vf
cnBjKG5ucGZzcCwgJm1zZy5oZWFkZXIsIHNpemVvZihtc2cpKTsNCiAgICAg
aWYgKGVycm9yID09IDApDQpAQCAtMTA0NCw5ICsxMDkyLDE3IEBAIG5ucGZz
X21rZGlyKHN0cnVjdCBpbm9kZSAqIGRpciwgc3RydWN0IGQNCiAJWEFfQ0xF
QVIoJm1zZy5hdHRyKTsNCiAJWEFfU0VUX01PREUoJm1zZy5hdHRyLCBtb2Rl
KTsNCiAJWEFfU0VUX1RZUEUoJm1zZy5hdHRyLCBOTlBGU19GSUxFX0RJUik7
DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJORUxfVkVSU0lPTigy
LDYsMjgpDQogCVhBX1NFVF9HSUQoJm1zZy5hdHRyLCBjdXJyZW50LT5mc2dp
ZCk7DQorI2Vsc2UNCisgICAgICAgIFhBX1NFVF9HSUQoJm1zZy5hdHRyLCBj
dXJyZW50X2ZzZ2lkKCkpOw0KKyNlbmRpZg0KIA0KKyNpZiBMSU5VWF9WRVJT
SU9OX0NPREUgPD0gS0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0KIAltc2cuY3Jl
ZC51aWQgPSBjdXJyZW50LT51aWQ7DQorI2Vsc2UNCisgICAgICAgIG1zZy5j
cmVkLnVpZCA9IGN1cnJlbnRfdWlkKCk7DQorI2VuZGlmDQogCW1zZy5jcmVk
LnBhZyA9IG5ucGZzX2dldF9wYWcoKTsNCiAJZXJyb3IgPSBubnBmc19tZXNz
YWdlX3JwYyhubnBmc3AsICZtc2cuaGVhZGVyLCBzaXplb2YobXNnKSk7DQog
CWlmIChlcnJvciA9PSAwKQ0KQEAgLTEwODcsNyArMTE0MywxMSBAQCBubnBm
c19ybWRpcihzdHJ1Y3QgaW5vZGUgKiBkaXIsIHN0cnVjdCBkDQogICAgIG1z
Zy5wYXJlbnRfaGFuZGxlID0geG4tPmhhbmRsZTsNCiAgICAgaWYgKHN0cmxj
cHkobXNnLm5hbWUsIGRlbnRyeS0+ZF9uYW1lLm5hbWUsIHNpemVvZihtc2cu
bmFtZSkpID49IE5OUEZTX01BWF9OQU1FKQ0KIAkgICAgcmV0dXJuIC1FTkFN
RVRPT0xPTkc7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJORUxf
VkVSU0lPTigyLDYsMjgpDQogICAgIG1zZy5jcmVkLnVpZCA9IGN1cnJlbnQt
PnVpZDsNCisjZWxzZQ0KKyAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50X3Vp
ZCgpOw0KKyNlbmRpZg0KICAgICBtc2cuY3JlZC5wYWcgPSBubnBmc19nZXRf
cGFnKCk7DQogICAgIGVycm9yID0gbm5wZnNfbWVzc2FnZV9ycGMobm5wZnNw
LCAmbXNnLmhlYWRlciwgc2l6ZW9mKG1zZykpOw0KICAgICBpZiAoZXJyb3Ig
PT0gMCkNCkBAIC0xMTMyLDcgKzExOTIsMTEgQEAgc3RhdGljIGludCBubnBm
c19saW5rKHN0cnVjdCBkZW50cnkgKm9sZA0KIAlpZiAoc3RybGNweShtc2cu
bmFtZSwgbmFtZSwgc2l6ZW9mKG1zZy5uYW1lKSkgPj0gTk5QRlNfTUFYX05B
TUUpDQogCSAgICByZXR1cm4gLUVOQU1FVE9PTE9ORzsNCiANCisjaWYgTElO
VVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9OKDIsNiwyOCkNCiAJ
bXNnLmNyZWQudWlkID0gY3VycmVudC0+dWlkOw0KKyNlbHNlDQorICAgICAg
ICBtc2cuY3JlZC51aWQgPSBjdXJyZW50X3VpZCgpOw0KKyNlbmRpZg0KIAlt
c2cuY3JlZC5wYWcgPSBubnBmc19nZXRfcGFnKCk7DQogCWVycm9yID0gbm5w
ZnNfbWVzc2FnZV9ycGMobm5wZnNwLCAmbXNnLmhlYWRlciwgc2l6ZW9mKG1z
ZykpOw0KIAlpZiAoZXJyb3IgPT0gMCkNCkBAIC0xMTYxLDIyICsxMjI1LDM5
IEBAIHN0YXRpYyBpbnQgbm5wZnNfc3ltbGluayhzdHJ1Y3QgaW5vZGUgKmQN
CiAgICAgeG4gPSBWTk9ERV9UT19YTk9ERShkaXIpOw0KIA0KICAgICB7DQot
CXN0cnVjdCBubnBmc19tZXNzYWdlX3N5bWxpbmsgbXNnOw0KKwlzdHJ1Y3Qg
bm5wZnNfbWVzc2FnZV9zeW1saW5rICptc2cgPSBOVUxMOw0KIA0KLQltc2cu
aGVhZGVyLm9wY29kZSA9IE5OUEZTX01TR19TWU1MSU5LOw0KLQltc2cucGFy
ZW50X2hhbmRsZSA9IHhuLT5oYW5kbGU7DQotCWlmIChzdHJsY3B5KG1zZy5u
YW1lLCBuYW1lLCBzaXplb2YobXNnLm5hbWUpKSA+PSBOTlBGU19NQVhfTkFN
RSkNCi0JICAgIHJldHVybiAtRU5BTUVUT09MT05HOw0KLQlpZiAoc3RybGNw
eShtc2cuY29udGVudHMsIHN5bW5hbWUsIHNpemVvZihtc2cuY29udGVudHMp
KSA+PSBOTlBGU19NQVhfU1lNTElOS19DT05URU5UKQ0KLQkgICAgcmV0dXJu
IC1FTkFNRVRPT0xPTkc7DQotCVhBX0NMRUFSKCZtc2cuYXR0cik7DQotCVhB
X1NFVF9NT0RFKCZtc2cuYXR0ciwgMDc3Nyk7DQotCVhBX1NFVF9UWVBFKCZt
c2cuYXR0ciwgTk5QRlNfRklMRV9MTkspOw0KLQlYQV9TRVRfR0lEKCZtc2cu
YXR0ciwgY3VycmVudC0+ZnNnaWQpOw0KKwltc2cgPSBrbWFsbG9jKHNpemVv
ZihzdHJ1Y3Qgbm5wZnNfbWVzc2FnZV9zeW1saW5rKSwgR0ZQX0tFUk5FTCk7
DQogDQotCW1zZy5jcmVkLnVpZCA9IGN1cnJlbnQtPnVpZDsNCi0JbXNnLmNy
ZWQucGFnID0gbm5wZnNfZ2V0X3BhZygpOw0KLQllcnJvciA9IG5ucGZzX21l
c3NhZ2VfcnBjKG5ucGZzcCwgJm1zZy5oZWFkZXIsIHNpemVvZihtc2cpKTsN
CisJaWYgKCFtc2cpDQorCSAgcmV0dXJuIC1FTk9NRU07DQorDQorCW1zZy0+
aGVhZGVyLm9wY29kZSA9IE5OUEZTX01TR19TWU1MSU5LOw0KKwltc2ctPnBh
cmVudF9oYW5kbGUgPSB4bi0+aGFuZGxlOw0KKwlpZiAoc3RybGNweShtc2ct
Pm5hbWUsIG5hbWUsIHNpemVvZihtc2ctPm5hbWUpKSA+PSBOTlBGU19NQVhf
TkFNRSkgew0KKwkgIGtmcmVlKG1zZyk7DQorCSAgcmV0dXJuIC1FTkFNRVRP
T0xPTkc7DQorCX0NCisJaWYgKHN0cmxjcHkobXNnLT5jb250ZW50cywgc3lt
bmFtZSwgc2l6ZW9mKG1zZy0+Y29udGVudHMpKSA+PSBOTlBGU19NQVhfU1lN
TElOS19DT05URU5UKSB7DQorCSAga2ZyZWUobXNnKTsNCisJICByZXR1cm4g
LUVOQU1FVE9PTE9ORzsNCisJfQ0KKwlYQV9DTEVBUigmbXNnLT5hdHRyKTsN
CisJWEFfU0VUX01PREUoJm1zZy0+YXR0ciwgMDc3Nyk7DQorCVhBX1NFVF9U
WVBFKCZtc2ctPmF0dHIsIE5OUEZTX0ZJTEVfTE5LKTsNCisjaWYgTElOVVhf
VkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9OKDIsNiwyOCkNCisJWEFf
U0VUX0dJRCgmbXNnLT5hdHRyLCBjdXJyZW50LT5mc2dpZCk7DQorI2Vsc2UN
CisgICAgICAgIFhBX1NFVF9HSUQoJm1zZy0+YXR0ciwgY3VycmVudF9mc2dp
ZCgpKTsNCisjZW5kaWYNCisNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDw9
IEtFUk5FTF9WRVJTSU9OKDIsNiwyOCkNCisJbXNnLT5jcmVkLnVpZCA9IGN1
cnJlbnQtPnVpZDsNCisjZWxzZQ0KKyAgICAgICAgbXNnLT5jcmVkLnVpZCA9
IGN1cnJlbnRfdWlkKCk7DQorI2VuZGlmDQorCW1zZy0+Y3JlZC5wYWcgPSBu
bnBmc19nZXRfcGFnKCk7DQorCWVycm9yID0gbm5wZnNfbWVzc2FnZV9ycGMo
bm5wZnNwLCAmbXNnLT5oZWFkZXIsIHNpemVvZihzdHJ1Y3Qgbm5wZnNfbWVz
c2FnZV9zeW1saW5rKSk7DQogCWlmIChlcnJvciA9PSAwKQ0KIAkgICAgZXJy
b3IgPSBOTlBGU19NU0dfV0FLRVVQX0VSUk9SKCZtc2cpOw0KIA0KQEAgLTEx
ODQsNiArMTI2NSw3IEBAIHN0YXRpYyBpbnQgbm5wZnNfc3ltbGluayhzdHJ1
Y3QgaW5vZGUgKmQNCiAJaWYgKERFTlRSWV9UT19YREVOVFJZKGRlbnRyeSkt
PnhkX2ZsYWdzID09IDApIHsNCiAJICAgIHByaW50ayhLRVJOX0VNRVJHICJO
TlBGUyBQYW5pYzogbm5wZnNfc3ltbGluazogZGVudHJ5IG5vdCB2YWxpZFxu
Iik7DQogCX0NCisJa2ZyZWUobXNnKTsNCiAgICAgfQ0KIA0KICAgICByZXR1
cm4gZXJyb3I7DQpAQCAtMTQwMiw3ICsxNDg0LDExIEBAIG5ucGZzX3NldGF0
dHIgKHN0cnVjdCBkZW50cnkgKmRlbnRyeSwgc3QNCiAgICAgICAgIHN0cnVj
dCBubnBmc19tZXNzYWdlX3B1dGF0dHIgbXNnOw0KIA0KICAgICAgICAgbXNn
LmhlYWRlci5vcGNvZGUgPSBOTlBGU19NU0dfUFVUQVRUUjsNCisjaWYgTElO
VVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9OKDIsNiwyOCkNCiAJ
bXNnLmNyZWQudWlkID0gY3VycmVudC0+dWlkOw0KKyNlbHNlDQorICAgICAg
ICBtc2cuY3JlZC51aWQgPSBjdXJyZW50X3VpZCgpOw0KKyNlbmRpZg0KIAlt
c2cuY3JlZC5wYWcgPSBubnBmc19nZXRfcGFnKCk7DQogICAgICAgICBtc2cu
aGFuZGxlID0geG4tPmhhbmRsZTsNCiAgICAgICAgIG5ucGZzX2lhdHRyMmF0
dHIoeG4sIGF0dHIsICZtc2cuYXR0cik7DQpAQCAtMTY3MiwxMSArMTc1OCwx
NSBAQCBubnBmc193cml0ZV9iYWNrcGFnZShzdHJ1Y3QgcGFnZSAqcGFnZSwg
DQogCXN0cnVjdCBhZGRyZXNzX3NwYWNlICptYXBwaW5nID0gYmFja2ZpbGUt
PmZfbWFwcGluZzsNCiAJdW5zaWduZWQgbGVuID0gUEFHRV9DQUNIRV9TSVpF
Ow0KIAlzdHJ1Y3QgcGFnZSAqYmFja3BhZ2U7DQorI2lmIExJTlVYX1ZFUlNJ
T05fQ09ERSA+PSBLRVJORUxfVkVSU0lPTigyLDYsMjQpDQorCXZvaWQgKmZz
ZGF0YTsNCisjZW5kaWYNCiAJdW5zaWduZWQgbG9uZyBvZmZzZXQ7DQogDQog
CWludCBlcnJvcjsNCiAJDQogCWRvIHsNCisjaWYgTElOVVhfVkVSU0lPTl9D
T0RFIDwgS0VSTkVMX1ZFUlNJT04oMiw2LDI0KQ0KIAkJYmFja3BhZ2UgPSBn
cmFiX2NhY2hlX3BhZ2UobWFwcGluZywgbm5wZnNfZ2V0X2JhY2tpbmRleChw
YWdlKSk7DQogCQlpZiAoIWJhY2twYWdlKSB7DQogCQkJcHJpbnRrKCJubnBm
c193cml0ZV9iYWNrcGFnZTogbm8gcGFnZVxuIik7DQpAQCAtMTY4NSwyMSAr
MTc3NSwzNiBAQCBubnBmc193cml0ZV9iYWNrcGFnZShzdHJ1Y3QgcGFnZSAq
cGFnZSwgDQogDQogCQllcnJvciA9IG1hcHBpbmctPmFfb3BzLT5wcmVwYXJl
X3dyaXRlKGJhY2tmaWxlLCBiYWNrcGFnZSwNCiAJCQkJCQkgICAgICAwLCBs
ZW4pOw0KKyNlbHNlDQorCQllcnJvciA9IHBhZ2VjYWNoZV93cml0ZV9iZWdp
bihiYWNrZmlsZSwgbWFwcGluZywgMCwgbGVuLA0KKwkJCQlBT1BfRkxBR19V
TklOVEVSUlVQVElCTEUsICZiYWNrcGFnZSwgJmZzZGF0YSk7DQorI2VuZGlm
DQogCQlpZiAoIWVycm9yKSB7DQogCQkJY29weV9oaWdocGFnZShiYWNrcGFn
ZSwgcGFnZSk7DQogCQkJZmx1c2hfZGNhY2hlX3BhZ2UoYmFja3BhZ2UpOw0K
KyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYs
MjQpDQogCQkJZXJyb3IgPSBtYXBwaW5nLT5hX29wcy0+Y29tbWl0X3dyaXRl
KGJhY2tmaWxlLCBiYWNrcGFnZSwNCiAJCQkJCQkJICAgICAwLCBsZW4pOw0K
KyNlbHNlDQorCQkJZXJyb3IgPSBwYWdlY2FjaGVfd3JpdGVfZW5kKGJhY2tm
aWxlLCBtYXBwaW5nLCAwLCBsZW4sDQorCQkJCQlsZW4sIGJhY2twYWdlLCBm
c2RhdGEpOw0KKwkJCWlmIChlcnJvciA+IDApDQorCQkJCWVycm9yID0gMDsN
CisjZW5kaWYNCiAJCX0NCiAJCWlmIChlcnJvciA9PSBBT1BfVFJVTkNBVEVE
X1BBR0UpIHsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZF
UlNJT04oMiw2LDI0KQ0KIAkJCXBhZ2VfY2FjaGVfcmVsZWFzZShiYWNrcGFn
ZSk7DQorI2VuZGlmDQogCQkJY29udGludWU7DQogCQl9DQogCX0gd2hpbGUg
KDApOw0KIA0KIAlvZmZzZXQgPSBwYWdlX29mZnNldChiYWNrcGFnZSk7DQor
I2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8IEtFUk5FTF9WRVJTSU9OKDIsNiwy
NCkNCiAJdW5sb2NrX3BhZ2UoYmFja3BhZ2UpOw0KIAlwYWdlX2NhY2hlX3Jl
bGVhc2UoYmFja3BhZ2UpOw0KKyNlbmRpZg0KIA0KIAlpZiAoZXJyb3IpDQog
CQlwcmludGsoIm5ucGZzX3dyaXRlX2JhY2twYWdlOiBFSU9cbiIpOw0KQEAg
LTE5MDUsNiArMjAxMCwzNCBAQCBubnBmc19wcmVwYXJlX3dyaXRlKHN0cnVj
dCBmaWxlICpmaWxlLCBzDQogCXJldHVybiByZXQ7DQogfQ0KIA0KKyNpZiBM
SU5VWF9WRVJTSU9OX0NPREUgPj0gS0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0K
Kw0KK3N0YXRpYyBpbnQNCitubnBmc193cml0ZV9iZWdpbihzdHJ1Y3QgZmls
ZSAqZmlsZSwgc3RydWN0IGFkZHJlc3Nfc3BhY2UgKm1hcHBpbmcsIGxvZmZf
dCBwb3MsDQordW5zaWduZWQgbGVuLCB1bnNpZ25lZCBmbGFncywgc3RydWN0
IHBhZ2UgKipwYWdlcCwgdm9pZCAqKmZzZGF0YSkNCit7DQorCXN0cnVjdCBw
YWdlICpwYWdlOw0KKwlwZ29mZl90IGluZGV4Ow0KKwl1bnNpZ25lZCBmcm9t
Ow0KKw0KKwlpbmRleCA9IHBvcyA+PiBQQUdFX0NBQ0hFX1NISUZUOw0KKwlm
cm9tID0gcG9zICYgKFBBR0VfQ0FDSEVfU0laRSAtIDEpOw0KKw0KKyNpZm5k
ZWYgQU9QX0ZMQUdfTk9GUw0KKwlwYWdlID0gX19ncmFiX2NhY2hlX3BhZ2Uo
bWFwcGluZywgaW5kZXgpOw0KKyNlbHNlDQorCXBhZ2UgPSBncmFiX2NhY2hl
X3BhZ2Vfd3JpdGVfYmVnaW4obWFwcGluZywgaW5kZXgsIGZsYWdzKTsNCisj
ZW5kaWYNCisJaWYgKCFwYWdlKQ0KKwkJcmV0dXJuIC1FTk9NRU07DQorDQor
CSpwYWdlcCA9IHBhZ2U7DQorDQorCXJldHVybiBubnBmc19wcmVwYXJlX3dy
aXRlKGZpbGUsIHBhZ2UsIGZyb20sIGZyb20rbGVuKTsNCit9DQorDQorI2Vu
ZGlmDQorDQogc3RhdGljIGludA0KIG5ucGZzX2NvbW1pdF93cml0ZShzdHJ1
Y3QgZmlsZSAqZmlsZSwgc3RydWN0IHBhZ2UgKnBhZ2UsIHVuc2lnbmVkIGZy
b20sIHVuc2lnbmVkIHRvKQ0KIHsNCkBAIC0xOTM1LDE0ICsyMDY4LDQ1IEBA
IG5ucGZzX2NvbW1pdF93cml0ZShzdHJ1Y3QgZmlsZSAqZmlsZSwgc3QNCiAg
ICAgcmV0dXJuIDA7DQogfQ0KIA0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUg
Pj0gS0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0KKw0KK3N0YXRpYyBpbnQNCitu
bnBmc193cml0ZV9lbmQoc3RydWN0IGZpbGUgKmZpbGUsIHN0cnVjdCBhZGRy
ZXNzX3NwYWNlICptYXBwaW5nLCBsb2ZmX3QgcG9zLA0KK3Vuc2lnbmVkIGxl
biwgdW5zaWduZWQgY29waWVkLCBzdHJ1Y3QgcGFnZSAqcGFnZSwgdm9pZCAq
ZnNkYXRhKQ0KK3sNCisJdW5zaWduZWQgZnJvbSA9IHBvcyAmIChQQUdFX0NB
Q0hFX1NJWkUgLSAxKTsNCisNCisJLyogemVybyB0aGUgc3RhbGUgcGFydCBv
ZiB0aGUgcGFnZSBpZiB3ZSBkaWQgYSBzaG9ydCBjb3B5ICovDQorCWlmIChj
b3BpZWQgPCBsZW4pIHsNCisJCXZvaWQgKmthZGRyID0ga21hcF9hdG9taWMo
cGFnZSwgS01fVVNFUjApOw0KKwkJbWVtc2V0KGthZGRyICsgZnJvbSArIGNv
cGllZCwgMCwgbGVuIC0gY29waWVkKTsNCisJCWZsdXNoX2RjYWNoZV9wYWdl
KHBhZ2UpOw0KKwkJa3VubWFwX2F0b21pYyhrYWRkciwgS01fVVNFUjApOw0K
Kwl9DQorDQorCW5ucGZzX2NvbW1pdF93cml0ZShmaWxlLCBwYWdlLCBmcm9t
LCBmcm9tK2NvcGllZCk7DQorDQorCXVubG9ja19wYWdlKHBhZ2UpOw0KKwlw
YWdlX2NhY2hlX3JlbGVhc2UocGFnZSk7DQorDQorCXJldHVybiBjb3BpZWQ7
DQorfQ0KKw0KKyNlbmRpZg0KKw0KICNpZiBMSU5VWF9WRVJTSU9OX0NPREUg
Pj0gS0VSTkVMX1ZFUlNJT04oMiw2LDE4KQ0KIGNvbnN0DQogI2VuZGlmDQog
c3RydWN0IGFkZHJlc3Nfc3BhY2Vfb3BlcmF0aW9ucyBubnBmc19hb3BzID0g
ew0KIAkucmVhZHBhZ2UgPSBubnBmc19yZWFkcGFnZSwNCiAJLndyaXRlcGFn
ZSA9IG5ucGZzX3dyaXRlcGFnZSwNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RF
IDwgS0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0KIAkucHJlcGFyZV93cml0ZSA9
IG5ucGZzX3ByZXBhcmVfd3JpdGUsDQogCS5jb21taXRfd3JpdGUgPSBubnBm
c19jb21taXRfd3JpdGUsDQorI2Vsc2UNCisJLndyaXRlX2JlZ2luID0gbm5w
ZnNfd3JpdGVfYmVnaW4sDQorCS53cml0ZV9lbmQgPSBubnBmc193cml0ZV9l
bmQsDQorI2VuZGlmDQogfTsNCiANCiAvKg0KZGlmZiAtdXByTiBhcmxhLWN2
cy9ubnBmcy9saW51eC9ubnBmc19tZXNzYWdlLmMgYXJsYS1jdnMtbmV3L25u
cGZzL2xpbnV4L25ucGZzX21lc3NhZ2UuYw0KLS0tIGFybGEtY3ZzL25ucGZz
L2xpbnV4L25ucGZzX21lc3NhZ2UuYwkyMDA2LTEyLTExIDE3OjQwOjI0LjAw
MDAwMDAwMCArMDEwMA0KKysrIGFybGEtY3ZzLW5ldy9ubnBmcy9saW51eC9u
bnBmc19tZXNzYWdlLmMJMjAxMC0wNi0wMyAyMzozMjowOC4yMzI2MTEzODMg
KzAyMDANCkBAIC03MzUsMTIgKzczNSwyMyBAQCBubnBmc19tZXNzYWdlX3Zl
cnNpb24oc3RydWN0IG5ucGZzICpubnBmDQogCQkgICAibm5wZnNfbWVzc2Fn
ZV92ZXJzaW9uIGZhaWxlZCBwYXRoX2xvb2t1cCwgIg0KIAkJICAgImVycm5v
OiAlZFxuIiwgZXJyb3IpOw0KIAl9IGVsc2Ugew0KKyNpZiBMSU5VWF9WRVJT
SU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjUpDQogCSAgICBubnBm
c3AtPmNhY2hlcm9vdCA9IG1udGdldChuZC5tbnQpOw0KIAkgICAgbm5wZnNw
LT5jYWNoZWRpciA9IGRnZXQobmQuZGVudHJ5KTsNCiAJICAgIHBhdGhfcmVs
ZWFzZSgmbmQpOw0KKyNlbHNlDQorCSAgICBubnBmc3AtPmNhY2hlcm9vdCA9
IG1udGdldChuZC5wYXRoLm1udCk7DQorCSAgICBubnBmc3AtPmNhY2hlZGly
ID0gZGdldChuZC5wYXRoLmRlbnRyeSk7DQorCSAgICBwYXRoX3B1dCgmbmQu
cGF0aCk7DQorI2VuZGlmDQogCSAgICANCisjaWYgTElOVVhfVkVSU0lPTl9D
T0RFIDw9IEtFUk5FTF9WRVJTSU9OKDIsNiwyOCkNCiAJICAgIG5ucGZzcC0+
dWlkID0gY3VycmVudC0+ZnN1aWQ7DQogCSAgICBubnBmc3AtPmdpZCA9IGN1
cnJlbnQtPmZzZ2lkOw0KKyNlbHNlDQorICAgICAgICAgICAgbm5wZnNwLT51
aWQgPSBjdXJyZW50X2ZzdWlkKCk7DQorICAgICAgICAgICAgbm5wZnNwLT5n
aWQgPSBjdXJyZW50X2ZzZ2lkKCk7DQorI2VuZGlmDQogDQogCSAgICAvKiBY
WFggd2Ugc2hvdWxkIHZhbGlkYXRlIHRoZXNlIHZhbHVlcyAqLw0KIAkgICAg
bm5wZnNfYmxvY2tzaXplID0gYmxvY2tzaXplOw0KZGlmZiAtdXByTiBhcmxh
LWN2cy9ubnBmcy9saW51eC9ubnBmc19zeXNjYWxscy5jIGFybGEtY3ZzLW5l
dy9ubnBmcy9saW51eC9ubnBmc19zeXNjYWxscy5jDQotLS0gYXJsYS1jdnMv
bm5wZnMvbGludXgvbm5wZnNfc3lzY2FsbHMuYwkyMDA3LTAxLTAzIDE1OjI2
OjI3LjAwMDAwMDAwMCArMDEwMA0KKysrIGFybGEtY3ZzLW5ldy9ubnBmcy9s
aW51eC9ubnBmc19zeXNjYWxscy5jCTIwMTAtMDYtMDQgMDE6MTk6MjIuODMy
NjA5NDM3ICswMjAwDQpAQCAtMTQ3LDEwICsxNDcsMTYgQEAgc3RhdGljIGlu
dCBubnBmc19zZWNfcmVnaXN0ZXJlZCA9IDA7DQogI2RlZmluZSBTRUMyUEFH
KHMpIChubnBmc19wYWdfdCkodW5zaWduZWQgbG9uZykocykNCiAjZGVmaW5l
IFBBRzJTRUMocCkgKHZvaWQgKikodW5zaWduZWQgbG9uZykocCkNCiANCisj
aWYgTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oMiw2LDI0
KQ0KKw0KIHN0YXRpYyBpbnQNCiBubnBmc19zZWNfdGFza19hbGxvYyhzdHJ1
Y3QgdGFza19zdHJ1Y3QgKnApDQogew0KKyNpZiBMSU5VWF9WRVJTSU9OX0NP
REUgPD0gS0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0KICAgICBubnBmc19wYWdf
dCBwYWcgPSBTRUMyUEFHKGN1cnJlbnQtPnNlY3VyaXR5KTsNCisjZWxzZQ0K
KyAgICBubnBmc19wYWdfdCBwYWcgPSBTRUMyUEFHKGN1cnJlbnRfc2VjdXJp
dHkoKSk7DQorI2VuZGlmDQogICAgIGlmIChwYWcpDQogCXAtPnNlY3VyaXR5
ID0gUEFHMlNFQyhwYWcpOw0KICAgICByZXR1cm4gMDsNCkBAIC0xNjQsMzUg
KzE3MCw1NSBAQCBubnBmc19zZWNfdGFza19mcmVlKHN0cnVjdCB0YXNrX3N0
cnVjdCAqDQogCXAtPnNlY3VyaXR5ID0gTlVMTDsNCiB9DQogDQorI2VuZGlm
DQorDQogc3RhdGljIG5ucGZzX3BhZ190DQogbm5wZnNfZ2V0X3BhZ19zZWMo
dm9pZCkNCiB7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJORUxf
VkVSU0lPTigyLDYsMjgpDQogICAgIG5ucGZzX3BhZ190IHBhZyA9IFNFQzJQ
QUcoY3VycmVudC0+c2VjdXJpdHkpOw0KKyNlbHNlDQorICAgIG5ucGZzX3Bh
Z190IHBhZyA9IFNFQzJQQUcoY3VycmVudF9zZWN1cml0eSgpKTsNCisjZW5k
aWYNCiAgICAgaWYgKHBhZykNCiAJcmV0dXJuIHBhZzsNCiANCisjaWYgTElO
VVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9OKDIsNiwyOCkNCiAg
ICAgcmV0dXJuIGN1cnJlbnQtPnVpZDsNCisjZWxzZQ0KKyAgICByZXR1cm4g
Y3VycmVudF91aWQoKTsNCisjZW5kaWYNCiB9DQogDQogc3RhdGljIGludA0K
IG5ucGZzX3NldF9wYWdfc2VjKHZvaWQpDQogew0KICAgICBzdGF0aWMgbm5w
ZnNfcGFnX3QgcGFnbnVtID0gTk5QRlNfUEFHX0xMSU07DQorI2lmIExJTlVY
X1ZFUlNJT05fQ09ERSA+PSBLRVJORUxfVkVSU0lPTigyLDYsMjkpDQorICAg
IHN0cnVjdCBjcmVkICpjcmVkOw0KKyNlbmRpZg0KIA0KICAgICBpZiAocGFn
bnVtID09IE5OUEZTX1BBR19VTElNKQ0KIAlyZXR1cm4gLUVOT01FTTsNCiAg
ICAgLyogcGFnbnVtID0gTk5QRlNfUEFHX0xMSU07ICovDQogICAgIA0KKyNp
ZiBMSU5VWF9WRVJTSU9OX0NPREUgPD0gS0VSTkVMX1ZFUlNJT04oMiw2LDI4
KQ0KICAgICBjdXJyZW50LT5zZWN1cml0eSA9IFBBRzJTRUMocGFnbnVtKTsN
CisjZWxzZQ0KKyAgICBjcmVkID0gKHN0cnVjdCBjcmVkICopIGN1cnJlbnQt
PmNyZWQ7DQorICAgIGNyZWQtPnNlY3VyaXR5ID0gUEFHMlNFQyhwYWdudW0p
Ow0KKyNlbmRpZg0KICAgICBwYWdudW0rKzsNCiAgICAgcmV0dXJuIDA7DQog
fQ0KIA0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lP
TigyLDYsMjQpDQogc3RhdGljIHN0cnVjdCBzZWN1cml0eV9vcGVyYXRpb25z
IG5ucGZzX3NlY19vcHMgPSB7DQogICAgIC50YXNrX2FsbG9jX3NlY3VyaXR5
ID0gbm5wZnNfc2VjX3Rhc2tfYWxsb2MsDQogICAgIC50YXNrX2ZyZWVfc2Vj
dXJpdHkgPSBubnBmc19zZWNfdGFza19mcmVlLA0KIC8vICAgIC50YXNrX3Jl
cGFyZW50X3RvX2luaXQgPSBubnBmc19zZWNfcmVwYXJlbnRfdG9faW5pdCwN
CiB9Ow0KKyNlbmRpZg0KIA0KICNlbmRpZiAvKiBDT05GSUdfU0VDVVJJVFkg
Ki8NCiANCkBAIC0yMjIsOCArMjQ4LDEzIEBAIGZpbmRfcGFnKHN0cnVjdCBn
cm91cF9pbmZvICpnaSkNCiBzdGF0aWMgbm5wZnNfcGFnX3QNCiBubnBmc19n
ZXRfcGFnX2dyb3VwKHZvaWQpDQogew0KKyNpZiBMSU5VWF9WRVJTSU9OX0NP
REUgPD0gS0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0KICAgICBzdHJ1Y3QgZ3Jv
dXBfaW5mbyAqZ2kgPSBjdXJyZW50LT5ncm91cF9pbmZvOw0KICAgICBubnBm
c19wYWdfdCByZXQgPSBjdXJyZW50LT51aWQ7DQorI2Vsc2UNCisgICAgc3Ry
dWN0IGdyb3VwX2luZm8gKmdpID0gZ2V0X2N1cnJlbnRfZ3JvdXBzKCk7DQor
ICAgIG5ucGZzX3BhZ190IHJldCA9IGN1cnJlbnRfdWlkKCk7DQorI2VuZGlm
DQogICAgIGludCBpOw0KIA0KICAgICBnZXRfZ3JvdXBfaW5mbyhnaSk7DQpA
QCAtMjQyLDkgKzI3MywxNyBAQCBubnBmc19nZXRfcGFnX2dyb3VwKHZvaWQp
DQogc3RhdGljIGludA0KIHN0b3JlX3BhZyhubnBmc19wYWdfdCBwYWdudW0p
DQogew0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPD0gS0VSTkVMX1ZFUlNJ
T04oMiw2LDI4KQ0KICAgICBzdHJ1Y3QgZ3JvdXBfaW5mbyAqb2xkX2dpID0g
Y3VycmVudC0+Z3JvdXBfaW5mbzsNCisjZWxzZQ0KKyAgIHN0cnVjdCBncm91
cF9pbmZvICpvbGRfZ2kgPSBnZXRfY3VycmVudF9ncm91cHMoKTsNCisjZW5k
aWYNCiAgICAgc3RydWN0IGdyb3VwX2luZm8gKm5ld19naTsNCisjaWYgTElO
VVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oMiw2LDI1KQ0KICAg
ICBpbnQgbmJsb2NrcywgY291bnQ7DQorI2Vsc2UNCisgICAgdW5zaWduZWQg
aW50IG5ibG9ja3MsIGNvdW50Ow0KKyNlbmRpZg0KICAgICBpbnQgZm91bmQg
PSAwOw0KICAgICBpbnQgaSwgazsNCiAgICAgDQpAQCAtMzE3LDcgKzM1Niwx
MSBAQCBubnBmc19nZXRfcGFnKCkNCiAgICAgcmV0dXJuIG5ucGZzX2dldF9w
YWdfZ3JvdXAoKTsNCiAjZW5kaWYgLyogR1JPVVBQQUdTICovDQogDQorI2lm
IExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJORUxfVkVSU0lPTigyLDYsMjgp
DQogICAgIHJldHVybiBjdXJyZW50LT51aWQ7DQorI2Vsc2UNCisgICAgcmV0
dXJuIGN1cnJlbnRfdWlkKCk7DQorI2VuZGlmDQogfQ0KIA0KIHN0YXRpYyBp
bmxpbmUgaW50DQpAQCAtNTI4LDcgKzU3MSwxMSBAQCB1c2VyX3BhdGgyZGVu
dHJ5IChzdHJ1Y3QgbmFtZWlkYXRhICpuZCwgDQogICAgIHB1dG5hbWUoa25h
bWUpOw0KICAgICBpZiAoZXJyb3IpDQogCXJldHVybiBFUlJfUFRSKGVycm9y
KTsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04o
Miw2LDI1KQ0KICAgICByZXR1cm4gbmQtPmRlbnRyeTsNCisjZWxzZQ0KKyAg
ICByZXR1cm4gbmQtPnBhdGguZGVudHJ5Ow0KKyNlbmRpZg0KIH0NCiANCiBh
c21saW5rYWdlIGxvbmcNCkBAIC01NDAsMTEgKzU4NywxNiBAQCBzeXNfYWZz
X2ludCAoaW50IG9wZXJhdGlvbiwNCiB7DQogICAgIGxvbmcgZXJyb3IgPSAw
Ow0KICAgICBzdHJ1Y3QgYXJsYVZpY2VJb2N0bCB2aWNlX2lvY3RsOyANCi0g
ICAgc3RydWN0IG5ucGZzX21lc3NhZ2VfcGlvY3RsIG1zZzsNCisgICAgc3Ry
dWN0IG5ucGZzX21lc3NhZ2VfcGlvY3RsICptc2cgPSBOVUxMOw0KICAgICBz
dHJ1Y3Qgbm5wZnNfbWVzc2FnZV93YWtldXAgKm1zZzI7DQogICAgIHN0cnVj
dCBkZW50cnkgKmRlbnRyeSA9IE5VTEw7DQogICAgIHN0cnVjdCBuYW1laWRh
dGEgbmQ7DQotICAgIA0KKw0KKyAgICBtc2cgPSBrbWFsbG9jKHNpemVvZihz
dHJ1Y3Qgbm5wZnNfbWVzc2FnZV9waW9jdGwpLCBHRlBfS0VSTkVMKTsNCisN
CisgICAgaWYgKCFtc2cpDQorICAgICAgcmV0dXJuIC1FTk9NRU07DQorDQog
ICAgIGxvY2tfa2VybmVsKCk7DQogDQogICAgIE5OUEZTREVCKFhERUJTWVMs
ICgic3lzX2FmcyBrZXJuZWwgbG9ja2VkXG4iKSk7DQpAQCAtNTc1LDcgKzYy
Nyw3IEBAIHN5c19hZnNfaW50IChpbnQgb3BlcmF0aW9uLA0KIAkgICAgZ290
byB1bmxvY2s7DQogCX0NCiAJaWYgKHZpY2VfaW9jdGwuaW5fc2l6ZSAhPSAw
KSB7DQotCSAgICBpZihjb3B5X2Zyb21fdXNlcigmbXNnLm1zZywNCisJICAg
IGlmKGNvcHlfZnJvbV91c2VyKCZtc2ctPm1zZywNCiAJCQkgICAgICB2aWNl
X2lvY3RsLmluLA0KIAkJCSAgICAgIHZpY2VfaW9jdGwuaW5fc2l6ZSkgIT0g
MCkgew0KIAkJZXJyb3IgPSAtRUZBVUxUOw0KQEAgLTYyOCwxOSArNjgwLDIz
IEBAIHN5c19hZnNfaW50IChpbnQgb3BlcmF0aW9uLA0KIAkJZXJyb3IgPSAt
RUlOVkFMOw0KIAkJZ290byB1bmxvY2s7DQogCSAgICB9DQotCSAgICBtc2cu
aGFuZGxlID0geG4tPmhhbmRsZTsNCisJICAgIG1zZy0+aGFuZGxlID0geG4t
PmhhbmRsZTsNCiAJfQ0KIA0KLQltc2cuaGVhZGVyLm9wY29kZSA9IE5OUEZT
X01TR19QSU9DVEw7DQotCW1zZy5vcGNvZGUgPSBhX29wY29kZTsNCisJbXNn
LT5oZWFkZXIub3Bjb2RlID0gTk5QRlNfTVNHX1BJT0NUTDsNCisJbXNnLT5v
cGNvZGUgPSBhX29wY29kZTsNCiAJDQotCW1zZy5pbnNpemUgICA9IHZpY2Vf
aW9jdGwuaW5fc2l6ZTsNCi0JbXNnLm91dHNpemUgID0gdmljZV9pb2N0bC5v
dXRfc2l6ZTsNCi0JbXNnLmNyZWQudWlkID0gY3VycmVudC0+dWlkOw0KLQlt
c2cuY3JlZC5wYWcgPSBubnBmc19nZXRfcGFnKCk7DQorCW1zZy0+aW5zaXpl
ICAgPSB2aWNlX2lvY3RsLmluX3NpemU7DQorCW1zZy0+b3V0c2l6ZSAgPSB2
aWNlX2lvY3RsLm91dF9zaXplOw0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUg
PD0gS0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0KKwltc2ctPmNyZWQudWlkID0g
Y3VycmVudC0+dWlkOw0KKyNlbHNlDQorICAgICAgICBtc2ctPmNyZWQudWlk
ID0gY3VycmVudF91aWQoKTsNCisjZW5kaWYNCisJbXNnLT5jcmVkLnBhZyA9
IG5ucGZzX2dldF9wYWcoKTsNCiAJDQotCWVycm9yID0gbm5wZnNfbWVzc2Fn
ZV9ycGMoJm5ucGZzWzBdLCAmbXNnLmhlYWRlciwgc2l6ZW9mKG1zZykpOyAv
KiBYWFggKi8NCi0JbXNnMiA9IChzdHJ1Y3Qgbm5wZnNfbWVzc2FnZV93YWtl
dXAgKikgJm1zZzsNCisJZXJyb3IgPSBubnBmc19tZXNzYWdlX3JwYygmbm5w
ZnNbMF0sICZtc2ctPmhlYWRlciwgc2l6ZW9mKHN0cnVjdCBubnBmc19tZXNz
YWdlX3Bpb2N0bCkpOyAvKiBYWFggKi8NCisJbXNnMiA9IChzdHJ1Y3Qgbm5w
ZnNfbWVzc2FnZV93YWtldXAgKikgbXNnOw0KIAlpZiAoZXJyb3IgPT0gMCkN
CiAJICAgIGVycm9yID0gbXNnMi0+ZXJyb3I7DQogDQpAQCAtNjc1LDExICs3
MzEsMTYgQEAgc3lzX2Fmc19pbnQgKGludCBvcGVyYXRpb24sDQogICAgIA0K
ICB1bmxvY2s6DQogICAgIGlmIChkZW50cnkpDQorI2lmIExJTlVYX1ZFUlNJ
T05fQ09ERSA8IEtFUk5FTF9WRVJTSU9OKDIsNiwyNSkNCiAJcGF0aF9yZWxl
YXNlKCZuZCk7DQorI2Vsc2UNCisJcGF0aF9wdXQoJm5kLnBhdGgpOw0KKyNl
bmRpZg0KIA0KICAgICBOTlBGU0RFQihYREVCU1lTLCAoIm5ucGZzX3N5c2Nh
bGwgcmV0dXJucyBlcnJvcjogJWxkXG4iLCBlcnJvcikpOw0KIA0KICAgICBO
TlBGU0RFQihYREVCU1lTLCAoInN5c19hZnMga2VybmVsIHVubG9ja1xuIikp
Ow0KKyAgICBrZnJlZShtc2cpOw0KICAgICB1bmxvY2tfa2VybmVsKCk7DQog
DQogICAgIHJldHVybiBlcnJvcjsNCkBAIC03ODAsMjAgKzg0MSwzMiBAQCBz
dGF0aWMgaW50IG5ucGZzX2luaXRfcHJvY2ZzKHZvaWQpDQogew0KICAgICBz
dHJ1Y3QgcHJvY19kaXJfZW50cnkgKmVudHJ5Ow0KICAgICANCisjaWYgTElO
VVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oMiw2LDI2KQ0KICAg
ICBubnBmc19wcm9jZnNfZGlyID0gcHJvY19ta2RpcihOTlBGU19QUk9DX0RJ
UiwgcHJvY19yb290X2ZzKTsNCisjZWxzZQ0KKyAgICBubnBmc19wcm9jZnNf
ZGlyID0gcHJvY19ta2RpcigiZnMvIiBOTlBGU19QUk9DX0RJUiwgTlVMTCk7
DQorI2VuZGlmDQogICAgIGlmIChubnBmc19wcm9jZnNfZGlyID09IE5VTEwp
DQogCXJldHVybiAtRU5PTUVNOw0KICAgICANCisjaWYgTElOVVhfVkVSU0lP
Tl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oMiw2LDMwKQ0KICAgICBubnBmc19w
cm9jZnNfZGlyLT5vd25lciA9IFRISVNfTU9EVUxFOw0KKyNlbmRpZg0KICAg
ICANCiAgICAgZW50cnkgPSBjcmVhdGVfcHJvY19lbnRyeShOTlBGU19QUk9D
X05PREUsIDA2NjYsIG5ucGZzX3Byb2Nmc19kaXIpOw0KICAgICBpZiAoZW50
cnkgPT0gTlVMTCkgew0KIAlOTlBGU0RFQihYREVCU1lTLCAoIm5ucGZzX2lu
aXRfcHJvY2ZzOiBubyBub2RlXG4iKSk7DQorI2lmIExJTlVYX1ZFUlNJT05f
Q09ERSA8IEtFUk5FTF9WRVJTSU9OKDIsNiwyNikNCiAJcmVtb3ZlX3Byb2Nf
ZW50cnkoTk5QRlNfUFJPQ19ESVIsIHByb2Nfcm9vdF9mcyk7DQorI2Vsc2UN
CisJcmVtb3ZlX3Byb2NfZW50cnkoImZzLyIgTk5QRlNfUFJPQ19ESVIsIE5V
TEwpOw0KKyNlbmRpZg0KIAlyZXR1cm4gLUVOT01FTTsNCiAgICAgfQ0KICAg
ICANCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04o
Miw2LDMwKQ0KICAgICBlbnRyeS0+b3duZXIgPSBUSElTX01PRFVMRTsNCisj
ZW5kaWYNCiAgICAgZW50cnktPnByb2NfZm9wcyA9ICZubnBmc19wcm9jZnNf
Zm9wczsNCiANCiAjaWZkZWYgU1lTQ0FMTENPTVBBVA0KQEAgLTgxNSw3ICs4
ODgsMTEgQEAgc3RhdGljIHZvaWQgbm5wZnNfZXhpdF9wcm9jZnModm9pZCkN
CiAgICAgfQ0KICNlbmRpZiAvKiBTWVNDQUxMQ09NUEFUICovDQogICAgIHJl
bW92ZV9wcm9jX2VudHJ5KE5OUEZTX1BST0NfTk9ERSwgbm5wZnNfcHJvY2Zz
X2Rpcik7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8IEtFUk5FTF9WRVJT
SU9OKDIsNiwyNikNCiAgICAgcmVtb3ZlX3Byb2NfZW50cnkoTk5QRlNfUFJP
Q19ESVIsIHByb2Nfcm9vdF9mcyk7DQorI2Vsc2UNCisgICAgcmVtb3ZlX3By
b2NfZW50cnkoImZzLyIgTk5QRlNfUFJPQ19ESVIsIE5VTEwpOw0KKyNlbmRp
Zg0KIH0NCiANCiAjaWZkZWYgR1JPVVBQQUdTDQpAQCAtODQwLDEyICs5MTcs
MTQgQEAgdm9pZA0KIGluc3RhbGxfYWZzX3N5c2NhbGwodm9pZCkNCiB7DQog
I2lmZGVmIENPTkZJR19TRUNVUklUWQ0KKyNpZiBMSU5VWF9WRVJTSU9OX0NP
REUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjQpDQogICAgIGlmIChyZWdpc3Rl
cl9zZWN1cml0eSgmbm5wZnNfc2VjX29wcykpDQogCU5OUEZTREVCKFhERUJT
WVMsDQogCQkgKCJpbnN0YWxsX2Fmc19zeXNjYWxsOiBubnBmc19pbml0X3Nl
YyBmYWlsZWRcbiIpKTsNCiAgICAgZWxzZQ0KIAlubnBmc19zZWNfcmVnaXN0
ZXJlZCA9IDE7DQogI2VuZGlmDQorI2VuZGlmDQogDQogICAgIG5ucGZzX2lu
aXRfcHJvY2ZzKCk7DQogDQpAQCAtODg4LDkgKzk2NywxMSBAQCByZXN0b3Jl
X2Fmc19zeXNjYWxsICh2b2lkKQ0KICNlbmRpZiAvKiBTWVNDQUxMSEFDSyAq
Lw0KIA0KICNpZmRlZiBDT05GSUdfU0VDVVJJVFkNCisjaWYgTElOVVhfVkVS
U0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oMiw2LDI0KQ0KICAgICBpZiAo
bm5wZnNfc2VjX3JlZ2lzdGVyZWQpDQogCWlmICh1bnJlZ2lzdGVyX3NlY3Vy
aXR5KCZubnBmc19zZWNfb3BzKSkNCiAJICAgIHByaW50ayhLRVJOX0VNRVJH
ICJubnBmc19leGl0X3NlYzogY291bGRuJ3QgdW5yZWdpc3RlclxuIik7DQor
I2VuZGlmDQogI2VuZGlmIC8qICFDT05GSUdfU0VDVVJJVFkgKi8NCiANCiAj
aWZkZWYgR1JPVVBQQUdTDQpkaWZmIC11cHJOIGFybGEtY3ZzL25ucGZzL2xp
bnV4L25ucGZzX3N5c2NhbGxzLWxvc3NhZ2UuYyBhcmxhLWN2cy1uZXcvbm5w
ZnMvbGludXgvbm5wZnNfc3lzY2FsbHMtbG9zc2FnZS5jDQotLS0gYXJsYS1j
dnMvbm5wZnMvbGludXgvbm5wZnNfc3lzY2FsbHMtbG9zc2FnZS5jCTIwMDYt
MTItMTEgMTc6MzE6NDUuMDAwMDAwMDAwICswMTAwDQorKysgYXJsYS1jdnMt
bmV3L25ucGZzL2xpbnV4L25ucGZzX3N5c2NhbGxzLWxvc3NhZ2UuYwkyMDEw
LTA2LTAzIDIzOjMyOjA4LjIzMjYxMTM4MyArMDIwMA0KQEAgLTYzLDYgKzYz
LDExIEBAIGNvbnN0IGNoYXIgKiBfX2F0dHJpYnV0ZV9fKCh3ZWFrKSkNCiAJ
CSAgICB1bnNpZ25lZCBsb25nICpvZmZzZXQsDQogCQkgICAgY2hhciAqKm1v
ZG5hbWUsIGNoYXIgKm5hbWVidWYpOw0KIA0KKyNpZiBMSU5VWF9WRVJTSU9O
X0NPREUgPiBLRVJORUxfVkVSU0lPTigyLDYsMTgpDQorI2lmZGVmIF9feDg2
XzY0X18NCitleHRlcm4gcndsb2NrX3QgdGFza2xpc3RfbG9jayBfX2F0dHJp
YnV0ZV9fKCh3ZWFrKSk7DQorI2VuZGlmDQorI2VuZGlmDQogc3RhdGljIHZv
aWQgKioNCiBnZXRfc3RhcnRfYWRkcih2b2lkKSB7DQogI2lmZGVmIF9feDg2
XzY0X18NCmRpZmYgLXVwck4gYXJsYS1jdnMvbm5wZnMvbGludXgvbm5wZnNf
dmZzb3BzLmMgYXJsYS1jdnMtbmV3L25ucGZzL2xpbnV4L25ucGZzX3Zmc29w
cy5jDQotLS0gYXJsYS1jdnMvbm5wZnMvbGludXgvbm5wZnNfdmZzb3BzLmMJ
MjAwNi0xMi0xMSAxNzo0MzozNS4wMDAwMDAwMDAgKzAxMDANCisrKyBhcmxh
LWN2cy1uZXcvbm5wZnMvbGludXgvbm5wZnNfdmZzb3BzLmMJMjAxMC0wNi0w
MyAyMzozMjowOC4yMzI2MTEzODMgKzAyMDANCkBAIC00OSw5ICs0OSwxMyBA
QCBSQ1NJRCgiJElkOiBubnBmc192ZnNvcHMuYyx2IDEuMTA5IDIwMDYvDQog
DQogc3RydWN0IG5ucGZzIG5ucGZzW05OTlBGU107DQogDQorI2lmIExJTlVY
X1ZFUlNJT05fQ09ERSA8IEtFUk5FTF9WRVJTSU9OKDIsNiwyNSkNCiBzdGF0
aWMgdm9pZCBubnBmc19yZWFkX2lub2RlKHN0cnVjdCBpbm9kZSAqaW5vZGUp
Ow0KKyNlbmRpZg0KIHN0YXRpYyB2b2lkIG5ucGZzX3B1dF9zdXBlcihzdHJ1
Y3Qgc3VwZXJfYmxvY2sgKnNiKTsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RF
IDwgS0VSTkVMX1ZFUlNJT04oMiw2LDI1KQ0KIHN0YXRpYyB2b2lkIG5ucGZz
X3B1dF9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKTsNCisjZW5kaWYNCiBz
dGF0aWMgdm9pZCBubnBmc193cml0ZV9zdXBlcihzdHJ1Y3Qgc3VwZXJfYmxv
Y2sgKiBzYik7DQogDQogI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJO
RUxfVkVSU0lPTigyLDYsMTgpDQpAQCAtNjEsOCArNjUsMTAgQEAgc3RhdGlj
IGludCBubnBmc19zdGF0ZnMoc3RydWN0IHN1cGVyX2Jsbw0KICNlbmRpZg0K
IA0KIHN0YXRpYyBzdHJ1Y3Qgc3VwZXJfb3BlcmF0aW9ucyBubnBmc19zb3Bz
ID0geyANCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJ
T04oMiw2LDI1KQ0KICAgICByZWFkX2lub2RlCQk6IG5ucGZzX3JlYWRfaW5v
ZGUsDQogICAgIHB1dF9pbm9kZQkJOiBubnBmc19wdXRfaW5vZGUsDQorI2Vu
ZGlmDQogICAgIGFsbG9jX2lub2RlCQk6IG5ucGZzX25vZGVfYWxsb2MsDQog
ICAgIGRlc3Ryb3lfaW5vZGUJOiBubnBmc19ub2RlX2ZyZWUsDQogICAgIGRy
b3BfaW5vZGUJCTogZ2VuZXJpY19kZWxldGVfaW5vZGUsDQpAQCAtMTg5LDcg
KzE5NSwxMSBAQCBubnBmc19yZWFkX3N1cGVyIChzdHJ1Y3Qgc3VwZXJfYmxv
Y2sgKiBzDQogCWlmIChlcnJvcikNCiAJICAgIGRkZXYgPSBFUlJfUFRSKGVy
cm9yKTsNCiAJZWxzZQ0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJO
RUxfVkVSU0lPTigyLDYsMjUpDQogCSAgICBkZGV2ID0gbmQuZGVudHJ5Ow0K
KyNlbHNlDQorCSAgICBkZGV2ID0gbmQucGF0aC5kZW50cnk7DQorI2VuZGlm
DQogDQogCWlmICghSVNfRVJSKGRkZXYpKSB7DQogCSAgICBtaW5vcmRldmlj
ZSA9IE1JTk9SKGRkZXYtPmRfaW5vZGUtPmlfcmRldik7DQpAQCAtMjczLDYg
KzI4Myw3IEBAIG5ucGZzX3B1dF9zdXBlcihzdHJ1Y3Qgc3VwZXJfYmxvY2sg
KnNiKQ0KICAgICBOTlBGU0RFQihYREVCVkZPUFMsICgibm5wZnNfcHV0X3N1
cGVyIGV4aXRpbmdcbiIpKTsNCiB9DQogDQorI2lmIExJTlVYX1ZFUlNJT05f
Q09ERSA8IEtFUk5FTF9WRVJTSU9OKDIsNiwyNSkNCiBzdGF0aWMgdm9pZA0K
IG5ucGZzX3JlYWRfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSkNCiB7DQpA
QCAtMzM5LDYgKzM1MCw3IEBAIG5ucGZzX3B1dF9pbm9kZShzdHJ1Y3QgaW5v
ZGUgKmlub2RlKQ0KIA0KICAgICB1cCgmbm5wZnNwLT5pbmFjdGl2ZV9zZW0p
Ow0KIH0NCisjZW5kaWYgLy8gTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVM
X1ZFUlNJT04oMiw2LDI1KQ0KIA0KIHN0YXRpYyBpbnQNCiBubnBmc19zdGF0
ZnNfaW50KHN0cnVjdCBzdXBlcl9ibG9jayAqc2IsIHN0cnVjdCBrc3RhdGZz
ICpidWYpDQpAQCAtMzUyLDcgKzM2NCwxNSBAQCBubnBmc19zdGF0ZnNfaW50
KHN0cnVjdCBzdXBlcl9ibG9jayAqc2IsDQogICAgIHRtcC5mX2JhdmFpbCAg
PSAxMDI0KjEwMjQqMi01MDsNCiAgICAgdG1wLmZfZmlsZXMgICA9IDEwMjQq
MTAyNDsNCiAgICAgdG1wLmZfZmZyZWUgICA9IDEwMjQqMTAyNC0xMDA7DQor
ICAgIHRtcC5mX2ZzaWQudmFsWzBdID0gMDsNCisgICAgdG1wLmZfZnNpZC52
YWxbMV0gPSAwOw0KICAgICB0bXAuZl9uYW1lbGVuID0gTkFNRV9NQVg7DQor
ICAgIHRtcC5mX2Zyc2l6ZSAgPSAwOw0KKyAgICB0bXAuZl9zcGFyZVswXSA9
IDA7DQorICAgIHRtcC5mX3NwYXJlWzFdID0gMDsNCisgICAgdG1wLmZfc3Bh
cmVbMl0gPSAwOw0KKyAgICB0bXAuZl9zcGFyZVszXSA9IDA7DQorICAgIHRt
cC5mX3NwYXJlWzRdID0gMDsNCiAgICAgKmJ1ZiA9IHRtcDsNCiAgICAgcmV0
dXJuIDA7DQogfQ0K
---2098261369-283268217-1275658166=:819408
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
_______________________________________________
Arla-drinkers mailing list
Arla-drinkers@stacken.kth.se
https://lists.stacken.kth.se/mailman/listinfo/arla-drinkers
---2098261369-283268217-1275658166=:819408--