[4634] in arla-drinkers

home help back first fref pref prev next nref lref last post

PATCH: Arla 0.90 on Linux 2.6.24 to 2.6.29-rc2

daemon@ATHENA.MIT.EDU (=?ISO-8859-1?Q?Bo_Brant=E9n?=)
Sun Jan 25 17:07:38 2009

From arla-drinkers-bounces@stacken.kth.se Sun Jan 25 22:07:38 2009
Return-Path: <arla-drinkers-bounces@stacken.kth.se>
Delivered-To: arla-drinkers-mtg@bloom-picayune.mit.edu
Received: (qmail 2415 invoked from network); 25 Jan 2009 22:07:37 -0000
Received: from mx1.kth.se (130.237.32.140)
  by charon.mit.edu with SMTP; 25 Jan 2009 22:07:37 -0000
Received: from localhost (localhost [127.0.0.1])
	by mx1.kth.se (Postfix) with ESMTP id 975A3FD333;
	Sun, 25 Jan 2009 23:07:35 +0100 (CET)
X-Virus-Scanned: by amavisd-new at kth.se
Received: from mx1.kth.se ([127.0.0.1])
	by localhost (mx1.kth.se [127.0.0.1]) (amavisd-new, port 10024)
	with LMTP id af6II7qHxze4; Sun, 25 Jan 2009 23:07:31 +0100 (CET)
Received: from tapas.stacken.kth.se (tapas.stacken.kth.se [130.237.234.140])
	by mx1.kth.se (Postfix) with ESMTP id 1E6CFFD2B0;
	Sun, 25 Jan 2009 23:07:08 +0100 (CET)
Received: from tapas.stacken.kth.se (localhost [127.0.0.1])
	by tapas.stacken.kth.se (Postfix) with ESMTP id 3663651D5B;
	Sun, 25 Jan 2009 23:07:08 +0100 (CET)
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 3C85351D5B
	for <arla-drinkers@tapas.stacken.kth.se>;
	Sun, 25 Jan 2009 23:07:06 +0100 (CET)
Received: from mx2.kth.se (mx2.kth.se [130.237.48.98])
	by brev.stacken.kth.se (8.12.10/8.12.10) with ESMTP id n0PM75S9015519
	for <arla-drinkers@stacken.kth.se>;
	Sun, 25 Jan 2009 23:07:05 +0100 (MET)
Received: from localhost (localhost [127.0.0.1])
	by mx2.kth.se (Postfix) with ESMTP id 6D87610970B
	for <arla-drinkers@stacken.kth.se>;
	Sun, 25 Jan 2009 23:07:00 +0100 (CET)
X-Virus-Scanned: by amavisd-new at kth.se
Received: from mx2.kth.se ([127.0.0.1])
	by localhost (mx2.kth.se [127.0.0.1]) (amavisd-new, port 10024)
	with LMTP id eDhVBkTZbIl0 for <arla-drinkers@stacken.kth.se>;
	Sun, 25 Jan 2009 23:06:53 +0100 (CET)
Received: from mail.acc.umu.se (mail.acc.umu.se [IPv6:2001:6b0:e:2018::156])
	by mx2.kth.se (Postfix) with ESMTP id 6CFDE108DB7
	for <arla-drinkers@stacken.kth.se>;
	Sun, 25 Jan 2009 23:06:51 +0100 (CET)
Received: from localhost (localhost [127.0.0.1])
	by amavisd-new (Postfix) with ESMTP id 25B90EAE
	for <arla-drinkers@stacken.kth.se>;
	Sun, 25 Jan 2009 23:06:51 +0100 (MET)
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 30AA3EA9
	for <arla-drinkers@stacken.kth.se>;
	Sun, 25 Jan 2009 23:06:48 +0100 (MET)
Received: by stalin.acc.umu.se (Postfix, from userid 10005)
	id 0B4BE2D; Sun, 25 Jan 2009 23:06:47 +0100 (CET)
Received: from localhost (localhost [127.0.0.1])
	by stalin.acc.umu.se (Postfix) with ESMTP id EF5EB2C
	for <arla-drinkers@stacken.kth.se>;
	Sun, 25 Jan 2009 23:06:47 +0100 (CET)
Date: Sun, 25 Jan 2009 23:06:47 +0100 (CET)
From: =?ISO-8859-1?Q?Bo_Brant=E9n?= <bosse@acc.umu.se>
To: arla-drinkers@stacken.kth.se
Subject: PATCH: Arla 0.90 on Linux 2.6.24 to 2.6.29-rc2
Message-ID: <Pine.A41.4.64.0901252305150.1388702@stalin.acc.umu.se>
MIME-Version: 1.0
Content-Type: MULTIPART/MIXED;
	BOUNDARY="-2098261369-2037235353-1232921207=:1388702"
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-2037235353-1232921207=:1388702
Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed

PATCH: Arla 0.90 on Linux 2.6.24 to 2.6.29-rc2
---2098261369-2037235353-1232921207=:1388702
Content-Type: TEXT/PLAIN; charset=US-ASCII; name=patch-0.90
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.A41.4.64.0901252306470.1388702@stalin.acc.umu.se>
Content-Description: 
Content-Disposition: attachment; filename=patch-0.90

