[PATCH] Changes in Drivers for New Wait Queue Handling

Jeremy Katz (katzj@linuxpower.org)
Fri, 14 May 1999 21:43:29 -0700 (PDT)


This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.
Send mail to mime@docserver.cac.washington.edu for more info.

---1244721415-178135710-926743409=:17358
Content-Type: TEXT/PLAIN; charset=US-ASCII

After a few oops's in 2.3.1 due to a couple of wait queue declarations not
being changed, I have gone through and changed all of the remaining "old
style" wait queues to the newer. As I don't have all of this hardware,
not all of them have been tested, but they match the changes made to all
the other drivers and they do work for the sound drivers and apm.

Linus -- if you'd rather I break the patch up into smaller parts, let me
know and I can do this.

Jeremy

--
Jeremy Katz
http://linuxpower.org

---1244721415-178135710-926743409=:17358 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="wait_queues.patch" Content-Transfer-Encoding: BASE64 Content-ID: <Pine.LNX.4.10.9905142143290.17358@bach.greenwitch.com> Content-Description: wait queue changes Content-Disposition: attachment; filename="wait_queues.patch"

ZGlmZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvYXJjaC9pMzg2L2tlcm5l bC9hcG0uYyBsaW51eC5kZXZlbC9hcmNoL2kzODYva2VybmVsL2FwbS5jDQot LS0gbGludXguZGV2ZWwudmFuaWxsYS9hcmNoL2kzODYva2VybmVsL2FwbS5j CUZyaSBNYXkgMTQgMjM6MDE6MzYgMTk5OQ0KKysrIGxpbnV4LmRldmVsL2Fy Y2gvaTM4Ni9rZXJuZWwvYXBtLmMJRnJpIE1heSAxNCAyMzoyOToxNiAxOTk5 DQpAQCAtMzE0LDcgKzMxNCw3IEBADQogc3RhdGljIGludAkJCWRlYnVnID0g MDsNCiBzdGF0aWMgaW50CQkJYXBtX2Rpc2FibGVkID0gMDsNCiANCi1zdGF0 aWMgc3RydWN0IHdhaXRfcXVldWUgKglwcm9jZXNzX2xpc3QgPSBOVUxMOw0K K3N0YXRpYyBERUNMQVJFX1dBSVRfUVVFVUVfSEVBRChwcm9jZXNzX2xpc3Qp Ow0KIHN0YXRpYyBzdHJ1Y3QgYXBtX2Jpb3Nfc3RydWN0ICoJdXNlcl9saXN0 ID0gTlVMTDsNCiANCiBzdGF0aWMgc3RydWN0IHRpbWVyX2xpc3QJYXBtX3Rp bWVyOw0KZGlmZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvYXJjaC9tNjhr L2F0YXJpL3N0ZG1hLmMgbGludXguZGV2ZWwvYXJjaC9tNjhrL2F0YXJpL3N0 ZG1hLmMNCi0tLSBsaW51eC5kZXZlbC52YW5pbGxhL2FyY2gvbTY4ay9hdGFy aS9zdGRtYS5jCVRodSBGZWIgMTIgMTk6MzA6MTIgMTk5OA0KKysrIGxpbnV4 LmRldmVsL2FyY2gvbTY4ay9hdGFyaS9zdGRtYS5jCUZyaSBNYXkgMTQgMjM6 MzA6NDcgMTk5OQ0KQEAgLTQzLDcgKzQzLDcgQEANCiAJCQkJCQkvKiBpbnQg ZnVuYyB0byBiZSBjYWxsZWQgKi8NCiBzdGF0aWMgdm9pZCAoKnN0ZG1hX2lz cikoaW50LCB2b2lkICosIHN0cnVjdCBwdF9yZWdzICopID0gTlVMTDsNCiBz dGF0aWMgdm9pZAkqc3RkbWFfaXNyX2RhdGEgPSBOVUxMOwkJLyogZGF0YSBw YXNzZWQgdG8gaXNyICovDQotc3RhdGljIHN0cnVjdCB3YWl0X3F1ZXVlICpz dGRtYV93YWl0ID0gTlVMTDsJLyogd2FpdCBxdWV1ZSBmb3IgU1QtRE1BICov DQorc3RhdGljIERFQ0xBUkVfV0FJVF9RVUVVRV9IRUFEKHN0ZG1hX3dhaXQp OwkvKiB3YWl0IHF1ZXVlIGZvciBTVC1ETUEgKi8NCiANCiANCiANCmRpZmYg LXVyTiBsaW51eC5kZXZlbC52YW5pbGxhL2FyY2gvbTY4ay9tYWMvYWRiLWJ1 cy5jIGxpbnV4LmRldmVsL2FyY2gvbTY4ay9tYWMvYWRiLWJ1cy5jDQotLS0g bGludXguZGV2ZWwudmFuaWxsYS9hcmNoL202OGsvbWFjL2FkYi1idXMuYwlN b24gT2N0ICA1IDE2OjU0OjM5IDE5OTgNCisrKyBsaW51eC5kZXZlbC9hcmNo L202OGsvbWFjL2FkYi1idXMuYwlGcmkgTWF5IDE0IDIzOjMyOjAwIDE5OTkN CkBAIC0yMzI4LDEyICsyMzI4LDEyIEBADQogCXN0cnVjdCBhZGJfcmVxdWVz dCByZXE7DQogfTsNCiANCi1zdGF0aWMgc3RydWN0IHdhaXRfcXVldWUgKmFk Yl93YWl0Ow0KK3N0YXRpYyBERUNMQVJFX1dBSVRfUVVFVUVfSEVBRChhZGJf d2FpdCk7DQogDQogc3RhdGljIGludCBhZGJfd2FpdF9yZXBseShzdHJ1Y3Qg YWRiZGV2X3N0YXRlICpzdGF0ZSwgc3RydWN0IGZpbGUgKmZpbGUpDQogew0K IAlpbnQgcmV0ID0gMDsNCi0Jc3RydWN0IHdhaXRfcXVldWUgd2FpdCA9IHsg Y3VycmVudCwgTlVMTCB9Ow0KKwlERUNMQVJFX1dBSVRRVUVVRSh3YWl0LGN1 cnJlbnQpOw0KIA0KIAlhZGRfd2FpdF9xdWV1ZSgmYWRiX3dhaXQsICZ3YWl0 KTsNCiAJY3VycmVudC0+c3RhdGUgPSBUQVNLX0lOVEVSUlVQVElCTEU7DQpA QCAtMjU1MiwxMiArMjU1MiwxMiBAQA0KIAlzdHJ1Y3QgYWRiX3JlcXVlc3Qg cmVxOw0KIH07DQogDQotc3RhdGljIHN0cnVjdCB3YWl0X3F1ZXVlICphZGJf d2FpdDsNCitzdGF0aWMgREVDTEFSRV9XQUlUX1FVRVVFX0hFQUQoYWRiX3dh aXQpOw0KIA0KIHN0YXRpYyBpbnQgYWRiX3dhaXRfcmVwbHkoc3RydWN0IGFk YmRldl9zdGF0ZSAqc3RhdGUsIHN0cnVjdCBmaWxlICpmaWxlKQ0KIHsNCiAJ aW50IHJldCA9IDA7DQotCXN0cnVjdCB3YWl0X3F1ZXVlIHdhaXQgPSB7IGN1 cnJlbnQsIE5VTEwgfTsNCisJREVDTEFSRV9XQUlUUVVFVUUod2FpdCwgY3Vy cmVudCk7DQogDQogI2lmIChBREJERUJVRyAmIEFEQkRFQlVHX0RFVklDRSkN CiAJcHJpbnRrKCJBREIgcmVxdWVzdDogd2FpdF9yZXBseSAoYmxvY2tpbmcg Li4uIFxuIik7DQpkaWZmIC11ck4gbGludXguZGV2ZWwudmFuaWxsYS9hcmNo L21pcHMva2VybmVsL2lyaXhzaWcuYyBsaW51eC5kZXZlbC9hcmNoL21pcHMv a2VybmVsL2lyaXhzaWcuYw0KLS0tIGxpbnV4LmRldmVsLnZhbmlsbGEvYXJj aC9taXBzL2tlcm5lbC9pcml4c2lnLmMJVGh1IE5vdiAgNSAxMjo1ODoyOSAx OTk4DQorKysgbGludXguZGV2ZWwvYXJjaC9taXBzL2tlcm5lbC9pcml4c2ln LmMJRnJpIE1heSAxNCAyMzoyOTozOSAxOTk5DQpAQCAtNjY2LDcgKzY2Niw3 IEBADQogCQkJICAgIGludCBvcHRpb25zLCBzdHJ1Y3QgcnVzYWdlICpydSkN CiB7DQogCWludCBmbGFnLCByZXR2YWw7DQotCXN0cnVjdCB3YWl0X3F1ZXVl IHdhaXQgPSB7IGN1cnJlbnQsIE5VTEwgfTsNCisJREVDTEFSRV9XQUlUUVVF VUUod2FpdCxjdXJyZW50KTsNCiAJc3RydWN0IHRhc2tfc3RydWN0ICpwOw0K IA0KIAlsb2NrX2tlcm5lbCgpOw0KZGlmZiAtdXJOIGxpbnV4LmRldmVsLnZh bmlsbGEvYXJjaC9wcGMvOHh4X2lvL3VhcnQuYyBsaW51eC5kZXZlbC9hcmNo L3BwYy84eHhfaW8vdWFydC5jDQotLS0gbGludXguZGV2ZWwudmFuaWxsYS9h cmNoL3BwYy84eHhfaW8vdWFydC5jCVdlZCBEZWMgMjMgMTI6NDQ6NDAgMTk5 OA0KKysrIGxpbnV4LmRldmVsL2FyY2gvcHBjLzh4eF9pby91YXJ0LmMJRnJp IE1heSAxNCAyMzozMDoxOCAxOTk5DQpAQCAtMTU1LDggKzE1NSw4IEBADQog CWxvbmcJCQlwZ3JwOyAvKiBwZ3JwIG9mIG9wZW5pbmcgcHJvY2VzcyAqLw0K IAlzdHJ1Y3QgdHFfc3RydWN0CXRxdWV1ZTsNCiAJc3RydWN0IHRxX3N0cnVj dAl0cXVldWVfaGFuZ3VwOw0KLQlzdHJ1Y3Qgd2FpdF9xdWV1ZQkqb3Blbl93 YWl0Ow0KLQlzdHJ1Y3Qgd2FpdF9xdWV1ZQkqY2xvc2Vfd2FpdDsNCisJd2Fp dF9xdWV1ZV9oZWFkX3QJb3Blbl93YWl0Ow0KKwl3YWl0X3F1ZXVlX2hlYWRf dAljbG9zZV93YWl0Ow0KIA0KIAkvKiBDUE0gQnVmZmVyIERlc2NyaXB0b3Ig cG9pbnRlcnMuDQogCSovDQpAQCAtMTczMyw3ICsxNzMzLDcgQEANCiAJCQkg ICBzZXJfaW5mb190ICppbmZvKQ0KIHsNCiAjaWZkZWYgRE9fVEhJU19MQVRF Ug0KLQlzdHJ1Y3Qgd2FpdF9xdWV1ZSB3YWl0ID0geyBjdXJyZW50LCBOVUxM IH07DQorCURFQ0xBUkVfV0FJVFFVRVVFKHdhaXQsIGN1cnJlbnQpOw0KICNl bmRpZg0KIAlzdHJ1Y3Qgc2VyaWFsX3N0YXRlICpzdGF0ZSA9IGluZm8tPnN0 YXRlOw0KIAlpbnQJCXJldHZhbDsNCmRpZmYgLXVyTiBsaW51eC5kZXZlbC52 YW5pbGxhL2RyaXZlcnMvYWNvcm4vYmxvY2svZmQxNzcyLmMgbGludXguZGV2 ZWwvZHJpdmVycy9hY29ybi9ibG9jay9mZDE3NzIuYw0KLS0tIGxpbnV4LmRl dmVsLnZhbmlsbGEvZHJpdmVycy9hY29ybi9ibG9jay9mZDE3NzIuYwlUaHUg SmFuICA3IDExOjQ2OjU4IDE5OTkNCisrKyBsaW51eC5kZXZlbC9kcml2ZXJz L2Fjb3JuL2Jsb2NrL2ZkMTc3Mi5jCUZyaSBNYXkgMTQgMjM6Mjg6MzkgMTk5 OQ0KQEAgLTI2Nyw3ICsyNjcsNyBAQA0KIA0KIC8qIFN5bmNocm9uaXphdGlv biBvZiBGREMxNzcyIGFjY2Vzcy4gKi8NCiBzdGF0aWMgdm9sYXRpbGUgaW50 IGZkY19idXN5ID0gMDsNCi1zdGF0aWMgc3RydWN0IHdhaXRfcXVldWUgKmZk Y193YWl0ID0gTlVMTDsNCitzdGF0aWMgREVDTEFSRV9XQUlUX1FVRVVFX0hF QUQoZmRjX3dhaXQpOw0KIA0KIA0KIHN0YXRpYyB1bnNpZ25lZCBpbnQgY2hh bmdlZF9mbG9wcGllcyA9IDB4ZmYsIGZha2VfY2hhbmdlID0gMDsNCmRpZmYg LXVyTiBsaW51eC5kZXZlbC52YW5pbGxhL2RyaXZlcnMvYWNvcm4vYmxvY2sv bWZtaGQuYyBsaW51eC5kZXZlbC9kcml2ZXJzL2Fjb3JuL2Jsb2NrL21mbWhk LmMNCi0tLSBsaW51eC5kZXZlbC52YW5pbGxhL2RyaXZlcnMvYWNvcm4vYmxv Y2svbWZtaGQuYwlNb24gQXVnIDI0IDE2OjE0OjA5IDE5OTgNCisrKyBsaW51 eC5kZXZlbC9kcml2ZXJzL2Fjb3JuL2Jsb2NrL21mbWhkLmMJRnJpIE1heSAx NCAyMzoyOTowMyAxOTk5DQpAQCAtMTk1LDcgKzE5NSw3IEBADQogc3RhdGlj IGludCBtZm1fc2l6ZXNbTUZNX01BWERSSVZFUyA8PCA2XTsNCiBzdGF0aWMg aW50IG1mbV9ibG9ja3NpemVzW01GTV9NQVhEUklWRVMgPDwgNl07DQogc3Rh dGljIGludCBtZm1fc2VjdHNpemVzW01GTV9NQVhEUklWRVMgPDwgNl07DQot c3RhdGljIHN0cnVjdCB3YWl0X3F1ZXVlICptZm1fd2FpdF9vcGVuID0gTlVM TDsNCitzdGF0aWMgREVDTEFSRV9XQUlUX1FVRVVFX0hFQUQobWZtX3dhaXRf b3Blbik7DQogDQogLyogU3R1ZmYgZnJvbSB0aGUgYXNzZW1ibHkgcm91dGlu ZXMgKi8NCiBleHRlcm4gdW5zaWduZWQgaW50IGhkYzYzNDYzX2Jhc2VhZGRy ZXNzOwkvKiBDb250cm9sbGVyIGJhc2UgYWRkcmVzcyAqLw0KZGlmZiAtdXJO IGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVycy9hcDEwMDAvYXAuYyBsaW51 eC5kZXZlbC9kcml2ZXJzL2FwMTAwMC9hcC5jDQotLS0gbGludXguZGV2ZWwu dmFuaWxsYS9kcml2ZXJzL2FwMTAwMC9hcC5jCU1vbiBBdWcgMjQgMTY6NDU6 NTEgMTk5OA0KKysrIGxpbnV4LmRldmVsL2RyaXZlcnMvYXAxMDAwL2FwLmMJ RnJpIE1heSAxNCAyMzoyNDoyNCAxOTk5DQpAQCAtMzYsNyArMzYsNyBAQA0K ICNkZWZpbmUgTlVNX0FQREVWUyA4DQogI2RlZmluZSBNQVhfUkVRVUVTVFMg MQ0KIA0KLXN0YXRpYyBzdHJ1Y3Qgd2FpdF9xdWV1ZSAqIGJ1c3lfd2FpdCA9 IE5VTEw7DQorc3RhdGljIERFQ0xBUkVfV0FJVF9RVUVVRV9IRUFEKGJ1c3lf d2FpdCk7DQogDQogc3RhdGljIGludCBhcF9ibG9ja3NpemVzW05VTV9BUERF VlNdOw0KIHN0YXRpYyBpbnQgYXBfbGVuZ3RoW05VTV9BUERFVlNdOw0KZGlm ZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVycy9hcDEwMDAvZGR2 LmMgbGludXguZGV2ZWwvZHJpdmVycy9hcDEwMDAvZGR2LmMNCi0tLSBsaW51 eC5kZXZlbC52YW5pbGxhL2RyaXZlcnMvYXAxMDAwL2Rkdi5jCU1vbiBBdWcg MjQgMTY6MDI6NDQgMTk5OA0KKysrIGxpbnV4LmRldmVsL2RyaXZlcnMvYXAx MDAwL2Rkdi5jCUZyaSBNYXkgMTQgMjM6MjU6MDYgMTk5OQ0KQEAgLTg0LDcg Kzg0LDcgQEANCiBzdGF0aWMgY2hhciAqZGR2X29wY29kZXAgPSBOVUxMOw0K IHN0YXRpYyBzdHJ1Y3QgcmVxdWVzdCAqbmV4dF9yZXF1ZXN0ID0gTlVMTDsN CiANCi1zdGF0aWMgc3RydWN0IHdhaXRfcXVldWUgKiBidXN5X3dhaXQgPSBO VUxMOw0KK3N0YXRpYyBERUNMQVJFX1dBSVRfUVVFVUVfSEVBRChidXN5X3dh aXQpOw0KIA0KIHN0YXRpYyBpbnQgZGR2X2Jsb2Nrc2l6ZXNbTlVNX0REVkRF VlNdOyAvKiBpbiBieXRlcyAqLw0KIGludCBkZHZfc2VjdF9sZW5ndGhbTlVN X0REVkRFVlNdOyAvKiBpbiBzZWN0b3JzICovDQpAQCAtOTMsNyArOTMsNyBA QA0KIC8qIHRoZXNlIGFyZSB1c2VkIGJ5IHRoZSBkZHZfZGFlbW9uLCB3aGlj aCBzZXJ2aWNlcyByZW1vdGUgZGlzayByZXF1ZXN0cyAqLw0KIHN0YXRpYyBz dHJ1Y3QgcmVtb3RlX3JlcXVlc3QgKnJlbV9xdWV1ZSA9IE5VTEw7DQogc3Rh dGljIHN0cnVjdCByZW1vdGVfcmVxdWVzdCAqcmVtX3F1ZXVlX2VuZDsNCi1z dGF0aWMgc3RydWN0IHdhaXRfcXVldWUgKmRkdl9kYWVtb25fd2FpdCA9IE5V TEw7DQorc3RhdGljIERFQ0xBUkVfV0FJVF9RVUVVRV9IRUFEKGRkdl9kYWVt b25fd2FpdCk7DQogDQogc3RhdGljIGludCBvcGl1X2tlcm5lbF9sb2FkZWQg PSAwOw0KIA0KZGlmZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVy cy9ibG9jay9wYXJpZGUvcGQuYyBsaW51eC5kZXZlbC9kcml2ZXJzL2Jsb2Nr L3BhcmlkZS9wZC5jDQotLS0gbGludXguZGV2ZWwudmFuaWxsYS9kcml2ZXJz L2Jsb2NrL3BhcmlkZS9wZC5jCU1vbiBTZXAgMjggMTM6NTE6MTYgMTk5OA0K KysrIGxpbnV4LmRldmVsL2RyaXZlcnMvYmxvY2svcGFyaWRlL3BkLmMJRnJp IE1heSAxNCAyMzoxMjozMiAxOTk5DQpAQCAtMzMxLDcgKzMzMSw3IEBADQog c3RhdGljIGludCBwZF9wb2ZmczsJCQkvKiBwYXJ0aXRpb24gb2Zmc2V0IG9m IGN1cnJlbnQgbWlub3IgKi8NCiBzdGF0aWMgY2hhciAqIHBkX2J1ZjsgICAg ICAgICAgICAgICAgICAgLyogYnVmZmVyIGZvciByZXF1ZXN0IGluIHByb2dy ZXNzICovDQogDQotc3RhdGljIHN0cnVjdCB3YWl0X3F1ZXVlICpwZF93YWl0 X29wZW4gPSBOVUxMOw0KK3N0YXRpYyBERUNMQVJFX1dBSVRfUVVFVUVfSEVB RChwZF93YWl0X29wZW4pOw0KIA0KIHN0YXRpYyBjaGFyICpwZF9lcnJzWzE3 XSA9IHsgIkVSUiIsIklOREVYIiwiRUNDIiwiRFJRIiwiU0VFSyIsIldSRVJS IiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSRUFEWSIsIkJV U1kiLCJBTU5GIiwiVEswTkYiLCJBQlJUIiwiTUNSIiwNCmRpZmYgLXVyTiBs aW51eC5kZXZlbC52YW5pbGxhL2RyaXZlcnMvY2Ryb20vZ3NjZC5jIGxpbnV4 LmRldmVsL2RyaXZlcnMvY2Ryb20vZ3NjZC5jDQotLS0gbGludXguZGV2ZWwu dmFuaWxsYS9kcml2ZXJzL2Nkcm9tL2dzY2QuYwlTYXQgT2N0IDMxIDEzOjI4 OjI1IDE5OTgNCisrKyBsaW51eC5kZXZlbC9kcml2ZXJzL2Nkcm9tL2dzY2Qu YwlGcmkgTWF5IDE0IDIzOjQzOjI1IDE5OTkNCkBAIC03Niw3ICs3Niw3IEBA DQogTU9EVUxFX1BBUk0oZ3NjZCwgImgiKTsNCiANCiAvKiBLb21tdCBzcGFl dGVyIHZpZWxsZWljaHQgbm9jaCBtYWwgZHJhbiAuLi4NCi0gKiAgICBzdGF0 aWMgc3RydWN0IHdhaXRfcXVldWUgKmdzY2Rfd2FpdHEgPSBOVUxMOw0KKyAq ICAgIHN0YXRpYyBERUNMQVJFX1dBSVRfUVVFVUVfSEVBRChnc2NkX3dhaXRx KTsNCiAgKi8gDQogDQogc3RhdGljIHZvaWQgZ3NjZF90cmFuc2ZlciAgICAg ICAgICh2b2lkKTsNCmRpZmYgLXVyTiBsaW51eC5kZXZlbC52YW5pbGxhL2Ry aXZlcnMvY2Ryb20vc2JwY2QuYyBsaW51eC5kZXZlbC9kcml2ZXJzL2Nkcm9t L3NicGNkLmMNCi0tLSBsaW51eC5kZXZlbC52YW5pbGxhL2RyaXZlcnMvY2Ry b20vc2JwY2QuYwlGcmkgTWF5IDE0IDIzOjAxOjQwIDE5OTkNCisrKyBsaW51 eC5kZXZlbC9kcml2ZXJzL2Nkcm9tL3NicGNkLmMJRnJpIE1heSAxNCAyMzoy MzowOCAxOTk5DQpAQCAtNTg1LDcgKzU4NSw3IEBADQogLyo9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PSovDQogDQogI2lmIEZVVFVSRQ0KLXN0YXRp YyBzdHJ1Y3Qgd2FpdF9xdWV1ZSAqc2JwX3dhaXRxID0gTlVMTDsNCitzdGF0 aWMgREVDTEFSRV9XQUlUX1FVRVVFX0hFQUQoc2JwX3dhaXRxKTsNCiAjZW5k aWYgRlVUVVJFDQogDQogc3RhdGljIGludCB0ZWFjPVNCUF9URUFDX1NQRUVE Ow0KZGlmZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVycy9jaGFy L2RuX2tleWIuYyBsaW51eC5kZXZlbC9kcml2ZXJzL2NoYXIvZG5fa2V5Yi5j DQotLS0gbGludXguZGV2ZWwudmFuaWxsYS9kcml2ZXJzL2NoYXIvZG5fa2V5 Yi5jCU1vbiBBcHIgMjYgMTY6Mjg6MDcgMTk5OQ0KKysrIGxpbnV4LmRldmVs L2RyaXZlcnMvY2hhci9kbl9rZXliLmMJRnJpIE1heSAxNCAyMzoxNzoyNCAx OTk5DQpAQCAtNDcsNyArNDcsNyBAQA0KIHN0YXRpYyB1bnNpZ25lZCBpbnQg a2JkX21vZGU9QVBPTExPX0tCRF9NT0RFX0tFWUI7DQogc3RhdGljIHNob3J0 IG1vdXNlX2R4LG1vdXNlX2R5LG1vdXNlX2J1dHRvbnM7DQogc3RhdGljIGlu dCBtb3VzZV9yZWFkeT0wLG1vdXNlX3VwZGF0ZV9hbGxvd2VkPTAsbW91c2Vf YWN0aXZlPTA7DQotc3RhdGljIHN0cnVjdCB3YWl0X3F1ZXVlICptb3VzZV93 YWl0PU5VTEw7DQorc3RhdGljIERFQ0xBUkVfV0FJVF9RVUVVRV9IRUFEKG1v dXNlX3dhaXQpOw0KIHN0YXRpYyBzdHJ1Y3QgZmFzeW5jX3N0cnVjdCAqbW91 c2VfZmFzeW5jcHRyPU5VTEw7DQogDQogI2lmIDANCmRpZmYgLXVyTiBsaW51 eC5kZXZlbC52YW5pbGxhL2RyaXZlcnMvY2hhci9oOC5jIGxpbnV4LmRldmVs L2RyaXZlcnMvY2hhci9oOC5jDQotLS0gbGludXguZGV2ZWwudmFuaWxsYS9k cml2ZXJzL2NoYXIvaDguYwlNb24gQXVnIDI0IDE2OjAyOjQ0IDE5OTgNCisr KyBsaW51eC5kZXZlbC9kcml2ZXJzL2NoYXIvaDguYwlGcmkgTWF5IDE0IDIz OjE2OjM1IDE5OTkNCkBAIC0xNjAsNyArMTYwLDcgQEANCiAgKi8NCiBpbnQg Y3B1X3NwZWVkX2Rpdmlzb3IgPSAtMTsJCQkNCiBpbnQgaDhfZXZlbnRfbWFz ayA9IDA7CQkJDQotc3RydWN0IHdhaXRfcXVldWUgKmg4X21vbml0b3Jfd2Fp dCA9IE5VTEw7DQorREVDTEFSRV9XQUlUX1FVRVVFX0hFQUQoaDhfbW9uaXRv cl93YWl0KTsNCiB1bnNpZ25lZCBpbnQgaDhfY29tbWFuZF9tYXNrID0gMDsN CiBpbnQgaDhfdXRoZXJtYWxfdGhyZXNob2xkID0gREVGQVVMVF9VVEhFUk1B TF9USFJFU0hPTEQ7DQogaW50IGg4X3V0aGVybWFsX3dpbmRvdyA9IFVUSF9I WVNURVJFU0lTOwkJICAgICAgDQpAQCAtMTcwLDcgKzE3MCw3IEBADQogdV9j aGFyIGg4X2N1cnJlbnRfdGVtcCA9IDA7DQogdV9jaGFyIGg4X3N5c3RlbV90 ZW1wID0gMDsNCiBpbnQgaDhfc3luY19jaGFubmVsID0gMDsNCi1zdHJ1Y3Qg d2FpdF9xdWV1ZSAqaDhfc3luY193YWl0ID0gTlVMTDsNCitERUNMQVJFX1dB SVRfUVVFVUVfSEVBRChoOF9zeW5jX3dhaXQpOw0KIGludCBoOF9pbml0X3Bl cmZvcm1lZDsNCiANCiAvKiBDUFUgc3BlZWRzIGFuZCBjbG9jayBkaXZpc29y IHZhbHVlcyAqLw0KZGlmZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvZHJp dmVycy9jaGFyL3BjeHguYyBsaW51eC5kZXZlbC9kcml2ZXJzL2NoYXIvcGN4 eC5jDQotLS0gbGludXguZGV2ZWwudmFuaWxsYS9kcml2ZXJzL2NoYXIvcGN4 eC5jCVdlZCBNYXIgMTAgMTk6NTE6MzUgMTk5OQ0KKysrIGxpbnV4LmRldmVs L2RyaXZlcnMvY2hhci9wY3h4LmMJRnJpIE1heSAxNCAyMzoxMzo1MyAxOTk5 DQpAQCAtMzI2LDcgKzMyNiw3IEBADQogDQogc3RhdGljIGludCBwY3h4X3dh aXRjYXJyaWVyKHN0cnVjdCB0dHlfc3RydWN0ICp0dHksc3RydWN0IGZpbGUg KmZpbHAsc3RydWN0IGNoYW5uZWwgKmluZm8pDQogew0KLQlzdHJ1Y3Qgd2Fp dF9xdWV1ZSB3YWl0ID0geyBjdXJyZW50LCBOVUxMIH07DQorCURFQ0xBUkVf V0FJVFFVRVVFKHdhaXQsIGN1cnJlbnQpOw0KIAlpbnQJcmV0dmFsID0gMDsN CiAJaW50CWRvX2Nsb2NhbCA9IDA7DQogDQpkaWZmIC11ck4gbGludXguZGV2 ZWwudmFuaWxsYS9kcml2ZXJzL2NoYXIvcGN4eC5oIGxpbnV4LmRldmVsL2Ry aXZlcnMvY2hhci9wY3h4LmgNCi0tLSBsaW51eC5kZXZlbC52YW5pbGxhL2Ry aXZlcnMvY2hhci9wY3h4LmgJU3VuIEFwciAxMyAxMzoxODoyMCAxOTk3DQor KysgbGludXguZGV2ZWwvZHJpdmVycy9jaGFyL3BjeHguaAlGcmkgTWF5IDE0 IDIzOjE0OjA5IDE5OTkNCkBAIC04OCw4ICs4OCw4IEBADQogCWludAkJCQkJ CQlibG9ja2VkX29wZW47DQogCWludAkJCQkJCQljbG9zZV9kZWxheTsNCiAJ aW50CQkJCQkJCWV2ZW50Ow0KLQlzdHJ1Y3Qgd2FpdF9xdWV1ZQkJCSpvcGVu X3dhaXQ7DQotCXN0cnVjdCB3YWl0X3F1ZXVlCQkJKmNsb3NlX3dhaXQ7DQor CXdhaXRfcXVldWVfaGVhZF90CQkJb3Blbl93YWl0Ow0KKwl3YWl0X3F1ZXVl X2hlYWRfdAkJCWNsb3NlX3dhaXQ7DQogCXN0cnVjdCB0cV9zdHJ1Y3QJCQl0 cXVldWU7DQogCQkJCQkJCS8qIC0tLS0tLS0tLS0tLSBBc3luYyBjb250cm9s IGRhdGEgLS0tLS0tLS0tLS0tLSAqLw0KIAl1bmNoYXIJCQkJCQltb2RlbWZh a2U7ICAgICAgLyogTW9kZW0gdmFsdWVzIHRvIGJlIGZvcmNlZCAqLw0KZGlm ZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVycy9jaGFyL3BsYW5i LmMgbGludXguZGV2ZWwvZHJpdmVycy9jaGFyL3BsYW5iLmMNCi0tLSBsaW51 eC5kZXZlbC52YW5pbGxhL2RyaXZlcnMvY2hhci9wbGFuYi5jCU1vbiBNYXkg MTAgMTM6MTc6MjggMTk5OQ0KKysrIGxpbnV4LmRldmVsL2RyaXZlcnMvY2hh ci9wbGFuYi5jCUZyaSBNYXkgMTQgMjM6MTg6MjMgMTk5OQ0KQEAgLTM3OSw3 ICszNzksNyBAQA0KIA0KIHN0YXRpYyB2b2lkIF9fcGxhbmJfd2FpdChzdHJ1 Y3QgcGxhbmIgKnBiKQ0KIHsNCi0Jc3RydWN0IHdhaXRfcXVldWUgd2FpdCA9 IHsgY3VycmVudCwgTlVMTCB9Ow0KKwlERUNMQVJFX1dBSVRRVUVVRSh3YWl0 LCBjdXJyZW50KTsNCiANCiAJYWRkX3dhaXRfcXVldWUoJnBiLT5sb2NrcSwg JndhaXQpOw0KIHJlcGVhdDoNCmRpZmYgLXVyTiBsaW51eC5kZXZlbC52YW5p bGxhL2RyaXZlcnMvY2hhci9wbGFuYi5oIGxpbnV4LmRldmVsL2RyaXZlcnMv Y2hhci9wbGFuYi5oDQotLS0gbGludXguZGV2ZWwudmFuaWxsYS9kcml2ZXJz L2NoYXIvcGxhbmIuaAlGcmkgTWF5ICA3IDE0OjA1OjMwIDE5OTkNCisrKyBs aW51eC5kZXZlbC9kcml2ZXJzL2NoYXIvcGxhbmIuaAlGcmkgTWF5IDE0IDIz OjE5OjE2IDE5OTkNCkBAIC0xNzUsNyArMTc1LDcgQEANCiAJdW5zaWduZWQg aW50IHRhYl9zaXplOw0KIAlpbnQgICAgIG1heGxpbmVzOw0KIAlpbnQgbG9j azsNCi0Jc3RydWN0IHdhaXRfcXVldWUgKmxvY2txOw0KKwl3YWl0X3F1ZXVl X2hlYWRfdCBsb2NrcTsNCiAJdW5zaWduZWQgaW50CWlycTsJCQkvKiBpbnRl cnJ1cHQgbnVtYmVyICovDQogCXZvbGF0aWxlIHVuc2lnbmVkIGludCBpbnRy X21hc2s7DQogDQpAQCAtMTkwLDEzICsxOTAsMTMgQEANCiAJdW5zaWduZWQg bG9uZyBjaDFfY21kX3BoeXM7DQogCXZvbGF0aWxlIHVuc2lnbmVkIGNoYXIg Km1hc2s7CQkvKiBDbGlwbWFzayBidWZmZXIgKi8NCiAJaW50IHN1c3BlbmQ7 DQotCXN0cnVjdCB3YWl0X3F1ZXVlICpzdXNwZW5kcTsNCisJd2FpdF9xdWV1 ZV9oZWFkX3Qgc3VzcGVuZHE7DQogCXN0cnVjdCBwbGFuYl9zdXNwZW5kIHN1 c3BlbmRlZDsNCiAJaW50CWNtZF9idWZmX2luaXRlZDsJCS8qIGNtZCBidWZm ZXIgaW5pdGVkPyAqLw0KIA0KIAlpbnQgZ3JhYmJpbmc7DQogCXVuc2lnbmVk IGludCBnY291bnQ7DQotCXN0cnVjdCB3YWl0X3F1ZXVlICpjYXBxOw0KKwl3 YWl0X3F1ZXVlX2hlYWRfdCBjYXBxOw0KIAlpbnQgbGFzdF9mcjsNCiAJaW50 IHByZXZfbGFzdF9mcjsNCiAgICAgICAgIHVuc2lnbmVkIGNoYXIgKmZidWZm ZXI7DQpkaWZmIC11ck4gbGludXguZGV2ZWwudmFuaWxsYS9kcml2ZXJzL2No YXIvc2VyaWFsMTY3LmMgbGludXguZGV2ZWwvZHJpdmVycy9jaGFyL3Nlcmlh bDE2Ny5jDQotLS0gbGludXguZGV2ZWwudmFuaWxsYS9kcml2ZXJzL2NoYXIv c2VyaWFsMTY3LmMJVGh1IE5vdiAgNSAxMjo1ODo0MyAxOTk4DQorKysgbGlu dXguZGV2ZWwvZHJpdmVycy9jaGFyL3NlcmlhbDE2Ny5jCUZyaSBNYXkgMTQg MjM6MTg6MDYgMTk5OQ0KQEAgLTIwMDcsNyArMjAwNyw3IEBADQogYmxvY2tf dGlsX3JlYWR5KHN0cnVjdCB0dHlfc3RydWN0ICp0dHksIHN0cnVjdCBmaWxl ICogZmlscCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3Qg Y3ljbGFkZXNfcG9ydCAqaW5mbykNCiB7DQotICBzdHJ1Y3Qgd2FpdF9xdWV1 ZSB3YWl0ID0geyBjdXJyZW50LCBOVUxMIH07DQorICBERUNMQVJFX1dBSVRR VUVVRSh3YWl0LCBjdXJyZW50KTsNCiAgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7 DQogICBpbnQgY2hhbm5lbDsNCiAgIGludCByZXR2YWw7DQpkaWZmIC11ck4g bGludXguZGV2ZWwudmFuaWxsYS9kcml2ZXJzL2lzZG4vYXZtYjEvY2FwaWRl di5oIGxpbnV4LmRldmVsL2RyaXZlcnMvaXNkbi9hdm1iMS9jYXBpZGV2LmgN Ci0tLSBsaW51eC5kZXZlbC52YW5pbGxhL2RyaXZlcnMvaXNkbi9hdm1iMS9j YXBpZGV2LmgJRnJpIE1heSAzMCAwMDo1MzowNSAxOTk3DQorKysgbGludXgu ZGV2ZWwvZHJpdmVycy9pc2RuL2F2bWIxL2NhcGlkZXYuaAlGcmkgTWF5IDE0 IDIzOjIzOjM4IDE5OTkNCkBAIC0yMiw3ICsyMiw3IEBADQogCWludCBpc19y ZWdpc3RlcmVkOw0KIAlfX3UxNiBhcHBsaWQ7DQogCXN0cnVjdCBza19idWZm X2hlYWQgcmVjdl9xdWV1ZTsNCi0Jc3RydWN0IHdhaXRfcXVldWUgKnJlY3Zf d2FpdDsNCisJd2FpdF9xdWV1ZV9oZWFkX3QgcmVjdl93YWl0Ow0KIAlfX3Ux NiBlcnJjb2RlOw0KIH07DQogDQpkaWZmIC11ck4gbGludXguZGV2ZWwudmFu aWxsYS9kcml2ZXJzL2lzZG4vcGNiaXQvcGNiaXQuaCBsaW51eC5kZXZlbC9k cml2ZXJzL2lzZG4vcGNiaXQvcGNiaXQuaA0KLS0tIGxpbnV4LmRldmVsLnZh bmlsbGEvZHJpdmVycy9pc2RuL3BjYml0L3BjYml0LmgJVHVlIEF1ZyAgNCAx MzozMTo1OSAxOTk4DQorKysgbGludXguZGV2ZWwvZHJpdmVycy9pc2RuL3Bj Yml0L3BjYml0LmgJRnJpIE1heSAxNCAyMzoyMzo1OCAxOTk5DQpAQCAtNjgs NyArNjgsNyBAQA0KIAlzdHJ1Y3QgZnJhbWVfYnVmICp3cml0ZV9xdWV1ZTsN CiANCiAJLyogUHJvdG9jb2wgc3RhcnQgKi8NCi0Jc3RydWN0IHdhaXRfcXVl dWUgKnNldF9ydW5uaW5nX3dxOw0KKwl3YWl0X3F1ZXVlX2hlYWRfdCBzZXRf cnVubmluZ193cTsNCiAJc3RydWN0IHRpbWVyX2xpc3Qgc2V0X3J1bm5pbmdf dGltZXI7DQogDQogCXN0cnVjdCB0aW1lcl9saXN0IGVycm9yX3JlY292ZXJf dGltZXI7DQpkaWZmIC11ck4gbGludXguZGV2ZWwudmFuaWxsYS9kcml2ZXJz L21hY2ludG9zaC9hZGIuYyBsaW51eC5kZXZlbC9kcml2ZXJzL21hY2ludG9z aC9hZGIuYw0KLS0tIGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVycy9tYWNp bnRvc2gvYWRiLmMJVGh1IEFwciAyOSAxNTo1Mzo0OCAxOTk5DQorKysgbGlu dXguZGV2ZWwvZHJpdmVycy9tYWNpbnRvc2gvYWRiLmMJRnJpIE1heSAxNCAy Mzo0Mzo1NCAxOTk5DQpAQCAtMzc1LDcgKzM3NSw3IEBADQogCXNwaW5sb2Nr X3QJbG9jazsNCiAJYXRvbWljX3QJbl9wZW5kaW5nOw0KIAlzdHJ1Y3QgYWRi X3JlcXVlc3QgKmNvbXBsZXRlZDsNCi0Jc3RydWN0IHdhaXRfcXVldWUgKndh aXRfcXVldWU7DQorCXdhaXRfcXVldWVfaGVhZF90IHdhaXRfcXVldWU7DQog CWludAkJaW51c2U7DQogfTsNCiANCkBAIC00NTgsNyArNDU4LDcgQEANCiAJ aW50IHJldDsNCiAJc3RydWN0IGFkYmRldl9zdGF0ZSAqc3RhdGUgPSBmaWxl LT5wcml2YXRlX2RhdGE7DQogCXN0cnVjdCBhZGJfcmVxdWVzdCAqcmVxOw0K LQlzdHJ1Y3Qgd2FpdF9xdWV1ZSB3YWl0ID0geyBjdXJyZW50LCBOVUxMIH07 DQorCURFQ0xBUkVfV0FJVFFVRVVFKHdhaXQsIGN1cnJlbnQpOw0KIAl1bnNp Z25lZCBsb25nIGZsYWdzOw0KIA0KIAlpZiAoY291bnQgPCAyKQ0KZGlmZiAt dXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVycy9tYWNpbnRvc2gvbWFj X2tleWIuYyBsaW51eC5kZXZlbC9kcml2ZXJzL21hY2ludG9zaC9tYWNfa2V5 Yi5jDQotLS0gbGludXguZGV2ZWwudmFuaWxsYS9kcml2ZXJzL21hY2ludG9z aC9tYWNfa2V5Yi5jCVRodSBBcHIgMjkgMTU6NTM6NDggMTk5OQ0KKysrIGxp bnV4LmRldmVsL2RyaXZlcnMvbWFjaW50b3NoL21hY19rZXliLmMJRnJpIE1h eSAxNCAyMzoyNjoxNyAxOTk5DQpAQCAtMjUxLDcgKzI1MSw3IEBADQogZXh0 ZXJuIGludCBjb25zb2xlX2xvZ2xldmVsOw0KIA0KIGV4dGVybiBzdHJ1Y3Qg a2JkX3N0cnVjdCBrYmRfdGFibGVbXTsNCi1leHRlcm4gc3RydWN0IHdhaXRf cXVldWUgKiBrZXlwcmVzc193YWl0Ow0KK2V4dGVybiBzdHJ1Y3Qgd2FpdF9x dWV1ZV9oZWFkX3Qga2V5cHJlc3Nfd2FpdDsNCiANCiBleHRlcm4gdm9pZCBo YW5kbGVfc2NhbmNvZGUodW5zaWduZWQgY2hhciwgaW50KTsNCiANCmRpZmYg LXVyTiBsaW51eC5kZXZlbC52YW5pbGxhL2RyaXZlcnMvbWFjaW50b3NoL21h Y3NlcmlhbC5jIGxpbnV4LmRldmVsL2RyaXZlcnMvbWFjaW50b3NoL21hY3Nl cmlhbC5jDQotLS0gbGludXguZGV2ZWwudmFuaWxsYS9kcml2ZXJzL21hY2lu dG9zaC9tYWNzZXJpYWwuYwlUaHUgQXByIDI5IDE1OjUzOjQ4IDE5OTkNCisr KyBsaW51eC5kZXZlbC9kcml2ZXJzL21hY2ludG9zaC9tYWNzZXJpYWwuYwlG cmkgTWF5IDE0IDIzOjI1OjU2IDE5OTkNCkBAIC0xNTk1LDcgKzE1OTUsNyBA QA0KIHN0YXRpYyBpbnQgYmxvY2tfdGlsX3JlYWR5KHN0cnVjdCB0dHlfc3Ry dWN0ICp0dHksIHN0cnVjdCBmaWxlICogZmlscCwNCiAJCQkgICBzdHJ1Y3Qg bWFjX3NlcmlhbCAqaW5mbykNCiB7DQotCXN0cnVjdCB3YWl0X3F1ZXVlIHdh aXQgPSB7IGN1cnJlbnQsIE5VTEwgfTsNCisJREVDTEFSRV9XQUlUUVVFVUUo d2FpdCxjdXJyZW50KTsNCiAJaW50CQlyZXR2YWw7DQogCWludAkJZG9fY2xv Y2FsID0gMDsNCiANCmRpZmYgLXVyTiBsaW51eC5kZXZlbC52YW5pbGxhL2Ry aXZlcnMvbWFjaW50b3NoL21hY3NlcmlhbC5oIGxpbnV4LmRldmVsL2RyaXZl cnMvbWFjaW50b3NoL21hY3NlcmlhbC5oDQotLS0gbGludXguZGV2ZWwudmFu aWxsYS9kcml2ZXJzL21hY2ludG9zaC9tYWNzZXJpYWwuaAlUaHUgTWFyIDEx IDAwOjQ4OjQ2IDE5OTkNCisrKyBsaW51eC5kZXZlbC9kcml2ZXJzL21hY2lu dG9zaC9tYWNzZXJpYWwuaAlGcmkgTWF5IDE0IDIzOjI2OjM4IDE5OTkNCkBA IC0xNTMsOCArMTUzLDggQEANCiAJc3RydWN0IHRxX3N0cnVjdAl0cXVldWVf aGFuZ3VwOw0KIAlzdHJ1Y3QgdGVybWlvcwkJbm9ybWFsX3Rlcm1pb3M7DQog CXN0cnVjdCB0ZXJtaW9zCQljYWxsb3V0X3Rlcm1pb3M7DQotCXN0cnVjdCB3 YWl0X3F1ZXVlCSpvcGVuX3dhaXQ7DQotCXN0cnVjdCB3YWl0X3F1ZXVlCSpj bG9zZV93YWl0Ow0KKwl3YWl0X3F1ZXVlX2hlYWRfdAlvcGVuX3dhaXQ7DQor CXdhaXRfcXVldWVfaGVhZF90CWNsb3NlX3dhaXQ7DQogfTsNCiANCiANCmRp ZmYgLXVyTiBsaW51eC5kZXZlbC52YW5pbGxhL2RyaXZlcnMvbmV0L2Nvc2Eu YyBsaW51eC5kZXZlbC9kcml2ZXJzL25ldC9jb3NhLmMNCi0tLSBsaW51eC5k ZXZlbC52YW5pbGxhL2RyaXZlcnMvbmV0L2Nvc2EuYwlTdW4gTWFyICA3IDE4 OjQ3OjQ2IDE5OTkNCisrKyBsaW51eC5kZXZlbC9kcml2ZXJzL25ldC9jb3Nh LmMJRnJpIE1heSAxNCAyMzoxMjoxMiAxOTk5DQpAQCAtMTI2LDcgKzEyNiw4 IEBADQogCXN0cnVjdCBzZW1hcGhvcmUgcnNlbSwgd3NlbTsNCiAJY2hhciAq cnhkYXRhOw0KIAlpbnQgcnhzaXplOw0KLQlzdHJ1Y3Qgd2FpdF9xdWV1ZSAq dHh3YWl0cSwgKnJ4d2FpdHE7DQorCXdhaXRfcXVldWVfaGVhZF90IHR4d2Fp dHE7IA0KKwl3YWl0X3F1ZXVlX2hlYWRfdCByeHdhaXRxOw0KIAlpbnQgdHhf c3RhdHVzLCByeF9zdGF0dXM7DQogDQogCS8qIFNQUFAvSERMQyBkZXZpY2Ug cGFydHMgKi8NCkBAIC03NjIsNyArNzYzLDcgQEANCiBzdGF0aWMgc3NpemVf dCBjb3NhX3JlYWQoc3RydWN0IGZpbGUgKmZpbGUsDQogCWNoYXIgKmJ1Ziwg c2l6ZV90IGNvdW50LCBsb2ZmX3QgKnBwb3MpDQogew0KLQlzdHJ1Y3Qgd2Fp dF9xdWV1ZSB3YWl0ID0geyBjdXJyZW50LCBOVUxMIH07DQorCURFQ0xBUkVf V0FJVFFVRVVFKHdhaXQsIGN1cnJlbnQpOw0KIAlpbnQgZmxhZ3M7DQogCXN0 cnVjdCBjaGFubmVsX2RhdGEgKmNoYW4gPSAoc3RydWN0IGNoYW5uZWxfZGF0 YSAqKWZpbGUtPnByaXZhdGVfZGF0YTsNCiAJc3RydWN0IGNvc2FfZGF0YSAq Y29zYSA9IGNoYW4tPmNvc2E7DQpAQCAtODMzLDcgKzgzNCw3IEBADQogCWNv bnN0IGNoYXIgKmJ1Ziwgc2l6ZV90IGNvdW50LCBsb2ZmX3QgKnBwb3MpDQog ew0KIAlzdHJ1Y3QgY2hhbm5lbF9kYXRhICpjaGFuID0gKHN0cnVjdCBjaGFu bmVsX2RhdGEgKilmaWxlLT5wcml2YXRlX2RhdGE7DQotCXN0cnVjdCB3YWl0 X3F1ZXVlIHdhaXQgPSB7IGN1cnJlbnQsIE5VTEwgfTsNCisJREVDTEFSRV9X QUlUUVVFVUUod2FpdCwgY3VycmVudCk7DQogCXN0cnVjdCBjb3NhX2RhdGEg KmNvc2EgPSBjaGFuLT5jb3NhOw0KIAl1bnNpZ25lZCBpbnQgZmxhZ3M7DQog CWNoYXIgKmtidWY7DQpkaWZmIC11ck4gbGludXguZGV2ZWwudmFuaWxsYS9k cml2ZXJzL25ldC96ODUyMzAuaCBsaW51eC5kZXZlbC9kcml2ZXJzL25ldC96 ODUyMzAuaA0KLS0tIGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVycy9uZXQv ejg1MjMwLmgJU2F0IE9jdCAxNyAxODozMzo0NSAxOTk4DQorKysgbGludXgu ZGV2ZWwvZHJpdmVycy9uZXQvejg1MjMwLmgJRnJpIE1heSAxNCAyMzowOToy NyAxOTk5DQpAQCAtMzMxLDggKzMzMSw4IEBADQogCWludAkJCWxpbmU7CQkv KiBNaW5vciBudW1iZXIgKi8NCiAJc3RydWN0IHRlcm1pb3MJCW5vcm1hbF90 ZXJtaW9zOwkvKiBUZXJtaW5hbCBzZXR0aW5ncyAqLw0KIAlzdHJ1Y3QgdGVy bWlvcwkJY2FsbG91dF90ZXJtaW9zOw0KLQlzdHJ1Y3Qgd2FpdF9xdWV1ZQkq b3Blbl93YWl0OwkvKiBUYXNrcyB3YWl0aW5nIHRvIG9wZW4gKi8NCi0Jc3Ry dWN0IHdhaXRfcXVldWUJKmNsb3NlX3dhaXQ7CS8qIGFuZCBmb3IgY2xvc2Ug dG8gZW5kICovDQorCXdhaXRfcXVldWVfaGVhZF90CW9wZW5fd2FpdDsJLyog VGFza3Mgd2FpdGluZyB0byBvcGVuICovDQorCXdhaXRfcXVldWVfaGVhZF90 CWNsb3NlX3dhaXQ7CS8qIGFuZCBmb3IgY2xvc2UgdG8gZW5kICovDQogCXVu c2lnbmVkIGxvbmcJCWV2ZW50OwkJLyogUGVuZGluZyBldmVudHMgKi8NCiAJ aW50CQkJZmRjb3VudDsgICAgCS8qICMgb2YgZmQgb24gZGV2aWNlICovDQog CWludAkJCWJsb2NrZWRfb3BlbjsJLyogIyBvZiBibG9ja2VkIG9wZW5zICov DQpkaWZmIC11ck4gbGludXguZGV2ZWwudmFuaWxsYS9kcml2ZXJzL3Njc2kv aWRlLXNjc2kuYyBsaW51eC5kZXZlbC9kcml2ZXJzL3Njc2kvaWRlLXNjc2ku Yw0KLS0tIGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVycy9zY3NpL2lkZS1z Y3NpLmMJVGh1IEFwciAyMiAyMjoyNDo1MCAxOTk5DQorKysgbGludXguZGV2 ZWwvZHJpdmVycy9zY3NpL2lkZS1zY3NpLmMJRnJpIE1heSAxNCAxNTo0OTox NCAxOTk5DQpAQCAtNDUsNyArNDUsNyBAQA0KICNpbmNsdWRlIDxhc20vYml0 b3BzLmg+DQogI2luY2x1ZGUgPGFzbS91YWNjZXNzLmg+DQogDQotI2luY2x1 ZGUgIi4uL2Jsb2NrL2lkZS5oIg0KKyNpbmNsdWRlIDxsaW51eC9pZGUuaD4N CiANCiAjaW5jbHVkZSAic2NzaS5oIg0KICNpbmNsdWRlICJob3N0cy5oIg0K ZGlmZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVycy9zY3NpL3N0 LmggbGludXguZGV2ZWwvZHJpdmVycy9zY3NpL3N0LmgNCi0tLSBsaW51eC5k ZXZlbC52YW5pbGxhL2RyaXZlcnMvc2NzaS9zdC5oCVN1biBTZXAgIDYgMTI6 NDg6MzAgMTk5OA0KKysrIGxpbnV4LmRldmVsL2RyaXZlcnMvc2NzaS9zdC5o CUZyaSBNYXkgMTQgMjM6MTk6MzQgMTk5OQ0KQEAgLTY1LDcgKzY1LDcgQEAN CiB0eXBlZGVmIHN0cnVjdCB7DQogICBrZGV2X3QgZGV2dDsNCiAgIHVuc2ln bmVkIGNhcGFjaXR5Ow0KLSAgc3RydWN0IHdhaXRfcXVldWUgKiB3YWl0aW5n Ow0KKyAgd2FpdF9xdWV1ZV9oZWFkX3Qgd2FpdGluZzsNCiAgIFNjc2lfRGV2 aWNlKiBkZXZpY2U7DQogICBzdHJ1Y3Qgc2VtYXBob3JlIHNlbTsNCiAgIFNU X2J1ZmZlciAqIGJ1ZmZlcjsNCmRpZmYgLXVyTiBsaW51eC5kZXZlbC52YW5p bGxhL2RyaXZlcnMvc2dpL2NoYXIvc2dpc2VyaWFsLmMgbGludXguZGV2ZWwv ZHJpdmVycy9zZ2kvY2hhci9zZ2lzZXJpYWwuYw0KLS0tIGxpbnV4LmRldmVs LnZhbmlsbGEvZHJpdmVycy9zZ2kvY2hhci9zZ2lzZXJpYWwuYwlUaHUgTm92 ICA1IDEyOjU4OjQ0IDE5OTgNCisrKyBsaW51eC5kZXZlbC9kcml2ZXJzL3Nn aS9jaGFyL3NnaXNlcmlhbC5jCUZyaSBNYXkgMTQgMjM6Mjc6MjQgMTk5OQ0K QEAgLTMzLDcgKzMzLDcgQEANCiAjZGVmaW5lIE5VTV9TRVJJQUwgMSAgICAg LyogT25lIGNoaXAgb24gYm9hcmQuICovDQogI2RlZmluZSBOVU1fQ0hBTk5F TFMgKE5VTV9TRVJJQUwgKiAyKQ0KIA0KLWV4dGVybiBzdHJ1Y3Qgd2FpdF9x dWV1ZSAqIGtleXByZXNzX3dhaXQ7DQorZXh0ZXJuIHN0cnVjdCB3YWl0X3F1 ZXVlX2hlYWRfdCBrZXlwcmVzc193YWl0Ow0KIA0KIHN0cnVjdCBzZ2lfenNs YXlvdXQgKnpzX2NoaXBzW05VTV9TRVJJQUxdID0geyAwLCB9Ow0KIHN0cnVj dCBzZ2lfenNjaGFubmVsICp6c19jaGFubmVsc1tOVU1fQ0hBTk5FTFNdID0g eyAwLCAwLCB9Ow0KQEAgLTE1MTksNyArMTUxOSw3IEBADQogc3RhdGljIGlu dCBibG9ja190aWxfcmVhZHkoc3RydWN0IHR0eV9zdHJ1Y3QgKnR0eSwgc3Ry dWN0IGZpbGUgKiBmaWxwLA0KIAkJCSAgIHN0cnVjdCBzZ2lfc2VyaWFsICpp bmZvKQ0KIHsNCi0Jc3RydWN0IHdhaXRfcXVldWUgd2FpdCA9IHsgY3VycmVu dCwgTlVMTCB9Ow0KKwlERUNMQVJFX1dBSVRRVUVVRSh3YWl0LCBjdXJyZW50 KTsNCiAJaW50CQlyZXR2YWw7DQogCWludAkJZG9fY2xvY2FsID0gMDsNCiAN CmRpZmYgLXVyTiBsaW51eC5kZXZlbC52YW5pbGxhL2RyaXZlcnMvc2dpL2No YXIvc2dpc2VyaWFsLmggbGludXguZGV2ZWwvZHJpdmVycy9zZ2kvY2hhci9z Z2lzZXJpYWwuaA0KLS0tIGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVycy9z Z2kvY2hhci9zZ2lzZXJpYWwuaAlXZWQgRGVjIDEwIDEzOjMxOjExIDE5OTcN CisrKyBsaW51eC5kZXZlbC9kcml2ZXJzL3NnaS9jaGFyL3NnaXNlcmlhbC5o CUZyaSBNYXkgMTQgMjM6Mjc6NDYgMTk5OQ0KQEAgLTE1OCw4ICsxNTgsOCBA QA0KIAlzdHJ1Y3QgdHFfc3RydWN0CXRxdWV1ZV9oYW5ndXA7DQogCXN0cnVj dCB0ZXJtaW9zCQlub3JtYWxfdGVybWlvczsNCiAJc3RydWN0IHRlcm1pb3MJ CWNhbGxvdXRfdGVybWlvczsNCi0Jc3RydWN0IHdhaXRfcXVldWUJKm9wZW5f d2FpdDsNCi0Jc3RydWN0IHdhaXRfcXVldWUJKmNsb3NlX3dhaXQ7DQorCXdh aXRfcXVldWVfaGVhZF90CW9wZW5fd2FpdDsNCisJd2FpdF9xdWV1ZV9oZWFk X3QJY2xvc2Vfd2FpdDsNCiB9Ow0KIA0KIA0KZGlmZiAtdXJOIGxpbnV4LmRl dmVsLnZhbmlsbGEvZHJpdmVycy9zZ2kvY2hhci9zaG1pcS5jIGxpbnV4LmRl dmVsL2RyaXZlcnMvc2dpL2NoYXIvc2htaXEuYw0KLS0tIGxpbnV4LmRldmVs LnZhbmlsbGEvZHJpdmVycy9zZ2kvY2hhci9zaG1pcS5jCU1vbiBBdWcgMjQg MTY6MTQ6MTAgMTk5OA0KKysrIGxpbnV4LmRldmVsL2RyaXZlcnMvc2dpL2No YXIvc2htaXEuYwlGcmkgTWF5IDE0IDIzOjI4OjA4IDE5OTkNCkBAIC04Miw3 ICs4Miw3IEBADQogCWludCAgICBldmVudHM7DQogCWludCAgICBtYXBwZWQ7 DQogCQ0KLQlzdHJ1Y3Qgd2FpdF9xdWV1ZSAgICAqcHJvY19saXN0Ow0KKwl3 YWl0X3F1ZXVlX2hlYWRfdCAgICAgcHJvY19saXN0Ow0KIAlzdHJ1Y3QgZmFz eW5jX3N0cnVjdCAqZmFzeW5jOw0KIH0gc2htaXFzIFtNQVhfU0hNSV9RVUVV RVNdOw0KIA0KZGlmZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVy cy9zZ2kvY2hhci91c2VtYS5jIGxpbnV4LmRldmVsL2RyaXZlcnMvc2dpL2No YXIvdXNlbWEuYw0KLS0tIGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVycy9z Z2kvY2hhci91c2VtYS5jCU1vbiBBdWcgMjQgMTY6MDI6NDQgMTk5OA0KKysr IGxpbnV4LmRldmVsL2RyaXZlcnMvc2dpL2NoYXIvdXNlbWEuYwlGcmkgTWF5 IDE0IDIzOjI4OjIyIDE5OTkNCkBAIC0zOSw3ICszOSw3IEBADQogDQogc3Ry dWN0IGlyaXhfdXNlbWEgew0KIAlzdHJ1Y3QgZmlsZSAqZmlscDsNCi0Jc3Ry dWN0IHdhaXRfcXVldWUgKnByb2NfbGlzdDsNCisJd2FpdF9xdWV1ZV9oZWFk X3QgcHJvY19saXN0Ow0KIH07DQogDQogc3RhdGljIGludA0KZGlmZiAtdXJO IGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVycy9zb3VuZC9kZXZfdGFibGUu aCBsaW51eC5kZXZlbC9kcml2ZXJzL3NvdW5kL2Rldl90YWJsZS5oDQotLS0g bGludXguZGV2ZWwudmFuaWxsYS9kcml2ZXJzL3NvdW5kL2Rldl90YWJsZS5o CU1vbiBBcHIgMTIgMTk6MTg6MjcgMTk5OQ0KKysrIGxpbnV4LmRldmVsL2Ry aXZlcnMvc291bmQvZGV2X3RhYmxlLmgJRnJpIE1heSAxNCAyMjo0NTo0MSAx OTk5DQpAQCAtMjM0LDkgKzIzNCw5IEBADQogCWludCBwYXJlbnRfZGV2OwkJ LyogMCAtPiBubyBwYXJlbnQsIDEgdG8gbiAtPiBwYXJlbnQ9cGFyZW50X2Rl disxICovDQogDQogCS8qIGZpZWxkcyBmb3JtZXJseSBpbiBkbWFidWYuYyAq Lw0KLQlzdHJ1Y3Qgd2FpdF9xdWV1ZSAqaW5fc2xlZXBlcjsNCi0Jc3RydWN0 IHdhaXRfcXVldWUgKm91dF9zbGVlcGVyOw0KLQlzdHJ1Y3Qgd2FpdF9xdWV1 ZSAqcG9sbF9zbGVlcGVyOw0KKwl3YWl0X3F1ZXVlX2hlYWRfdCBpbl9zbGVl cGVyOw0KKwl3YWl0X3F1ZXVlX2hlYWRfdCBvdXRfc2xlZXBlcjsNCisJd2Fp dF9xdWV1ZV9oZWFkX3QgcG9sbF9zbGVlcGVyOw0KIA0KIAkvKiBmaWVsZHMg Zm9ybWVybHkgaW4gYXVkaW8uYyAqLw0KIAlpbnQgYXVkaW9fbW9kZTsNCmRp ZmYgLXVyTiBsaW51eC5kZXZlbC52YW5pbGxhL2RyaXZlcnMvc291bmQvbG93 bGV2ZWwvYXdlX2NvbXBhdC5oIGxpbnV4LmRldmVsL2RyaXZlcnMvc291bmQv bG93bGV2ZWwvYXdlX2NvbXBhdC5oDQotLS0gbGludXguZGV2ZWwudmFuaWxs YS9kcml2ZXJzL3NvdW5kL2xvd2xldmVsL2F3ZV9jb21wYXQuaAlTdW4gTWFy ICA3IDE4OjIyOjA2IDE5OTkNCisrKyBsaW51eC5kZXZlbC9kcml2ZXJzL3Nv dW5kL2xvd2xldmVsL2F3ZV9jb21wYXQuaAlGcmkgTWF5IDE0IDIzOjIxOjE3 IDE5OTkNCkBAIC0yNDUsNyArMjQ1LDcgQEANCiAjZW5kaWYgLyogQVdFX01P RFVMRV9TVVBQT1JUICovDQogDQogI2lmIExJTlVYX1ZFUlNJT05fQ09ERSA8 IEFTQ19MSU5VWF9WRVJTSU9OKDIsMSwwKQ0KLWlubGluZSBzdGF0aWMgdm9p ZCBpbnRlcnJ1cHRpYmxlX3NsZWVwX29uX3RpbWVvdXQoc3RydWN0IHdhaXRf cXVldWUgKipxLCB1bnNpZ25lZCBsb25nIHRpbWVvdXQpDQoraW5saW5lIHN0 YXRpYyB2b2lkIGludGVycnVwdGlibGVfc2xlZXBfb25fdGltZW91dCh3YWl0 X3F1ZXVlX2hlYWRfdCAqcSwgdW5zaWduZWQgbG9uZyB0aW1lb3V0KQ0KIHsN CiAJY3VycmVudC0+dGltZW91dCA9IGppZmZpZXMgKyB0aW1lb3V0Ow0KIAlp bnRlcnJ1cHRpYmxlX3NsZWVwX29uKHEpOw0KZGlmZiAtdXJOIGxpbnV4LmRl dmVsLnZhbmlsbGEvZHJpdmVycy9zb3VuZC9sb3dsZXZlbC9hd2Vfd2F2ZS5j IGxpbnV4LmRldmVsL2RyaXZlcnMvc291bmQvbG93bGV2ZWwvYXdlX3dhdmUu Yw0KLS0tIGxpbnV4LmRldmVsLnZhbmlsbGEvZHJpdmVycy9zb3VuZC9sb3ds ZXZlbC9hd2Vfd2F2ZS5jCVN1biBNYXIgIDcgMTg6MjI6MDYgMTk5OQ0KKysr IGxpbnV4LmRldmVsL2RyaXZlcnMvc291bmQvbG93bGV2ZWwvYXdlX3dhdmUu YwlGcmkgTWF5IDE0IDIzOjIwOjA3IDE5OTkNCkBAIC05NzksNyArOTc5LDcg QEANCiB9DQogI2Vsc2UNCiANCi1zdGF0aWMgc3RydWN0IHdhaXRfcXVldWUg KmF3ZV9zbGVlcGVyID0gTlVMTDsNCitzdGF0aWMgREVDTEFSRV9XQUlUX1FV RVVFX0hFQUQoYXdlX3NsZWVwZXIpOw0KIHN0YXRpYyB2b2lkIGF3ZV93YWl0 KHVuc2lnbmVkIHNob3J0IGRlbGF5KQ0KIHsNCiAJaW50ZXJydXB0aWJsZV9z bGVlcF9vbl90aW1lb3V0KCZhd2Vfc2xlZXBlciwgKEhaICogKHVuc2lnbmVk IGxvbmcpZGVsYXkgKyA0NDA5OSkgLyA0NDEwMCk7DQpkaWZmIC11ck4gbGlu dXguZGV2ZWwudmFuaWxsYS9kcml2ZXJzL3NvdW5kL21zbmQuaCBsaW51eC5k ZXZlbC9kcml2ZXJzL3NvdW5kL21zbmQuaA0KLS0tIGxpbnV4LmRldmVsLnZh bmlsbGEvZHJpdmVycy9zb3VuZC9tc25kLmgJV2VkIERlYyAxNiAxNTo1Mjow MSAxOTk4DQorKysgbGludXguZGV2ZWwvZHJpdmVycy9zb3VuZC9tc25kLmgJ RnJpIE1heSAxNCAyMzoyMTo1NCAxOTk5DQpAQCAtMjMxLDggKzIzMSw5IEBA DQogI2RlZmluZSBGX0VYVF9NSURJX0lOVVNFCQk5DQogI2RlZmluZSBGX0lO VF9NSURJX0lOVVNFCQkxMA0KICNkZWZpbmUgRl9ESVNBQkxFX1dSSVRFX05E RUxBWQkJMTENCi0Jc3RydWN0IHdhaXRfcXVldWUgKndyaXRlYmxvY2ssICpy ZWFkYmxvY2s7DQotCXN0cnVjdCB3YWl0X3F1ZXVlICp3cml0ZWZsdXNoOw0K Kwl3YWl0X3F1ZXVlX2hlYWRfdCB3cml0ZWJsb2NrOw0KKwl3YWl0X3F1ZXVl X2hlYWRfdCByZWFkYmxvY2s7DQorCXdhaXRfcXVldWVfaGVhZF90IHdyaXRl Zmx1c2g7DQogI2lmbmRlZiBMSU5VWDIwDQogCXNwaW5sb2NrX3QgbG9jazsN CiAjZW5kaWYNCmRpZmYgLXVyTiBsaW51eC5kZXZlbC52YW5pbGxhL2ZzL3Nt YmZzL2lub2RlLmMgbGludXguZGV2ZWwvZnMvc21iZnMvaW5vZGUuYw0KLS0t IGxpbnV4LmRldmVsLnZhbmlsbGEvZnMvc21iZnMvaW5vZGUuYwlGcmkgTWF5 IDE0IDIzOjAxOjUwIDE5OTkNCisrKyBsaW51eC5kZXZlbC9mcy9zbWJmcy9p bm9kZS5jCUZyaSBNYXkgMTQgMTY6MjI6NTkgMTk5OQ0KQEAgLTg4LDcgKzg4 LDcgQEANCiAJCXJlc3VsdC0+aV9vcCA9ICZzbWJfZGlyX2lub2RlX29wZXJh dGlvbnM7DQogCWVsc2UNCiAJCXJlc3VsdC0+aV9vcCA9IE5VTEw7DQotCWlu c2VydF9pbm9kZV9oYXNoKHJlc3VsdCkNCisJaW5zZXJ0X2lub2RlX2hhc2go cmVzdWx0KTsNCiAJcmV0dXJuIHJlc3VsdDsNCiB9DQogDQpkaWZmIC11ck4g bGludXguZGV2ZWwudmFuaWxsYS9pbmNsdWRlL2FzbS1hbHBoYS9zZW1hcGhv cmUuaCBsaW51eC5kZXZlbC9pbmNsdWRlL2FzbS1hbHBoYS9zZW1hcGhvcmUu aA0KLS0tIGxpbnV4LmRldmVsLnZhbmlsbGEvaW5jbHVkZS9hc20tYWxwaGEv c2VtYXBob3JlLmgJRnJpIE1heSAgNyAxMzo1NToyNiAxOTk5DQorKysgbGlu dXguZGV2ZWwvaW5jbHVkZS9hc20tYWxwaGEvc2VtYXBob3JlLmgJRnJpIE1h eSAxNCAyMzo0MDoxMSAxOTk5DQpAQCAtMTYsNyArMTYsNyBAQA0KIAkvKiBD YXJlZnVsLCBpbmxpbmUgYXNzZW1ibHkga25vd3MgYWJvdXQgdGhlIHBvc2l0 aW9uIG9mIHRoZXNlIHR3by4gICovDQogCWF0b21pY190IGNvdW50Ow0KIAlh dG9taWNfdCB3YWtpbmc7CQkvKiBiaWFzZWQgYnkgLTEgKi8NCi0Jc3RydWN0 IHdhaXRfcXVldWUgKndhaXQ7DQorCXdhaXRfcXVldWVfaGVhZF90IHdhaXQ7 DQogfTsNCiANCiAjZGVmaW5lIE1VVEVYICgoc3RydWN0IHNlbWFwaG9yZSkg XA0KZGlmZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvaW5jbHVkZS9hc20t YXJtL3NlbWFwaG9yZS5oIGxpbnV4LmRldmVsL2luY2x1ZGUvYXNtLWFybS9z ZW1hcGhvcmUuaA0KLS0tIGxpbnV4LmRldmVsLnZhbmlsbGEvaW5jbHVkZS9h c20tYXJtL3NlbWFwaG9yZS5oCUZyaSBNYXkgMTQgMjM6MDE6NTEgMTk5OQ0K KysrIGxpbnV4LmRldmVsL2luY2x1ZGUvYXNtLWFybS9zZW1hcGhvcmUuaAlG cmkgTWF5IDE0IDIzOjQyOjUxIDE5OTkNCkBAIC0xMCw3ICsxMCw3IEBADQog c3RydWN0IHNlbWFwaG9yZSB7DQogCWF0b21pY190IGNvdW50Ow0KIAlpbnQg d2FraW5nOw0KLQlzdHJ1Y3Qgd2FpdF9xdWV1ZSAqIHdhaXQ7DQorCXdhaXRf cXVldWVfaGVhZF90IHdhaXQ7DQogfTsNCiANCiAjZGVmaW5lIE1VVEVYICgo c3RydWN0IHNlbWFwaG9yZSkgeyBBVE9NSUNfSU5JVCgxKSwgMCwgTlVMTCB9 KQ0KZGlmZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvaW5jbHVkZS9hc20t bTY4ay9hZGJfbW91c2UuaCBsaW51eC5kZXZlbC9pbmNsdWRlL2FzbS1tNjhr L2FkYl9tb3VzZS5oDQotLS0gbGludXguZGV2ZWwudmFuaWxsYS9pbmNsdWRl L2FzbS1tNjhrL2FkYl9tb3VzZS5oCVdlZCBTZXAgIDIgMTI6Mzk6MTggMTk5 OA0KKysrIGxpbnV4LmRldmVsL2luY2x1ZGUvYXNtLW02OGsvYWRiX21vdXNl LmgJRnJpIE1heSAxNCAyMzo0MTo0MyAxOTk5DQpAQCAtMTYsNyArMTYsNyBA QA0KIAlzaG9ydAkJZHk7DQogCWludAkJcmVhZHk7DQogCWludAkJYWN0aXZl Ow0KLQlzdHJ1Y3Qgd2FpdF9xdWV1ZSAqd2FpdDsNCisJd2FpdF9xdWV1ZV9o ZWFkX3Qgd2FpdDsNCiAJc3RydWN0IGZhc3luY19zdHJ1Y3QgKmZhc3luY3B0 cjsNCiB9Ow0KIA0KZGlmZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvaW5j bHVkZS9hc20tbTY4ay9hdGFyaV9qb3lzdGljay5oIGxpbnV4LmRldmVsL2lu Y2x1ZGUvYXNtLW02OGsvYXRhcmlfam95c3RpY2suaA0KLS0tIGxpbnV4LmRl dmVsLnZhbmlsbGEvaW5jbHVkZS9hc20tbTY4ay9hdGFyaV9qb3lzdGljay5o CVNhdCBNYXIgMzAgMDc6MTE6MjQgMTk5Ng0KKysrIGxpbnV4LmRldmVsL2lu Y2x1ZGUvYXNtLW02OGsvYXRhcmlfam95c3RpY2suaAlGcmkgTWF5IDE0IDIz OjQxOjE2IDE5OTkNCkBAIC0xNiw3ICsxNiw3IEBADQogCWNoYXIJCWRpcjsN CiAJaW50CQlyZWFkeTsNCiAJaW50CQlhY3RpdmU7DQotCXN0cnVjdCB3YWl0 X3F1ZXVlICp3YWl0Ow0KKwl3YWl0X3F1ZXVlX2hlYWRfdCB3YWl0Ow0KIH07 DQogDQogI2VuZGlmDQpkaWZmIC11ck4gbGludXguZGV2ZWwudmFuaWxsYS9p bmNsdWRlL2FzbS1tNjhrL21hY19tb3VzZS5oIGxpbnV4LmRldmVsL2luY2x1 ZGUvYXNtLW02OGsvbWFjX21vdXNlLmgNCi0tLSBsaW51eC5kZXZlbC52YW5p bGxhL2luY2x1ZGUvYXNtLW02OGsvbWFjX21vdXNlLmgJVGh1IEZlYiAxMiAx OTozMDoxMyAxOTk4DQorKysgbGludXguZGV2ZWwvaW5jbHVkZS9hc20tbTY4 ay9tYWNfbW91c2UuaAlGcmkgTWF5IDE0IDIzOjQxOjU0IDE5OTkNCkBAIC0x Niw3ICsxNiw3IEBADQogCXNob3J0CQlkeTsNCiAJaW50CQlyZWFkeTsNCiAJ aW50CQlhY3RpdmU7DQotCXN0cnVjdCB3YWl0X3F1ZXVlICp3YWl0Ow0KKwl3 YWl0X3F1ZXVlX2hlYWRfdCB3YWl0Ow0KIAlzdHJ1Y3QgZmFzeW5jX3N0cnVj dCAqZmFzeW5jcHRyOw0KIH07DQogDQpkaWZmIC11ck4gbGludXguZGV2ZWwu dmFuaWxsYS9pbmNsdWRlL2FzbS1tNjhrL3NlbWFwaG9yZS5oIGxpbnV4LmRl dmVsL2luY2x1ZGUvYXNtLW02OGsvc2VtYXBob3JlLmgNCi0tLSBsaW51eC5k ZXZlbC52YW5pbGxhL2luY2x1ZGUvYXNtLW02OGsvc2VtYXBob3JlLmgJRnJp IE1heSAxNCAyMzowMTo1MSAxOTk5DQorKysgbGludXguZGV2ZWwvaW5jbHVk ZS9hc20tbTY4ay9zZW1hcGhvcmUuaAlGcmkgTWF5IDE0IDIzOjQxOjI4IDE5 OTkNCkBAIC0xOCw3ICsxOCw3IEBADQogc3RydWN0IHNlbWFwaG9yZSB7DQog CWF0b21pY190IGNvdW50Ow0KIAlhdG9taWNfdCB3YWtpbmc7DQotCXN0cnVj dCB3YWl0X3F1ZXVlICogd2FpdDsNCisJd2FpdF9xdWV1ZV9oZWFkX3Qgd2Fp dDsNCiB9Ow0KIA0KICNkZWZpbmUgTVVURVggKChzdHJ1Y3Qgc2VtYXBob3Jl KSB7IEFUT01JQ19JTklUKDEpLCBBVE9NSUNfSU5JVCgwKSwgTlVMTCB9KQ0K ZGlmZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvaW5jbHVkZS9hc20tbWlw cy9zZW1hcGhvcmUuaCBsaW51eC5kZXZlbC9pbmNsdWRlL2FzbS1taXBzL3Nl bWFwaG9yZS5oDQotLS0gbGludXguZGV2ZWwudmFuaWxsYS9pbmNsdWRlL2Fz bS1taXBzL3NlbWFwaG9yZS5oCVRodSBKYW4gMTQgMTg6NTM6MjUgMTk5OQ0K KysrIGxpbnV4LmRldmVsL2luY2x1ZGUvYXNtLW1pcHMvc2VtYXBob3JlLmgJ RnJpIE1heSAxNCAyMzozOTo0MSAxOTk5DQpAQCAtMTcsNyArMTcsNyBAQA0K IHN0cnVjdCBzZW1hcGhvcmUgew0KIAlhdG9taWNfdCBjb3VudDsNCiAJYXRv bWljX3Qgd2FraW5nOw0KLQlzdHJ1Y3Qgd2FpdF9xdWV1ZSAqIHdhaXQ7DQor CXdhaXRfcXVldWVfaGVhZF90IHdhaXQ7DQogfTsNCiANCiAjZGVmaW5lIE1V VEVYICgoc3RydWN0IHNlbWFwaG9yZSkgeyBBVE9NSUNfSU5JVCgxKSwgQVRP TUlDX0lOSVQoMCksIE5VTEwgfSkNCmRpZmYgLXVyTiBsaW51eC5kZXZlbC52 YW5pbGxhL2luY2x1ZGUvYXNtLXBwYy9hZGJfbW91c2UuaCBsaW51eC5kZXZl bC9pbmNsdWRlL2FzbS1wcGMvYWRiX21vdXNlLmgNCi0tLSBsaW51eC5kZXZl bC52YW5pbGxhL2luY2x1ZGUvYXNtLXBwYy9hZGJfbW91c2UuaAlNb24gSmFu IDEyIDE4OjE4OjEzIDE5OTgNCisrKyBsaW51eC5kZXZlbC9pbmNsdWRlL2Fz bS1wcGMvYWRiX21vdXNlLmgJRnJpIE1heSAxNCAyMzo0MjozOSAxOTk5DQpA QCAtMTYsNyArMTYsNyBAQA0KIAlzaG9ydAkJZHk7DQogCWludAkJcmVhZHk7 DQogCWludAkJYWN0aXZlOw0KLQlzdHJ1Y3Qgd2FpdF9xdWV1ZSAqd2FpdDsN CisJd2FpdF9xdWV1ZV9oZWFkX3Qgd2FpdDsNCiAJc3RydWN0IGZhc3luY19z dHJ1Y3QgKmZhc3luY3B0cjsNCiB9Ow0KIA0KZGlmZiAtdXJOIGxpbnV4LmRl dmVsLnZhbmlsbGEvaW5jbHVkZS9hc20tcHBjL3NlbWFwaG9yZS5oIGxpbnV4 LmRldmVsL2luY2x1ZGUvYXNtLXBwYy9zZW1hcGhvcmUuaA0KLS0tIGxpbnV4 LmRldmVsLnZhbmlsbGEvaW5jbHVkZS9hc20tcHBjL3NlbWFwaG9yZS5oCVRo dSBNYXIgMTEgMDA6MzA6MzIgMTk5OQ0KKysrIGxpbnV4LmRldmVsL2luY2x1 ZGUvYXNtLXBwYy9zZW1hcGhvcmUuaAlGcmkgTWF5IDE0IDIzOjQyOjIzIDE5 OTkNCkBAIC0xMyw3ICsxMyw3IEBADQogc3RydWN0IHNlbWFwaG9yZSB7DQog CWF0b21pY190IGNvdW50Ow0KIAlhdG9taWNfdCB3YWtpbmc7DQotCXN0cnVj dCB3YWl0X3F1ZXVlICp3YWl0Ow0KKwl3YWl0X3F1ZXVlX2hlYWRfdCB3YWl0 Ow0KIH07DQogDQogI2RlZmluZSBzZW1hX2luaXQoc2VtLCB2YWwpCWF0b21p Y19zZXQoJigoc2VtKS0+Y291bnQpLCAodmFsKSkNCmRpZmYgLXVyTiBsaW51 eC5kZXZlbC52YW5pbGxhL2luY2x1ZGUvbGludXgvaXN0YWxsaW9uLmggbGlu dXguZGV2ZWwvaW5jbHVkZS9saW51eC9pc3RhbGxpb24uaA0KLS0tIGxpbnV4 LmRldmVsLnZhbmlsbGEvaW5jbHVkZS9saW51eC9pc3RhbGxpb24uaAlXZWQg RmViICA0IDE3OjUyOjE2IDE5OTgNCisrKyBsaW51eC5kZXZlbC9pbmNsdWRl L2xpbnV4L2lzdGFsbGlvbi5oCUZyaSBNYXkgMTQgMjM6MDU6MjAgMTk5OQ0K QEAgLTcwLDkgKzcwLDkgQEANCiAJbG9uZwkJCXBncnA7DQogCXVuc2lnbmVk IGludAkJcnhtYXJrbXNrOw0KIAlzdHJ1Y3QgdHR5X3N0cnVjdAkqdHR5Ow0K LQlzdHJ1Y3Qgd2FpdF9xdWV1ZQkqb3Blbl93YWl0Ow0KLQlzdHJ1Y3Qgd2Fp dF9xdWV1ZQkqY2xvc2Vfd2FpdDsNCi0Jc3RydWN0IHdhaXRfcXVldWUJKnJh d193YWl0Ow0KKwl3YWl0X3F1ZXVlX2hlYWRfdAlvcGVuX3dhaXQ7DQorCXdh aXRfcXVldWVfaGVhZF90CWNsb3NlX3dhaXQ7DQorCXdhaXRfcXVldWVfaGVh ZF90CXJhd193YWl0Ow0KIAlzdHJ1Y3QgdHFfc3RydWN0CXRxaGFuZ3VwOw0K IAlzdHJ1Y3QgdGVybWlvcwkJbm9ybWFsdGVybWlvczsNCiAJc3RydWN0IHRl cm1pb3MJCWNhbGxvdXR0ZXJtaW9zOw0KZGlmZiAtdXJOIGxpbnV4LmRldmVs LnZhbmlsbGEvaW5jbHVkZS9saW51eC9scF9tNjhrLmggbGludXguZGV2ZWwv aW5jbHVkZS9saW51eC9scF9tNjhrLmgNCi0tLSBsaW51eC5kZXZlbC52YW5p bGxhL2luY2x1ZGUvbGludXgvbHBfbTY4ay5oCUZyaSBOb3YgMjAgMTQ6NDQ6 MDYgMTk5OA0KKysrIGxpbnV4LmRldmVsL2luY2x1ZGUvbGludXgvbHBfbTY4 ay5oCUZyaSBNYXkgMTQgMjM6MDY6MDkgMTk5OQ0KQEAgLTExNiw3ICsxMTYs NyBAQA0KIAl1bnNpZ25lZCBpbnQgY2hhcnM7CS8qYnVzeSB0aW1lb3V0ICov DQogCXVuc2lnbmVkIGludCB0aW1lOwkvKndhaXQgdGltZSAqLw0KIAl1bnNp Z25lZCBpbnQgd2FpdDsNCi0Jc3RydWN0IHdhaXRfcXVldWUgKmxwX3dhaXRf cTsgLypzdHJvYmUgd2FpdCAqLw0KKwlzdHJ1Y3Qgd2FpdF9xdWV1ZV9oZWFk X3QgbHBfd2FpdF9xOyAvKnN0cm9iZSB3YWl0ICovDQogCXZvaWQgKmJhc2U7 CQkJLyogaGFyZHdhcmUgZHJpdmVycyBpbnRlcm5hbCB1c2UqLw0KIAllbnVt IGxwX3R5cGUgdHlwZTsNCiAJY2hhciBscF9idWZmZXJbTFBfQlVGRkVSX1NJ WkVdOw0KZGlmZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvaW5jbHVkZS9s aW51eC9ycGNzb2NrLmggbGludXguZGV2ZWwvaW5jbHVkZS9saW51eC9ycGNz b2NrLmgNCi0tLSBsaW51eC5kZXZlbC52YW5pbGxhL2luY2x1ZGUvbGludXgv cnBjc29jay5oCVRodSBEZWMgMTIgMDk6NTQ6MjAgMTk5Ng0KKysrIGxpbnV4 LmRldmVsL2luY2x1ZGUvbGludXgvcnBjc29jay5oCUZyaSBNYXkgMTQgMjM6 MDM6NDAgMTk5OQ0KQEAgLTc3LDcgKzc3LDcgQEANCiAJc3RydWN0IHJwY193 YWl0ICoJd19uZXh0Ow0KIAlzdHJ1Y3QgcnBjX2lvcmVxICoJd19yZXE7DQog CWludAkJCXdfcmVzdWx0Ow0KLQlzdHJ1Y3Qgd2FpdF9xdWV1ZSAqCXdfd2Fp dDsNCisJd2FpdF9xdWV1ZV9oZWFkX3QgCXdfd2FpdDsNCiAJcnBjX2NhbGxi YWNrX2ZuX3QJd19oYW5kbGVyOw0KIAl2b2lkICoJCQl3X2NkYXRhOw0KIAlj aGFyCQkJd19xdWV1ZWQ7DQpAQCAtOTQsOCArOTQsOCBAQA0KIAl1bnNpZ25l ZCBsb25nCQljd25kOw0KIAlzdHJ1Y3QgcnBjX3dhaXQgKglwZW5kaW5nOw0K IAlzdHJ1Y3QgcnBjX3dhaXQgKglmcmVlOw0KLQlzdHJ1Y3Qgd2FpdF9xdWV1 ZSAqCWJhY2tsb2c7DQotCXN0cnVjdCB3YWl0X3F1ZXVlICoJc2h1dHdhaXQ7 DQorCXdhaXRfcXVldWVfaGVhZF90CWJhY2tsb2c7DQorCXdhaXRfcXVldWVf aGVhZF90CXNodXR3YWl0Ow0KIAlpbnQJCQlzaHV0ZG93bjsNCiB9Ow0KIA0K ZGlmZiAtdXJOIGxpbnV4LmRldmVsLnZhbmlsbGEvaW5jbHVkZS9saW51eC9z ZXJpYWwxNjcuaCBsaW51eC5kZXZlbC9pbmNsdWRlL2xpbnV4L3NlcmlhbDE2 Ny5oDQotLS0gbGludXguZGV2ZWwudmFuaWxsYS9pbmNsdWRlL2xpbnV4L3Nl cmlhbDE2Ny5oCU1vbiBPY3QgIDUgMTc6MTI6MTIgMTk5OA0KKysrIGxpbnV4 LmRldmVsL2luY2x1ZGUvbGludXgvc2VyaWFsMTY3LmgJRnJpIE1heSAxNCAy MzowNzowMyAxOTk5DQpAQCAtNTQsOCArNTQsOCBAQA0KIAlzdHJ1Y3QgdHFf c3RydWN0CXRxdWV1ZTsNCiAJc3RydWN0IHRlcm1pb3MJCW5vcm1hbF90ZXJt aW9zOw0KIAlzdHJ1Y3QgdGVybWlvcwkJY2FsbG91dF90ZXJtaW9zOw0KLQlz dHJ1Y3Qgd2FpdF9xdWV1ZQkqb3Blbl93YWl0Ow0KLQlzdHJ1Y3Qgd2FpdF9x dWV1ZQkqY2xvc2Vfd2FpdDsNCisJd2FpdF9xdWV1ZV9oZWFkX3QJb3Blbl93 YWl0Ow0KKwl3YWl0X3F1ZXVlX2hlYWRfdAljbG9zZV93YWl0Ow0KICAgICAg ICAgc3RydWN0IGN5Y2xhZGVzX21vbml0b3IgbW9uOw0KIH07DQogDQpkaWZm IC11ck4gbGludXguZGV2ZWwudmFuaWxsYS9pbmNsdWRlL2xpbnV4L3N0YWxs aW9uLmggbGludXguZGV2ZWwvaW5jbHVkZS9saW51eC9zdGFsbGlvbi5oDQot LS0gbGludXguZGV2ZWwudmFuaWxsYS9pbmNsdWRlL2xpbnV4L3N0YWxsaW9u LmgJV2VkIEZlYiAgNCAxNzo1MjoxNiAxOTk4DQorKysgbGludXguZGV2ZWwv aW5jbHVkZS9saW51eC9zdGFsbGlvbi5oCUZyaSBNYXkgMTQgMjM6MDU6NDgg MTk5OQ0KQEAgLTk1LDggKzk1LDggQEANCiAJdW5zaWduZWQgbG9uZwkJaHdp ZDsNCiAJdm9pZAkJCSp1YXJ0cDsNCiAJc3RydWN0IHR0eV9zdHJ1Y3QJKnR0 eTsNCi0Jc3RydWN0IHdhaXRfcXVldWUJKm9wZW5fd2FpdDsNCi0Jc3RydWN0 IHdhaXRfcXVldWUJKmNsb3NlX3dhaXQ7DQorCXdhaXRfcXVldWVfaGVhZF90 CW9wZW5fd2FpdDsNCisJd2FpdF9xdWV1ZV9oZWFkX3QJY2xvc2Vfd2FpdDsN CiAJc3RydWN0IHRlcm1pb3MJCW5vcm1hbHRlcm1pb3M7DQogCXN0cnVjdCB0 ZXJtaW9zCQljYWxsb3V0dGVybWlvczsNCiAJc3RydWN0IHRxX3N0cnVjdAl0 cXVldWU7DQpkaWZmIC11ck4gbGludXguZGV2ZWwudmFuaWxsYS9pbmNsdWRl L2xpbnV4L3Vtc2Rvc19mc19pLmggbGludXguZGV2ZWwvaW5jbHVkZS9saW51 eC91bXNkb3NfZnNfaS5oDQotLS0gbGludXguZGV2ZWwudmFuaWxsYS9pbmNs dWRlL2xpbnV4L3Vtc2Rvc19mc19pLmgJTW9uIERlYyAyOCAwMToxODoyOCAx OTk4DQorKysgbGludXguZGV2ZWwvaW5jbHVkZS9saW51eC91bXNkb3NfZnNf aS5oCUZyaSBNYXkgMTQgMjM6MzU6MDUgMTk5OQ0KQEAgLTQ3LDcgKzQ3LDcg QEANCiAgKi8NCiANCiBzdHJ1Y3QgZGlyX2xvY2tpbmdfaW5mbyB7DQotCXN0 cnVjdCB3YWl0X3F1ZXVlICpwOw0KKwl3YWl0X3F1ZXVlX2hlYWRfdCBwOw0K IAlzaG9ydCBpbnQgbG9va2luZzsJLyogSG93IG1hbnkgcHJvY2VzcyBkb2lu ZyBhIGxvb2t1cCAqLw0KIAlzaG9ydCBpbnQgY3JlYXRpbmc7CS8qIElzIHRo ZXJlIGFueSBjcmVhdGlvbiBnb2luZyBvbiBoZXJlDQogCQkJCSAqICBPbmx5 IG9uZSBhdCBhIHRpbWUsIGFsdGhvdWdoIG9uZQ0K ---1244721415-178135710-926743409=:17358--

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/