Re: [RFC PATCH] Add -Werror flag when building GNU/HURD.
Mikhail Karpov <[email protected]> Tue, 28 Jul 2026 17:53:07 +0700
| Newsgroups | gmane.os.hurd.bugs |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format. --------------erAFLkVvQP0LIE1B092HNijZ Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hello, On Tue, 28 Jul 2026 11:38:21 Bradley Morgan wrote: > Hi, Where's the patch? > > Adding -WError is relatively a non issue, (as the user could build with > W1,or W128 if they are feeling crazy) Forcing the user to build with > warnings as errors makes the build(er) responsible for fixing > someone elses BS > > If I see the patch, I'll have a look 😀 > > Thanks! I sent all the patches separately (8 in total). Maybe you can get them if I send them as two files? -- Mikhail Karpov --------------erAFLkVvQP0LIE1B092HNijZ Content-Type: text/x-patch; charset=UTF-8; name="0001-All-patches.patch" Content-Disposition: attachment; filename="0001-All-patches.patch" Content-Transfer-Encoding: base64 RnJvbSA4YjUzNjAwYzYzYzYwMjYxNmQyMGFjOTI3ZGQ1ODNhMjBmNzE4M2UwIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNaWtoYWlsIEthcnBvdiA8a2FycG92Lm1peGFpbDI0 QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAyOCBKdWwgMjAyNiAxNzo0NDo0MyArMDcwMApTdWJq ZWN0OiBbUEFUQ0hdIEFsbCBwYXRjaGVzCgotLS0KIGJvb3QvdXNlcmxhbmQtYm9vdC5jICAg ICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGNvbnNvbGUtY2xpZW50L25jdXJzZXN3LmMg ICAgICAgICAgICAgICAgIHwgMTEgKysrKysrKysrLS0KIGZhdGZzL21haW4uYyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIGxpYmJwZi9icGZfaW1wbC5oICAgICAg ICAgICAgICAgICAgICAgICAgIHwgIDIgLS0KIGxpYmRpc2tmcy9kaXNrZnMuaCAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDIgKy0KIGxpYmRpc2tmcy9sb29rdXAuYyAgICAgICAgICAg ICAgICAgICAgICAgIHwgIDQgKystLQogbGlicHMvcHMuaCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgMiArLQogbGlic3RvcmUvZGV2aWNlLmMgICAgICAgICAgICAgICAg ICAgICAgICAgfCAgMiArLQogbGlic3RvcmUvbmJkLmMgICAgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgNCArKy0tCiBsaWJzdG9yZS9wYXJ0LmMgICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICAyICstCiBwZmluZXQvTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICAgICAg ICB8ICAyICstCiBwZmluZXQvZ2x1ZS1pbmNsdWRlL2FzbS91YWNjZXNzLmggICAgICAgICB8 ICAxIC0KIHBmaW5ldC9nbHVlLWluY2x1ZGUvbGludXgvc29ja2V0LmggICAgICAgIHwgIDIg Ky0KIHBmaW5ldC9saW51eC1zcmMvaW5jbHVkZS9saW51eC9pbl9yb3V0ZS5oIHwgIDQgLS0t LQogcGZpbmV0L2xpbnV4LXNyYy9pbmNsdWRlL25ldC9mbG93LmggICAgICAgfCAgMiArKwog cGZpbmV0L2xpbnV4LXNyYy9uZXQvY29yZS9kZXYuYyAgICAgICAgICAgfCAgMiArKwogcGZp bmV0L2xpbnV4LXNyYy9uZXQvY29yZS9pb3ZlYy5jICAgICAgICAgfCAgMyArKy0KIHBmaW5l dC9saW51eC1zcmMvbmV0L2V0aGVybmV0L2V0aC5jICAgICAgIHwgIDMgKystCiBwZmluZXQv bGludXgtc3JjL25ldC9pcHY0L2FycC5jICAgICAgICAgICB8IDE1ICsrKysrKysrKy0tLS0t LQogcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2NC9kZXZpbmV0LmMgICAgICAgfCAgNSArLS0t LQogcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2NC9maWJfaGFzaC5jICAgICAgfCAgMSAtCiBw ZmluZXQvbGludXgtc3JjL25ldC9pcHY0L2lnbXAuYyAgICAgICAgICB8ICA2ICsrKy0tLQog cGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2NC9pcF9vdXRwdXQuYyAgICAgfCAgOSArKysrLS0t LS0KIHBmaW5ldC9saW51eC1zcmMvbmV0L2lwdjQvaXBfc29ja2dsdWUuYyAgIHwgIDIgKy0K IHBmaW5ldC9saW51eC1zcmMvbmV0L2lwdjQvcmF3LmMgICAgICAgICAgIHwgIDQgKystLQog cGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2NC90Y3AuYyAgICAgICAgICAgfCAgOSArKysrKy0t LS0KIHBmaW5ldC9saW51eC1zcmMvbmV0L2lwdjQvdGNwX2lwdjQuYyAgICAgIHwgIDggKysr KystLS0KIHBmaW5ldC9saW51eC1zcmMvbmV0L2lwdjQvdGNwX291dHB1dC5jICAgIHwgIDcg KysrKy0tLQogcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2NC91ZHAuYyAgICAgICAgICAgfCAy MCArKysrKysrKysrKystLS0tLS0tLQogcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2Ni9hZGRy Y29uZi5jICAgICAgfCAgMiArKwogcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2Ni9pY21wdjYu YyAgICAgICAgfCAgOCArKysrLS0tLQogcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2Ni9pcDZf b3V0cHV0LmMgICAgfCAgNyArKy0tLS0tCiBwZmluZXQvbGludXgtc3JjL25ldC9pcHY2L21j YXN0LmMgICAgICAgICB8ICAyICstCiBwZmluZXQvbGludXgtc3JjL25ldC9pcHY2L25kaXNj LmMgICAgICAgICB8ICA3ICsrLS0tLS0KIHBmaW5ldC9saW51eC1zcmMvbmV0L2lwdjYvcmF3 X2lwdjYuYyAgICAgIHwgIDYgKysrLS0tCiBwZmluZXQvbGludXgtc3JjL25ldC9pcHY2L3Rj cF9pcHY2LmMgICAgICB8IDEyICsrKysrKy0tLS0tLQogcGZpbmV0L2xpbnV4LXNyYy9uZXQv aXB2Ni91ZHBfaXB2Ni5jICAgICAgfCAgOSArKysrLS0tLS0KIHBmaW5ldC9wZmluZXQtb3Bz LmMgICAgICAgICAgICAgICAgICAgICAgIHwgIDEgLQogcHJvY2ZzL3Byb2Nlc3MuYyAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQogdHJhbnMvbmV3LWZpZm8uYyAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgNSArKysrKwogNDAgZmlsZXMgY2hhbmdlZCwgMTA1IGlu c2VydGlvbnMoKyksIDk0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2Jvb3QvdXNlcmxh bmQtYm9vdC5jIGIvYm9vdC91c2VybGFuZC1ib290LmMKaW5kZXggMTczOWViOTEuLjJjOTJm NmJkIDEwMDY0NAotLS0gYS9ib290L3VzZXJsYW5kLWJvb3QuYworKysgYi9ib290L3VzZXJs YW5kLWJvb3QuYwpAQCAtMjEyLDcgKzIxMiw3IEBAIGxvYWRfaW1hZ2UgKHRhc2tfdCB0LAog CiAJICAgIGJ1ZiA9ICh2bV9hZGRyZXNzX3QpIG1tYXAgKDAsIGJ1ZnN6LAogCQkJCSAgICAg ICBQUk9UX1JFQUR8UFJPVF9XUklURSwgTUFQX0FOT04sIDAsIDApOwotCSAgICBhc3NlcnRf YmFja3RyYWNlIChidWYgIT0gTUFQX0ZBSUxFRCk7CisJICAgIGFzc2VydF9iYWNrdHJhY2Ug KCh2b2lkICopIGJ1ZiAhPSBNQVBfRkFJTEVEKTsKIAogCSAgICBsc2VlayAoZmQsIHBoLT5w X29mZnNldCwgU0VFS19TRVQpOwogCSAgICBlcnIgPSByZWFkIChmZCwgKHZvaWQgKikoYnVm ICsgb2ZmcyksIHBoLT5wX2ZpbGVzeik7CmRpZmYgLS1naXQgYS9jb25zb2xlLWNsaWVudC9u Y3Vyc2Vzdy5jIGIvY29uc29sZS1jbGllbnQvbmN1cnNlc3cuYwppbmRleCAxMTZmODZjYy4u YzU1NmFiYTYgMTAwNjQ0Ci0tLSBhL2NvbnNvbGUtY2xpZW50L25jdXJzZXN3LmMKKysrIGIv Y29uc29sZS1jbGllbnQvbmN1cnNlc3cuYwpAQCAtNDUzLDcgKzQ1Myw5IEBAIG12d3B1dHNu IChjb25jaGFyX3QgKnN0ciwgc2l6ZV90IGxlbiwgb2ZmX3QgeCwgb2ZmX3QgeSkKICAgd21v dmUgKGNvbnNwYWQsIHksIHgpOwogICB3aGlsZSAobGVuKQogICAgIHsKKyNpZiAwCiAgICAg ICBpbnQgcmV0OworI2VuZGlmCiAgICAgICBjaHR5cGUgYWM7CiAKICAgICAgIGlmIChsYXN0 X2F0dHIgIT0gKih1aW50MzJfdCAqKSAmc3RyLT5hdHRyKQpAQCAtNDY4LDIzICs0NzAsMjgg QEAgbXZ3cHV0c24gKGNvbmNoYXJfdCAqc3RyLCBzaXplX3QgbGVuLCBvZmZfdCB4LCBvZmZf dCB5KQogICAgICAgZWxzZQogCXsgICAgICAKIAkgIHdjaFswXSA9IHN0ci0+Y2hyOwotCSAg cmV0ID0gc2V0Y2NoYXIgKCZjaHIsIHdjaCwgYXR0ciwgY29sb3JfcGFpciwgTlVMTCk7CiAj aWYgMAorCSAgcmV0ID0gc2V0Y2NoYXIgKCZjaHIsIHdjaCwgYXR0ciwgY29sb3JfcGFpciwg TlVMTCk7CiAJICBpZiAocmV0ID09IEVSUikKIAkgICAgewogCSAgICAgIHByaW50ZiAoInNl dGNjaGFyIGZhaWxlZDogJXNcbiIsIHN0cmVycm9yIChlcnJubykpOwogCSAgICAgIHByaW50 ZiAoIlslbGNdXG4iLCB3Y2hbMF0pOwogCSAgICAgIGFzc2VydF9iYWNrdHJhY2UgKCEiRG8g c29tZXRoaW5nIGlmIHNldGNjaGFyIGZhaWxzLiIpOwogCSAgICB9CisjZWxzZQorCSAgc2V0 Y2NoYXIgKCZjaHIsIHdjaCwgYXR0ciwgY29sb3JfcGFpciwgTlVMTCk7CiAjZW5kaWYKLQkg IHJldCA9IHdhZGRfd2NoIChjb25zcGFkLCAmY2hyKTsKKwogI2lmIDAKKwkgIHJldCA9IHdh ZGRfd2NoIChjb25zcGFkLCAmY2hyKTsKIAkgIGlmIChyZXQgPT0gRVJSKQogCSAgICB7CiAJ ICAgICAgcHJpbnRmICgiYWRkX3djaCBmYWlsZWQ6ICVpLCAlc1xuIiwgcmV0LCBzdHJlcnJv ciAoZXJybm8pKTsKIAkgICAgICBwcmludGYgKCJbJWxjXVxuIiwgd2NoWzBdKTsKIAkgICAg ICBhc3NlcnRfYmFja3RyYWNlICghIkRvIHNvbWV0aGluZyBpZiBhZGRfd2NociBmYWlscy4i KTsKIAkgICAgfQorI2Vsc2UKKwkgIHdhZGRfd2NoIChjb25zcGFkLCAmY2hyKTsKICNlbmRp ZgogCX0KICAgICAgIGxlbi0tOwpkaWZmIC0tZ2l0IGEvZmF0ZnMvbWFpbi5jIGIvZmF0ZnMv bWFpbi5jCmluZGV4IDhmNDRlZDhiLi5hYjVkYjAzZSAxMDA2NDQKLS0tIGEvZmF0ZnMvbWFp bi5jCisrKyBiL2ZhdGZzL21haW4uYwpAQCAtMjM1LDcgKzIzNSw3IEBAIG1haW4gKGludCBh cmdjLCBjaGFyICoqYXJndikKIAogICB6ZXJvY2x1c3RlciA9ICh2bV9hZGRyZXNzX3QpIG1t YXAgKDAsIGJ5dGVzX3Blcl9jbHVzdGVyLCBQUk9UX1JFQUR8UFJPVF9XUklURSwKIAkJCQkg ICAgIE1BUF9BTk9OLCAwLCAwKTsKLSAgYXNzZXJ0X2JhY2t0cmFjZSAoemVyb2NsdXN0ZXIg IT0gTUFQX0ZBSUxFRCk7CisgIGFzc2VydF9iYWNrdHJhY2UgKCh2b2lkICopIHplcm9jbHVz dGVyICE9IE1BUF9GQUlMRUQpOwogCiAgIGZldGNoX3Jvb3QgKCk7CiAKZGlmZiAtLWdpdCBh L2xpYmJwZi9icGZfaW1wbC5oIGIvbGliYnBmL2JwZl9pbXBsLmgKaW5kZXggZmIwZmI0OTAu LmQ4MGUwMDU4IDEwMDY0NAotLS0gYS9saWJicGYvYnBmX2ltcGwuaAorKysgYi9saWJicGYv YnBmX2ltcGwuaApAQCAtNTEsOCArNTEsNiBAQCB0eXBlZGVmIHN0cnVjdAogdHlwZWRlZgl1 bnNpZ25lZCBzaG9ydAlmaWx0ZXJfdDsKIHR5cGVkZWYgZmlsdGVyX3QJKmZpbHRlcl9hcnJh eV90OwogCi0jZGVmaW5lCU5FVF9NQVhfRklMVEVSCQk1MTIgLyogYnBmIHByb2dyYW1zIGFy ZSBiaWcgKi8KLQogI2RlZmluZSBORVRfSEFTSF9TSVpFICAgMjU2CiAjZGVmaW5lIE5fTkVU X0hBU0ggICAgICA0CiAjZGVmaW5lIE5fTkVUX0hBU0hfS0VZUyA0CmRpZmYgLS1naXQgYS9s aWJkaXNrZnMvZGlza2ZzLmggYi9saWJkaXNrZnMvZGlza2ZzLmgKaW5kZXggZDk1ZTFiODAu LmI4MzE2ZDk2IDEwMDY0NAotLS0gYS9saWJkaXNrZnMvZGlza2ZzLmgKKysrIGIvbGliZGlz a2ZzL2Rpc2tmcy5oCkBAIC04OTAsNyArODkwLDcgQEAgZGlza2ZzX2Rpc2tub2RlX25vZGUg KHN0cnVjdCBkaXNrbm9kZSAqZGlza25vZGUpCiAgICBUaGlzIGZ1bmN0aW9uIGlzIGEgd3Jh cHBlciBmb3IgZGlza2ZzX2xvb2t1cF9oYXJkLgogKi8KIGVycm9yX3QgZGlza2ZzX2xvb2t1 cCAoc3RydWN0IG5vZGUgKmRwLAotCQkgICAgICAgY2hhciAqbmFtZSwgbG9va3VwX2ZsYWdz X3QgbF9mbGFncywKKwkJICAgICAgIGNvbnN0IGNoYXIgKm5hbWUsIGxvb2t1cF9mbGFnc190 IGxfZmxhZ3MsCiAJCSAgICAgICBzdHJ1Y3Qgbm9kZSAqKm5wLCBzdHJ1Y3QgZGlyc3RhdCAq ZHMsCiAJCSAgICAgICBzdHJ1Y3QgcHJvdGlkICpjcmVkKTsKIApkaWZmIC0tZ2l0IGEvbGli ZGlza2ZzL2xvb2t1cC5jIGIvbGliZGlza2ZzL2xvb2t1cC5jCmluZGV4IDg3YjU0YzAxLi4w NmIwM2I2OSAxMDA2NDQKLS0tIGEvbGliZGlza2ZzL2xvb2t1cC5jCisrKyBiL2xpYmRpc2tm cy9sb29rdXAuYwpAQCAtNzEsNyArNzEsNyBAQAogCiAgICBUaGlzIGZ1bmN0aW9uIGlzIGEg d3JhcHBlciBmb3IgZGlza2ZzX2xvb2t1cF9oYXJkLiAgKi8KIGVycm9yX3QKLWRpc2tmc19s b29rdXAgKHN0cnVjdCBub2RlICpkcCwgY2hhciAqbmFtZSwgbG9va3VwX2ZsYWdzX3QgbF9m bGFncywKK2Rpc2tmc19sb29rdXAgKHN0cnVjdCBub2RlICpkcCwgY29uc3QgY2hhciAqbmFt ZSwgbG9va3VwX2ZsYWdzX3QgbF9mbGFncywKIAkgICAgICAgc3RydWN0IG5vZGUgKipucCwg c3RydWN0IGRpcnN0YXQgKmRzLCBzdHJ1Y3QgcHJvdGlkICpjcmVkKQogewogICBlcnJvcl90 IGVycjsKQEAgLTk5LDcgKzk5LDcgQEAgZGlza2ZzX2xvb2t1cCAoc3RydWN0IG5vZGUgKmRw LCBjaGFyICpuYW1lLCBsb29rdXBfZmxhZ3NfdCBsX2ZsYWdzLAogICAgIH0KICAgZWxzZQog ICAgIHsKLSAgICAgIGNoYXIgKnAgPSBzdHJjaHIgKG5hbWUsICcvJyk7CisgICAgICBjaGFy ICpwID0gKGNoYXIgKikgc3RyY2hyIChuYW1lLCAnLycpOwogICAgICAgaWYgKHAgIT0gMCkK IAl7CiAJICAqcCA9ICdcMCc7CmRpZmYgLS1naXQgYS9saWJwcy9wcy5oIGIvbGlicHMvcHMu aAppbmRleCAzZTU5YzY2YS4uYWQwYWFiNzcgMTAwNjQ0Ci0tLSBhL2xpYnBzL3BzLmgKKysr IGIvbGlicHMvcHMuaApAQCAtMzU2LDcgKzM1Niw3IEBAIHN0cnVjdCBwcm9jX3N0YXQKICNk ZWZpbmUgUFNUQVRfTk9fTVNHUE9SVCAgICAgMHgxMDAwMDAwIC8qIERvbid0IHVzZSB0aGUg bXNncG9ydCBhdCBhbGwgKi8KIAogLyogQml0cyBmcm9tIFBTVEFUX1VTRVJfQkFTRSBvbiB1 cCBhcmUgYXZhaWxhYmxlIGZvciB1c2VyLXVzZS4gICovCi0jZGVmaW5lIFBTVEFUX1VTRVJf QkFTRSAgICAgIDB4MjAwMDAwMDAKKyNkZWZpbmUgUFNUQVRfVVNFUl9CQVNFICAgICAgMHgy MDAwMDAwMFVMTAogI2RlZmluZSBQU1RBVF9VU0VSX01BU0sgICAgICB+KFBTVEFUX1VTRVJf QkFTRSAtIDEpCiAMCiAvKiBJZiB0aGUgUFNUQVRfU1RBVEUgZmxhZyBpcyBzZXQsIHRoZW4g dGhlIHByb2Nfc3RhdHMgc3RhdGUgZmllbGQgaG9sZHMgYQpkaWZmIC0tZ2l0IGEvbGlic3Rv cmUvZGV2aWNlLmMgYi9saWJzdG9yZS9kZXZpY2UuYwppbmRleCA1NmYzZDkzZC4uMTVmMzQ2 ZTQgMTAwNjQ0Ci0tLSBhL2xpYnN0b3JlL2RldmljZS5jCisrKyBiL2xpYnN0b3JlL2Rldmlj ZS5jCkBAIC0xMjgsNyArMTI4LDcgQEAgZG9wZW4gKGNvbnN0IGNoYXIgKm5hbWUsIGRldmlj ZV90ICpkZXZpY2UsIGludCAqbW9kX2ZsYWdzKQogICBjaGFyICpyZXN0OwogCiAgIC8qIFBh cnNlIEBtYXN0ZXI6L2Rldi9oZWxsbyAqLwotICBpZiAoIChuYW1lWzBdID09ICdAJykgJiYg KHBvcyA9IHN0cmNociAobmFtZSwgJzonKSkgKQorICBpZiAoIChuYW1lWzBdID09ICdAJykg JiYgKHBvcyA9IChjaGFyICopIHN0cmNociAobmFtZSwgJzonKSkgKQogICAgIHsKICAgICAg IG1hc3RlciA9IHN0cm5kdXAgKG5hbWUrMSwgcG9zLShuYW1lKzEpKTsKICAgICAgIHJlc3Qg PSBwb3MrMTsKZGlmZiAtLWdpdCBhL2xpYnN0b3JlL25iZC5jIGIvbGlic3RvcmUvbmJkLmMK aW5kZXggNTU2MjIyZTEuLmUyNjk5ZTc2IDEwMDY0NAotLS0gYS9saWJzdG9yZS9uYmQuYwor KysgYi9saWJzdG9yZS9uYmQuYwpAQCAtMjk5LDEyICsyOTksMTIgQEAgc3RhdGljIGVycm9y X3QKIG5iZF92YWxpZGF0ZV9uYW1lIChjb25zdCBjaGFyICpuYW1lLAogCQkgICBjb25zdCBz dHJ1Y3Qgc3RvcmVfY2xhc3MgKmNvbnN0ICpjbGFzc2VzKQogewotICBjaGFyICpwLCAqZW5k cDsKKyAgY2hhciAqZW5kcDsKIAogICBpZiAoIXN0cm5jbXAgKG5hbWUsIHVybF9wcmVmaXgs IHNpemVvZiB1cmxfcHJlZml4IC0gMSkpCiAgICAgbmFtZSArPSBzaXplb2YgdXJsX3ByZWZp eCAtIDE7CiAKLSAgcCA9IHN0cmNociAobmFtZSwgJzonKTsKKyAgY29uc3QgY2hhciAqcCA9 IHN0cmNociAobmFtZSwgJzonKTsKICAgaWYgKHAgPT0gMCkKICAgICByZXR1cm4gRUlOVkFM OwogICBlbmRwID0gMDsKZGlmZiAtLWdpdCBhL2xpYnN0b3JlL3BhcnQuYyBiL2xpYnN0b3Jl L3BhcnQuYwppbmRleCBlMDkzN2M2Ni4uYjNlYTJlYWQgMTAwNjQ0Ci0tLSBhL2xpYnN0b3Jl L3BhcnQuYworKysgYi9saWJzdG9yZS9wYXJ0LmMKQEAgLTI5LDcgKzI5LDcgQEAKIAogLyog WFhYIFVudGlsIHRoZSBIdXJkIHNwZWNpZmljIGhlYWRlciBpcyBhdmFpbGFibGUsIHByb3Zp ZGUgdGhlCiAgICBkZWNsYXJhdGlvbiBvZiBwZWRfZGV2aWNlX25ld19mcm9tX3N0b3JlIGhl cmUuICAqLwotI3dhcm5pbmcgIlVzaW5nIGxvY2FsIGRlY2xhcmF0aW9uIG9mIHBlZF9kZXZp Y2VfbmV3X2Zyb21fc3RvcmUuIgorI3ByYWdtYSBtZXNzYWdlICJVc2luZyBsb2NhbCBkZWNs YXJhdGlvbiBvZiBwZWRfZGV2aWNlX25ld19mcm9tX3N0b3JlLiIKIAogLyogSW5pdGlhbGl6 ZSBhIFBlZERldmljZSB1c2luZyBTT1VSQ0UuICBUaGUgU09VUkNFIHdpbGwgTk9UIGJlIGRl c3Ryb3llZDsKICAgIHRoZSBjYWxsZXIgY3JlYXRlZCBpdCwgaXQgaXMgdGhlIGNhbGxlcidz IHJlc3BvbnNpbGJpbGl0eSB0byBmcmVlIGl0CmRpZmYgLS1naXQgYS9wZmluZXQvTWFrZWZp bGUgYi9wZmluZXQvTWFrZWZpbGUKaW5kZXggMjJjM2ExNzEuLmUxNWFhNTlkIDEwMDY0NAot LS0gYS9wZmluZXQvTWFrZWZpbGUKKysrIGIvcGZpbmV0L01ha2VmaWxlCkBAIC0xMzEsNyAr MTMxLDcgQEAgQ1BQRkxBR1MgKz0gLWltYWNyb3MgJChzcmNkaXIpL2NvbmZpZy5oCQlcCiAK ICMgRG9uJ3QgYXNrLi4uICBXZSB1c2UgTGludXggY29kZS4gIFRoZSBwcm9ibGVtIHdhcyBm aXJzdCBub3RpY2VkIHdoZW4KICMgY29tcGlsaW5nIGBwZmluZXQnIHdpdGggR0NDIDQuMi4K LUNGTEFHUyArPSAtZm5vLXN0cmljdC1hbGlhc2luZworQ0ZMQUdTICs9IC1mbm8tc3RyaWN0 LWFsaWFzaW5nIC1Xbm8tYXJyYXktYm91bmRzCiAKIGFzbS9jaGVja3N1bS5oOiAuLi9jb25m aWcuc3RhdHVzCiAJbWtkaXIgLXAgJChARCkKZGlmZiAtLWdpdCBhL3BmaW5ldC9nbHVlLWlu Y2x1ZGUvYXNtL3VhY2Nlc3MuaCBiL3BmaW5ldC9nbHVlLWluY2x1ZGUvYXNtL3VhY2Nlc3Mu aAppbmRleCA3NTJjNjFjMC4uN2Y0NzYzMmIgMTAwNjQ0Ci0tLSBhL3BmaW5ldC9nbHVlLWlu Y2x1ZGUvYXNtL3VhY2Nlc3MuaAorKysgYi9wZmluZXQvZ2x1ZS1pbmNsdWRlL2FzbS91YWNj ZXNzLmgKQEAgLTQxLDcgKzQxLDYgQEAgc3RydWN0IF9fbGFyZ2Vfc3RydWN0IHsgdW5zaWdu ZWQgbG9uZyBidWZbMTAwXTsgfTsKICNkZWZpbmUgZ2V0X3VzZXJfcmV0KHgscHRyLHJldCkg KHsgaWYgKGdldF91c2VyKHgscHRyKSkgcmV0dXJuIHJldDsgfSkKIAogCi0jZGVmaW5lIGNv cHlfdG9fdXNlcih0byxmcm9tLG4pCQkobWVtY3B5ICgodG8pLCAoZnJvbSksIChuKSksIDAp CiAjZGVmaW5lIGNvcHlfZnJvbV91c2VyKHRvLGZyb20sbikJKG1lbWNweSAoKHRvKSwgKGZy b20pLCAobikpLCAwKQogI2RlZmluZQljbGVhcl91c2VyKG1lbSwgbGVuKQkJKG1lbXNldCAo KG1lbSksIDAsIChsZW4pKSwgMCkKIApkaWZmIC0tZ2l0IGEvcGZpbmV0L2dsdWUtaW5jbHVk ZS9saW51eC9zb2NrZXQuaCBiL3BmaW5ldC9nbHVlLWluY2x1ZGUvbGludXgvc29ja2V0LmgK aW5kZXggNThmYzJjN2EuLjIwMmQ2Y2NjIDEwMDY0NAotLS0gYS9wZmluZXQvZ2x1ZS1pbmNs dWRlL2xpbnV4L3NvY2tldC5oCisrKyBiL3BmaW5ldC9nbHVlLWluY2x1ZGUvbGludXgvc29j a2V0LmgKQEAgLTc5LDcgKzc5LDcgQEAgcHV0X2Ntc2coc3RydWN0IG1zZ2hkciAqbXNnLCBp bnQgbGV2ZWwsIGludCB0eXBlLCBpbnQgbGVuLCB2b2lkICpkYXRhKQogI2RlZmluZSBDTVNH X0FMSUdOKHNpemUpCSgwKQogI2RlZmluZSBDTVNHX0xFTihzaXplKSAJCSgwKQogI2Vsc2UK LSNkZWZpbmUgY29weV90b191c2VyKHRvLGZyb20sbikJCShtZW1jcHkgKCh0byksIChmcm9t KSwgKG4pKSwgMCkKKyNkZWZpbmUgY29weV90b191c2VyKHRvLGZyb20sbikJCSh7bWVtY3B5 ICgodG8pLCAoZnJvbSksIChuKSk7IDA7fSkKIHN0YXRpYyBpbmxpbmUgaW50CiBwdXRfY21z ZyhzdHJ1Y3QgbXNnaGRyICogbXNnLCBpbnQgbGV2ZWwsIGludCB0eXBlLCBpbnQgbGVuLCB2 b2lkICpkYXRhKQogewpkaWZmIC0tZ2l0IGEvcGZpbmV0L2xpbnV4LXNyYy9pbmNsdWRlL2xp bnV4L2luX3JvdXRlLmggYi9wZmluZXQvbGludXgtc3JjL2luY2x1ZGUvbGludXgvaW5fcm91 dGUuaAppbmRleCA2MWYyNWMzMC4uNDA3ZGJlY2MgMTAwNjQ0Ci0tLSBhL3BmaW5ldC9saW51 eC1zcmMvaW5jbHVkZS9saW51eC9pbl9yb3V0ZS5oCisrKyBiL3BmaW5ldC9saW51eC1zcmMv aW5jbHVkZS9saW51eC9pbl9yb3V0ZS5oCkBAIC0yNSw4ICsyNSw0IEBACiAjZGVmaW5lIFJU Q0ZfUkVKRUNUCTB4NDAwMDAwMDAKICNkZWZpbmUgUlRDRl9MT0NBTAkweDgwMDAwMDAwCiAK LSNkZWZpbmUgUlRDRl9OQVQJKFJUQ0ZfRE5BVHxSVENGX1NOQVQpCi0KLSNkZWZpbmUgUlRf VE9TKHRvcykJKCh0b3MpJklQVE9TX1RPU19NQVNLKQotCiAjZW5kaWYgLyogX0xJTlVYX0lO X1JPVVRFX0ggKi8KZGlmZiAtLWdpdCBhL3BmaW5ldC9saW51eC1zcmMvaW5jbHVkZS9uZXQv Zmxvdy5oIGIvcGZpbmV0L2xpbnV4LXNyYy9pbmNsdWRlL25ldC9mbG93LmgKaW5kZXggZTFj ZTFiMmEuLjJjYjZjZDkxIDEwMDY0NAotLS0gYS9wZmluZXQvbGludXgtc3JjL2luY2x1ZGUv bmV0L2Zsb3cuaAorKysgYi9wZmluZXQvbGludXgtc3JjL2luY2x1ZGUvbmV0L2Zsb3cuaApA QCAtOTEsNiArOTEsOCBAQCBzdHJ1Y3QgZmxvd19ydWxlIHsKIAl1bnNpZ25lZCBjaGFyCQkJ cHJpdmF0ZVswXTsKIH07CiAKK3N0cnVjdCBydDZfaW5mbzsKKwogc3RydWN0IGZsb3dfcnVs ZV9vcHMgewogCWludAkJCSgqYWNjZXB0KShzdHJ1Y3QgcnQ2X2luZm8gKnJ0LAogCQkJCQkg IHN0cnVjdCBydDZfaW5mbyAqcnVsZSwKZGlmZiAtLWdpdCBhL3BmaW5ldC9saW51eC1zcmMv bmV0L2NvcmUvZGV2LmMgYi9wZmluZXQvbGludXgtc3JjL25ldC9jb3JlL2Rldi5jCmluZGV4 IGI0N2M1MDI3Li4yYjVmZjRlMiAxMDA2NDQKLS0tIGEvcGZpbmV0L2xpbnV4LXNyYy9uZXQv Y29yZS9kZXYuYworKysgYi9wZmluZXQvbGludXgtc3JjL25ldC9jb3JlL2Rldi5jCkBAIC0x MDYyLDYgKzEwNjIsNyBAQCBpbnQgcmVnaXN0ZXJfZ2lmY29uZih1bnNpZ25lZCBpbnQgZmFt aWx5LCBnaWZjb25mX2Z1bmNfdCAqIGdpZmNvbmYpCiAgKglNYXAgYW4gaW50ZXJmYWNlIGlu ZGV4IHRvIGl0cyBuYW1lIChTSU9DR0lGTkFNRSkKICAqLwogCisjaWYgMAogLyoKICAqCVRo aXMgY2FsbCBpcyB1c2VmdWwsIGJ1dCBJJ2QgcmVtb3ZlIGl0IHRvby4KICAqCkBAIC0xMTAw LDYgKzExMDEsNyBAQCBzdGF0aWMgaW50IGRldl9pZm5hbWUoc3RydWN0IGlmcmVxICphcmcp CiAJZXJyID0gY29weV90b191c2VyKGFyZywgJmlmciwgc2l6ZW9mKHN0cnVjdCBpZnJlcSkp OwogCXJldHVybiAoZXJyKT8tRUZBVUxUOjA7CiB9CisjZW5kaWYKIAogLyoKICAqCVBlcmZv cm0gYSBTSU9DR0lGQ09ORiBjYWxsLiBUaGlzIHN0cnVjdHVyZSB3aWxsIGNoYW5nZQpkaWZm IC0tZ2l0IGEvcGZpbmV0L2xpbnV4LXNyYy9uZXQvY29yZS9pb3ZlYy5jIGIvcGZpbmV0L2xp bnV4LXNyYy9uZXQvY29yZS9pb3ZlYy5jCmluZGV4IGMyMGY4NTMwLi41Yzk2NjBmOSAxMDA2 NDQKLS0tIGEvcGZpbmV0L2xpbnV4LXNyYy9uZXQvY29yZS9pb3ZlYy5jCisrKyBiL3BmaW5l dC9saW51eC1zcmMvbmV0L2NvcmUvaW92ZWMuYwpAQCAtMjU5LDcgKzI1OSw4IEBAIGludCBj c3VtX3BhcnRpYWxfY29weV9mcm9taW92ZWNlbmQodW5zaWduZWQgY2hhciAqa2RhdGEsIHN0 cnVjdCBpb3ZlYyAqaW92LAogCQl9CiAKIAkJaWYgKGNvcHkpIHsKLQkJCWNzdW0gPSBjc3Vt X2FuZF9jb3B5X2Zyb21fdXNlcihiYXNlLCBrZGF0YSwgY29weSwKKwkJCWNzdW0gPSBjc3Vt X2FuZF9jb3B5X2Zyb21fdXNlcigoY29uc3QgY2hhciAqKSBiYXNlLAorCQkJCQkJCShjaGFy ICopIGtkYXRhLCBjb3B5LAogCQkJCQkJCWNzdW0sICZlcnIpOwogCQkJaWYgKGVycikKIAkJ CQlnb3RvIG91dDsKZGlmZiAtLWdpdCBhL3BmaW5ldC9saW51eC1zcmMvbmV0L2V0aGVybmV0 L2V0aC5jIGIvcGZpbmV0L2xpbnV4LXNyYy9uZXQvZXRoZXJuZXQvZXRoLmMKaW5kZXggOTQ1 ZjRhMDYuLmMzM2MyNWI4IDEwMDY0NAotLS0gYS9wZmluZXQvbGludXgtc3JjL25ldC9ldGhl cm5ldC9ldGguYworKysgYi9wZmluZXQvbGludXgtc3JjL25ldC9ldGhlcm5ldC9ldGguYwpA QCAtMjkxLDcgKzI5MSw4IEBAIHZvaWQgZXRoX2NvcHlfYW5kX3N1bShzdHJ1Y3Qgc2tfYnVm ZiAqZGVzdCwgdW5zaWduZWQgY2hhciAqc3JjLCBpbnQgbGVuZ3RoLCBpbnQKIAlpZiAoKGlw X2xlbmd0aCA8PSBsZW5ndGgpICYmIChpcF9sZW5ndGggPiA3KSkKIAkJbGVuZ3RoPWlwX2xl bmd0aDsKIAotCWRlc3QtPmNzdW09Y3N1bV9wYXJ0aWFsX2NvcHkoc3JjK3NpemVvZihzdHJ1 Y3QgaXBoZHIpK0VUSF9ITEVOLGRlc3QtPmRhdGErc2l6ZW9mKHN0cnVjdCBpcGhkcikrRVRI X0hMRU4sbGVuZ3RoLGJhc2UpOworCWRlc3QtPmNzdW09Y3N1bV9wYXJ0aWFsX2NvcHkoKGNv bnN0IGNoYXIgKilzcmMrc2l6ZW9mKHN0cnVjdCBpcGhkcikrRVRIX0hMRU4sCisJCQkJICAg ICAoY2hhciAqKWRlc3QtPmRhdGErc2l6ZW9mKHN0cnVjdCBpcGhkcikrRVRIX0hMRU4sbGVu Z3RoLGJhc2UpOwogCWRlc3QtPmlwX3N1bW1lZD0xOwogfQogCmRpZmYgLS1naXQgYS9wZmlu ZXQvbGludXgtc3JjL25ldC9pcHY0L2FycC5jIGIvcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2 NC9hcnAuYwppbmRleCA1M2QxNTVhOS4uYzA5ZGViZGYgMTAwNjQ0Ci0tLSBhL3BmaW5ldC9s aW51eC1zcmMvbmV0L2lwdjQvYXJwLmMKKysrIGIvcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2 NC9hcnAuYwpAQCAtMTk3LDEzICsxOTcsMTMgQEAgaW50IGFycF9tY19tYXAodTMyIGFkZHIs IHU4ICpoYWRkciwgc3RydWN0IGRldmljZSAqZGV2LCBpbnQgZGlyKQogCXN3aXRjaCAoZGV2 LT50eXBlKSB7CiAJY2FzZSBBUlBIUkRfRVRIRVI6CiAJY2FzZSBBUlBIUkRfRkRESToKLQkJ aXBfZXRoX21jX21hcChhZGRyLCBoYWRkcikgOyAKKwkJaXBfZXRoX21jX21hcChhZGRyLCAo Y2hhciAqKSBoYWRkcik7CiAJCXJldHVybiAwIDsgCiAJY2FzZSBBUlBIUkRfSUVFRTgwMjoK IAkJaWYgKCAoZGV2LT5uYW1lWzBdID09ICd0JykgJiYgKGRldi0+bmFtZVsxXSA9PSAncicp KSAvKiBUb2tlbiBSaW5nICovCi0JCQlpcF90cl9tY19tYXAoYWRkcixoYWRkcikgOyAKKwkJ CWlwX3RyX21jX21hcChhZGRyLCAoY2hhciAqKSBoYWRkcik7CiAJCWVsc2UgIAotCQkJaXBf ZXRoX21jX21hcChhZGRyLCBoYWRkcik7CisJCQlpcF9ldGhfbWNfbWFwKGFkZHIsIChjaGFy ICopIGhhZGRyKTsKIAkJcmV0dXJuIDA7CiAJZGVmYXVsdDoKIAkJaWYgKGRpcikgewpAQCAt NTQ1LDcgKzU0NSw3IEBAIGludCBhcnBfcmN2KHN0cnVjdCBza19idWZmICpza2IsIHN0cnVj dCBkZXZpY2UgKmRldiwgc3RydWN0IHBhY2tldF90eXBlICpwdCkKIAlzdHJ1Y3QgYXJwaGRy ICphcnAgPSBza2ItPm5oLmFycGg7CiAJdW5zaWduZWQgY2hhciAqYXJwX3B0cj0gKHVuc2ln bmVkIGNoYXIgKikoYXJwKzEpOwogCXN0cnVjdCBydGFibGUgKnJ0OwotCXVuc2lnbmVkIGNo YXIgKnNoYSwgKnRoYTsKKwl1bnNpZ25lZCBjaGFyICpzaGE7CiAJdTMyIHNpcCwgdGlwOwog CXUxNiBkZXZfdHlwZSA9IGRldi0+dHlwZTsKIAlpbnQgYWRkcl90eXBlOwpAQCAtNjMyLDcg KzYzMiw2IEBAIGludCBhcnBfcmN2KHN0cnVjdCBza19idWZmICpza2IsIHN0cnVjdCBkZXZp Y2UgKmRldiwgc3RydWN0IHBhY2tldF90eXBlICpwdCkKIAlhcnBfcHRyICs9IGRldi0+YWRk cl9sZW47CiAJbWVtY3B5KCZzaXAsIGFycF9wdHIsIDQpOwogCWFycF9wdHIgKz0gNDsKLQl0 aGE9YXJwX3B0cjsKIAlhcnBfcHRyICs9IGRldi0+YWRkcl9sZW47CiAJbWVtY3B5KCZ0aXAs IGFycF9wdHIsIDQpOwogLyoKQEAgLTgyNSwxMyArODI0LDE0IEBAIGludCBhcnBfcmVxX3Nl dChzdHJ1Y3QgYXJwcmVxICpyLCBzdHJ1Y3QgZGV2aWNlICogZGV2KQogCQlpZiAoci0+YXJw X2ZsYWdzICYgQVRGX1BFUk0pCiAJCQlzdGF0ZSA9IE5VRF9QRVJNQU5FTlQ7CiAJCWVyciA9 IG5laWdoX3VwZGF0ZShuZWlnaCwgKHItPmFycF9mbGFncyZBVEZfQ09NKSA/Ci0JCQkJICAg ci0+YXJwX2hhLnNhX2RhdGEgOiBOVUxMLCBzdGF0ZSwgMSwgMCk7CisJCQkJICAgKHVuc2ln bmVkIGNoYXIgKikgci0+YXJwX2hhLnNhX2RhdGEgOiBOVUxMLCBzdGF0ZSwgMSwgMCk7CiAJ CW5laWdoX3JlbGVhc2UobmVpZ2gpOwogCX0KIAllbmRfYmhfYXRvbWljKCk7CiAJcmV0dXJu IGVycjsKIH0KIAorI2lmIDAKIHN0YXRpYyB1bnNpZ25lZCBhcnBfc3RhdGVfdG9fZmxhZ3Mo c3RydWN0IG5laWdoYm91ciAqbmVpZ2gpCiB7CiAJdW5zaWduZWQgZmxhZ3MgPSAwOwpAQCAt ODQxLDExICs4NDEsMTMgQEAgc3RhdGljIHVuc2lnbmVkIGFycF9zdGF0ZV90b19mbGFncyhz dHJ1Y3QgbmVpZ2hib3VyICpuZWlnaCkKIAkJZmxhZ3MgPSBBVEZfQ09NOwogCXJldHVybiBm bGFnczsKIH0KKyNlbmRpZgogCiAvKgogICoJR2V0IGFuIEFSUCBjYWNoZSBlbnRyeS4KICAq LwogCisjaWYgMAogc3RhdGljIGludCBhcnBfcmVxX2dldChzdHJ1Y3QgYXJwcmVxICpyLCBz dHJ1Y3QgZGV2aWNlICpkZXYpCiB7CiAJdTMyIGlwID0gKChzdHJ1Y3Qgc29ja2FkZHJfaW4g KikgJnItPmFycF9wYSktPnNpbl9hZGRyLnNfYWRkcjsKQEAgLTg2NSw2ICs4NjcsNyBAQCBz dGF0aWMgaW50IGFycF9yZXFfZ2V0KHN0cnVjdCBhcnByZXEgKnIsIHN0cnVjdCBkZXZpY2Ug KmRldikKIAllbmRfYmhfYXRvbWljKCk7CiAJcmV0dXJuIGVycjsKIH0KKyNlbmRpZgogCiBp bnQgYXJwX3JlcV9kZWxldGUoc3RydWN0IGFycHJlcSAqciwgc3RydWN0IGRldmljZSAqIGRl dikKIHsKZGlmZiAtLWdpdCBhL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjQvZGV2aW5ldC5j IGIvcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2NC9kZXZpbmV0LmMKaW5kZXggYTU2Njc0M2Eu LjgyOGE4ODI4IDEwMDY0NAotLS0gYS9wZmluZXQvbGludXgtc3JjL25ldC9pcHY0L2Rldmlu ZXQuYworKysgYi9wZmluZXQvbGludXgtc3JjL25ldC9pcHY0L2RldmluZXQuYwpAQCAtNzA1 LDEwICs3MDUsNyBAQCBpbmV0X2dpZmNvbmYoc3RydWN0IGRldmljZSAqZGV2LCBjaGFyICpi dWYsIGludCBsZW4pCiAJCWlmIChsZW4gPCAoaW50KSBzaXplb2YoaWZyKSkKIAkJCXJldHVy biBkb25lOwogCQltZW1zZXQoJmlmciwgMCwgc2l6ZW9mKHN0cnVjdCBpZnJlcSkpOwotCQlp ZiAoaWZhLT5pZmFfbGFiZWwpCi0JCQlzdHJjcHkoaWZyLmlmcl9uYW1lLCBpZmEtPmlmYV9s YWJlbCk7Ci0JCWVsc2UKLQkJCXN0cmNweShpZnIuaWZyX25hbWUsIGRldi0+bmFtZSk7CisJ CXN0cmNweShpZnIuaWZyX25hbWUsIGlmYS0+aWZhX2xhYmVsKTsKIAogI2lmZGVmIF9IVVJE XwogCQkoKihzdHJ1Y3Qgc29ja2FkZHJfaW4gKikgJmlmci5pZnJfYWRkcikuc2luX2xlbiA9 IHNpemVvZiAoc3RydWN0IHNvY2thZGRyX2luKTsKZGlmZiAtLWdpdCBhL3BmaW5ldC9saW51 eC1zcmMvbmV0L2lwdjQvZmliX2hhc2guYyBiL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjQv ZmliX2hhc2guYwppbmRleCA0OTVmMTY4Mi4uNDAxNmU3MGEgMTAwNjQ0Ci0tLSBhL3BmaW5l dC9saW51eC1zcmMvbmV0L2lwdjQvZmliX2hhc2guYworKysgYi9wZmluZXQvbGludXgtc3Jj L25ldC9pcHY0L2ZpYl9oYXNoLmMKQEAgLTg4Nyw3ICs4ODcsNiBAQCBfX2luaXRmdW5jKHN0 cnVjdCBmaWJfdGFibGUgKiBmaWJfaGFzaF9pbml0KGludCBpZCkpCiBzdGF0aWMgdm9pZAog ZmliX25vZGVfZ2V0X3JvdXRlKGludCB0eXBlLCBpbnQgZGVhZCwgc3RydWN0IGZpYl9pbmZv ICpmaSwgdTMyIHByZWZpeCwgdTMyIG1hc2ssIGlmcnRyZXFfdCAqcikKIHsKLQlpbnQgbGVu OwogCXN0YXRpYyB1bnNpZ25lZCB0eXBlMmZsYWdzW1JUTl9NQVgrMV0gPSB7CiAJCVtSVE5f VU5SRUFDSEFCTEVdID0gUlRGX1JFSkVDVCwKIAkJW1JUTl9QUk9ISUJJVF0gPSBSVEZfUkVK RUNUCmRpZmYgLS1naXQgYS9wZmluZXQvbGludXgtc3JjL25ldC9pcHY0L2lnbXAuYyBiL3Bm aW5ldC9saW51eC1zcmMvbmV0L2lwdjQvaWdtcC5jCmluZGV4IDQ2MjY5MTA2Li43YmY0NTAz NCAxMDA2NDQKLS0tIGEvcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2NC9pZ21wLmMKKysrIGIv cGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2NC9pZ21wLmMKQEAgLTM1Miw3ICszNTIsNyBAQCBz dGF0aWMgdm9pZCBpcF9tY19maWx0ZXJfYWRkKHN0cnVjdCBpbl9kZXZpY2UgKmluX2Rldiwg dTMyIGFkZHIpCiAJICAgaWYgKGRldi0+bWNfbGlzdCAmJiBkZXYtPmZsYWdzJklGRl9NVUxU SUNBU1QpIHsgZG8gaXQ7IH0KIAkgICAtLUFOSwogCSAqLwotCWlmIChhcnBfbWNfbWFwKGFk ZHIsIGJ1ZiwgZGV2LCAwKSA9PSAwKQorCWlmIChhcnBfbWNfbWFwKGFkZHIsICh1bnNpZ25l ZCBjaGFyICopIGJ1ZiwgZGV2LCAwKSA9PSAwKQogCQlkZXZfbWNfYWRkKGRldixidWYsZGV2 LT5hZGRyX2xlbiwwKTsKIH0KIApAQCAtMzY1LDcgKzM2NSw3IEBAIHN0YXRpYyB2b2lkIGlw X21jX2ZpbHRlcl9kZWwoc3RydWN0IGluX2RldmljZSAqaW5fZGV2LCB1MzIgYWRkcikKIAlj aGFyIGJ1ZltNQVhfQUREUl9MRU5dOwogCXN0cnVjdCBkZXZpY2UgKmRldiA9IGluX2Rldi0+ ZGV2OwogCi0JaWYgKGFycF9tY19tYXAoYWRkciwgYnVmLCBkZXYsIDApID09IDApCisJaWYg KGFycF9tY19tYXAoYWRkciwgKHVuc2lnbmVkIGNoYXIgKikgYnVmLCBkZXYsIDApID09IDAp CiAJCWRldl9tY19kZWxldGUoZGV2LGJ1ZixkZXYtPmFkZHJfbGVuLDApOwogfQogCkBAIC00 NDIsOCArNDQyLDggQEAgdm9pZCBpcF9tY19pbmNfZ3JvdXAoc3RydWN0IGluX2RldmljZSAq aW5fZGV2LCB1MzIgYWRkcikKIAlpbS0+dGltZXIuZnVuY3Rpb249JmlnbXBfdGltZXJfZXhw aXJlOwogCWltLT51bnNvbGljaXRfY291bnQgPSBJR01QX1Vuc29saWNpdGVkX1JlcG9ydF9D b3VudDsKIAlpbS0+cmVwb3J0ZXIgPSAwOwotCWltLT5sb2FkZWQgPSAwOwogI2VuZGlmCisJ aW0tPmxvYWRlZCA9IDA7CiAJaW0tPm5leHQ9aW5fZGV2LT5tY19saXN0OwogCWluX2Rldi0+ bWNfbGlzdD1pbTsKIAlpZ21wX2dyb3VwX2FkZGVkKGltKTsKZGlmZiAtLWdpdCBhL3BmaW5l dC9saW51eC1zcmMvbmV0L2lwdjQvaXBfb3V0cHV0LmMgYi9wZmluZXQvbGludXgtc3JjL25l dC9pcHY0L2lwX291dHB1dC5jCmluZGV4IGY0M2Y0ZmZkLi4wNzIzZDViNSAxMDA2NDQKLS0t IGEvcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2NC9pcF9vdXRwdXQuYworKysgYi9wZmluZXQv bGludXgtc3JjL25ldC9pcHY0L2lwX291dHB1dC5jCkBAIC0xMDEsNyArMTAxLDYgQEAgdm9p ZCBpcF9idWlsZF9hbmRfc2VuZF9wa3Qoc3RydWN0IHNrX2J1ZmYgKnNrYiwgc3RydWN0IHNv Y2sgKnNrLAogewogCXN0cnVjdCBydGFibGUgKnJ0ID0gKHN0cnVjdCBydGFibGUgKilza2It PmRzdDsKIAlzdHJ1Y3QgaXBoZHIgKmlwaDsKLQlzdHJ1Y3QgZGV2aWNlICpkZXY7CiAJCiAJ LyogQnVpbGQgdGhlIElQIGhlYWRlci4gKi8KIAlpZiAob3B0KQpAQCAtMTI4LDEwICsxMjcs MTAgQEAgdm9pZCBpcF9idWlsZF9hbmRfc2VuZF9wa3Qoc3RydWN0IHNrX2J1ZmYgKnNrYiwg c3RydWN0IHNvY2sgKnNrLAogCQlpcF9vcHRpb25zX2J1aWxkKHNrYiwgb3B0LCBkYWRkciwg cnQsIDApOwogCX0KIAotCWRldiA9IHJ0LT51LmRzdC5kZXY7Ci0KICNpZmRlZiBDT05GSUdf RklSRVdBTEwKIAkvKiBOb3cgd2UgaGF2ZSBubyBiZXR0ZXIgbWVjaGFuaXNtIHRvIG5vdGlm eSBhYm91dCBlcnJvci4gKi8KKwlzdHJ1Y3QgZGV2aWNlICpkZXYgPSBydC0+dS5kc3QuZGV2 OworCiAJc3dpdGNoIChjYWxsX291dF9maXJld2FsbChQRl9JTkVULCBkZXYsIGlwaCwgTlVM TCwgJnNrYikpIHsKIAljYXNlIEZXX1JFSkVDVDoKIAkJaWNtcF9zZW5kKHNrYiwgSUNNUF9E RVNUX1VOUkVBQ0gsIElDTVBfUE9SVF9VTlJFQUNILCAwKTsKQEAgLTQ4OCw3ICs0ODcsNyBA QCBpbnQgaXBfYnVpbGRfeG1pdF9zbG93KHN0cnVjdCBzb2NrICpzaywKIAkgKi8KIAkgCiAJ ZG8gewotCQljaGFyICpkYXRhOworCQl1bnNpZ25lZCBjaGFyICpkYXRhOwogCQlzdHJ1Y3Qg c2tfYnVmZiAqIHNrYjsKIAogCQkvKgpAQCAtNTU1LDcgKzU1NCw3IEBAIGludCBpcF9idWls ZF94bWl0X3Nsb3coc3RydWN0IHNvY2sgKnNrLAogCQkgKglVc2VyIGRhdGEgY2FsbGJhY2sK IAkJICovCiAKLQkJaWYgKGdldGZyYWcoZnJhZywgZGF0YSwgb2Zmc2V0LCBmcmFnbGVuLWZy YWdoZWFkZXJsZW4pKSB7CisJCWlmIChnZXRmcmFnKGZyYWcsIChjaGFyICopIGRhdGEsIG9m ZnNldCwgZnJhZ2xlbi1mcmFnaGVhZGVybGVuKSkgewogCQkJZXJyID0gLUVGQVVMVDsKIAkJ CWtmcmVlX3NrYihza2IpOwogCQkJZ290byBlcnJvcjsKZGlmZiAtLWdpdCBhL3BmaW5ldC9s aW51eC1zcmMvbmV0L2lwdjQvaXBfc29ja2dsdWUuYyBiL3BmaW5ldC9saW51eC1zcmMvbmV0 L2lwdjQvaXBfc29ja2dsdWUuYwppbmRleCAzNjlhNjc3MC4uYmFjOTA3NjYgMTAwNjQ0Ci0t LSBhL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjQvaXBfc29ja2dsdWUuYworKysgYi9wZmlu ZXQvbGludXgtc3JjL25ldC9pcHY0L2lwX3NvY2tnbHVlLmMKQEAgLTQwNSw3ICs0MDUsNyBA QCBpbnQgaXBfc2V0c29ja29wdChzdHJ1Y3Qgc29jayAqc2ssIGludCBsZXZlbCwgaW50IG9w dG5hbWUsIGNoYXIgKm9wdHZhbCwgaW50IG9wdAogCQkJc3RydWN0IGlwX29wdGlvbnMgKiBv cHQgPSBOVUxMOwogCQkJaWYgKG9wdGxlbiA+IDQwIHx8IG9wdGxlbiA8IDApCiAJCQkJcmV0 dXJuIC1FSU5WQUw7Ci0JCQllcnIgPSBpcF9vcHRpb25zX2dldCgmb3B0LCBvcHR2YWwsIG9w dGxlbiwgMSk7CisJCQllcnIgPSBpcF9vcHRpb25zX2dldCgmb3B0LCAodW5zaWduZWQgY2hh ciAqKSBvcHR2YWwsIG9wdGxlbiwgMSk7CiAJCQlpZiAoZXJyKQogCQkJCXJldHVybiBlcnI7 CiAJCQlsb2NrX3NvY2soc2spOwpkaWZmIC0tZ2l0IGEvcGZpbmV0L2xpbnV4LXNyYy9uZXQv aXB2NC9yYXcuYyBiL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjQvcmF3LmMKaW5kZXggYTBh YWE4MmUuLjU0NjBmZjM1IDEwMDY0NAotLS0gYS9wZmluZXQvbGludXgtc3JjL25ldC9pcHY0 L3Jhdy5jCisrKyBiL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjQvcmF3LmMKQEAgLTIxMCw3 ICsyMTAsNyBAQCBzdHJ1Y3QgcmF3ZmFrZWhkcgogc3RhdGljIGludCByYXdfZ2V0ZnJhZyhj b25zdCB2b2lkICpwLCBjaGFyICp0bywgdW5zaWduZWQgaW50IG9mZnNldCwgdW5zaWduZWQg aW50IGZyYWdsZW4pCiB7CiAJc3RydWN0IHJhd2Zha2VoZHIgKnJmaCA9IChzdHJ1Y3QgcmF3 ZmFrZWhkciAqKSBwOwotCXJldHVybiBtZW1jcHlfZnJvbWlvdmVjZW5kKHRvLCByZmgtPmlv diwgb2Zmc2V0LCBmcmFnbGVuKTsKKwlyZXR1cm4gbWVtY3B5X2Zyb21pb3ZlY2VuZCgodW5z aWduZWQgY2hhciAqKSB0bywgcmZoLT5pb3YsIG9mZnNldCwgZnJhZ2xlbik7CiB9CiAKIC8q CkBAIC0yMjEsNyArMjIxLDcgQEAgc3RhdGljIGludCByYXdfZ2V0cmF3ZnJhZyhjb25zdCB2 b2lkICpwLCBjaGFyICp0bywgdW5zaWduZWQgaW50IG9mZnNldCwgdW5zaWduZWQKIHsKIAlz dHJ1Y3QgcmF3ZmFrZWhkciAqcmZoID0gKHN0cnVjdCByYXdmYWtlaGRyICopIHA7CiAKLQlp ZiAobWVtY3B5X2Zyb21pb3ZlY2VuZCh0bywgcmZoLT5pb3YsIG9mZnNldCwgZnJhZ2xlbikp CisJaWYgKG1lbWNweV9mcm9taW92ZWNlbmQoKHVuc2lnbmVkIGNoYXIgKikgdG8sIHJmaC0+ aW92LCBvZmZzZXQsIGZyYWdsZW4pKQogCQlyZXR1cm4gLUVGQVVMVDsKIAogCWlmIChvZmZz ZXQ9PTApIHsKZGlmZiAtLWdpdCBhL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjQvdGNwLmMg Yi9wZmluZXQvbGludXgtc3JjL25ldC9pcHY0L3RjcC5jCmluZGV4IDEzZTU3OTU0Li41YTA0 YzJkMiAxMDA2NDQKLS0tIGEvcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2NC90Y3AuYworKysg Yi9wZmluZXQvbGludXgtc3JjL25ldC9pcHY0L3RjcC5jCkBAIC04NjMsNyArODYzLDggQEAg aW50IHRjcF9kb19zZW5kbXNnKHN0cnVjdCBzb2NrICpzaywgc3RydWN0IG1zZ2hkciAqbXNn KQogCQkJCQl9IGVsc2UgewogCQkJCQkJc2tiLT5jc3VtID0KIAkJCQkJCQljc3VtX2FuZF9j b3B5X2Zyb21fdXNlcigKLQkJCQkJCQlmcm9tLCBza2JfcHV0KHNrYiwgY29weSksCisJCQkJ CQkJKGNvbnN0IGNoYXIgKikgZnJvbSwKKwkJCQkJCQkoY2hhciAqKSBza2JfcHV0KHNrYiwg Y29weSksCiAJCQkJCQkJY29weSwgc2tiLT5jc3VtLCAmZXJyKTsKIAkJCQkJfQogCkBAIC05 NzYsOCArOTc3LDggQEAgaW50IHRjcF9kb19zZW5kbXNnKHN0cnVjdCBzb2NrICpzaywgc3Ry dWN0IG1zZ2hkciAqbXNnKQogCQkJICogUmVzZXJ2ZSBoZWFkZXIgc3BhY2UgYW5kIGNoZWNr c3VtIHRoZSBkYXRhLgogCQkJICovCiAJCQlza2JfcmVzZXJ2ZShza2IsIE1BWF9IRUFERVIg KyBzay0+cHJvdC0+bWF4X2hlYWRlcik7Ci0JCQlza2ItPmNzdW0gPSBjc3VtX2FuZF9jb3B5 X2Zyb21fdXNlcihmcm9tLAotCQkJCQlza2JfcHV0KHNrYiwgY29weSksIGNvcHksIDAsICZl cnIpOworCQkJc2tiLT5jc3VtID0gY3N1bV9hbmRfY29weV9mcm9tX3VzZXIoKGNvbnN0IGNo YXIgKikgZnJvbSwKKwkJCQkJKGNoYXIgKikgc2tiX3B1dChza2IsIGNvcHkpLCBjb3B5LCAw LCAmZXJyKTsKIAogCQkJaWYgKGVycikKIAkJCQlnb3RvIGRvX2ZhdWx0OwpAQCAtMTA2OSw3 ICsxMDcwLDcgQEAgc3RhdGljIGludCB0Y3BfcmVjdl91cmcoc3RydWN0IHNvY2sgKiBzaywg aW50IG5vbmJsb2NrLAogCWxvY2tfc29jayhzayk7CiAJaWYgKHRwLT51cmdfZGF0YSAmIFVS R19WQUxJRCkgewogCQlpbnQgZXJyID0gMDsKLQkJY2hhciBjID0gdHAtPnVyZ19kYXRhOwor CQl1bnNpZ25lZCBjaGFyIGMgPSB0cC0+dXJnX2RhdGE7CiAKIAkJaWYgKCEoZmxhZ3MgJiBN U0dfUEVFSykpCiAJCQl0cC0+dXJnX2RhdGEgPSBVUkdfUkVBRDsKZGlmZiAtLWdpdCBhL3Bm aW5ldC9saW51eC1zcmMvbmV0L2lwdjQvdGNwX2lwdjQuYyBiL3BmaW5ldC9saW51eC1zcmMv bmV0L2lwdjQvdGNwX2lwdjQuYwppbmRleCBhYzU1NTQ3YS4uODI5NjZiMzAgMTAwNjQ0Ci0t LSBhL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjQvdGNwX2lwdjQuYworKysgYi9wZmluZXQv bGludXgtc3JjL25ldC9pcHY0L3RjcF9pcHY0LmMKQEAgLTk2NSw3ICs5NjUsOCBAQCB2b2lk IHRjcF92NF9zZW5kX2NoZWNrKHN0cnVjdCBzb2NrICpzaywgc3RydWN0IHRjcGhkciAqdGgs IGludCBsZW4sCiB7CiAJdGgtPmNoZWNrID0gMDsKIAl0aC0+Y2hlY2sgPSB0Y3BfdjRfY2hl Y2sodGgsIGxlbiwgc2stPnNhZGRyLCBzay0+ZGFkZHIsCi0JCQkJIGNzdW1fcGFydGlhbCgo Y2hhciAqKXRoLCB0aC0+ZG9mZjw8Miwgc2tiLT5jc3VtKSk7CisJCQkJIGNzdW1fcGFydGlh bCgoY29uc3QgdW5zaWduZWQgY2hhciAqKSB0aCwKKwkJCQkJICAgICAgdGgtPmRvZmY8PDIs IHNrYi0+Y3N1bSkpOwogfQogCiAvKgpAQCAtMTE3Nyw3ICsxMTc4LDggQEAgc3RhdGljIHZv aWQgdGNwX3Y0X3NlbmRfc3luYWNrKHN0cnVjdCBzb2NrICpzaywgc3RydWN0IG9wZW5fcmVx dWVzdCAqcmVxKQogCiAJCXRoLT5jaGVjayA9IHRjcF92NF9jaGVjayh0aCwgc2tiLT5sZW4s CiAJCQkJCSByZXEtPmFmLnY0X3JlcS5sb2NfYWRkciwgcmVxLT5hZi52NF9yZXEucm10X2Fk ZHIsCi0JCQkJCSBjc3VtX3BhcnRpYWwoKGNoYXIgKil0aCwgc2tiLT5sZW4sIHNrYi0+Y3N1 bSkpOworCQkJCQkgY3N1bV9wYXJ0aWFsKChjb25zdCB1bnNpZ25lZCBjaGFyICopIHRoLCBz a2ItPmxlbiwKKwkJCQkJCSAgICAgIHNrYi0+Y3N1bSkpOwogCiAJCWlwX2J1aWxkX2FuZF9z ZW5kX3BrdChza2IsIHNrLCByZXEtPmFmLnY0X3JlcS5sb2NfYWRkciwKIAkJCQkgICAgICBy ZXEtPmFmLnY0X3JlcS5ybXRfYWRkciwgcmVxLT5hZi52NF9yZXEub3B0KTsKQEAgLTE3MjMs NyArMTcyNSw3IEBAIGludCB0Y3BfdjRfcmN2KHN0cnVjdCBza19idWZmICpza2IsIHVuc2ln bmVkIHNob3J0IGxlbikKIAkvKiBUcnkgdG8gdXNlIHRoZSBkZXZpY2UgY2hlY2tzdW0gaWYg cHJvdmlkZWQuICovCiAJc3dpdGNoIChza2ItPmlwX3N1bW1lZCkgewogCWNhc2UgQ0hFQ0tT VU1fTk9ORToKLQkJc2tiLT5jc3VtID0gY3N1bV9wYXJ0aWFsKChjaGFyICopdGgsIGxlbiwg MCk7CisJCXNrYi0+Y3N1bSA9IGNzdW1fcGFydGlhbCgoY29uc3QgdW5zaWduZWQgY2hhciAq KSB0aCwgbGVuLCAwKTsKIAljYXNlIENIRUNLU1VNX0hXOgogCQlpZiAodGNwX3Y0X2NoZWNr KHRoLGxlbixza2ItPm5oLmlwaC0+c2FkZHIsc2tiLT5uaC5pcGgtPmRhZGRyLHNrYi0+Y3N1 bSkpIHsKIAkJCU5FVERFQlVHKHByaW50ayhLRVJOX0RFQlVHICJUQ1B2NCBiYWQgY2hlY2tz dW0gIgpkaWZmIC0tZ2l0IGEvcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2NC90Y3Bfb3V0cHV0 LmMgYi9wZmluZXQvbGludXgtc3JjL25ldC9pcHY0L3RjcF9vdXRwdXQuYwppbmRleCBhMTVi N2IzMC4uY2RiNDIwNGEgMTAwNjQ0Ci0tLSBhL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjQv dGNwX291dHB1dC5jCisrKyBiL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjQvdGNwX291dHB1 dC5jCkBAIC0yMzAsNyArMjMwLDggQEAgc3RhdGljIGludCB0Y3BfZnJhZ21lbnQoc3RydWN0 IHNvY2sgKnNrLCBzdHJ1Y3Qgc2tfYnVmZiAqc2tiLCB1MzIgbGVuKQogCVRDUF9TS0JfQ0Io YnVmZiktPnNhY2tlZCA9IDA7CiAKIAkvKiBDb3B5IGFuZCBjaGVja3N1bSBkYXRhIHRhaWwg aW50byB0aGUgbmV3IGJ1ZmZlci4gKi8KLQlidWZmLT5jc3VtID0gY3N1bV9wYXJ0aWFsX2Nv cHkoc2tiLT5kYXRhICsgbGVuLCBza2JfcHV0KGJ1ZmYsIG5zaXplKSwKKwlidWZmLT5jc3Vt ID0gY3N1bV9wYXJ0aWFsX2NvcHkoKGNvbnN0IGNoYXIgKikgc2tiLT5kYXRhICsgbGVuLAor CQkJCSAgICAgICAoY2hhciAqKSBza2JfcHV0KGJ1ZmYsIG5zaXplKSwKIAkJCQkgICAgICAg bnNpemUsIDApOwogCiAJLyogVGhpcyB0YWtlcyBjYXJlIG9mIHRoZSBGSU4gc2VxdWVuY2Ug bnVtYmVyIHRvby4gKi8KQEAgLTQ5NSw4ICs0OTYsOCBAQCBzdGF0aWMgdm9pZCB0Y3BfcmV0 cmFuc190cnlfY29sbGFwc2Uoc3RydWN0IHNvY2sgKnNrLCBzdHJ1Y3Qgc2tfYnVmZiAqc2ti LCBpbnQgbQogCQkJLyogT3B0aW1pemUsIGFjdHVhbGx5IHdlIGNvdWxkIGFsc28gY29tYmlu ZSBuZXh0X3NrYi0+Y3N1bQogCQkJICogdG8gc2tiLT5jc3VtIHVzaW5nIGEgc2luZ2xlIGFk ZCB3L2NhcnJ5IG9wZXJhdGlvbiB0b28uCiAJCQkgKi8KLQkJCXNrYi0+Y3N1bSA9IGNzdW1f cGFydGlhbF9jb3B5KG5leHRfc2tiLT5kYXRhLAotCQkJCQkJICAgICAgc2tiX3B1dChza2Is IG5leHRfc2tiX3NpemUpLAorCQkJc2tiLT5jc3VtID0gY3N1bV9wYXJ0aWFsX2NvcHkoKGNv bnN0IGNoYXIgKikgbmV4dF9za2ItPmRhdGEsCisJCQkJCQkgICAgICAoY2hhciAqKSBza2Jf cHV0KHNrYiwgbmV4dF9za2Jfc2l6ZSksCiAJCQkJCQkgICAgICBuZXh0X3NrYl9zaXplLCBz a2ItPmNzdW0pOwogCQl9CiAJCmRpZmYgLS1naXQgYS9wZmluZXQvbGludXgtc3JjL25ldC9p cHY0L3VkcC5jIGIvcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2NC91ZHAuYwppbmRleCA1MmJh ZTE4ZS4uNmM3NzQxMmIgMTAwNjQ0Ci0tLSBhL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjQv dWRwLmMKKysrIGIvcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2NC91ZHAuYwpAQCAtNTA2LDEw ICs1MDYsMTIgQEAgc3RhdGljIGludCB1ZHBfZ2V0ZnJhZyhjb25zdCB2b2lkICpwLCBjaGFy ICogdG8sIHVuc2lnbmVkIGludCBvZmZzZXQsIHVuc2lnbmVkIGkKIHsKIAlzdHJ1Y3QgdWRw ZmFrZWhkciAqdWZoID0gKHN0cnVjdCB1ZHBmYWtlaGRyICopcDsKIAlpZiAob2Zmc2V0PT0w KSB7Ci0JCWlmIChjc3VtX3BhcnRpYWxfY29weV9mcm9taW92ZWNlbmQodG8rc2l6ZW9mKHN0 cnVjdCB1ZHBoZHIpLCB1ZmgtPmlvdiwgb2Zmc2V0LAotCQkJCQkJICAgZnJhZ2xlbi1zaXpl b2Yoc3RydWN0IHVkcGhkciksICZ1ZmgtPndjaGVjaykpCisJCWlmIChjc3VtX3BhcnRpYWxf Y29weV9mcm9taW92ZWNlbmQoKHVuc2lnbmVkIGNoYXIgKikgdG8rc2l6ZW9mKHN0cnVjdCB1 ZHBoZHIpLAorCQkJCQkJICAgdWZoLT5pb3YsIG9mZnNldCwKKwkJCQkJCSAgIGZyYWdsZW4t c2l6ZW9mKHN0cnVjdCB1ZHBoZHIpLAorCQkJCQkJICAgKGludCAqKSAmdWZoLT53Y2hlY2sp KQogCQkJcmV0dXJuIC1FRkFVTFQ7Ci0gCQl1ZmgtPndjaGVjayA9IGNzdW1fcGFydGlhbCgo Y2hhciAqKXVmaCwgc2l6ZW9mKHN0cnVjdCB1ZHBoZHIpLAorCQl1ZmgtPndjaGVjayA9IGNz dW1fcGFydGlhbCgoY29uc3QgdW5zaWduZWQgY2hhciAqKSB1ZmgsIHNpemVvZihzdHJ1Y3Qg dWRwaGRyKSwKIAkJCQkJICAgdWZoLT53Y2hlY2spOwogCQl1ZmgtPnVoLmNoZWNrID0gY3N1 bV90Y3B1ZHBfbWFnaWModWZoLT5zYWRkciwgdWZoLT5kYWRkciwKIAkJCQkJICBudG9ocyh1 ZmgtPnVoLmxlbiksCkBAIC01MTksOCArNTIxLDkgQEAgc3RhdGljIGludCB1ZHBfZ2V0ZnJh Zyhjb25zdCB2b2lkICpwLCBjaGFyICogdG8sIHVuc2lnbmVkIGludCBvZmZzZXQsIHVuc2ln bmVkIGkKIAkJbWVtY3B5KHRvLCB1ZmgsIHNpemVvZihzdHJ1Y3QgdWRwaGRyKSk7CiAJCXJl dHVybiAwOwogCX0KLQlpZiAoY3N1bV9wYXJ0aWFsX2NvcHlfZnJvbWlvdmVjZW5kKHRvLCB1 ZmgtPmlvdiwgb2Zmc2V0LXNpemVvZihzdHJ1Y3QgdWRwaGRyKSwKLQkJCQkJICAgZnJhZ2xl biwgJnVmaC0+d2NoZWNrKSkKKwlpZiAoY3N1bV9wYXJ0aWFsX2NvcHlfZnJvbWlvdmVjZW5k KCh1bnNpZ25lZCBjaGFyICopIHRvLCB1ZmgtPmlvdiwKKwkJCQkJICAgb2Zmc2V0LXNpemVv ZihzdHJ1Y3QgdWRwaGRyKSwKKwkJCQkJICAgZnJhZ2xlbiwgKGludCAqKSAmdWZoLT53Y2hl Y2spKQogCQlyZXR1cm4gLUVGQVVMVDsKIAlyZXR1cm4gMDsKIH0KQEAgLTUzOCwxMCArNTQx LDExIEBAIHN0YXRpYyBpbnQgdWRwX2dldGZyYWdfbm9zdW0oY29uc3Qgdm9pZCAqcCwgY2hh ciAqIHRvLCB1bnNpZ25lZCBpbnQgb2Zmc2V0LCB1bnNpCiAKIAlpZiAob2Zmc2V0PT0wKSB7 CiAJCW1lbWNweSh0bywgdWZoLCBzaXplb2Yoc3RydWN0IHVkcGhkcikpOwotCQlyZXR1cm4g bWVtY3B5X2Zyb21pb3ZlY2VuZCh0bytzaXplb2Yoc3RydWN0IHVkcGhkciksIHVmaC0+aW92 LCBvZmZzZXQsCisJCXJldHVybiBtZW1jcHlfZnJvbWlvdmVjZW5kKCh1bnNpZ25lZCBjaGFy ICopIHRvK3NpemVvZihzdHJ1Y3QgdWRwaGRyKSwKKwkJCQkJICAgdWZoLT5pb3YsIG9mZnNl dCwKIAkJCQkJICAgZnJhZ2xlbi1zaXplb2Yoc3RydWN0IHVkcGhkcikpOwogCX0KLQlyZXR1 cm4gbWVtY3B5X2Zyb21pb3ZlY2VuZCh0bywgdWZoLT5pb3YsIG9mZnNldC1zaXplb2Yoc3Ry dWN0IHVkcGhkciksCisJcmV0dXJuIG1lbWNweV9mcm9taW92ZWNlbmQoKHVuc2lnbmVkIGNo YXIgKikgdG8sIHVmaC0+aW92LCBvZmZzZXQtc2l6ZW9mKHN0cnVjdCB1ZHBoZHIpLAogCQkJ CSAgIGZyYWdsZW4pOwogfQogCkBAIC0xMTAyLDcgKzExMDYsNyBAQCBpbnQgdWRwX3Jjdihz dHJ1Y3Qgc2tfYnVmZiAqc2tiLCB1bnNpZ25lZCBzaG9ydCBsZW4pCiAJaWYgKHVoLT5jaGVj ayAmJgogCSAgICAoKChza2ItPmlwX3N1bW1lZD09Q0hFQ0tTVU1fSFcpJiZ1ZHBfY2hlY2so dWgsdWxlbixzYWRkcixkYWRkcixza2ItPmNzdW0pKSB8fAogCSAgICAgKChza2ItPmlwX3N1 bW1lZD09Q0hFQ0tTVU1fTk9ORSkgJiYKLQkgICAgICAodWRwX2NoZWNrKHVoLHVsZW4sc2Fk ZHIsZGFkZHIsIGNzdW1fcGFydGlhbCgoY2hhciopdWgsIHVsZW4sIDApKSkpKSkKKwkgICAg ICAodWRwX2NoZWNrKHVoLHVsZW4sc2FkZHIsZGFkZHIsIGNzdW1fcGFydGlhbCgoY29uc3Qg dW5zaWduZWQgY2hhciopIHVoLCB1bGVuLCAwKSkpKSkpCiAJCWdvdG8gY3N1bV9lcnJvcjsK ICNlbHNlCiAJaWYgKHVoLT5jaGVjaz09MCkKZGlmZiAtLWdpdCBhL3BmaW5ldC9saW51eC1z cmMvbmV0L2lwdjYvYWRkcmNvbmYuYyBiL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjYvYWRk cmNvbmYuYwppbmRleCBkMzkyYjNmZC4uNjFhMzMzY2IgMTAwNjQ0Ci0tLSBhL3BmaW5ldC9s aW51eC1zcmMvbmV0L2lwdjYvYWRkcmNvbmYuYworKysgYi9wZmluZXQvbGludXgtc3JjL25l dC9pcHY2L2FkZHJjb25mLmMKQEAgLTI2NCw2ICsyNjQsNyBAQCBzdHJ1Y3QgaW5ldDZfZGV2 ICogaXB2Nl9maW5kX2lkZXYoc3RydWN0IGRldmljZSAqZGV2KQogCXJldHVybiBpZGV2Owog fQogCisjaWYgMAogc3RhdGljIHZvaWQgYWRkcmNvbmZfZm9yd2FyZF9jaGFuZ2Uoc3RydWN0 IGluZXQ2X2RldiAqaWRldikKIHsKIAlpbnQgaTsKQEAgLTI3Niw2ICsyNzcsNyBAQCBzdGF0 aWMgdm9pZCBhZGRyY29uZl9mb3J3YXJkX2NoYW5nZShzdHJ1Y3QgaW5ldDZfZGV2ICppZGV2 KQogCQkJaWRldi0+Y25mLmZvcndhcmRpbmcgPSBpcHY2X2RldmNvbmYuZm9yd2FyZGluZzsK IAl9CiB9CisjZW5kaWYKIAogc3RydWN0IGluZXQ2X2RldiAqIGlwdjZfZ2V0X2lkZXYoc3Ry dWN0IGRldmljZSAqZGV2KQogewpkaWZmIC0tZ2l0IGEvcGZpbmV0L2xpbnV4LXNyYy9uZXQv aXB2Ni9pY21wdjYuYyBiL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjYvaWNtcHY2LmMKaW5k ZXggOWQ3MDE3NjQuLjM4ZDkzZmFhIDEwMDY0NAotLS0gYS9wZmluZXQvbGludXgtc3JjL25l dC9pcHY2L2ljbXB2Ni5jCisrKyBiL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjYvaWNtcHY2 LmMKQEAgLTM2NCw3ICszNjQsNyBAQCBzdGF0aWMgdm9pZCBpY21wdjZfZWNob19yZXBseShz dHJ1Y3Qgc2tfYnVmZiAqc2tiKQogCXVuc2lnbmVkIGNoYXIgKmRhdGE7CiAJaW50IGxlbjsK IAotCWRhdGEgPSAoY2hhciAqKSAoaWNtcGggKyAxKTsKKwlkYXRhID0gKHVuc2lnbmVkIGNo YXIgKikgKGljbXBoICsgMSk7CiAKIAlzYWRkciA9ICZoZHItPmRhZGRyOwogCkBAIC00NzQs NyArNDc0LDcgQEAgaW50IGljbXB2Nl9yY3Yoc3RydWN0IHNrX2J1ZmYgKnNrYiwgdW5zaWdu ZWQgbG9uZyBsZW4pCiAJLyogUGVyZm9ybSBjaGVja3N1bS4gKi8KIAlzd2l0Y2ggKHNrYi0+ aXBfc3VtbWVkKSB7CQogCWNhc2UgQ0hFQ0tTVU1fTk9ORToKLQkJc2tiLT5jc3VtID0gY3N1 bV9wYXJ0aWFsKChjaGFyICopaGRyLCBsZW4sIDApOworCQlza2ItPmNzdW0gPSBjc3VtX3Bh cnRpYWwoKGNvbnN0IHVuc2lnbmVkIGNoYXIgKikgaGRyLCBsZW4sIDApOwogCWNhc2UgQ0hF Q0tTVU1fSFc6CiAJCWlmIChjc3VtX2lwdjZfbWFnaWMoc2FkZHIsIGRhZGRyLCBsZW4sIElQ UFJPVE9fSUNNUFY2LCAKIAkJCQkgICAgc2tiLT5jc3VtKSkgewpAQCAtNTQzLDcgKzU0Myw3 IEBAIGludCBpY21wdjZfcmN2KHN0cnVjdCBza19idWZmICpza2IsIHVuc2lnbmVkIGxvbmcg bGVuKQogCWNhc2UgSUNNUFY2X1RJTUVfRVhDRUVEOgogCWNhc2UgSUNNUFY2X1BBUkFNUFJP QjoKIAkJaWNtcHY2X25vdGlmeShza2IsIHR5cGUsIGhkci0+aWNtcDZfY29kZSwgaGRyLT5p Y21wNl9tdHUsCi0JCQkgICAgICAoY2hhciAqKSAoaGRyICsgMSksIHVsZW4pOworCQkJICAg ICAgKHVuc2lnbmVkIGNoYXIgKikgKGhkciArIDEpLCB1bGVuKTsKIAkJYnJlYWs7CiAKIAlj YXNlIE5ESVNDX1JPVVRFUl9TT0xJQ0lUQVRJT046CkBAIC01NzksNyArNTc5LDcgQEAgaW50 IGljbXB2Nl9yY3Yoc3RydWN0IHNrX2J1ZmYgKnNrYiwgdW5zaWduZWQgbG9uZyBsZW4pCiAJ CSAqLwogCiAJCWljbXB2Nl9ub3RpZnkoc2tiLCB0eXBlLCBoZHItPmljbXA2X2NvZGUsIGhk ci0+aWNtcDZfbXR1LAotCQkJICAgICAgKGNoYXIgKikgKGhkciArIDEpLCB1bGVuKTsKKwkJ CSAgICAgICh1bnNpZ25lZCBjaGFyICopIChoZHIgKyAxKSwgdWxlbik7CiAJfTsKIAlrZnJl ZV9za2Ioc2tiKTsKIAlyZXR1cm4gMDsKZGlmZiAtLWdpdCBhL3BmaW5ldC9saW51eC1zcmMv bmV0L2lwdjYvaXA2X291dHB1dC5jIGIvcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2Ni9pcDZf b3V0cHV0LmMKaW5kZXggZTA2YWQ1OWEuLmIyZTc4MTEzIDEwMDY0NAotLS0gYS9wZmluZXQv bGludXgtc3JjL25ldC9pcHY2L2lwNl9vdXRwdXQuYworKysgYi9wZmluZXQvbGludXgtc3Jj L25ldC9pcHY2L2lwNl9vdXRwdXQuYwpAQCAtMTgxLDEzICsxODEsMTAgQEAgaW50IGlwNl9u ZF9oZHIoc3RydWN0IHNvY2sgKnNrLCBzdHJ1Y3Qgc2tfYnVmZiAqc2tiLCBzdHJ1Y3QgZGV2 aWNlICpkZXYsCiB7CiAJc3RydWN0IGlwdjZfcGluZm8gKm5wID0gJnNrLT5uZXRfcGluZm8u YWZfaW5ldDY7CiAJc3RydWN0IGlwdjZoZHIgKmhkcjsKLQlpbnQgdG90bGVuOwogCiAJc2ti LT5wcm90b2NvbCA9IF9fY29uc3RhbnRfaHRvbnMoRVRIX1BfSVBWNik7CiAJc2tiLT5kZXYg PSBkZXY7CiAKLQl0b3RsZW4gPSBsZW4gKyBzaXplb2Yoc3RydWN0IGlwdjZoZHIpOwotCiAJ aGRyID0gKHN0cnVjdCBpcHY2aGRyICopIHNrYl9wdXQoc2tiLCBzaXplb2Yoc3RydWN0IGlw djZoZHIpKTsKIAlza2ItPm5oLmlwdjZoID0gaGRyOwogCkBAIC0zNDQsNyArMzQxLDcgQEAg c3RhdGljIGludCBpcDZfZnJhZ194bWl0KHN0cnVjdCBzb2NrICpzaywgaW5ldF9nZXRmcmFn X3QgZ2V0ZnJhZywKIAlwcmV2X2hkciA9IGlwdjZfYnVpbGRfZnJhZ2hkcihsYXN0X3NrYiwg cHJldl9oZHIsIGZyYWdfb2ZmKTsKIAlmaGRyX2Rpc3QgPSBwcmV2X2hkciAtIGxhc3Rfc2ti LT5kYXRhOwogCi0JZXJyID0gZ2V0ZnJhZyhkYXRhLCAmaGRyLT5zYWRkciwgbGFzdF9za2It PnRhaWwsIGRhdGFfb2ZmLCBsYXN0X2xlbik7CisJZXJyID0gZ2V0ZnJhZyhkYXRhLCAmaGRy LT5zYWRkciwgKGNoYXIgKikgbGFzdF9za2ItPnRhaWwsIGRhdGFfb2ZmLCBsYXN0X2xlbik7 CiAKIAlpZiAoIWVycikgewogCQl3aGlsZSAobmZyYWdzLS0pIHsKQEAgLTM3NSw3ICszNzIs NyBAQCBzdGF0aWMgaW50IGlwNl9mcmFnX3htaXQoc3RydWN0IHNvY2sgKnNrLCBpbmV0X2dl dGZyYWdfdCBnZXRmcmFnLAogCQkJCWRhdGFfb2ZmID0gMDsKIAkJCX0KIAotCQkJZXJyID0g Z2V0ZnJhZyhkYXRhLCAmaGRyLT5zYWRkcixza2JfcHV0KHNrYiwgZnJhZ19sZW4pLAorCQkJ ZXJyID0gZ2V0ZnJhZyhkYXRhLCAmaGRyLT5zYWRkciwgKGNoYXIgKikgc2tiX3B1dChza2Is IGZyYWdfbGVuKSwKIAkJCQkgICAgICBkYXRhX29mZiwgZnJhZ19sZW4pOwogCiAJCQlpZiAo ZXJyKSB7CmRpZmYgLS1naXQgYS9wZmluZXQvbGludXgtc3JjL25ldC9pcHY2L21jYXN0LmMg Yi9wZmluZXQvbGludXgtc3JjL25ldC9pcHY2L21jYXN0LmMKaW5kZXggODdlOWU5MDkuLmNk NDQ4ZDMxIDEwMDY0NAotLS0gYS9wZmluZXQvbGludXgtc3JjL25ldC9pcHY2L21jYXN0LmMK KysrIGIvcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2Ni9tY2FzdC5jCkBAIC00NTYsNyArNDU2 LDcgQEAgdm9pZCBpZ21wNl9zZW5kKHN0cnVjdCBpbjZfYWRkciAqYWRkciwgc3RydWN0IGRl dmljZSAqZGV2LCBpbnQgdHlwZSkKIAlza2JfcmVzZXJ2ZShza2IsIChkZXYtPmhhcmRfaGVh ZGVyX2xlbiArIDE1KSAmIH4xNSk7CiAJaWYgKGRldi0+aGFyZF9oZWFkZXIpIHsKIAkJdW5z aWduZWQgY2hhciBoYVtNQVhfQUREUl9MRU5dOwotCQluZGlzY19tY19tYXAoc25kX2FkZHIs IGhhLCBkZXYsIDEpOworCQluZGlzY19tY19tYXAoc25kX2FkZHIsIChjaGFyICopIGhhLCBk ZXYsIDEpOwogCQlkZXYtPmhhcmRfaGVhZGVyKHNrYiwgZGV2LCBFVEhfUF9JUFY2LCBoYSwg TlVMTCwgZnVsbF9sZW4pOwogCX0KIApkaWZmIC0tZ2l0IGEvcGZpbmV0L2xpbnV4LXNyYy9u ZXQvaXB2Ni9uZGlzYy5jIGIvcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2Ni9uZGlzYy5jCmlu ZGV4IDYxZjk1MGQyLi5kOWZhNDdjMSAxMDA2NDQKLS0tIGEvcGZpbmV0L2xpbnV4LXNyYy9u ZXQvaXB2Ni9uZGlzYy5jCisrKyBiL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjYvbmRpc2Mu YwpAQCAtMTkyLDcgKzE5Miw3IEBAIHN0YXRpYyBpbnQgbmRpc2NfY29uc3RydWN0b3Ioc3Ry dWN0IG5laWdoYm91ciAqbmVpZ2gpCiAJfSBlbHNlIHsKIAkJaWYgKGFkZHJfdHlwZSZJUFY2 X0FERFJfTVVMVElDQVNUKSB7CiAJCQluZWlnaC0+bnVkX3N0YXRlID0gTlVEX05PQVJQOwot CQkJbmRpc2NfbWNfbWFwKGFkZHIsIG5laWdoLT5oYSwgZGV2LCAxKTsKKwkJCW5kaXNjX21j X21hcChhZGRyLCAoY2hhciAqKSBuZWlnaC0+aGEsIGRldiwgMSk7CiAJCX0gZWxzZSBpZiAo ZGV2LT5mbGFncyYoSUZGX05PQVJQfElGRl9MT09QQkFDSykpIHsKIAkJCW5laWdoLT5udWRf c3RhdGUgPSBOVURfTk9BUlA7CiAJCQltZW1jcHkobmVpZ2gtPmhhLCBkZXYtPmRldl9hZGRy LCBkZXYtPmFkZHJfbGVuKTsKQEAgLTI2NSw3ICsyNjUsNyBAQCBuZGlzY19idWlsZF9sbF9o ZHIoc3RydWN0IHNrX2J1ZmYgKnNrYiwgc3RydWN0IGRldmljZSAqZGV2LAogCiAJaWYgKGRl di0+aGFyZF9oZWFkZXIpIHsKIAkJaWYgKGlwdjZfYWRkcl90eXBlKGRhZGRyKSAmIElQVjZf QUREUl9NVUxUSUNBU1QpIHsKLQkJCW5kaXNjX21jX21hcChkYWRkciwgaGEsIGRldiwgMSk7 CisJCQluZGlzY19tY19tYXAoZGFkZHIsIChjaGFyICopIGhhLCBkZXYsIDEpOwogCQkJaF9k ZXN0ID0gaGE7CiAJCX0gZWxzZSBpZiAobmVpZ2gpIHsKIAkJCWhfZGVzdCA9IG5laWdoLT5o YTsKQEAgLTc4Miw3ICs3ODIsNiBAQCB2b2lkIG5kaXNjX3NlbmRfcmVkaXJlY3Qoc3RydWN0 IHNrX2J1ZmYgKnNrYiwgc3RydWN0IG5laWdoYm91ciAqbmVpZ2gsCiAJdTggKm9wdDsKIAlp bnQgcmRfbGVuOwogCWludCBlcnI7Ci0JaW50IGhsZW47CiAKIAlkZXYgPSBza2ItPmRldjsK IAlydCA9IHJ0Nl9sb29rdXAoJnNrYi0+bmguaXB2NmgtPnNhZGRyLCBOVUxMLCBkZXYtPmlm aW5kZXgsIDEpOwpAQCAtODMxLDggKzgzMCw2IEBAIHZvaWQgbmRpc2Nfc2VuZF9yZWRpcmVj dChzdHJ1Y3Qgc2tfYnVmZiAqc2tiLCBzdHJ1Y3QgbmVpZ2hib3VyICpuZWlnaCwKIAkJcmV0 dXJuOwogCX0KIAotCWhsZW4gPSAwOwotCiAJaWYgKG5kaXNjX2J1aWxkX2xsX2hkcihidWZm LCBkZXYsICZza2ItPm5oLmlwdjZoLT5zYWRkciwgTlVMTCwgbGVuKSA9PSAwKSB7CiAJCWtm cmVlX3NrYihidWZmKTsKIAkJcmV0dXJuOwpkaWZmIC0tZ2l0IGEvcGZpbmV0L2xpbnV4LXNy Yy9uZXQvaXB2Ni9yYXdfaXB2Ni5jIGIvcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2Ni9yYXdf aXB2Ni5jCmluZGV4IDY0YmMyNDdjLi5lOWE2NDE3MCAxMDA2NDQKLS0tIGEvcGZpbmV0L2xp bnV4LXNyYy9uZXQvaXB2Ni9yYXdfaXB2Ni5jCisrKyBiL3BmaW5ldC9saW51eC1zcmMvbmV0 L2lwdjYvcmF3X2lwdjYuYwpAQCAtMzA4LDcgKzMwOCw3IEBAIHN0YXRpYyBpbnQgcmF3djZf Z2V0ZnJhZyhjb25zdCB2b2lkICpkYXRhLCBzdHJ1Y3QgaW42X2FkZHIgKnNhZGRyLAogewog CXN0cnVjdCBpb3ZlYyAqaW92ID0gKHN0cnVjdCBpb3ZlYyAqKSBkYXRhOwogCi0JcmV0dXJu IG1lbWNweV9mcm9taW92ZWNlbmQoYnVmZiwgaW92LCBvZmZzZXQsIGxlbik7CisJcmV0dXJu IG1lbWNweV9mcm9taW92ZWNlbmQoKHVuc2lnbmVkIGNoYXIgKikgYnVmZiwgaW92LCBvZmZz ZXQsIGxlbik7CiB9CiAKIHN0YXRpYyBpbnQgcmF3djZfZnJhZ19ja3N1bShjb25zdCB2b2lk ICpkYXRhLCBzdHJ1Y3QgaW42X2FkZHIgKmFkZHIsCkBAIC0zMTcsOCArMzE3LDggQEAgc3Rh dGljIGludCByYXd2Nl9mcmFnX2Nrc3VtKGNvbnN0IHZvaWQgKmRhdGEsIHN0cnVjdCBpbjZf YWRkciAqYWRkciwKIHsKIAlzdHJ1Y3QgcmF3djZfZmFrZWhkciAqaGRyID0gKHN0cnVjdCBy YXd2Nl9mYWtlaGRyICopIGRhdGE7CiAJCi0JaWYgKGNzdW1fcGFydGlhbF9jb3B5X2Zyb21p b3ZlY2VuZChidWZmLCBoZHItPmlvdiwgb2Zmc2V0LCAKLQkJCQkJCSAgICBsZW4sICZoZHIt PmNrc3VtKSkKKwlpZiAoY3N1bV9wYXJ0aWFsX2NvcHlfZnJvbWlvdmVjZW5kKCh1bnNpZ25l ZCBjaGFyICopIGJ1ZmYsIGhkci0+aW92LCBvZmZzZXQsCisJCQkJCQkgICAgbGVuLCAoaW50 ICopICZoZHItPmNrc3VtKSkKIAkJcmV0dXJuIC1FRkFVTFQ7CiAJCiAJaWYgKG9mZnNldCA9 PSAwKSB7CmRpZmYgLS1naXQgYS9wZmluZXQvbGludXgtc3JjL25ldC9pcHY2L3RjcF9pcHY2 LmMgYi9wZmluZXQvbGludXgtc3JjL25ldC9pcHY2L3RjcF9pcHY2LmMKaW5kZXggY2NhNWFi ZjQuLmRmODMyMDk4IDEwMDY0NAotLS0gYS9wZmluZXQvbGludXgtc3JjL25ldC9pcHY2L3Rj cF9pcHY2LmMKKysrIGIvcGZpbmV0L2xpbnV4LXNyYy9uZXQvaXB2Ni90Y3BfaXB2Ni5jCkBA IC0xNjksNyArMTY5LDYgQEAgc3RhdGljIGludCB0Y3BfdjZfZ2V0X3BvcnQoc3RydWN0IHNv Y2sgKnNrLCB1bnNpZ25lZCBzaG9ydCBzbnVtKQogCQl9IGVsc2UgewogCQkJc3RydWN0IHNv Y2sgKnNrMiA9IHRiLT5vd25lcnM7CiAJCQlpbnQgc2tfcmV1c2UgPSBzay0+cmV1c2U7Ci0J CQlpbnQgYWRkcl90eXBlID0gaXB2Nl9hZGRyX3R5cGUoJnNrLT5uZXRfcGluZm8uYWZfaW5l dDYucmN2X3NhZGRyKTsKIAogCQkJZm9yKCA7IHNrMiAhPSBOVUxMOyBzazIgPSBzazItPmJp bmRfbmV4dCkgewogCQkJCWlmIChzay0+Ym91bmRfZGV2X2lmID09IHNrMi0+Ym91bmRfZGV2 X2lmKSB7CkBAIC04MTYsNyArODE1LDggQEAgc3RhdGljIHZvaWQgdGNwX3Y2X3NlbmRfc3lu YWNrKHN0cnVjdCBzb2NrICpzaywgc3RydWN0IG9wZW5fcmVxdWVzdCAqcmVxKQogCiAJCXRo LT5jaGVjayA9IHRjcF92Nl9jaGVjayh0aCwgc2tiLT5sZW4sCiAJCQkJCSAmcmVxLT5hZi52 Nl9yZXEubG9jX2FkZHIsICZyZXEtPmFmLnY2X3JlcS5ybXRfYWRkciwKLQkJCQkJIGNzdW1f cGFydGlhbCgoY2hhciAqKXRoLCBza2ItPmxlbiwgc2tiLT5jc3VtKSk7CisJCQkJCSBjc3Vt X3BhcnRpYWwoKGNvbnN0IHVuc2lnbmVkIGNoYXIgKikgdGgsIHNrYi0+bGVuLAorCQkJCQkJ ICAgICAgc2tiLT5jc3VtKSk7CiAKIAkJZmwubmxfdS5pcDZfdS5kYWRkciA9ICZyZXEtPmFm LnY2X3JlcS5ybXRfYWRkcjsKIAkJaXA2X3htaXQoc2ssIHNrYiwgJmZsLCBvcHQpOwpAQCAt OTYwLDcgKzk2MCw3IEBAIHN0YXRpYyB2b2lkIHRjcF92Nl9zZW5kX2NoZWNrKHN0cnVjdCBz b2NrICpzaywgc3RydWN0IHRjcGhkciAqdGgsIGludCBsZW4sCiAJdGgtPmNoZWNrID0gMDsK IAkKIAl0aC0+Y2hlY2sgPSBjc3VtX2lwdjZfbWFnaWMoJm5wLT5zYWRkciwgJm5wLT5kYWRk ciwgbGVuLCBJUFBST1RPX1RDUCwgCi0JCQkJICAgIGNzdW1fcGFydGlhbCgoY2hhciAqKXRo LCB0aC0+ZG9mZjw8MiwgCisJCQkJICAgIGNzdW1fcGFydGlhbCgoY29uc3QgdW5zaWduZWQg Y2hhciAqKSB0aCwgdGgtPmRvZmY8PDIsCiAJCQkJCQkgc2tiLT5jc3VtKSk7CiB9CiAKQEAg LTExNTAsNyArMTE1MCw3IEBAIHN0YXRpYyB2b2lkIHRjcF92Nl9zZW5kX3Jlc2V0KHN0cnVj dCBza19idWZmICpza2IpCiAJCQl0MS0+YWNrX3NlcSA9IGh0b25sKG50b2hsKHRoLT5zZXEp KzEpOwogCX0KIAotCWJ1ZmYtPmNzdW0gPSBjc3VtX3BhcnRpYWwoKGNoYXIgKil0MSwgc2l6 ZW9mKCp0MSksIDApOworCWJ1ZmYtPmNzdW0gPSBjc3VtX3BhcnRpYWwoKGNvbnN0IHVuc2ln bmVkIGNoYXIgKikgdDEsIHNpemVvZigqdDEpLCAwKTsKIAogCWZsLm5sX3UuaXA2X3UuZGFk ZHIgPSAmc2tiLT5uaC5pcHY2aC0+c2FkZHI7CiAJZmwubmxfdS5pcDZfdS5zYWRkciA9ICZz a2ItPm5oLmlwdjZoLT5kYWRkcjsKQEAgLTEyMDQsNyArMTIwNCw3IEBAIHN0YXRpYyB2b2lk IHRjcF92Nl9zZW5kX2FjayhzdHJ1Y3Qgc2tfYnVmZiAqc2tiLCBfX3UzMiBzZXEsIF9fdTMy IGFjaywgX191MTYgd2luCiAKIAl0MS0+d2luZG93ID0gaHRvbnMod2luZG93KTsKIAotCWJ1 ZmYtPmNzdW0gPSBjc3VtX3BhcnRpYWwoKGNoYXIgKil0MSwgc2l6ZW9mKCp0MSksIDApOwor CWJ1ZmYtPmNzdW0gPSBjc3VtX3BhcnRpYWwoKGNvbnN0IHVuc2lnbmVkIGNoYXIgKikgdDEs IHNpemVvZigqdDEpLCAwKTsKIAogCWZsLm5sX3UuaXA2X3UuZGFkZHIgPSAmc2tiLT5uaC5p cHY2aC0+c2FkZHI7CiAJZmwubmxfdS5pcDZfdS5zYWRkciA9ICZza2ItPm5oLmlwdjZoLT5k YWRkcjsKQEAgLTE0NzIsNyArMTQ3Miw3IEBAIGludCB0Y3BfdjZfcmN2KHN0cnVjdCBza19i dWZmICpza2IsIHVuc2lnbmVkIGxvbmcgbGVuKQogCiAJc3dpdGNoIChza2ItPmlwX3N1bW1l ZCkgewogCWNhc2UgQ0hFQ0tTVU1fTk9ORToKLQkJc2tiLT5jc3VtID0gY3N1bV9wYXJ0aWFs KChjaGFyICopdGgsIGxlbiwgMCk7CisJCXNrYi0+Y3N1bSA9IGNzdW1fcGFydGlhbCgoY29u c3QgdW5zaWduZWQgY2hhciAqKSB0aCwgbGVuLCAwKTsKIAljYXNlIENIRUNLU1VNX0hXOgog CQlpZiAodGNwX3Y2X2NoZWNrKHRoLGxlbixzYWRkcixkYWRkcixza2ItPmNzdW0pKSB7CiAJ CQlwcmludGsoS0VSTl9ERUJVRyAidGNwIGNzdW0gZmFpbGVkXG4iKTsKZGlmZiAtLWdpdCBh L3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjYvdWRwX2lwdjYuYyBiL3BmaW5ldC9saW51eC1z cmMvbmV0L2lwdjYvdWRwX2lwdjYuYwppbmRleCA2ZDRiYmRiOS4uZjU5YzAwMTQgMTAwNjQ0 Ci0tLSBhL3BmaW5ldC9saW51eC1zcmMvbmV0L2lwdjYvdWRwX2lwdjYuYworKysgYi9wZmlu ZXQvbGludXgtc3JjL25ldC9pcHY2L3VkcF9pcHY2LmMKQEAgLTEzNCw3ICsxMzQsNiBAQCBn b3RpdDoKIAkJc251bSA9IHJlc3VsdDsKIAl9IGVsc2UgewogCQlzdHJ1Y3Qgc29jayAqc2sy OwotCQlpbnQgYWRkcl90eXBlID0gaXB2Nl9hZGRyX3R5cGUoJnNrLT5uZXRfcGluZm8uYWZf aW5ldDYucmN2X3NhZGRyKTsKIAogCQlmb3IgKHNrMiA9IHVkcF9oYXNoW3NudW0gJiAoVURQ X0hUQUJMRV9TSVpFIC0gMSldOwogCQkgICAgIHNrMiAhPSBOVUxMOwpAQCAtNjkxLDcgKzY5 MCw3IEBAIGludCB1ZHB2Nl9yY3Yoc3RydWN0IHNrX2J1ZmYgKnNrYiwgdW5zaWduZWQgbG9u ZyBsZW4pCiAjaWZuZGVmIENPTkZJR19VRFBfREVMQVlfQ1NVTQogCXN3aXRjaCAoc2tiLT5p cF9zdW1tZWQpIHsKIAljYXNlIENIRUNLU1VNX05PTkU6Ci0JCXNrYi0+Y3N1bSA9IGNzdW1f cGFydGlhbCgoY2hhciopdWgsIHVsZW4sIDApOworCQlza2ItPmNzdW0gPSBjc3VtX3BhcnRp YWwoKGNvbnN0IHVuc2lnbmVkIGNoYXIqKSB1aCwgdWxlbiwgMCk7CiAJY2FzZSBDSEVDS1NV TV9IVzoKIAkJaWYgKGNzdW1faXB2Nl9tYWdpYyhzYWRkciwgZGFkZHIsIHVsZW4sIElQUFJP VE9fVURQLCBza2ItPmNzdW0pKSB7CiAJCQlwcmludGsoS0VSTl9ERUJVRyAiSVB2NjogdWRw IGNoZWNrc3VtIGVycm9yXG4iKTsKQEAgLTc4NywxNCArNzg2LDE0IEBAIHN0YXRpYyBpbnQg dWRwdjZfZ2V0ZnJhZyhjb25zdCB2b2lkICpkYXRhLCBzdHJ1Y3QgaW42X2FkZHIgKmFkZHIs CiAJCWNsZW4gLT0gc2l6ZW9mKHN0cnVjdCB1ZHBoZHIpOwogCX0KIAotCWlmIChjc3VtX3Bh cnRpYWxfY29weV9mcm9taW92ZWNlbmQoZHN0LCB1ZGgtPmlvdiwgb2Zmc2V0LAotCQkJCQkg ICBjbGVuLCAmdWRoLT53Y2hlY2spKQorCWlmIChjc3VtX3BhcnRpYWxfY29weV9mcm9taW92 ZWNlbmQoKHVuc2lnbmVkIGNoYXIgKikgZHN0LCB1ZGgtPmlvdiwgb2Zmc2V0LAorCQkJCQkg ICBjbGVuLCAoaW50ICopICZ1ZGgtPndjaGVjaykpCiAJCXJldHVybiAtRUZBVUxUOwogCiAJ aWYgKGZpbmFsKSB7CiAJCXN0cnVjdCBpbjZfYWRkciAqZGFkZHI7CiAJCQotCQl1ZGgtPndj aGVjayA9IGNzdW1fcGFydGlhbCgoY2hhciAqKXVkaCwgc2l6ZW9mKHN0cnVjdCB1ZHBoZHIp LAorCQl1ZGgtPndjaGVjayA9IGNzdW1fcGFydGlhbCgoY29uc3QgdW5zaWduZWQgY2hhciAq KSB1ZGgsIHNpemVvZihzdHJ1Y3QgdWRwaGRyKSwKIAkJCQkJICAgdWRoLT53Y2hlY2spOwog CiAJCWlmICh1ZGgtPmRhZGRyKSB7CmRpZmYgLS1naXQgYS9wZmluZXQvcGZpbmV0LW9wcy5j IGIvcGZpbmV0L3BmaW5ldC1vcHMuYwppbmRleCA5YjBjNzIzZi4uM2I2NDVhMGQgMTAwNjQ0 Ci0tLSBhL3BmaW5ldC9wZmluZXQtb3BzLmMKKysrIGIvcGZpbmV0L3BmaW5ldC1vcHMuYwpA QCAtMTMzLDcgKzEzMyw2IEBAIFNfcGZpbmV0X2dldHJvdXRlcyAoaW9fdCBwb3J0LAogCQkg ICAgbWFjaF9tc2dfdHlwZV9udW1iZXJfdCAqbGVuLAogCQkgICAgYm9vbGVhbl90ICpkZWFs bG9jX2RhdGEpCiB7Ci0gIGVycm9yX3QgZXJyID0gMDsKICAgaWZydHJlcV90IHJzW01BWF9S T1VURVNdOwogICBpbnQgbjsKICAgaWZydHJlcV90ICpydGFibGUgPSBOVUxMOwpkaWZmIC0t Z2l0IGEvcHJvY2ZzL3Byb2Nlc3MuYyBiL3Byb2Nmcy9wcm9jZXNzLmMKaW5kZXggMzE3MGI3 NzUuLjU5ZDFhYWVjIDEwMDY0NAotLS0gYS9wcm9jZnMvcHJvY2Vzcy5jCisrKyBiL3Byb2Nm cy9wcm9jZXNzLmMKQEAgLTgzLDcgKzgzLDcgQEAgc3RhdGljIGxvbmcgbG9uZyBpbnQgdGlt ZXZhbF9qaWZmaWVzICh0aW1lX3ZhbHVlX3QgdHYpCiAKIHN0YXRpYyBjb25zdCBjaGFyICph cmdzX2ZpbGVuYW1lIChjb25zdCBjaGFyICpuYW1lKQogewotICBjaGFyICpzcCA9IHN0cnJj aHIgKG5hbWUsICcvJyk7CisgIGNvbnN0IGNoYXIgKnNwID0gc3RycmNociAobmFtZSwgJy8n KTsKICAgcmV0dXJuIHNwICE9IE5VTEwgJiYgKihzcCArIDEpICE9ICdcMCcgPyBzcCArIDEg OiBuYW1lOwogfQogCmRpZmYgLS1naXQgYS90cmFucy9uZXctZmlmby5jIGIvdHJhbnMvbmV3 LWZpZm8uYwppbmRleCA3ODgwZWIyNC4uM2MxNjU3YjcgMTAwNjQ0Ci0tLSBhL3RyYW5zL25l dy1maWZvLmMKKysrIGIvdHJhbnMvbmV3LWZpZm8uYwpAQCAtMTI5LDExICsxMjksMTMgQEAg Zmlmb190cmFuc19jcmVhdGUgKHN0cnVjdCBmaWZvX3RyYW5zICpmcm9tLCBzdHJ1Y3QgZmlm b190cmFucyAqKnRyYW5zKQogICAqdHJhbnMgPSBuZXc7CiB9CiAKKyNpZiAwCiBzdGF0aWMg dm9pZAogZmlmb190cmFuc19mcmVlIChzdHJ1Y3QgZmlmb190cmFucyAqdHJhbnMpCiB7CiAg IGZyZWUgKHRyYW5zKTsKIH0KKyNlbmRpZgogCiBzdGF0aWMgZXJyb3JfdAogZmlmb190cmFu c19zdGFydCAoc3RydWN0IGZpZm9fdHJhbnMgKnRyYW5zLCBtYWNoX3BvcnRfdCByZXF1ZXN0 b3IpCkBAIC0xODIsNiArMTg0LDggQEAgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKiphcmd2KQog ICBlcnJvcl90IGVycjsKICAgbWFjaF9wb3J0X3QgYm9vdHN0cmFwOwogICBzdHJ1Y3QgZmlm b190cmFucyAqdHJhbnM7CisKKyNpZiAwCiAgIC8qIENsZWFuIHVwIGEgZnN5cyBjb250cm9s IG5vZGUuICAqLwogICB2b2lkIGNsZWFuX2ZzeXMgKHZvaWQgKnZmc3lzKQogICAgIHsKQEAg LTE5MCw2ICsxOTQsNyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpCiAJZmlmb190 cmFuc19mcmVlIChmc3lzLT5ob29rKTsKICAgICAgIHRyaXZmc19jbGVhbl9jbnRsIChmc3lz KTsKICAgICB9CisjZW5kaWYKIAogICBmaWZvX3RyYW5zX2NyZWF0ZSAoMCwgJnRyYW5zKTsK IAotLSAKMi40My4wCgo= --------------erAFLkVvQP0LIE1B092HNijZ Content-Type: text/x-patch; charset=UTF-8; name="fixing-structure-declaration-inside-parameter-list.patch" Content-Disposition: attachment; filename="fixing-structure-declaration-inside-parameter-list.patch" Content-Transfer-Encoding: base64 LS0tIHJwY19tc2cuaAkyMDI2LTA3LTI4IDEzOjEyOjQ0LjI0OTU2Nzk4MCArMDcwMAorKysg cnBjX21zZ19uZXcuaAkyMDI2LTA3LTI4IDEzOjEzOjM3LjU2NDMwNDUwMCArMDcwMApAQCAt MTY1LDYgKzE2NSwxMSBAQAogZXh0ZXJuICJDIiB7CiAjZW5kaWYKIC8qCisgKiBUaGUgcmNw IGVycm9yCisgKi8KK3N0cnVjdCBycGNfZXJyOworCisvKgogICogWERSIHJvdXRpbmUgdG8g aGFuZGxlIGEgcnBjIG1lc3NhZ2UuCiAgKiB4ZHJfY2FsbG1zZyh4ZHJzLCBjbXNnKQogICog CVhEUiAqeGRyczsK --------------erAFLkVvQP0LIE1B092HNijZ--