ZGlmZiAtdXByTiBhcmxhLTAuOTAvbm5wZnMvbGludXgvbm5wZnNfYmxvY2tz
LmMgYXJsYS0wLjkwLW5ldy9ubnBmcy9saW51eC9ubnBmc19ibG9ja3MuYw0K
LS0tIGFybGEtMC45MC9ubnBmcy9saW51eC9ubnBmc19ibG9ja3MuYwkyMDA3
LTAxLTA4IDE0OjI0OjI0LjAwMDAwMDAwMCArMDEwMA0KKysrIGFybGEtMC45
MC1uZXcvbm5wZnMvbGludXgvbm5wZnNfYmxvY2tzLmMJMjAwOS0wMS0yNSAx
Nzo0MzoyMS4wMDAwMDAwMDAgKzAxMDANCkBAIC0zNCw3ICszNCw3IEBADQog
ICogUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuDQogICovDQogDQotLyog
JElkOiBubnBmc19ibG9ja3MuYyx2IDEuMyAyMDA3LzAxLzA4IDEzOjI0OjI0
IHRvbCBFeHAgJCAqLw0KKy8qICRJZDogbm5wZnNfYmxvY2tzLmMsdiAxLjQg
MjAwOC8wMy8wOCAyMTozODoxNiB0b2wgRXhwICQgKi8NCiANCiAjaW5jbHVk
ZSA8bm5wZnMvbm5wZnNfbG9jbC5oPg0KICNpbmNsdWRlIDxubnBmcy9ubnBm
c19mcy5oPg0KQEAgLTMwMiw2ICszMDIsMjQgQEAgbm5wZnNfYmxvY2tfZXh0
ZW5kKHN0cnVjdCBubnBmc19ub2RlICpubw0KICAgICByZXR1cm4gcmV0Ow0K
IH0NCiANCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJ
T04oMiwgNiwgMjMpDQorLyoNCisgKiBIZWxwZXIgdG8gZW11bGF0ZSB2ZnNf
cGF0aF9sb29rdXAoKSBvbiBsaW51eCA8IDIuNi4yMw0KKyAqLw0KK3N0YXRp
YyBpbnQNCit2ZnNfcGF0aF9sb29rdXAoc3RydWN0IGRlbnRyeSAqZGVudHJ5
LCBzdHJ1Y3QgdmZzbW91bnQgKm1udCwNCisJCWNvbnN0IGNoYXIgKmNhY2hl
bmFtZSwgdW5zaWduZWQgaW50IGZsYWdzLA0KKwkJc3RydWN0IG5hbWVpZGF0
YSAqbmQpDQorew0KKyAgICBuZC0+ZGVudHJ5ID0gZGdldChkZW50cnkpOw0K
KyAgICBuZC0+bW50ID0gbW50Z2V0KG1udCk7DQorICAgIG5kLT5sYXN0X3R5
cGUgPSBMQVNUX1JPT1Q7DQorICAgIG5kLT5kZXB0aCA9IDA7DQorICAgIG5k
LT5mbGFncyA9IGZsYWdzOw0KKyAgICByZXR1cm4gcGF0aF93YWxrKGNhY2hl
bmFtZSwgbmQpOw0KK30NCisjZW5kaWYgLyogTElOVVhfVkVSU0lPTl9DT0RF
IDwgS0VSTkVMX1ZFUlNJT04oMiwgNiwgMjMpICovDQorDQogLyoNCiAgKiBv
cGVuIGluZGljYXRlZCBjYWNoZSBibG9jayBmaWxlLiBuZWVkcyB0byBiZSBj
bG9zZWQgYnkgY2FsbGVyLg0KICAqDQpAQCAtMzIyLDYgKzM0MCwxMCBAQCBu
bnBmc19ibG9ja19vcGVuKHN0cnVjdCBubnBmc19ub2RlICpub2RlDQogICAg
IHVpZF90IHNhdmV1aWQ7DQogICAgIGdpZF90IHNhdmVnaWQ7DQogICAgIGlu
dCByZXQ7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJORUxfVkVS
U0lPTigyLDYsMjkpDQorICAgIGNvbnN0IHN0cnVjdCBjcmVkICpvbGRfY3Jl
ZDsNCisgICAgc3RydWN0IGNyZWQgKm92ZXJyaWRlX2NyZWQ7DQorI2VuZGlm
DQogDQogICAgIEJVR19PTighbm5wZnNwKTsNCiAgICAgQlVHX09OKGZsYWdz
ICYgT19DUkVBVCAmJiBmaWxlICE9IE5VTEwpOw0KQEAgLTM0NiwyMSArMzY4
LDI2IEBAIG5ucGZzX2Jsb2NrX29wZW4oc3RydWN0IG5ucGZzX25vZGUgKm5v
ZGUNCiAgICAgQlVHX09OKCFubnBmc3AtPmNhY2hlZGlyIHx8ICFubnBmc3At
PmNhY2hlcm9vdCk7DQogICAgIA0KICAgICAvKiB1c2UgdGhlIG5mc2QgdHJp
Y2sgdG8gZ2l2ZSB1cyBhY2Nlc3MgKi8NCisjaWYgTElOVVhfVkVSU0lPTl9D
T0RFIDw9IEtFUk5FTF9WRVJTSU9OKDIsNiwyOCkNCiAgICAgc2F2ZXVpZCA9
IGN1cnJlbnQtPmZzdWlkOw0KICAgICBzYXZlZ2lkID0gY3VycmVudC0+ZnNn
aWQ7DQogICAgIGN1cnJlbnQtPmZzdWlkID0gbm5wZnNwLT51aWQ7DQogICAg
IGN1cnJlbnQtPmZzZ2lkID0gbm5wZnNwLT5naWQ7DQotDQotICAgIG5kLmRl
bnRyeSA9IGRnZXQobm5wZnNwLT5jYWNoZWRpcik7DQotICAgIG5kLm1udCA9
IG1udGdldChubnBmc3AtPmNhY2hlcm9vdCk7DQotICAgIG5kLmxhc3RfdHlw
ZSA9IExBU1RfTk9STTsNCi0gICAgbmQuZGVwdGggPSAwOw0KLSAgICBuZC5m
bGFncyA9IDA7DQotICAgIA0KLSAgICBpZiAoZmxhZ3MgJiBPX0NSRUFUKQ0K
LQluZC5mbGFncyA9IExPT0tVUF9QQVJFTlQ7DQotICAgIA0KLSAgICByZXQg
PSBwYXRoX3dhbGsoY2FjaGVuYW1lLCAmbmQpOw0KKyNlbHNlDQorICAgIHNh
dmV1aWQgPSBjdXJyZW50X2ZzdWlkKCk7DQorICAgIHNhdmVnaWQgPSBjdXJy
ZW50X2ZzZ2lkKCk7DQorICAgIG92ZXJyaWRlX2NyZWQgPSBwcmVwYXJlX2Ny
ZWRzKCk7DQorICAgIGlmICghb3ZlcnJpZGVfY3JlZCkNCisgICAgICAgIHJl
dHVybiAtRU5PTUVNOw0KKyAgICBvdmVycmlkZV9jcmVkLT5mc3VpZCA9IG5u
cGZzcC0+dWlkOw0KKyAgICBvdmVycmlkZV9jcmVkLT5mc2dpZCA9IG5ucGZz
cC0+Z2lkOw0KKyAgICBvbGRfY3JlZCA9IG92ZXJyaWRlX2NyZWRzKG92ZXJy
aWRlX2NyZWQpOw0KKyNlbmRpZg0KKw0KKyAgICByZXQgPSB2ZnNfcGF0aF9s
b29rdXAobm5wZnNwLT5jYWNoZWRpciwgbm5wZnNwLT5jYWNoZXJvb3QsDQor
CQkJICBjYWNoZW5hbWUsDQorCQkJICBmbGFncyAmIE9fQ1JFQVQgPyBMT09L
VVBfUEFSRU5UIDogMCwNCisJCQkgICZuZCk7DQogICAgIGlmIChyZXQpIHsN
CiAJdWludDMyX3Qgbm1hc2tzID0gbm9kZS0+ZGF0YS5ubWFza3M7DQogCXVp
bnQzMl90IG1hc2s7DQpAQCAtMzkxLDEyICs0MTgsMjEgQEAgbm5wZnNfYmxv
Y2tfb3BlbihzdHJ1Y3Qgbm5wZnNfbm9kZSAqbm9kZQ0KIAlpZiAoSVNfRVJS
KGRlbnRyeSkpIHsNCiAJICAgIHJldCA9IFBUUl9FUlIoZGVudHJ5KTsNCiAJ
fSBlbHNlIHsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZF
UlNJT04oMiw2LDI1KQ0KIAkgICAgcmV0ID0gdmZzX2NyZWF0ZShuZC5kZW50
cnktPmRfaW5vZGUsIGRlbnRyeSwgU19JUlVTUnxTX0lXVVNSLCAmbmQpOw0K
KyNlbHNlDQorCSAgICByZXQgPSB2ZnNfY3JlYXRlKG5kLnBhdGguZGVudHJ5
LT5kX2lub2RlLCBkZW50cnksIFNfSVJVU1J8U19JV1VTUiwgJm5kKTsNCisj
ZW5kaWYNCiAJICAgIGRwdXQoZGVudHJ5KTsNCiAJfQ0KIA0KKyNpZiBMSU5V
WF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjUpDQogCW11
dGV4X3VubG9jaygmbmQuZGVudHJ5LT5kX2lub2RlLT5pX211dGV4KTsNCiAJ
cGF0aF9yZWxlYXNlKCZuZCk7DQorI2Vsc2UNCisJbXV0ZXhfdW5sb2NrKCZu
ZC5wYXRoLmRlbnRyeS0+ZF9pbm9kZS0+aV9tdXRleCk7DQorCXBhdGhfcHV0
KCZuZC5wYXRoKTsNCisjZW5kaWYNCiANCiAJaWYgKHJldCkgew0KIAkgICAg
cHJpbnRrKCJubnBmc19ibG9ja19vcGVuKCVzKSBjcmVhdGUgZmFpbGVkOiAl
ZFxuIiwgY2FjaGVuYW1lLCAtcmV0KTsNCkBAIC00MTAsMTIgKzQ0NiwyMiBA
QCBubnBmc19ibG9ja19vcGVuKHN0cnVjdCBubnBmc19ub2RlICpub2RlDQog
CSAgICByZXQgPSBubnBmc19ibG9ja19leHRlbmQobm9kZSwgb2Zmc2V0KTsN
CiAJfQ0KICAgICB9IGVsc2Ugew0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUg
PCBLRVJORUxfVkVSU0lPTigyLDYsMjUpDQogCXN0cnVjdCBmaWxlICpmID0g
ZGVudHJ5X29wZW4obmQuZGVudHJ5LCBuZC5tbnQsIGZsYWdzKTsNCisjZWxp
ZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjkp
DQorCXN0cnVjdCBmaWxlICpmID0gZGVudHJ5X29wZW4obmQucGF0aC5kZW50
cnksIG5kLnBhdGgubW50LCBmbGFncyk7DQorI2Vsc2UNCisgICAgICAgIHN0
cnVjdCBmaWxlICpmID0gZGVudHJ5X29wZW4obmQucGF0aC5kZW50cnksIG5k
LnBhdGgubW50LCBmbGFncywgY3VycmVudF9jcmVkKCkpOw0KKyNlbmRpZg0K
IAlpZiAoSVNfRVJSKGYpKSB7DQogCSAgICByZXQgPSBQVFJfRVJSKGYpOw0K
IAkgICAgcHJpbnRrKCJubnBmc19ibG9ja19vcGVuKCVzKSBvcGVuIGZhaWxl
ZDogJWRcbiIsIGNhY2hlbmFtZSwgLXJldCk7DQogCSAgICBubnBmc19kZWJ1
Z19vb3BzKCk7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8IEtFUk5FTF9W
RVJTSU9OKDIsNiwyNSkNCiAJICAgIHBhdGhfcmVsZWFzZSgmbmQpOw0KKyNl
bHNlDQorCSAgICBwYXRoX3B1dCgmbmQucGF0aCk7DQorI2VuZGlmDQogCX0g
ZWxzZSB7DQogCSAgICAqZmlsZSA9IGY7DQogCX0NCkBAIC00MjQsOCArNDcw
LDEzIEBAIG5ucGZzX2Jsb2NrX29wZW4oc3RydWN0IG5ucGZzX25vZGUgKm5v
ZGUNCiAgICAgLyogcGF0aF9yZWxlYXNlKCkgaXMgdXN1YWxseSBoYW5kbGVk
IG9uIGNsb3NlICovDQogDQogIG91dDoNCisjaWYgTElOVVhfVkVSU0lPTl9D
T0RFIDw9IEtFUk5FTF9WRVJTSU9OKDIsNiwyOCkNCiAgICAgY3VycmVudC0+
ZnN1aWQgPSBzYXZldWlkOw0KICAgICBjdXJyZW50LT5mc2dpZCA9IHNhdmVn
aWQ7DQorI2Vsc2UNCisgICAgcmV2ZXJ0X2NyZWRzKG9sZF9jcmVkKTsNCisg
ICAgcHV0X2NyZWQob3ZlcnJpZGVfY3JlZCk7DQorI2VuZGlmDQogDQogICAg
IHJldHVybiByZXQ7DQogfQ0KZGlmZiAtdXByTiBhcmxhLTAuOTAvbm5wZnMv
bGludXgvbm5wZnNfaW5vZGVvcHMuYyBhcmxhLTAuOTAtbmV3L25ucGZzL2xp
bnV4L25ucGZzX2lub2Rlb3BzLmMNCi0tLSBhcmxhLTAuOTAvbm5wZnMvbGlu
dXgvbm5wZnNfaW5vZGVvcHMuYwkyMDA2LTEyLTExIDE3OjM1OjI2LjAwMDAw
MDAwMCArMDEwMA0KKysrIGFybGEtMC45MC1uZXcvbm5wZnMvbGludXgvbm5w
ZnNfaW5vZGVvcHMuYwkyMDA5LTAxLTI1IDE4OjAxOjU3LjAwMDAwMDAwMCAr
MDEwMA0KQEAgLTQ4LDcgKzQ4LDcgQEANCiAjaW5jbHVkZSA8YXNtL2ZjbnRs
Lmg+DQogDQogI2lmZGVmIFJDU0lEDQotUkNTSUQoIiRJZDogbm5wZnNfaW5v
ZGVvcHMuYyx2IDEuMjIzIDIwMDYvMTIvMTEgMTY6MzU6MjYgdG9sIEV4cCAk
Iik7DQorUkNTSUQoIiRJZDogbm5wZnNfaW5vZGVvcHMuYyx2IDEuMjI0IDIw
MDgvMDMvMDggMjE6NDA6MTAgdG9sIEV4cCAkIik7DQogI2VuZGlmDQogDQog
c3RhdGljIGludA0KQEAgLTEwNSw3ICsxMDUsMTEgQEAgbm5wZnNfdm1hX2Ns
b3NlIChzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKg0KIH0NCiANCiBzdGF0aWMg
c3RydWN0IHZtX29wZXJhdGlvbnNfc3RydWN0IG5ucGZzX2ZpbGVfdm1fb3Bz
ID0gew0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lP
TigyLCA2LCAyMykNCiAgICAgLm5vcGFnZQk9IGZpbGVtYXBfbm9wYWdlLA0K
KyNlbHNlDQorICAgIC5mYXVsdCAgICAgID0gZmlsZW1hcF9mYXVsdCwNCisj
ZW5kaWYNCiAgICAgLmNsb3NlCT0gbm5wZnNfdm1hX2Nsb3NlLA0KIH07DQog
DQpAQCAtMTM0LDEyICsxMzgsMTQgQEAgbm5wZnNfcHJpbnRfcGF0aChzdHJ1
Y3QgZGVudHJ5ICpkZW50cnkpDQogICoNCiAgKi8NCiANCisjaWYgMA0KIHZv
aWQNCiBubnBmc19wcmludF9sb2NrKGNoYXIgKnMsIHN0cnVjdCBzZW1hcGhv
cmUgKnNlbSkNCiB7DQogICAgIE5OUEZTREVCKFhERUJMT0NLLCAoImxvY2s6
ICVzIHNlbTogJXAgY291bnQ6ICVkXG4iLA0KIAkJICAgICAgcywgc2VtLCAo
aW50KWF0b21pY19yZWFkKCZzZW0tPmNvdW50KSkpOw0KIH0NCisjZW5kaWYN
CiANCiAvKg0KICAqDQpAQCAtMjQwLDcgKzI0NiwxMSBAQCBubnBmc19sb29r
dXAgKHN0cnVjdCBpbm9kZSAqZGlyLCBzdHJ1Y3QgDQogDQogCW1zZy5oZWFk
ZXIub3Bjb2RlID0gTk5QRlNfTVNHX0dFVE5PREU7DQogICAgICAgICANCisj
aWYgTElOVVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9OKDIsNiwy
OCkNCiAJbXNnLmNyZWQudWlkID0gY3VycmVudC0+dWlkOw0KKyNlbHNlDQor
ICAgICAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50X3VpZCgpOw0KKyNlbmRp
Zg0KIAltc2cuY3JlZC5wYWcgPSBubnBmc19nZXRfcGFnKCk7DQogCW1zZy5w
YXJlbnRfaGFuZGxlID0gZC0+aGFuZGxlOw0KICAgICAgICAgDQpAQCAtMzEw
LDcgKzMyMCwxMSBAQCBubnBmc19vcGVuX3ZhbGlkKHN0cnVjdCBpbm9kZSAq
dnAsIHVfaW50DQogICAgICAgew0KIAlzdHJ1Y3Qgbm5wZnNfbWVzc2FnZV9v
cGVuIG1zZzsNCiAJbXNnLmhlYWRlci5vcGNvZGUgPSBOTlBGU19NU0dfT1BF
TjsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9O
KDIsNiwyOCkNCiAJbXNnLmNyZWQudWlkID0gY3VycmVudC0+dWlkOw0KKyNl
bHNlDQorICAgICAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50X3VpZCgpOw0K
KyNlbmRpZg0KIAltc2cuY3JlZC5wYWcgPSBubnBmc19nZXRfcGFnKCk7DQog
CW1zZy5oYW5kbGUgPSB4bi0+aGFuZGxlOw0KIAltc2cudG9rZW5zID0gdG9r
Ow0KQEAgLTQyNSw3ICs0MzksMTEgQEAgbm5wZnNfZnN5bmNfaW50KHN0cnVj
dCBmaWxlICpmaWxlLCB1X2ludA0KIA0KIAltc2cuaGVhZGVyLm9wY29kZSA9
IE5OUEZTX01TR19QVVREQVRBOw0KIAltc2cuY3JlZC5wYWcgPSBubnBmc19n
ZXRfcGFnKCk7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJORUxf
VkVSU0lPTigyLDYsMjgpDQogCW1zZy5jcmVkLnVpZCA9IGN1cnJlbnQtPnVp
ZDsNCisjZWxzZQ0KKyAgICAgICAgbXNnLmNyZWQudWlkID0gY3VycmVudF91
aWQoKTsNCisjZW5kaWYNCiAJbXNnLmhhbmRsZSA9IHhuLT5oYW5kbGU7DQog
CW1zZy5mbGFnICAgPSBmbGFnOw0KIAltc2cub2Zmc2V0ID0gb2ZmOw0KQEAg
LTUxMSw3ICs1MjksMTEgQEAgbm5wZnNfYXR0cl92YWxpZChzdHJ1Y3QgaW5v
ZGUgKiB2cCwgdV9pbg0KICAgICAgICAgICAgIHN0cnVjdCBubnBmc19tZXNz
YWdlX2dldGF0dHIgbXNnOw0KIA0KICAgICAgICAgICAgIG1zZy5oZWFkZXIu
b3Bjb2RlID0gTk5QRlNfTVNHX0dFVEFUVFI7DQorI2lmIExJTlVYX1ZFUlNJ
T05fQ09ERSA8PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQogICAgICAgICAg
ICAgbXNnLmNyZWQudWlkID0gY3VycmVudC0+dWlkOw0KKyNlbHNlDQorICAg
ICAgICAgICAgbXNnLmNyZWQudWlkID0gY3VycmVudF91aWQoKTsNCisjZW5k
aWYNCiAgICAgICAgICAgICBtc2cuY3JlZC5wYWcgPSBwYWc7DQogICAgICAg
ICAgICAgbXNnLmhhbmRsZSA9IHhuLT5oYW5kbGU7DQogICAgICAgICAgICAg
ZXJyb3IgPSBubnBmc19tZXNzYWdlX3JwYyhubnBmc3AsICZtc2cuaGVhZGVy
LCBzaXplb2YobXNnKSk7DQpAQCAtNTUxLDcgKzU3MywxMSBAQCBubnBmc19y
aWdodHNfdmFsaWQoc3RydWN0IGlub2RlICogdnAsIG5uDQogICAgICAgICAg
ICAgc3RydWN0IG5ucGZzX21lc3NhZ2VfZ2V0YXR0ciBtc2c7DQogDQogICAg
ICAgICAgICAgbXNnLmhlYWRlci5vcGNvZGUgPSBOTlBGU19NU0dfR0VUQVRU
UjsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9O
KDIsNiwyOCkNCiAgICAgICAgICAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50
LT51aWQ7DQorI2Vsc2UNCisgICAgICAgICAgICBtc2cuY3JlZC51aWQgPSBj
dXJyZW50X3VpZCgpOw0KKyNlbmRpZg0KICAgICAgICAgICAgIG1zZy5jcmVk
LnBhZyA9IHBhZzsNCiAgICAgICAgICAgICBtc2cuaGFuZGxlID0geG4tPmhh
bmRsZTsNCiAgICAgICAgICAgICBlcnJvciA9IG5ucGZzX21lc3NhZ2VfcnBj
KG5ucGZzcCwgJm1zZy5oZWFkZXIsIHNpemVvZihtc2cpKTsNCkBAIC01OTIs
OCArNjE4LDEzIEBAIGNoZWNrX3JpZ2h0cyAobm5wZnNfcmlnaHRzIHJpZ2h0
cywgaW50IG0NCiAgKiBXZSBkb24ndCBob2xkIGlfbXV0ZXguDQogICovDQog
DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8IEtFUk5FTF9WRVJTSU9OKDIs
NiwyNykNCiBzdGF0aWMgaW50DQogbm5wZnNfcGVybWlzc2lvbihzdHJ1Y3Qg
aW5vZGUgKmlub2RlLCBpbnQgbW9kZSwgc3RydWN0IG5hbWVpZGF0YSAqbmQp
DQorI2Vsc2UNCitzdGF0aWMgaW50DQorbm5wZnNfcGVybWlzc2lvbihzdHJ1
Y3QgaW5vZGUgKmlub2RlLCBpbnQgbW9kZSkNCisjZW5kaWYNCiB7DQogICAg
IGludCBlcnJvciA9IDA7DQogICAgIG5ucGZzX3BhZ190IHBhZyA9IG5ucGZz
X2dldF9wYWcoKTsNCkBAIC02MzYsNyArNjY3LDExIEBAIG5ucGZzX2RvX2dl
dGRhdGEoc3RydWN0IG5ucGZzX25vZGUgKnhuLCANCiAgICAgaW50IGVycm9y
Ow0KIA0KICAgICBtc2cuaGVhZGVyLm9wY29kZSA9IE5OUEZTX01TR19HRVRE
QVRBOw0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPD0gS0VSTkVMX1ZFUlNJ
T04oMiw2LDI4KQ0KICAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50LT51aWQ7
DQorI2Vsc2UNCisgICAgbXNnLmNyZWQudWlkID0gY3VycmVudF91aWQoKTsN
CisjZW5kaWYNCiAgICAgbXNnLmNyZWQucGFnID0gbm5wZnNfZ2V0X3BhZygp
Ow0KICAgICBtc2cuaGFuZGxlID0geG4tPmhhbmRsZTsNCiAgICAgbXNnLnRv
a2VucyA9IHRvazsNCkBAIC05MDMsOSArOTM4LDE4IEBAIG5ucGZzX2NyZWF0
ZShzdHJ1Y3QgaW5vZGUgKmRpciwgc3RydWN0IGQNCiAgICAgWEFfQ0xFQVIo
Jm1zZy5hdHRyKTsNCiAgICAgWEFfU0VUX01PREUoJm1zZy5hdHRyLCBtb2Rl
KTsNCiAgICAgWEFfU0VUX1RZUEUoJm1zZy5hdHRyLCBOTlBGU19GSUxFX1JF
Ryk7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJORUxfVkVSU0lP
TigyLDYsMjgpDQogICAgIFhBX1NFVF9HSUQoJm1zZy5hdHRyLCBjdXJyZW50
LT5mc2dpZCk7DQorI2Vsc2UNCisgICAgWEFfU0VUX0dJRCgmbXNnLmF0dHIs
IGN1cnJlbnRfZnNnaWQoKSk7DQorI2VuZGlmDQogICAgIG1zZy5tb2RlID0g
MDsJCS8qIFhYWCAqLw0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPD0gS0VS
TkVMX1ZFUlNJT04oMiw2LDI4KQ0KICAgICBtc2cuY3JlZC51aWQgPSBjdXJy
ZW50LT51aWQ7DQorI2Vsc2UNCisgICAgbXNnLmNyZWQudWlkID0gY3VycmVu
dF91aWQoKTsNCisjZW5kaWYNCisNCiAgICAgbXNnLmNyZWQucGFnID0gbm5w
ZnNfZ2V0X3BhZygpOw0KICAgICBlcnJvciA9IG5ucGZzX21lc3NhZ2VfcnBj
KG5ucGZzcCwgJm1zZy5oZWFkZXIsIHNpemVvZihtc2cpKTsNCiAgICAgaWYg
KGVycm9yID09IDApDQpAQCAtOTQ2LDcgKzk5MCwxMSBAQCBubnBmc191bmxp
bmsgKHN0cnVjdCBpbm9kZSAqIGRpciwgc3RydWN0DQogICAgIGlmIChzdHJs
Y3B5KG1zZy5uYW1lLCBkZW50cnktPmRfbmFtZS5uYW1lLCBzaXplb2YobXNn
Lm5hbWUpKSA+PSBOTlBGU19NQVhfTkFNRSkNCiAJcmV0dXJuIC1FTkFNRVRP
T0xPTkc7DQogDQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJORUxf
VkVSU0lPTigyLDYsMjgpDQogICAgIG1zZy5jcmVkLnVpZCA9IGN1cnJlbnQt
PnVpZDsNCisjZWxzZQ0KKyAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50X3Vp
ZCgpOw0KKyNlbmRpZg0KICAgICBtc2cuY3JlZC5wYWcgPSBubnBmc19nZXRf
cGFnKCk7DQogICAgIGVycm9yID0gbm5wZnNfbWVzc2FnZV9ycGMobm5wZnNw
LCAmbXNnLmhlYWRlciwgc2l6ZW9mKG1zZykpOw0KICAgICBpZiAoZXJyb3Ig
PT0gMCkNCkBAIC05OTEsNyArMTAzOSwxMSBAQCBubnBmc19yZW5hbWUgKHN0
cnVjdCBpbm9kZSAqIG9sZF9kaXIsIHN0DQogICAgIGlmIChzdHJsY3B5KG1z
Zy5uZXdfbmFtZSwgbmV3X2RlbnRyeS0+ZF9uYW1lLm5hbWUsIHNpemVvZiht
c2cubmV3X25hbWUpKSA+PSBOTlBGU19NQVhfTkFNRSkNCiAJcmV0dXJuIC1F
TkFNRVRPT0xPTkc7DQogCQ0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPD0g
S0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0KICAgICBtc2cuY3JlZC51aWQgPSBj
dXJyZW50LT51aWQ7DQorI2Vsc2UNCisgICAgbXNnLmNyZWQudWlkID0gY3Vy
cmVudF91aWQoKTsNCisjZW5kaWYNCiAgICAgbXNnLmNyZWQucGFnID0gbm5w
ZnNfZ2V0X3BhZygpOw0KICAgICBlcnJvciA9IG5ucGZzX21lc3NhZ2VfcnBj
KG5ucGZzcCwgJm1zZy5oZWFkZXIsIHNpemVvZihtc2cpKTsNCiAgICAgaWYg
KGVycm9yID09IDApDQpAQCAtMTA0MCw5ICsxMDkyLDE3IEBAIG5ucGZzX21r
ZGlyKHN0cnVjdCBpbm9kZSAqIGRpciwgc3RydWN0IGQNCiAJWEFfQ0xFQVIo
Jm1zZy5hdHRyKTsNCiAJWEFfU0VUX01PREUoJm1zZy5hdHRyLCBtb2RlKTsN
CiAJWEFfU0VUX1RZUEUoJm1zZy5hdHRyLCBOTlBGU19GSUxFX0RJUik7DQor
I2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJORUxfVkVSU0lPTigyLDYs
MjgpDQogCVhBX1NFVF9HSUQoJm1zZy5hdHRyLCBjdXJyZW50LT5mc2dpZCk7
DQorI2Vsc2UNCisgICAgICAgIFhBX1NFVF9HSUQoJm1zZy5hdHRyLCBjdXJy
ZW50X2ZzZ2lkKCkpOw0KKyNlbmRpZg0KIA0KKyNpZiBMSU5VWF9WRVJTSU9O
X0NPREUgPD0gS0VSTkVMX1ZFUlNJT04oMiw2LDI4KQ0KIAltc2cuY3JlZC51
aWQgPSBjdXJyZW50LT51aWQ7DQorI2Vsc2UNCisgICAgICAgIG1zZy5jcmVk
LnVpZCA9IGN1cnJlbnRfdWlkKCk7DQorI2VuZGlmDQogCW1zZy5jcmVkLnBh
ZyA9IG5ucGZzX2dldF9wYWcoKTsNCiAJZXJyb3IgPSBubnBmc19tZXNzYWdl
X3JwYyhubnBmc3AsICZtc2cuaGVhZGVyLCBzaXplb2YobXNnKSk7DQogCWlm
IChlcnJvciA9PSAwKQ0KQEAgLTEwODMsNyArMTE0MywxMSBAQCBubnBmc19y
bWRpcihzdHJ1Y3QgaW5vZGUgKiBkaXIsIHN0cnVjdCBkDQogICAgIG1zZy5w
YXJlbnRfaGFuZGxlID0geG4tPmhhbmRsZTsNCiAgICAgaWYgKHN0cmxjcHko
bXNnLm5hbWUsIGRlbnRyeS0+ZF9uYW1lLm5hbWUsIHNpemVvZihtc2cubmFt
ZSkpID49IE5OUEZTX01BWF9OQU1FKQ0KIAkgICAgcmV0dXJuIC1FTkFNRVRP
T0xPTkc7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJORUxfVkVS
U0lPTigyLDYsMjgpDQogICAgIG1zZy5jcmVkLnVpZCA9IGN1cnJlbnQtPnVp
ZDsNCisjZWxzZQ0KKyAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50X3VpZCgp
Ow0KKyNlbmRpZg0KICAgICBtc2cuY3JlZC5wYWcgPSBubnBmc19nZXRfcGFn
KCk7DQogICAgIGVycm9yID0gbm5wZnNfbWVzc2FnZV9ycGMobm5wZnNwLCAm
bXNnLmhlYWRlciwgc2l6ZW9mKG1zZykpOw0KICAgICBpZiAoZXJyb3IgPT0g
MCkNCkBAIC0xMTI4LDcgKzExOTIsMTEgQEAgc3RhdGljIGludCBubnBmc19s
aW5rKHN0cnVjdCBkZW50cnkgKm9sZA0KIAlpZiAoc3RybGNweShtc2cubmFt
ZSwgbmFtZSwgc2l6ZW9mKG1zZy5uYW1lKSkgPj0gTk5QRlNfTUFYX05BTUUp
DQogCSAgICByZXR1cm4gLUVOQU1FVE9PTE9ORzsNCiANCisjaWYgTElOVVhf
VkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9OKDIsNiwyOCkNCiAJbXNn
LmNyZWQudWlkID0gY3VycmVudC0+dWlkOw0KKyNlbHNlDQorICAgICAgICBt
c2cuY3JlZC51aWQgPSBjdXJyZW50X3VpZCgpOw0KKyNlbmRpZg0KIAltc2cu
Y3JlZC5wYWcgPSBubnBmc19nZXRfcGFnKCk7DQogCWVycm9yID0gbm5wZnNf
bWVzc2FnZV9ycGMobm5wZnNwLCAmbXNnLmhlYWRlciwgc2l6ZW9mKG1zZykp
Ow0KIAlpZiAoZXJyb3IgPT0gMCkNCkBAIC0xMTY4LDkgKzEyMzYsMTcgQEAg
c3RhdGljIGludCBubnBmc19zeW1saW5rKHN0cnVjdCBpbm9kZSAqZA0KIAlY
QV9DTEVBUigmbXNnLmF0dHIpOw0KIAlYQV9TRVRfTU9ERSgmbXNnLmF0dHIs
IDA3NzcpOw0KIAlYQV9TRVRfVFlQRSgmbXNnLmF0dHIsIE5OUEZTX0ZJTEVf
TE5LKTsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJT
SU9OKDIsNiwyOCkNCiAJWEFfU0VUX0dJRCgmbXNnLmF0dHIsIGN1cnJlbnQt
PmZzZ2lkKTsNCisjZWxzZQ0KKyAgICAgICAgWEFfU0VUX0dJRCgmbXNnLmF0
dHIsIGN1cnJlbnRfZnNnaWQoKSk7DQorI2VuZGlmDQogDQorI2lmIExJTlVY
X1ZFUlNJT05fQ09ERSA8PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQogCW1z
Zy5jcmVkLnVpZCA9IGN1cnJlbnQtPnVpZDsNCisjZWxzZQ0KKyAgICAgICAg
bXNnLmNyZWQudWlkID0gY3VycmVudF91aWQoKTsNCisjZW5kaWYNCiAJbXNn
LmNyZWQucGFnID0gbm5wZnNfZ2V0X3BhZygpOw0KIAllcnJvciA9IG5ucGZz
X21lc3NhZ2VfcnBjKG5ucGZzcCwgJm1zZy5oZWFkZXIsIHNpemVvZihtc2cp
KTsNCiAJaWYgKGVycm9yID09IDApDQpAQCAtMTM5OCw3ICsxNDc0LDExIEBA
IG5ucGZzX3NldGF0dHIgKHN0cnVjdCBkZW50cnkgKmRlbnRyeSwgc3QNCiAg
ICAgICAgIHN0cnVjdCBubnBmc19tZXNzYWdlX3B1dGF0dHIgbXNnOw0KIA0K
ICAgICAgICAgbXNnLmhlYWRlci5vcGNvZGUgPSBOTlBGU19NU0dfUFVUQVRU
UjsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJTSU9O
KDIsNiwyOCkNCiAJbXNnLmNyZWQudWlkID0gY3VycmVudC0+dWlkOw0KKyNl
bHNlDQorICAgICAgICBtc2cuY3JlZC51aWQgPSBjdXJyZW50X3VpZCgpOw0K
KyNlbmRpZg0KIAltc2cuY3JlZC5wYWcgPSBubnBmc19nZXRfcGFnKCk7DQog
ICAgICAgICBtc2cuaGFuZGxlID0geG4tPmhhbmRsZTsNCiAgICAgICAgIG5u
cGZzX2lhdHRyMmF0dHIoeG4sIGF0dHIsICZtc2cuYXR0cik7DQpAQCAtMTU0
NSw2ICsxNjI1LDggQEAgbm5wZnNfZF9kZWxldGUoc3RydWN0IGRlbnRyeSAq
ZGVudHJ5KQ0KICAgICByZXR1cm4gMDsNCiB9DQogDQorI2lmIExJTlVYX1ZF
UlNJT05fQ09ERSA8IEtFUk5FTF9WRVJTSU9OKDIsIDYsIDIzKQ0KKw0KIHN0
YXRpYyBzc2l6ZV90DQogbm5wZnNfc2VuZGZpbGUoc3RydWN0IGZpbGUgKmZp
bGUsIGxvZmZfdCAqcHBvcywgc2l6ZV90IGNvdW50LA0KIAkgICAgICAgcmVh
ZF9hY3Rvcl90IGFjdG9yLCB2b2lkICp0YXJnZXQpDQpAQCAtMTU2OCw2ICsx
NjUwLDMzIEBAIG5ucGZzX3NlbmRmaWxlKHN0cnVjdCBmaWxlICpmaWxlLCBs
b2ZmX3QNCiAgICAgcmV0dXJuIGVycm9yOw0KIH0NCiANCisjZWxzZQ0KKw0K
K3N0YXRpYyBzc2l6ZV90DQorbm5wZnNfc3BsaWNlX3JlYWQoc3RydWN0IGZp
bGUgKmZpbGUsIGxvZmZfdCAqcHBvcywNCisJCSAgc3RydWN0IHBpcGVfaW5v
ZGVfaW5mbyAqcGlwZSwgc2l6ZV90IGNvdW50LA0KKwkJICB1bnNpZ25lZCBp
bnQgZmxhZ3MpDQorew0KKyAgICBpbnQgZXJyb3IgPSAwOw0KKyAgICBzdHJ1
Y3QgaW5vZGUgKmlub2RlID0gZmlsZS0+Zl9kZW50cnktPmRfaW5vZGU7DQor
ICAgIHN0cnVjdCBubnBmc19ub2RlICp4biA9IFZOT0RFX1RPX1hOT0RFKGlu
b2RlKTsNCisgICAgDQorICAgIGlmICh4biAhPSBOVUxMKQ0KKwlOTlBGU0RF
QihYREVCVk5PUFMsICgibm5wZnNfc2VuZGZpbGU6IHRva2VuczogMHgleFxu
IiwgeG4tPnRva2VucykpOw0KKw0KKyAgICBlcnJvciA9IG5ucGZzX2RhdGFf
dmFsaWQoaW5vZGUsIE5OUEZTX0RBVEFfUiwgKnBwb3MsICpwcG9zICsgY291
bnQpOw0KKyAgICBpZiAoZXJyb3IpIHsNCisJTk5QRlNERUIoWERFQlZOT1BT
LCAoIm5ucGZzX3NlbmRmaWxlOiBkYXRhIG5vdCB2YWxpZCAlZFxuIiwgZXJy
b3IpKTsNCisJcmV0dXJuIGVycm9yOw0KKyAgICB9DQorICAgIGVycm9yID0g
ZmlsZS0+Zl9vcC0+c3BsaWNlX3JlYWQoZmlsZSwgcHBvcywgcGlwZSwgY291
bnQsIGZsYWdzKTsNCisNCisgICAgTk5QRlNERUIoWERFQlZOT1BTLCAoIm5u
cGZzX3NlbmRmaWxlOiBlcnJvciA9ICVkXG4iLCBlcnJvcikpOw0KKyAgICBy
ZXR1cm4gZXJyb3I7DQorfQ0KKw0KKyNlbmRpZiAvKiBMSU5VWF9WRVJTSU9O
X0NPREUgPCBLRVJORUxfVkVSU0lPTigyLCA2LCAyMykgKi8NCisNCiAvKg0K
ICAqDQogICoNCkBAIC0xNjM5LDExICsxNzQ4LDE1IEBAIG5ucGZzX3dyaXRl
X2JhY2twYWdlKHN0cnVjdCBwYWdlICpwYWdlLCANCiAJc3RydWN0IGFkZHJl
c3Nfc3BhY2UgKm1hcHBpbmcgPSBiYWNrZmlsZS0+Zl9tYXBwaW5nOw0KIAl1
bnNpZ25lZCBsZW4gPSBQQUdFX0NBQ0hFX1NJWkU7DQogCXN0cnVjdCBwYWdl
ICpiYWNrcGFnZTsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFID49IEtFUk5F
TF9WRVJTSU9OKDIsNiwyNCkNCisJdm9pZCAqZnNkYXRhOw0KKyNlbmRpZg0K
IAl1bnNpZ25lZCBsb25nIG9mZnNldDsNCiANCiAJaW50IGVycm9yOw0KIAkN
CiAJZG8gew0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVS
U0lPTigyLDYsMjQpDQogCQliYWNrcGFnZSA9IGdyYWJfY2FjaGVfcGFnZSht
YXBwaW5nLCBubnBmc19nZXRfYmFja2luZGV4KHBhZ2UpKTsNCiAJCWlmICgh
YmFja3BhZ2UpIHsNCiAJCQlwcmludGsoIm5ucGZzX3dyaXRlX2JhY2twYWdl
OiBubyBwYWdlXG4iKTsNCkBAIC0xNjUyLDIxICsxNzY1LDM2IEBAIG5ucGZz
X3dyaXRlX2JhY2twYWdlKHN0cnVjdCBwYWdlICpwYWdlLCANCiANCiAJCWVy
cm9yID0gbWFwcGluZy0+YV9vcHMtPnByZXBhcmVfd3JpdGUoYmFja2ZpbGUs
IGJhY2twYWdlLA0KIAkJCQkJCSAgICAgIDAsIGxlbik7DQorI2Vsc2UNCisJ
CWVycm9yID0gcGFnZWNhY2hlX3dyaXRlX2JlZ2luKGJhY2tmaWxlLCBtYXBw
aW5nLCAwLCBsZW4sDQorCQkJCUFPUF9GTEFHX1VOSU5URVJSVVBUSUJMRSwg
JmJhY2twYWdlLCAmZnNkYXRhKTsNCisjZW5kaWYNCiAJCWlmICghZXJyb3Ip
IHsNCiAJCQljb3B5X2hpZ2hwYWdlKGJhY2twYWdlLCBwYWdlKTsNCiAJCQlm
bHVzaF9kY2FjaGVfcGFnZShiYWNrcGFnZSk7DQorI2lmIExJTlVYX1ZFUlNJ
T05fQ09ERSA8IEtFUk5FTF9WRVJTSU9OKDIsNiwyNCkNCiAJCQllcnJvciA9
IG1hcHBpbmctPmFfb3BzLT5jb21taXRfd3JpdGUoYmFja2ZpbGUsIGJhY2tw
YWdlLA0KIAkJCQkJCQkgICAgIDAsIGxlbik7DQorI2Vsc2UNCisJCQllcnJv
ciA9IHBhZ2VjYWNoZV93cml0ZV9lbmQoYmFja2ZpbGUsIG1hcHBpbmcsIDAs
IGxlbiwNCisJCQkJCWxlbiwgYmFja3BhZ2UsIGZzZGF0YSk7DQorCQkJaWYg
KGVycm9yID4gMCkNCisJCQkJZXJyb3IgPSAwOw0KKyNlbmRpZg0KIAkJfQ0K
IAkJaWYgKGVycm9yID09IEFPUF9UUlVOQ0FURURfUEFHRSkgew0KKyNpZiBM
SU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjQpDQog
CQkJcGFnZV9jYWNoZV9yZWxlYXNlKGJhY2twYWdlKTsNCisjZW5kaWYNCiAJ
CQljb250aW51ZTsNCiAJCX0NCiAJfSB3aGlsZSAoMCk7DQogDQogCW9mZnNl
dCA9IHBhZ2Vfb2Zmc2V0KGJhY2twYWdlKTsNCisjaWYgTElOVVhfVkVSU0lP
Tl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oMiw2LDI0KQ0KIAl1bmxvY2tfcGFn
ZShiYWNrcGFnZSk7DQogCXBhZ2VfY2FjaGVfcmVsZWFzZShiYWNrcGFnZSk7
DQorI2VuZGlmDQogDQogCWlmIChlcnJvcikNCiAJCXByaW50aygibm5wZnNf
d3JpdGVfYmFja3BhZ2U6IEVJT1xuIik7DQpAQCAtMTg3Miw2ICsyMDAwLDM0
IEBAIG5ucGZzX3ByZXBhcmVfd3JpdGUoc3RydWN0IGZpbGUgKmZpbGUsIHMN
CiAJcmV0dXJuIHJldDsNCiB9DQogDQorI2lmIExJTlVYX1ZFUlNJT05fQ09E
RSA+PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQorDQorc3RhdGljIGludA0K
K25ucGZzX3dyaXRlX2JlZ2luKHN0cnVjdCBmaWxlICpmaWxlLCBzdHJ1Y3Qg
YWRkcmVzc19zcGFjZSAqbWFwcGluZywgbG9mZl90IHBvcywNCit1bnNpZ25l
ZCBsZW4sIHVuc2lnbmVkIGZsYWdzLCBzdHJ1Y3QgcGFnZSAqKnBhZ2VwLCB2
b2lkICoqZnNkYXRhKQ0KK3sNCisJc3RydWN0IHBhZ2UgKnBhZ2U7DQorCXBn
b2ZmX3QgaW5kZXg7DQorCXVuc2lnbmVkIGZyb207DQorDQorCWluZGV4ID0g
cG9zID4+IFBBR0VfQ0FDSEVfU0hJRlQ7DQorCWZyb20gPSBwb3MgJiAoUEFH
RV9DQUNIRV9TSVpFIC0gMSk7DQorDQorI2lmbmRlZiBBT1BfRkxBR19OT0ZT
DQorCXBhZ2UgPSBfX2dyYWJfY2FjaGVfcGFnZShtYXBwaW5nLCBpbmRleCk7
DQorI2Vsc2UNCisJcGFnZSA9IGdyYWJfY2FjaGVfcGFnZV93cml0ZV9iZWdp
bihtYXBwaW5nLCBpbmRleCwgZmxhZ3MpOw0KKyNlbmRpZg0KKwlpZiAoIXBh
Z2UpDQorCQlyZXR1cm4gLUVOT01FTTsNCisNCisJKnBhZ2VwID0gcGFnZTsN
CisNCisJcmV0dXJuIG5ucGZzX3ByZXBhcmVfd3JpdGUoZmlsZSwgcGFnZSwg
ZnJvbSwgZnJvbStsZW4pOw0KK30NCisNCisjZW5kaWYNCisNCiBzdGF0aWMg
aW50DQogbm5wZnNfY29tbWl0X3dyaXRlKHN0cnVjdCBmaWxlICpmaWxlLCBz
dHJ1Y3QgcGFnZSAqcGFnZSwgdW5zaWduZWQgZnJvbSwgdW5zaWduZWQgdG8p
DQogew0KQEAgLTE5MDIsMTQgKzIwNTgsNDUgQEAgbm5wZnNfY29tbWl0X3dy
aXRlKHN0cnVjdCBmaWxlICpmaWxlLCBzdA0KICAgICByZXR1cm4gMDsNCiB9
DQogDQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJORUxfVkVSU0lP
TigyLDYsMjgpDQorDQorc3RhdGljIGludA0KK25ucGZzX3dyaXRlX2VuZChz
dHJ1Y3QgZmlsZSAqZmlsZSwgc3RydWN0IGFkZHJlc3Nfc3BhY2UgKm1hcHBp
bmcsIGxvZmZfdCBwb3MsDQordW5zaWduZWQgbGVuLCB1bnNpZ25lZCBjb3Bp
ZWQsIHN0cnVjdCBwYWdlICpwYWdlLCB2b2lkICpmc2RhdGEpDQorew0KKwl1
bnNpZ25lZCBmcm9tID0gcG9zICYgKFBBR0VfQ0FDSEVfU0laRSAtIDEpOw0K
Kw0KKwkvKiB6ZXJvIHRoZSBzdGFsZSBwYXJ0IG9mIHRoZSBwYWdlIGlmIHdl
IGRpZCBhIHNob3J0IGNvcHkgKi8NCisJaWYgKGNvcGllZCA8IGxlbikgew0K
KwkJdm9pZCAqa2FkZHIgPSBrbWFwX2F0b21pYyhwYWdlLCBLTV9VU0VSMCk7
DQorCQltZW1zZXQoa2FkZHIgKyBmcm9tICsgY29waWVkLCAwLCBsZW4gLSBj
b3BpZWQpOw0KKwkJZmx1c2hfZGNhY2hlX3BhZ2UocGFnZSk7DQorCQlrdW5t
YXBfYXRvbWljKGthZGRyLCBLTV9VU0VSMCk7DQorCX0NCisNCisJbm5wZnNf
Y29tbWl0X3dyaXRlKGZpbGUsIHBhZ2UsIGZyb20sIGZyb20rY29waWVkKTsN
CisNCisJdW5sb2NrX3BhZ2UocGFnZSk7DQorCXBhZ2VfY2FjaGVfcmVsZWFz
ZShwYWdlKTsNCisNCisJcmV0dXJuIGNvcGllZDsNCit9DQorDQorI2VuZGlm
DQorDQogI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA+PSBLRVJORUxfVkVSU0lP
TigyLDYsMTgpDQogY29uc3QNCiAjZW5kaWYNCiBzdHJ1Y3QgYWRkcmVzc19z
cGFjZV9vcGVyYXRpb25zIG5ucGZzX2FvcHMgPSB7DQogCS5yZWFkcGFnZSA9
IG5ucGZzX3JlYWRwYWdlLA0KIAkud3JpdGVwYWdlID0gbm5wZnNfd3JpdGVw
YWdlLA0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lP
TigyLDYsMjgpDQogCS5wcmVwYXJlX3dyaXRlID0gbm5wZnNfcHJlcGFyZV93
cml0ZSwNCiAJLmNvbW1pdF93cml0ZSA9IG5ucGZzX2NvbW1pdF93cml0ZSwN
CisjZWxzZQ0KKwkud3JpdGVfYmVnaW4gPSBubnBmc193cml0ZV9iZWdpbiwN
CisJLndyaXRlX2VuZCA9IG5ucGZzX3dyaXRlX2VuZCwNCisjZW5kaWYNCiB9
Ow0KIA0KIC8qDQpAQCAtMTkyNCw3ICsyMTExLDExIEBAIHN0cnVjdCBmaWxl
X29wZXJhdGlvbnMgbm5wZnNfZmlsZV9vcGVyYXQNCiAgICAgLmZsdXNoCT0g
bm5wZnNfZmx1c2gsDQogICAgIC5yZWxlYXNlCT0gbm5wZnNfcmVsZWFzZV9m
aWxlLA0KICAgICAuZnN5bmMJPSBubnBmc19mc3luYywNCisjaWYgTElOVVhf
VkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oMiwgNiwgMjMpDQogICAg
IC5zZW5kZmlsZQk9IG5ucGZzX3NlbmRmaWxlLA0KKyNlbHNlDQorICAgIC5z
cGxpY2VfcmVhZCA9IG5ucGZzX3NwbGljZV9yZWFkLA0KKyNlbmRpZg0KIH07
DQogDQogc3RydWN0IGZpbGVfb3BlcmF0aW9ucyBubnBmc19kZWFkX29wZXJh
dGlvbnMgPSB7DQpkaWZmIC11cHJOIGFybGEtMC45MC9ubnBmcy9saW51eC9u
bnBmc19tZXNzYWdlLmMgYXJsYS0wLjkwLW5ldy9ubnBmcy9saW51eC9ubnBm
c19tZXNzYWdlLmMNCi0tLSBhcmxhLTAuOTAvbm5wZnMvbGludXgvbm5wZnNf
bWVzc2FnZS5jCTIwMDctMDEtMDkgMTc6MzM6MzEuMDAwMDAwMDAwICswMTAw
DQorKysgYXJsYS0wLjkwLW5ldy9ubnBmcy9saW51eC9ubnBmc19tZXNzYWdl
LmMJMjAwOS0wMS0yNSAxODowNDoxOC4wMDAwMDAwMDAgKzAxMDANCkBAIC00
NSw3ICs0NSw3IEBADQogI2luY2x1ZGUgPGxpbnV4L21vdW50Lmg+DQogDQog
I2lmZGVmIFJDU0lEDQotUkNTSUQoIiRJZDogbm5wZnNfbWVzc2FnZS5jLHYg
MS4xNDMuMi4xIDIwMDcvMDEvMDkgMTY6MzM6MzEgdG9sIEV4cCAkIik7DQor
UkNTSUQoIiRJZDogbm5wZnNfbWVzc2FnZS5jLHYgMS4xNDMgMjAwNi8xMi8x
MSAxNjo0MDoyNCB0b2wgRXhwICQiKTsNCiAjZW5kaWYNCiANCiBzdGF0aWMg
dm9pZA0KQEAgLTYwNSwxMiArNjA1LDEwIEBAIGdjX2Jsb2NrKHN0cnVjdCBu
bnBmcyAqbm5wZnNwLA0KICAgICB9DQogDQogICAgIGlmICghbm5wZnNfYmxv
Y2tfaGF2ZV9wKHhuLCBvZmZzZXQpKSB7DQotI2lmIDAgICAvKiBoYXBwZW5z
IHdoZW4gZGFlbW9uIHNlbmRzIHNldmVyYWwgbWVzc2FnZXMgZm9yIHNhbWUg
YmxvY2sgKi8NCiAJcHJpbnRrKEtFUk5fRU1FUkcgIk5OUEZTL2djX2Jsb2Nr
OiAiDQogCSAgICAgICAiRU5PRU5UICglZCwlZCwlZCwlZCkgMHglbGx4XG4i
LCANCiAJICAgICAgIHhuLT5oYW5kbGUuYSwgeG4tPmhhbmRsZS5iLCB4bi0+
aGFuZGxlLmMsIHhuLT5oYW5kbGUuZCwgDQogCSAgICAgICAodW5zaWduZWQg
bG9uZyBsb25nKW9mZnNldCk7DQotI2VuZGlmDQogCXJldHVybiAtRU5PRU5U
Ow0KICAgICB9DQogDQpAQCAtNzM3LDEyICs3MzUsMjMgQEAgbm5wZnNfbWVz
c2FnZV92ZXJzaW9uKHN0cnVjdCBubnBmcyAqbm5wZg0KIAkJICAgIm5ucGZz
X21lc3NhZ2VfdmVyc2lvbiBmYWlsZWQgcGF0aF9sb29rdXAsICINCiAJCSAg
ICJlcnJubzogJWRcbiIsIGVycm9yKTsNCiAJfSBlbHNlIHsNCisjaWYgTElO
VVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJT04oMiw2LDI1KQ0KIAkg
ICAgbm5wZnNwLT5jYWNoZXJvb3QgPSBtbnRnZXQobmQubW50KTsNCiAJICAg
IG5ucGZzcC0+Y2FjaGVkaXIgPSBkZ2V0KG5kLmRlbnRyeSk7DQogCSAgICBw
YXRoX3JlbGVhc2UoJm5kKTsNCisjZWxzZQ0KKwkgICAgbm5wZnNwLT5jYWNo
ZXJvb3QgPSBtbnRnZXQobmQucGF0aC5tbnQpOw0KKwkgICAgbm5wZnNwLT5j
YWNoZWRpciA9IGRnZXQobmQucGF0aC5kZW50cnkpOw0KKwkgICAgcGF0aF9w
dXQoJm5kLnBhdGgpOw0KKyNlbmRpZg0KIAkgICAgDQorI2lmIExJTlVYX1ZF
UlNJT05fQ09ERSA8PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQogCSAgICBu
bnBmc3AtPnVpZCA9IGN1cnJlbnQtPmZzdWlkOw0KIAkgICAgbm5wZnNwLT5n
aWQgPSBjdXJyZW50LT5mc2dpZDsNCisjZWxzZQ0KKyAgICAgICAgICAgIG5u
cGZzcC0+dWlkID0gY3VycmVudF9mc3VpZCgpOw0KKyAgICAgICAgICAgIG5u
cGZzcC0+Z2lkID0gY3VycmVudF9mc2dpZCgpOw0KKyNlbmRpZg0KIA0KIAkg
ICAgLyogWFhYIHdlIHNob3VsZCB2YWxpZGF0ZSB0aGVzZSB2YWx1ZXMgKi8N
CiAJICAgIG5ucGZzX2Jsb2Nrc2l6ZSA9IGJsb2Nrc2l6ZTsNCmRpZmYgLXVw
ck4gYXJsYS0wLjkwL25ucGZzL2xpbnV4L25ucGZzX3N5c2NhbGxzLmMgYXJs
YS0wLjkwLW5ldy9ubnBmcy9saW51eC9ubnBmc19zeXNjYWxscy5jDQotLS0g
YXJsYS0wLjkwL25ucGZzL2xpbnV4L25ucGZzX3N5c2NhbGxzLmMJMjAwNy0w
MS0wMyAxNToyNjoyNy4wMDAwMDAwMDAgKzAxMDANCisrKyBhcmxhLTAuOTAt
bmV3L25ucGZzL2xpbnV4L25ucGZzX3N5c2NhbGxzLmMJMjAwOS0wMS0yNSAx
ODoyNDoyNi4wMDAwMDAwMDAgKzAxMDANCkBAIC0xNDcsMTAgKzE0NywxNiBA
QCBzdGF0aWMgaW50IG5ucGZzX3NlY19yZWdpc3RlcmVkID0gMDsNCiAjZGVm
aW5lIFNFQzJQQUcocykgKG5ucGZzX3BhZ190KSh1bnNpZ25lZCBsb25nKShz
KQ0KICNkZWZpbmUgUEFHMlNFQyhwKSAodm9pZCAqKSh1bnNpZ25lZCBsb25n
KShwKQ0KIA0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVS
U0lPTigyLDYsMjQpDQorDQogc3RhdGljIGludA0KIG5ucGZzX3NlY190YXNr
X2FsbG9jKHN0cnVjdCB0YXNrX3N0cnVjdCAqcCkNCiB7DQorI2lmIExJTlVY
X1ZFUlNJT05fQ09ERSA8PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQogICAg
IG5ucGZzX3BhZ190IHBhZyA9IFNFQzJQQUcoY3VycmVudC0+c2VjdXJpdHkp
Ow0KKyNlbHNlDQorICAgIG5ucGZzX3BhZ190IHBhZyA9IFNFQzJQQUcoY3Vy
cmVudF9zZWN1cml0eSgpKTsNCisjZW5kaWYNCiAgICAgaWYgKHBhZykNCiAJ
cC0+c2VjdXJpdHkgPSBQQUcyU0VDKHBhZyk7DQogICAgIHJldHVybiAwOw0K
QEAgLTE2NCwzNSArMTcwLDU1IEBAIG5ucGZzX3NlY190YXNrX2ZyZWUoc3Ry
dWN0IHRhc2tfc3RydWN0ICoNCiAJcC0+c2VjdXJpdHkgPSBOVUxMOw0KIH0N
CiANCisjZW5kaWYNCisNCiBzdGF0aWMgbm5wZnNfcGFnX3QNCiBubnBmc19n
ZXRfcGFnX3NlYyh2b2lkKQ0KIHsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RF
IDw9IEtFUk5FTF9WRVJTSU9OKDIsNiwyOCkNCiAgICAgbm5wZnNfcGFnX3Qg
cGFnID0gU0VDMlBBRyhjdXJyZW50LT5zZWN1cml0eSk7DQorI2Vsc2UNCisg
ICAgbm5wZnNfcGFnX3QgcGFnID0gU0VDMlBBRyhjdXJyZW50X3NlY3VyaXR5
KCkpOw0KKyNlbmRpZg0KICAgICBpZiAocGFnKQ0KIAlyZXR1cm4gcGFnOw0K
IA0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPD0gS0VSTkVMX1ZFUlNJT04o
Miw2LDI4KQ0KICAgICByZXR1cm4gY3VycmVudC0+dWlkOw0KKyNlbHNlDQor
ICAgIHJldHVybiBjdXJyZW50X3VpZCgpOw0KKyNlbmRpZg0KIH0NCiANCiBz
dGF0aWMgaW50DQogbm5wZnNfc2V0X3BhZ19zZWModm9pZCkNCiB7DQogICAg
IHN0YXRpYyBubnBmc19wYWdfdCBwYWdudW0gPSBOTlBGU19QQUdfTExJTTsN
CisjaWYgTElOVVhfVkVSU0lPTl9DT0RFID49IEtFUk5FTF9WRVJTSU9OKDIs
NiwyOSkNCisgICAgc3RydWN0IGNyZWQgKmNyZWQ7DQorI2VuZGlmDQogDQog
ICAgIGlmIChwYWdudW0gPT0gTk5QRlNfUEFHX1VMSU0pDQogCXJldHVybiAt
RU5PTUVNOw0KICAgICAvKiBwYWdudW0gPSBOTlBGU19QQUdfTExJTTsgKi8N
CiAgICAgDQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBLRVJORUxfVkVS
U0lPTigyLDYsMjgpDQogICAgIGN1cnJlbnQtPnNlY3VyaXR5ID0gUEFHMlNF
QyhwYWdudW0pOw0KKyNlbHNlDQorICAgIGNyZWQgPSAoc3RydWN0IGNyZWQg
KikgY3VycmVudC0+Y3JlZDsNCisgICAgY3JlZC0+c2VjdXJpdHkgPSBQQUcy
U0VDKHBhZ251bSk7DQorI2VuZGlmDQogICAgIHBhZ251bSsrOw0KICAgICBy
ZXR1cm4gMDsNCiB9DQogDQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8IEtF
Uk5FTF9WRVJTSU9OKDIsNiwyNCkNCiBzdGF0aWMgc3RydWN0IHNlY3VyaXR5
X29wZXJhdGlvbnMgbm5wZnNfc2VjX29wcyA9IHsNCiAgICAgLnRhc2tfYWxs
b2Nfc2VjdXJpdHkgPSBubnBmc19zZWNfdGFza19hbGxvYywNCiAgICAgLnRh
c2tfZnJlZV9zZWN1cml0eSA9IG5ucGZzX3NlY190YXNrX2ZyZWUsDQogLy8g
ICAgLnRhc2tfcmVwYXJlbnRfdG9faW5pdCA9IG5ucGZzX3NlY19yZXBhcmVu
dF90b19pbml0LA0KIH07DQorI2VuZGlmDQogDQogI2VuZGlmIC8qIENPTkZJ
R19TRUNVUklUWSAqLw0KIA0KQEAgLTIyMiw4ICsyNDgsMTMgQEAgZmluZF9w
YWcoc3RydWN0IGdyb3VwX2luZm8gKmdpKQ0KIHN0YXRpYyBubnBmc19wYWdf
dA0KIG5ucGZzX2dldF9wYWdfZ3JvdXAodm9pZCkNCiB7DQorI2lmIExJTlVY
X1ZFUlNJT05fQ09ERSA8PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQogICAg
IHN0cnVjdCBncm91cF9pbmZvICpnaSA9IGN1cnJlbnQtPmdyb3VwX2luZm87
DQogICAgIG5ucGZzX3BhZ190IHJldCA9IGN1cnJlbnQtPnVpZDsNCisjZWxz
ZQ0KKyAgICBzdHJ1Y3QgZ3JvdXBfaW5mbyAqZ2kgPSBnZXRfY3VycmVudF9n
cm91cHMoKTsNCisgICAgbm5wZnNfcGFnX3QgcmV0ID0gY3VycmVudF91aWQo
KTsNCisjZW5kaWYNCiAgICAgaW50IGk7DQogDQogICAgIGdldF9ncm91cF9p
bmZvKGdpKTsNCkBAIC0yNDIsOSArMjczLDE3IEBAIG5ucGZzX2dldF9wYWdf
Z3JvdXAodm9pZCkNCiBzdGF0aWMgaW50DQogc3RvcmVfcGFnKG5ucGZzX3Bh
Z190IHBhZ251bSkNCiB7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8PSBL
RVJORUxfVkVSU0lPTigyLDYsMjgpDQogICAgIHN0cnVjdCBncm91cF9pbmZv
ICpvbGRfZ2kgPSBjdXJyZW50LT5ncm91cF9pbmZvOw0KKyNlbHNlDQorICAg
c3RydWN0IGdyb3VwX2luZm8gKm9sZF9naSA9IGdldF9jdXJyZW50X2dyb3Vw
cygpOw0KKyNlbmRpZg0KICAgICBzdHJ1Y3QgZ3JvdXBfaW5mbyAqbmV3X2dp
Ow0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigy
LDYsMjUpDQogICAgIGludCBuYmxvY2tzLCBjb3VudDsNCisjZWxzZQ0KKyAg
ICB1bnNpZ25lZCBpbnQgbmJsb2NrcywgY291bnQ7DQorI2VuZGlmDQogICAg
IGludCBmb3VuZCA9IDA7DQogICAgIGludCBpLCBrOw0KICAgICANCkBAIC0z
MTcsNyArMzU2LDExIEBAIG5ucGZzX2dldF9wYWcoKQ0KICAgICByZXR1cm4g
bm5wZnNfZ2V0X3BhZ19ncm91cCgpOw0KICNlbmRpZiAvKiBHUk9VUFBBR1Mg
Ki8NCiANCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDw9IEtFUk5FTF9WRVJT
SU9OKDIsNiwyOCkNCiAgICAgcmV0dXJuIGN1cnJlbnQtPnVpZDsNCisjZWxz
ZQ0KKyAgICByZXR1cm4gY3VycmVudF91aWQoKTsNCisjZW5kaWYNCiB9DQog
DQogc3RhdGljIGlubGluZSBpbnQNCkBAIC01MjgsNyArNTcxLDExIEBAIHVz
ZXJfcGF0aDJkZW50cnkgKHN0cnVjdCBuYW1laWRhdGEgKm5kLCANCiAgICAg
cHV0bmFtZShrbmFtZSk7DQogICAgIGlmIChlcnJvcikNCiAJcmV0dXJuIEVS
Ul9QVFIoZXJyb3IpOw0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJO
RUxfVkVSU0lPTigyLDYsMjUpDQogICAgIHJldHVybiBuZC0+ZGVudHJ5Ow0K
KyNlbHNlDQorICAgIHJldHVybiBuZC0+cGF0aC5kZW50cnk7DQorI2VuZGlm
DQogfQ0KIA0KIGFzbWxpbmthZ2UgbG9uZw0KQEAgLTYzNiw3ICs2ODMsMTEg
QEAgc3lzX2Fmc19pbnQgKGludCBvcGVyYXRpb24sDQogCQ0KIAltc2cuaW5z
aXplICAgPSB2aWNlX2lvY3RsLmluX3NpemU7DQogCW1zZy5vdXRzaXplICA9
IHZpY2VfaW9jdGwub3V0X3NpemU7DQorI2lmIExJTlVYX1ZFUlNJT05fQ09E
RSA8PSBLRVJORUxfVkVSU0lPTigyLDYsMjgpDQogCW1zZy5jcmVkLnVpZCA9
IGN1cnJlbnQtPnVpZDsNCisjZWxzZQ0KKyAgICAgICAgbXNnLmNyZWQudWlk
ID0gY3VycmVudF91aWQoKTsNCisjZW5kaWYNCiAJbXNnLmNyZWQucGFnID0g
bm5wZnNfZ2V0X3BhZygpOw0KIAkNCiAJZXJyb3IgPSBubnBmc19tZXNzYWdl
X3JwYygmbm5wZnNbMF0sICZtc2cuaGVhZGVyLCBzaXplb2YobXNnKSk7IC8q
IFhYWCAqLw0KQEAgLTY3NSw3ICs3MjYsMTEgQEAgc3lzX2Fmc19pbnQgKGlu
dCBvcGVyYXRpb24sDQogICAgIA0KICB1bmxvY2s6DQogICAgIGlmIChkZW50
cnkpDQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8IEtFUk5FTF9WRVJTSU9O
KDIsNiwyNSkNCiAJcGF0aF9yZWxlYXNlKCZuZCk7DQorI2Vsc2UNCisJcGF0
aF9wdXQoJm5kLnBhdGgpOw0KKyNlbmRpZg0KIA0KICAgICBOTlBGU0RFQihY
REVCU1lTLCAoIm5ucGZzX3N5c2NhbGwgcmV0dXJucyBlcnJvcjogJWxkXG4i
LCBlcnJvcikpOw0KIA0KQEAgLTc4MCw3ICs4MzUsMTEgQEAgc3RhdGljIGlu
dCBubnBmc19pbml0X3Byb2Nmcyh2b2lkKQ0KIHsNCiAgICAgc3RydWN0IHBy
b2NfZGlyX2VudHJ5ICplbnRyeTsNCiAgICAgDQorI2lmIExJTlVYX1ZFUlNJ
T05fQ09ERSA8IEtFUk5FTF9WRVJTSU9OKDIsNiwyNikNCiAgICAgbm5wZnNf
cHJvY2ZzX2RpciA9IHByb2NfbWtkaXIoTk5QRlNfUFJPQ19ESVIsIHByb2Nf
cm9vdF9mcyk7DQorI2Vsc2UNCisgICAgbm5wZnNfcHJvY2ZzX2RpciA9IHBy
b2NfbWtkaXIoImZzLyIgTk5QRlNfUFJPQ19ESVIsIE5VTEwpOw0KKyNlbmRp
Zg0KICAgICBpZiAobm5wZnNfcHJvY2ZzX2RpciA9PSBOVUxMKQ0KIAlyZXR1
cm4gLUVOT01FTTsNCiAgICAgDQpAQCAtNzg5LDcgKzg0OCwxMSBAQCBzdGF0
aWMgaW50IG5ucGZzX2luaXRfcHJvY2ZzKHZvaWQpDQogICAgIGVudHJ5ID0g
Y3JlYXRlX3Byb2NfZW50cnkoTk5QRlNfUFJPQ19OT0RFLCAwNjY2LCBubnBm
c19wcm9jZnNfZGlyKTsNCiAgICAgaWYgKGVudHJ5ID09IE5VTEwpIHsNCiAJ
Tk5QRlNERUIoWERFQlNZUywgKCJubnBmc19pbml0X3Byb2Nmczogbm8gbm9k
ZVxuIikpOw0KKyNpZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVS
U0lPTigyLDYsMjYpDQogCXJlbW92ZV9wcm9jX2VudHJ5KE5OUEZTX1BST0Nf
RElSLCBwcm9jX3Jvb3RfZnMpOw0KKyNlbHNlDQorCXJlbW92ZV9wcm9jX2Vu
dHJ5KCJmcy8iIE5OUEZTX1BST0NfRElSLCBOVUxMKTsNCisjZW5kaWYNCiAJ
cmV0dXJuIC1FTk9NRU07DQogICAgIH0NCiAgICAgDQpAQCAtODE1LDcgKzg3
OCwxMSBAQCBzdGF0aWMgdm9pZCBubnBmc19leGl0X3Byb2Nmcyh2b2lkKQ0K
ICAgICB9DQogI2VuZGlmIC8qIFNZU0NBTExDT01QQVQgKi8NCiAgICAgcmVt
b3ZlX3Byb2NfZW50cnkoTk5QRlNfUFJPQ19OT0RFLCBubnBmc19wcm9jZnNf
ZGlyKTsNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RFIDwgS0VSTkVMX1ZFUlNJ
T04oMiw2LDI2KQ0KICAgICByZW1vdmVfcHJvY19lbnRyeShOTlBGU19QUk9D
X0RJUiwgcHJvY19yb290X2ZzKTsNCisjZWxzZQ0KKyAgICByZW1vdmVfcHJv
Y19lbnRyeSgiZnMvIiBOTlBGU19QUk9DX0RJUiwgTlVMTCk7DQorI2VuZGlm
DQogfQ0KIA0KICNpZmRlZiBHUk9VUFBBR1MNCkBAIC04NDAsMTIgKzkwNywx
NCBAQCB2b2lkDQogaW5zdGFsbF9hZnNfc3lzY2FsbCh2b2lkKQ0KIHsNCiAj
aWZkZWYgQ09ORklHX1NFQ1VSSVRZDQorI2lmIExJTlVYX1ZFUlNJT05fQ09E
RSA8IEtFUk5FTF9WRVJTSU9OKDIsNiwyNCkNCiAgICAgaWYgKHJlZ2lzdGVy
X3NlY3VyaXR5KCZubnBmc19zZWNfb3BzKSkNCiAJTk5QRlNERUIoWERFQlNZ
UywNCiAJCSAoImluc3RhbGxfYWZzX3N5c2NhbGw6IG5ucGZzX2luaXRfc2Vj
IGZhaWxlZFxuIikpOw0KICAgICBlbHNlDQogCW5ucGZzX3NlY19yZWdpc3Rl
cmVkID0gMTsNCiAjZW5kaWYNCisjZW5kaWYNCiANCiAgICAgbm5wZnNfaW5p
dF9wcm9jZnMoKTsNCiANCkBAIC04ODgsOSArOTU3LDExIEBAIHJlc3RvcmVf
YWZzX3N5c2NhbGwgKHZvaWQpDQogI2VuZGlmIC8qIFNZU0NBTExIQUNLICov
DQogDQogI2lmZGVmIENPTkZJR19TRUNVUklUWQ0KKyNpZiBMSU5VWF9WRVJT
SU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjQpDQogICAgIGlmIChu
bnBmc19zZWNfcmVnaXN0ZXJlZCkNCiAJaWYgKHVucmVnaXN0ZXJfc2VjdXJp
dHkoJm5ucGZzX3NlY19vcHMpKQ0KIAkgICAgcHJpbnRrKEtFUk5fRU1FUkcg
Im5ucGZzX2V4aXRfc2VjOiBjb3VsZG4ndCB1bnJlZ2lzdGVyXG4iKTsNCisj
ZW5kaWYNCiAjZW5kaWYgLyogIUNPTkZJR19TRUNVUklUWSAqLw0KIA0KICNp
ZmRlZiBHUk9VUFBBR1MNCmRpZmYgLXVwck4gYXJsYS0wLjkwL25ucGZzL2xp
bnV4L25ucGZzX3N5c2NhbGxzLWxvc3NhZ2UuYyBhcmxhLTAuOTAtbmV3L25u
cGZzL2xpbnV4L25ucGZzX3N5c2NhbGxzLWxvc3NhZ2UuYw0KLS0tIGFybGEt
MC45MC9ubnBmcy9saW51eC9ubnBmc19zeXNjYWxscy1sb3NzYWdlLmMJMjAw
Ni0xMi0xMSAxNzozMTo0NS4wMDAwMDAwMDAgKzAxMDANCisrKyBhcmxhLTAu
OTAtbmV3L25ucGZzL2xpbnV4L25ucGZzX3N5c2NhbGxzLWxvc3NhZ2UuYwky
MDA4LTEyLTE1IDE3OjU4OjExLjAwMDAwMDAwMCArMDEwMA0KQEAgLTYzLDYg
KzYzLDExIEBAIGNvbnN0IGNoYXIgKiBfX2F0dHJpYnV0ZV9fKCh3ZWFrKSkN
CiAJCSAgICB1bnNpZ25lZCBsb25nICpvZmZzZXQsDQogCQkgICAgY2hhciAq
Km1vZG5hbWUsIGNoYXIgKm5hbWVidWYpOw0KIA0KKyNpZiBMSU5VWF9WRVJT
SU9OX0NPREUgPiBLRVJORUxfVkVSU0lPTigyLDYsMTgpDQorI2lmZGVmIF9f
eDg2XzY0X18NCitleHRlcm4gcndsb2NrX3QgdGFza2xpc3RfbG9jayBfX2F0
dHJpYnV0ZV9fKCh3ZWFrKSk7DQorI2VuZGlmDQorI2VuZGlmDQogc3RhdGlj
IHZvaWQgKioNCiBnZXRfc3RhcnRfYWRkcih2b2lkKSB7DQogI2lmZGVmIF9f
eDg2XzY0X18NCmRpZmYgLXVwck4gYXJsYS0wLjkwL25ucGZzL2xpbnV4L25u
cGZzX3Zmc29wcy5jIGFybGEtMC45MC1uZXcvbm5wZnMvbGludXgvbm5wZnNf
dmZzb3BzLmMNCi0tLSBhcmxhLTAuOTAvbm5wZnMvbGludXgvbm5wZnNfdmZz
b3BzLmMJMjAwNi0xMi0xMSAxNzo0MzozNS4wMDAwMDAwMDAgKzAxMDANCisr
KyBhcmxhLTAuOTAtbmV3L25ucGZzL2xpbnV4L25ucGZzX3Zmc29wcy5jCTIw
MDgtMTItMTUgMTc6NTg6MTEuMDAwMDAwMDAwICswMTAwDQpAQCAtNDksOSAr
NDksMTMgQEAgUkNTSUQoIiRJZDogbm5wZnNfdmZzb3BzLmMsdiAxLjEwOSAy
MDA2Lw0KIA0KIHN0cnVjdCBubnBmcyBubnBmc1tOTk5QRlNdOw0KIA0KKyNp
ZiBMSU5VWF9WRVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjUp
DQogc3RhdGljIHZvaWQgbm5wZnNfcmVhZF9pbm9kZShzdHJ1Y3QgaW5vZGUg
Kmlub2RlKTsNCisjZW5kaWYNCiBzdGF0aWMgdm9pZCBubnBmc19wdXRfc3Vw
ZXIoc3RydWN0IHN1cGVyX2Jsb2NrICpzYik7DQorI2lmIExJTlVYX1ZFUlNJ
T05fQ09ERSA8IEtFUk5FTF9WRVJTSU9OKDIsNiwyNSkNCiBzdGF0aWMgdm9p
ZCBubnBmc19wdXRfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSk7DQorI2Vu
ZGlmDQogc3RhdGljIHZvaWQgbm5wZnNfd3JpdGVfc3VwZXIoc3RydWN0IHN1
cGVyX2Jsb2NrICogc2IpOw0KIA0KICNpZiBMSU5VWF9WRVJTSU9OX0NPREUg
Pj0gS0VSTkVMX1ZFUlNJT04oMiw2LDE4KQ0KQEAgLTYxLDggKzY1LDEwIEBA
IHN0YXRpYyBpbnQgbm5wZnNfc3RhdGZzKHN0cnVjdCBzdXBlcl9ibG8NCiAj
ZW5kaWYNCiANCiBzdGF0aWMgc3RydWN0IHN1cGVyX29wZXJhdGlvbnMgbm5w
ZnNfc29wcyA9IHsgDQorI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8IEtFUk5F
TF9WRVJTSU9OKDIsNiwyNSkNCiAgICAgcmVhZF9pbm9kZQkJOiBubnBmc19y
ZWFkX2lub2RlLA0KICAgICBwdXRfaW5vZGUJCTogbm5wZnNfcHV0X2lub2Rl
LA0KKyNlbmRpZg0KICAgICBhbGxvY19pbm9kZQkJOiBubnBmc19ub2RlX2Fs
bG9jLA0KICAgICBkZXN0cm95X2lub2RlCTogbm5wZnNfbm9kZV9mcmVlLA0K
ICAgICBkcm9wX2lub2RlCQk6IGdlbmVyaWNfZGVsZXRlX2lub2RlLA0KQEAg
LTE4OSw3ICsxOTUsMTEgQEAgbm5wZnNfcmVhZF9zdXBlciAoc3RydWN0IHN1
cGVyX2Jsb2NrICogcw0KIAlpZiAoZXJyb3IpDQogCSAgICBkZGV2ID0gRVJS
X1BUUihlcnJvcik7DQogCWVsc2UNCisjaWYgTElOVVhfVkVSU0lPTl9DT0RF
IDwgS0VSTkVMX1ZFUlNJT04oMiw2LDI1KQ0KIAkgICAgZGRldiA9IG5kLmRl
bnRyeTsNCisjZWxzZQ0KKwkgICAgZGRldiA9IG5kLnBhdGguZGVudHJ5Ow0K
KyNlbmRpZg0KIA0KIAlpZiAoIUlTX0VSUihkZGV2KSkgew0KIAkgICAgbWlu
b3JkZXZpY2UgPSBNSU5PUihkZGV2LT5kX2lub2RlLT5pX3JkZXYpOw0KQEAg
LTI3Myw2ICsyODMsNyBAQCBubnBmc19wdXRfc3VwZXIoc3RydWN0IHN1cGVy
X2Jsb2NrICpzYikNCiAgICAgTk5QRlNERUIoWERFQlZGT1BTLCAoIm5ucGZz
X3B1dF9zdXBlciBleGl0aW5nXG4iKSk7DQogfQ0KIA0KKyNpZiBMSU5VWF9W
RVJTSU9OX0NPREUgPCBLRVJORUxfVkVSU0lPTigyLDYsMjUpDQogc3RhdGlj
IHZvaWQNCiBubnBmc19yZWFkX2lub2RlKHN0cnVjdCBpbm9kZSAqaW5vZGUp
DQogew0KQEAgLTMzOSw2ICszNTAsNyBAQCBubnBmc19wdXRfaW5vZGUoc3Ry
dWN0IGlub2RlICppbm9kZSkNCiANCiAgICAgdXAoJm5ucGZzcC0+aW5hY3Rp
dmVfc2VtKTsNCiB9DQorI2VuZGlmIC8vIExJTlVYX1ZFUlNJT05fQ09ERSA8
IEtFUk5FTF9WRVJTSU9OKDIsNiwyNSkNCiANCiBzdGF0aWMgaW50DQogbm5w
ZnNfc3RhdGZzX2ludChzdHJ1Y3Qgc3VwZXJfYmxvY2sgKnNiLCBzdHJ1Y3Qg
a3N0YXRmcyAqYnVmKQ0KQEAgLTM1Miw3ICszNjQsMTUgQEAgbm5wZnNfc3Rh
dGZzX2ludChzdHJ1Y3Qgc3VwZXJfYmxvY2sgKnNiLA0KICAgICB0bXAuZl9i
YXZhaWwgID0gMTAyNCoxMDI0KjItNTA7DQogICAgIHRtcC5mX2ZpbGVzICAg
PSAxMDI0KjEwMjQ7DQogICAgIHRtcC5mX2ZmcmVlICAgPSAxMDI0KjEwMjQt
MTAwOw0KKyAgICB0bXAuZl9mc2lkLnZhbFswXSA9IDA7DQorICAgIHRtcC5m
X2ZzaWQudmFsWzFdID0gMDsNCiAgICAgdG1wLmZfbmFtZWxlbiA9IE5BTUVf
TUFYOw0KKyAgICB0bXAuZl9mcnNpemUgID0gMDsNCisgICAgdG1wLmZfc3Bh
cmVbMF0gPSAwOw0KKyAgICB0bXAuZl9zcGFyZVsxXSA9IDA7DQorICAgIHRt
cC5mX3NwYXJlWzJdID0gMDsNCisgICAgdG1wLmZfc3BhcmVbM10gPSAwOw0K
KyAgICB0bXAuZl9zcGFyZVs0XSA9IDA7DQogICAgICpidWYgPSB0bXA7DQog
ICAgIHJldHVybiAwOw0KIH0NCg==

---2098261369-2037235353-1232921207=:1388702
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-2037235353-1232921207=:1388702--

home help back first fref pref prev next nref lref last post