From mboxrd@z Thu Jan 1 00:00:00 1970 From: Krzysztof Kozlowski Subject: [RFC v3 22/45] powerpc: dma-mapping: Use unsigned long for dma_attrs Date: Thu, 02 Jun 2016 17:39:24 +0200 Message-ID: <1464881987-13203-23-git-send-email-k.kozlowski@samsung.com> References: <1464881987-13203-1-git-send-email-k.kozlowski@samsung.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8Ukj-0003iz-AK for xen-devel@lists.xenproject.org; Thu, 02 Jun 2016 15:41:45 +0000 Received: from eucpsbgm2.samsung.com (unknown [203.254.199.245]) by mailout4.w1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTP id <0O8500C9VI99R710@mailout4.w1.samsung.com> for xen-devel@lists.xenproject.org; Thu, 02 Jun 2016 16:41:34 +0100 (BST) In-reply-to: <1464881987-13203-1-git-send-email-k.kozlowski@samsung.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Richard Henderson , Ivan Kokshaysky , Matt Turner , Vineet Gupta , Russell King , Stefano Stabellini , Catalin Marinas , Will Deacon , Haavard Skinnemoen , Hans-Christian Egtvedt , Steven Miao , Mark Salter , Aurelien Jacquiot , Mikael Starvik , Jesper Nilsson , Yoshinori Sato , Richard Kuo , Tony Luck , Fenghua Yu , Konrad Rzeszutek Wilk , Geert Uytterhoeven , James Hogan Michal Simek Cc: hch@infradead.org, Krzysztof Kozlowski , Bartlomiej Zolnierkiewicz List-Id: xen-devel@lists.xenproject.org U3BsaXQgb3V0IHN1YnN5c3RlbSBzcGVjaWZpYyBjaGFuZ2VzIGZvciBlYXNpZXIgcmV2aWV3cy4g VGhpcyB3aWxsIGJlCnNxdWFzaGVkIHdpdGggbWFpbiBjb21taXQuCgpTaWduZWQtb2ZmLWJ5OiBL cnp5c3p0b2YgS296bG93c2tpIDxrLmtvemxvd3NraUBzYW1zdW5nLmNvbT4KLS0tCiBhcmNoL3Bv d2VycGMvaW5jbHVkZS9hc20vZG1hLW1hcHBpbmcuaCAgICB8ICA3ICsrKy0tLS0KIGFyY2gvcG93 ZXJwYy9pbmNsdWRlL2FzbS9pb21tdS5oICAgICAgICAgIHwgMTAgKysrKystLS0tLQogYXJjaC9w b3dlcnBjL2tlcm5lbC9kbWEtaW9tbXUuYyAgICAgICAgICAgfCAxMiArKysrKystLS0tLS0KIGFy Y2gvcG93ZXJwYy9rZXJuZWwvZG1hLmMgICAgICAgICAgICAgICAgIHwgMTggKysrKysrKysrLS0t LS0tLS0tCiBhcmNoL3Bvd2VycGMva2VybmVsL2libWVidXMuYyAgICAgICAgICAgICB8IDEyICsr KysrKy0tLS0tLQogYXJjaC9wb3dlcnBjL2tlcm5lbC9pb21tdS5jICAgICAgICAgICAgICAgfCAx MiArKysrKystLS0tLS0KIGFyY2gvcG93ZXJwYy9rZXJuZWwvdmlvLmMgICAgICAgICAgICAgICAg IHwgMTIgKysrKysrLS0tLS0tCiBhcmNoL3Bvd2VycGMvcGxhdGZvcm1zL2NlbGwvaW9tbXUuYyAg ICAgICB8IDE0ICsrKysrKystLS0tLS0tCiBhcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3Bhc2VtaS9p b21tdS5jICAgICB8ICAyICstCiBhcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3Bvd2VybnYvbnB1LWRt YS5jICB8ICA4ICsrKystLS0tCiBhcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3Bvd2VybnYvcGNpLWlv ZGEuYyB8ICA0ICsrLS0KIGFyY2gvcG93ZXJwYy9wbGF0Zm9ybXMvcG93ZXJudi9wY2kuYyAgICAg IHwgIDIgKy0KIGFyY2gvcG93ZXJwYy9wbGF0Zm9ybXMvcG93ZXJudi9wY2kuaCAgICAgIHwgIDIg Ky0KIGFyY2gvcG93ZXJwYy9wbGF0Zm9ybXMvcHMzL3N5c3RlbS1idXMuYyAgIHwgMTggKysrKysr KysrLS0tLS0tLS0tCiBhcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3BzZXJpZXMvaW9tbXUuYyAgICB8 ICA2ICsrKy0tLQogYXJjaC9wb3dlcnBjL3N5c2Rldi9kYXJ0X2lvbW11LmMgICAgICAgICAgfCAg MiArLQogMTYgZmlsZXMgY2hhbmdlZCwgNzAgaW5zZXJ0aW9ucygrKSwgNzEgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvYXJjaC9wb3dlcnBjL2luY2x1ZGUvYXNtL2RtYS1tYXBwaW5nLmggYi9h cmNoL3Bvd2VycGMvaW5jbHVkZS9hc20vZG1hLW1hcHBpbmcuaAppbmRleCA3NzgxNmFjZDRmZDku Ljg0ZTNmOGRkNWU0ZiAxMDA2NDQKLS0tIGEvYXJjaC9wb3dlcnBjL2luY2x1ZGUvYXNtL2RtYS1t YXBwaW5nLmgKKysrIGIvYXJjaC9wb3dlcnBjL2luY2x1ZGUvYXNtL2RtYS1tYXBwaW5nLmgKQEAg LTEzLDcgKzEzLDYgQEAKIC8qIG5lZWQgc3RydWN0IHBhZ2UgZGVmaW5pdGlvbnMgKi8KICNpbmNs dWRlIDxsaW51eC9tbS5oPgogI2luY2x1ZGUgPGxpbnV4L3NjYXR0ZXJsaXN0Lmg+Ci0jaW5jbHVk ZSA8bGludXgvZG1hLWF0dHJzLmg+CiAjaW5jbHVkZSA8bGludXgvZG1hLWRlYnVnLmg+CiAjaW5j bHVkZSA8YXNtL2lvLmg+CiAjaW5jbHVkZSA8YXNtL3N3aW90bGIuaD4KQEAgLTI1LDE0ICsyNCwx NCBAQAogLyogU29tZSBkbWEgZGlyZWN0IGZ1bmNzIG11c3QgYmUgdmlzaWJsZSBmb3IgdXNlIGlu IG90aGVyIGRtYV9vcHMgKi8KIGV4dGVybiB2b2lkICpfX2RtYV9kaXJlY3RfYWxsb2NfY29oZXJl bnQoc3RydWN0IGRldmljZSAqZGV2LCBzaXplX3Qgc2l6ZSwKIAkJCQkJIGRtYV9hZGRyX3QgKmRt YV9oYW5kbGUsIGdmcF90IGZsYWcsCi0JCQkJCSBzdHJ1Y3QgZG1hX2F0dHJzICphdHRycyk7CisJ CQkJCSB1bnNpZ25lZCBsb25nIGF0dHJzKTsKIGV4dGVybiB2b2lkIF9fZG1hX2RpcmVjdF9mcmVl X2NvaGVyZW50KHN0cnVjdCBkZXZpY2UgKmRldiwgc2l6ZV90IHNpemUsCiAJCQkJICAgICAgIHZv aWQgKnZhZGRyLCBkbWFfYWRkcl90IGRtYV9oYW5kbGUsCi0JCQkJICAgICAgIHN0cnVjdCBkbWFf YXR0cnMgKmF0dHJzKTsKKwkJCQkgICAgICAgdW5zaWduZWQgbG9uZyBhdHRycyk7CiBleHRlcm4g aW50IGRtYV9kaXJlY3RfbW1hcF9jb2hlcmVudChzdHJ1Y3QgZGV2aWNlICpkZXYsCiAJCQkJICAg IHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hLAogCQkJCSAgICB2b2lkICpjcHVfYWRkciwgZG1h X2FkZHJfdCBoYW5kbGUsCi0JCQkJICAgIHNpemVfdCBzaXplLCBzdHJ1Y3QgZG1hX2F0dHJzICph dHRycyk7CisJCQkJICAgIHNpemVfdCBzaXplLCB1bnNpZ25lZCBsb25nIGF0dHJzKTsKIAogI2lm ZGVmIENPTkZJR19OT1RfQ09IRVJFTlRfQ0FDSEUKIC8qCmRpZmYgLS1naXQgYS9hcmNoL3Bvd2Vy cGMvaW5jbHVkZS9hc20vaW9tbXUuaCBiL2FyY2gvcG93ZXJwYy9pbmNsdWRlL2FzbS9pb21tdS5o CmluZGV4IDdiODdiYWIwOTU2NC4uNzYwOTE1MjQxY2UyIDEwMDY0NAotLS0gYS9hcmNoL3Bvd2Vy cGMvaW5jbHVkZS9hc20vaW9tbXUuaAorKysgYi9hcmNoL3Bvd2VycGMvaW5jbHVkZS9hc20vaW9t bXUuaApAQCAtNTMsNyArNTMsNyBAQCBzdHJ1Y3QgaW9tbXVfdGFibGVfb3BzIHsKIAkJCWxvbmcg aW5kZXgsIGxvbmcgbnBhZ2VzLAogCQkJdW5zaWduZWQgbG9uZyB1YWRkciwKIAkJCWVudW0gZG1h X2RhdGFfZGlyZWN0aW9uIGRpcmVjdGlvbiwKLQkJCXN0cnVjdCBkbWFfYXR0cnMgKmF0dHJzKTsK KwkJCXVuc2lnbmVkIGxvbmcgYXR0cnMpOwogI2lmZGVmIENPTkZJR19JT01NVV9BUEkKIAkvKgog CSAqIEV4Y2hhbmdlcyBleGlzdGluZyBUQ0Ugd2l0aCBuZXcgVENFIHBsdXMgZGlyZWN0aW9uIGJp dHM7CkBAIC0yNDgsMTIgKzI0OCwxMiBAQCBleHRlcm4gaW50IHBwY19pb21tdV9tYXBfc2coc3Ry dWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgaW9tbXVfdGFibGUgKnRibCwKIAkJCSAgICBzdHJ1Y3Qg c2NhdHRlcmxpc3QgKnNnbGlzdCwgaW50IG5lbGVtcywKIAkJCSAgICB1bnNpZ25lZCBsb25nIG1h c2ssCiAJCQkgICAgZW51bSBkbWFfZGF0YV9kaXJlY3Rpb24gZGlyZWN0aW9uLAotCQkJICAgIHN0 cnVjdCBkbWFfYXR0cnMgKmF0dHJzKTsKKwkJCSAgICB1bnNpZ25lZCBsb25nIGF0dHJzKTsKIGV4 dGVybiB2b2lkIHBwY19pb21tdV91bm1hcF9zZyhzdHJ1Y3QgaW9tbXVfdGFibGUgKnRibCwKIAkJ CSAgICAgICBzdHJ1Y3Qgc2NhdHRlcmxpc3QgKnNnbGlzdCwKIAkJCSAgICAgICBpbnQgbmVsZW1z LAogCQkJICAgICAgIGVudW0gZG1hX2RhdGFfZGlyZWN0aW9uIGRpcmVjdGlvbiwKLQkJCSAgICAg ICBzdHJ1Y3QgZG1hX2F0dHJzICphdHRycyk7CisJCQkgICAgICAgdW5zaWduZWQgbG9uZyBhdHRy cyk7CiAKIGV4dGVybiB2b2lkICppb21tdV9hbGxvY19jb2hlcmVudChzdHJ1Y3QgZGV2aWNlICpk ZXYsIHN0cnVjdCBpb21tdV90YWJsZSAqdGJsLAogCQkJCSAgc2l6ZV90IHNpemUsIGRtYV9hZGRy X3QgKmRtYV9oYW5kbGUsCkBAIC0yNjQsMTAgKzI2NCwxMCBAQCBleHRlcm4gZG1hX2FkZHJfdCBp b21tdV9tYXBfcGFnZShzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBpb21tdV90YWJsZSAqdGJs LAogCQkJCSBzdHJ1Y3QgcGFnZSAqcGFnZSwgdW5zaWduZWQgbG9uZyBvZmZzZXQsCiAJCQkJIHNp emVfdCBzaXplLCB1bnNpZ25lZCBsb25nIG1hc2ssCiAJCQkJIGVudW0gZG1hX2RhdGFfZGlyZWN0 aW9uIGRpcmVjdGlvbiwKLQkJCQkgc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpOworCQkJCSB1bnNp Z25lZCBsb25nIGF0dHJzKTsKIGV4dGVybiB2b2lkIGlvbW11X3VubWFwX3BhZ2Uoc3RydWN0IGlv bW11X3RhYmxlICp0YmwsIGRtYV9hZGRyX3QgZG1hX2hhbmRsZSwKIAkJCSAgICAgc2l6ZV90IHNp emUsIGVudW0gZG1hX2RhdGFfZGlyZWN0aW9uIGRpcmVjdGlvbiwKLQkJCSAgICAgc3RydWN0IGRt YV9hdHRycyAqYXR0cnMpOworCQkJICAgICB1bnNpZ25lZCBsb25nIGF0dHJzKTsKIAogZXh0ZXJu IHZvaWQgaW9tbXVfaW5pdF9lYXJseV9wU2VyaWVzKHZvaWQpOwogZXh0ZXJuIHZvaWQgaW9tbXVf aW5pdF9lYXJseV9kYXJ0KHN0cnVjdCBwY2lfY29udHJvbGxlcl9vcHMgKmNvbnRyb2xsZXJfb3Bz KTsKZGlmZiAtLWdpdCBhL2FyY2gvcG93ZXJwYy9rZXJuZWwvZG1hLWlvbW11LmMgYi9hcmNoL3Bv d2VycGMva2VybmVsL2RtYS1pb21tdS5jCmluZGV4IDQxYTdkOWQ0OWE1YS4uZmI3Y2JhYTM3NjU4 IDEwMDY0NAotLS0gYS9hcmNoL3Bvd2VycGMva2VybmVsL2RtYS1pb21tdS5jCisrKyBiL2FyY2gv cG93ZXJwYy9rZXJuZWwvZG1hLWlvbW11LmMKQEAgLTE4LDcgKzE4LDcgQEAKICAqLwogc3RhdGlj IHZvaWQgKmRtYV9pb21tdV9hbGxvY19jb2hlcmVudChzdHJ1Y3QgZGV2aWNlICpkZXYsIHNpemVf dCBzaXplLAogCQkJCSAgICAgIGRtYV9hZGRyX3QgKmRtYV9oYW5kbGUsIGdmcF90IGZsYWcsCi0J CQkJICAgICAgc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJCQkJICAgICAgdW5zaWduZWQgbG9u ZyBhdHRycykKIHsKIAlyZXR1cm4gaW9tbXVfYWxsb2NfY29oZXJlbnQoZGV2LCBnZXRfaW9tbXVf dGFibGVfYmFzZShkZXYpLCBzaXplLAogCQkJCSAgICBkbWFfaGFuZGxlLCBkZXYtPmNvaGVyZW50 X2RtYV9tYXNrLCBmbGFnLApAQCAtMjcsNyArMjcsNyBAQCBzdGF0aWMgdm9pZCAqZG1hX2lvbW11 X2FsbG9jX2NvaGVyZW50KHN0cnVjdCBkZXZpY2UgKmRldiwgc2l6ZV90IHNpemUsCiAKIHN0YXRp YyB2b2lkIGRtYV9pb21tdV9mcmVlX2NvaGVyZW50KHN0cnVjdCBkZXZpY2UgKmRldiwgc2l6ZV90 IHNpemUsCiAJCQkJICAgIHZvaWQgKnZhZGRyLCBkbWFfYWRkcl90IGRtYV9oYW5kbGUsCi0JCQkJ ICAgIHN0cnVjdCBkbWFfYXR0cnMgKmF0dHJzKQorCQkJCSAgICB1bnNpZ25lZCBsb25nIGF0dHJz KQogewogCWlvbW11X2ZyZWVfY29oZXJlbnQoZ2V0X2lvbW11X3RhYmxlX2Jhc2UoZGV2KSwgc2l6 ZSwgdmFkZHIsIGRtYV9oYW5kbGUpOwogfQpAQCAtNDAsNyArNDAsNyBAQCBzdGF0aWMgdm9pZCBk bWFfaW9tbXVfZnJlZV9jb2hlcmVudChzdHJ1Y3QgZGV2aWNlICpkZXYsIHNpemVfdCBzaXplLAog c3RhdGljIGRtYV9hZGRyX3QgZG1hX2lvbW11X21hcF9wYWdlKHN0cnVjdCBkZXZpY2UgKmRldiwg c3RydWN0IHBhZ2UgKnBhZ2UsCiAJCQkJICAgICB1bnNpZ25lZCBsb25nIG9mZnNldCwgc2l6ZV90 IHNpemUsCiAJCQkJICAgICBlbnVtIGRtYV9kYXRhX2RpcmVjdGlvbiBkaXJlY3Rpb24sCi0JCQkJ ICAgICBzdHJ1Y3QgZG1hX2F0dHJzICphdHRycykKKwkJCQkgICAgIHVuc2lnbmVkIGxvbmcgYXR0 cnMpCiB7CiAJcmV0dXJuIGlvbW11X21hcF9wYWdlKGRldiwgZ2V0X2lvbW11X3RhYmxlX2Jhc2Uo ZGV2KSwgcGFnZSwgb2Zmc2V0LAogCQkJICAgICAgc2l6ZSwgZGV2aWNlX3RvX21hc2soZGV2KSwg ZGlyZWN0aW9uLCBhdHRycyk7CkBAIC00OSw3ICs0OSw3IEBAIHN0YXRpYyBkbWFfYWRkcl90IGRt YV9pb21tdV9tYXBfcGFnZShzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBwYWdlICpwYWdlLAog CiBzdGF0aWMgdm9pZCBkbWFfaW9tbXVfdW5tYXBfcGFnZShzdHJ1Y3QgZGV2aWNlICpkZXYsIGRt YV9hZGRyX3QgZG1hX2hhbmRsZSwKIAkJCQkgc2l6ZV90IHNpemUsIGVudW0gZG1hX2RhdGFfZGly ZWN0aW9uIGRpcmVjdGlvbiwKLQkJCQkgc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJCQkJIHVu c2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJaW9tbXVfdW5tYXBfcGFnZShnZXRfaW9tbXVfdGFibGVf YmFzZShkZXYpLCBkbWFfaGFuZGxlLCBzaXplLCBkaXJlY3Rpb24sCiAJCQkgYXR0cnMpOwpAQCAt NTgsNyArNTgsNyBAQCBzdGF0aWMgdm9pZCBkbWFfaW9tbXVfdW5tYXBfcGFnZShzdHJ1Y3QgZGV2 aWNlICpkZXYsIGRtYV9hZGRyX3QgZG1hX2hhbmRsZSwKIAogc3RhdGljIGludCBkbWFfaW9tbXVf bWFwX3NnKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IHNjYXR0ZXJsaXN0ICpzZ2xpc3QsCiAJ CQkgICAgaW50IG5lbGVtcywgZW51bSBkbWFfZGF0YV9kaXJlY3Rpb24gZGlyZWN0aW9uLAotCQkJ ICAgIHN0cnVjdCBkbWFfYXR0cnMgKmF0dHJzKQorCQkJICAgIHVuc2lnbmVkIGxvbmcgYXR0cnMp CiB7CiAJcmV0dXJuIHBwY19pb21tdV9tYXBfc2coZGV2LCBnZXRfaW9tbXVfdGFibGVfYmFzZShk ZXYpLCBzZ2xpc3QsIG5lbGVtcywKIAkJCQlkZXZpY2VfdG9fbWFzayhkZXYpLCBkaXJlY3Rpb24s IGF0dHJzKTsKQEAgLTY2LDcgKzY2LDcgQEAgc3RhdGljIGludCBkbWFfaW9tbXVfbWFwX3NnKHN0 cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IHNjYXR0ZXJsaXN0ICpzZ2xpc3QsCiAKIHN0YXRpYyB2 b2lkIGRtYV9pb21tdV91bm1hcF9zZyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBzY2F0dGVy bGlzdCAqc2dsaXN0LAogCQlpbnQgbmVsZW1zLCBlbnVtIGRtYV9kYXRhX2RpcmVjdGlvbiBkaXJl Y3Rpb24sCi0JCXN0cnVjdCBkbWFfYXR0cnMgKmF0dHJzKQorCQl1bnNpZ25lZCBsb25nIGF0dHJz KQogewogCXBwY19pb21tdV91bm1hcF9zZyhnZXRfaW9tbXVfdGFibGVfYmFzZShkZXYpLCBzZ2xp c3QsIG5lbGVtcywKIAkJCSAgIGRpcmVjdGlvbiwgYXR0cnMpOwpkaWZmIC0tZ2l0IGEvYXJjaC9w b3dlcnBjL2tlcm5lbC9kbWEuYyBiL2FyY2gvcG93ZXJwYy9rZXJuZWwvZG1hLmMKaW5kZXggM2Yx NDcyYTc4ZjM5Li5lNjRhNjAxNmZiYTcgMTAwNjQ0Ci0tLSBhL2FyY2gvcG93ZXJwYy9rZXJuZWwv ZG1hLmMKKysrIGIvYXJjaC9wb3dlcnBjL2tlcm5lbC9kbWEuYwpAQCAtNjQsNyArNjQsNyBAQCBz dGF0aWMgaW50IGRtYV9kaXJlY3RfZG1hX3N1cHBvcnRlZChzdHJ1Y3QgZGV2aWNlICpkZXYsIHU2 NCBtYXNrKQogCiB2b2lkICpfX2RtYV9kaXJlY3RfYWxsb2NfY29oZXJlbnQoc3RydWN0IGRldmlj ZSAqZGV2LCBzaXplX3Qgc2l6ZSwKIAkJCQkgIGRtYV9hZGRyX3QgKmRtYV9oYW5kbGUsIGdmcF90 IGZsYWcsCi0JCQkJICBzdHJ1Y3QgZG1hX2F0dHJzICphdHRycykKKwkJCQkgIHVuc2lnbmVkIGxv bmcgYXR0cnMpCiB7CiAJdm9pZCAqcmV0OwogI2lmZGVmIENPTkZJR19OT1RfQ09IRVJFTlRfQ0FD SEUKQEAgLTEyMSw3ICsxMjEsNyBAQCB2b2lkICpfX2RtYV9kaXJlY3RfYWxsb2NfY29oZXJlbnQo c3RydWN0IGRldmljZSAqZGV2LCBzaXplX3Qgc2l6ZSwKIAogdm9pZCBfX2RtYV9kaXJlY3RfZnJl ZV9jb2hlcmVudChzdHJ1Y3QgZGV2aWNlICpkZXYsIHNpemVfdCBzaXplLAogCQkJCXZvaWQgKnZh ZGRyLCBkbWFfYWRkcl90IGRtYV9oYW5kbGUsCi0JCQkJc3RydWN0IGRtYV9hdHRycyAqYXR0cnMp CisJCQkJdW5zaWduZWQgbG9uZyBhdHRycykKIHsKICNpZmRlZiBDT05GSUdfTk9UX0NPSEVSRU5U X0NBQ0hFCiAJX19kbWFfZnJlZV9jb2hlcmVudChzaXplLCB2YWRkcik7CkBAIC0xMzIsNyArMTMy LDcgQEAgdm9pZCBfX2RtYV9kaXJlY3RfZnJlZV9jb2hlcmVudChzdHJ1Y3QgZGV2aWNlICpkZXYs IHNpemVfdCBzaXplLAogCiBzdGF0aWMgdm9pZCAqZG1hX2RpcmVjdF9hbGxvY19jb2hlcmVudChz dHJ1Y3QgZGV2aWNlICpkZXYsIHNpemVfdCBzaXplLAogCQkJCSAgICAgICBkbWFfYWRkcl90ICpk bWFfaGFuZGxlLCBnZnBfdCBmbGFnLAotCQkJCSAgICAgICBzdHJ1Y3QgZG1hX2F0dHJzICphdHRy cykKKwkJCQkgICAgICAgdW5zaWduZWQgbG9uZyBhdHRycykKIHsKIAlzdHJ1Y3QgaW9tbXVfdGFi bGUgKmlvbW11OwogCkBAIC0xNTYsNyArMTU2LDcgQEAgc3RhdGljIHZvaWQgKmRtYV9kaXJlY3Rf YWxsb2NfY29oZXJlbnQoc3RydWN0IGRldmljZSAqZGV2LCBzaXplX3Qgc2l6ZSwKIAogc3RhdGlj IHZvaWQgZG1hX2RpcmVjdF9mcmVlX2NvaGVyZW50KHN0cnVjdCBkZXZpY2UgKmRldiwgc2l6ZV90 IHNpemUsCiAJCQkJICAgICB2b2lkICp2YWRkciwgZG1hX2FkZHJfdCBkbWFfaGFuZGxlLAotCQkJ CSAgICAgc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJCQkJICAgICB1bnNpZ25lZCBsb25nIGF0 dHJzKQogewogCXN0cnVjdCBpb21tdV90YWJsZSAqaW9tbXU7CiAKQEAgLTE3Nyw3ICsxNzcsNyBA QCBzdGF0aWMgdm9pZCBkbWFfZGlyZWN0X2ZyZWVfY29oZXJlbnQoc3RydWN0IGRldmljZSAqZGV2 LCBzaXplX3Qgc2l6ZSwKIAogaW50IGRtYV9kaXJlY3RfbW1hcF9jb2hlcmVudChzdHJ1Y3QgZGV2 aWNlICpkZXYsIHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hLAogCQkJICAgICB2b2lkICpjcHVf YWRkciwgZG1hX2FkZHJfdCBoYW5kbGUsIHNpemVfdCBzaXplLAotCQkJICAgICBzdHJ1Y3QgZG1h X2F0dHJzICphdHRycykKKwkJCSAgICAgdW5zaWduZWQgbG9uZyBhdHRycykKIHsKIAl1bnNpZ25l ZCBsb25nIHBmbjsKIApAQCAtMTk1LDcgKzE5NSw3IEBAIGludCBkbWFfZGlyZWN0X21tYXBfY29o ZXJlbnQoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSwKIAog c3RhdGljIGludCBkbWFfZGlyZWN0X21hcF9zZyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBz Y2F0dGVybGlzdCAqc2dsLAogCQkJICAgICBpbnQgbmVudHMsIGVudW0gZG1hX2RhdGFfZGlyZWN0 aW9uIGRpcmVjdGlvbiwKLQkJCSAgICAgc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJCQkgICAg IHVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJc3RydWN0IHNjYXR0ZXJsaXN0ICpzZzsKIAlpbnQg aTsKQEAgLTIxMSw3ICsyMTEsNyBAQCBzdGF0aWMgaW50IGRtYV9kaXJlY3RfbWFwX3NnKHN0cnVj dCBkZXZpY2UgKmRldiwgc3RydWN0IHNjYXR0ZXJsaXN0ICpzZ2wsCiAKIHN0YXRpYyB2b2lkIGRt YV9kaXJlY3RfdW5tYXBfc2coc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3Qgc2NhdHRlcmxpc3Qg KnNnLAogCQkJCWludCBuZW50cywgZW51bSBkbWFfZGF0YV9kaXJlY3Rpb24gZGlyZWN0aW9uLAot CQkJCXN0cnVjdCBkbWFfYXR0cnMgKmF0dHJzKQorCQkJCXVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7 CiB9CiAKQEAgLTIzMiw3ICsyMzIsNyBAQCBzdGF0aWMgaW5saW5lIGRtYV9hZGRyX3QgZG1hX2Rp cmVjdF9tYXBfcGFnZShzdHJ1Y3QgZGV2aWNlICpkZXYsCiAJCQkJCSAgICAgdW5zaWduZWQgbG9u ZyBvZmZzZXQsCiAJCQkJCSAgICAgc2l6ZV90IHNpemUsCiAJCQkJCSAgICAgZW51bSBkbWFfZGF0 YV9kaXJlY3Rpb24gZGlyLAotCQkJCQkgICAgIHN0cnVjdCBkbWFfYXR0cnMgKmF0dHJzKQorCQkJ CQkgICAgIHVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJQlVHX09OKGRpciA9PSBETUFfTk9ORSk7 CiAJX19kbWFfc3luY19wYWdlKHBhZ2UsIG9mZnNldCwgc2l6ZSwgZGlyKTsKQEAgLTI0Myw3ICsy NDMsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgZG1hX2RpcmVjdF91bm1hcF9wYWdlKHN0cnVjdCBk ZXZpY2UgKmRldiwKIAkJCQkJIGRtYV9hZGRyX3QgZG1hX2FkZHJlc3MsCiAJCQkJCSBzaXplX3Qg c2l6ZSwKIAkJCQkJIGVudW0gZG1hX2RhdGFfZGlyZWN0aW9uIGRpcmVjdGlvbiwKLQkJCQkJIHN0 cnVjdCBkbWFfYXR0cnMgKmF0dHJzKQorCQkJCQkgdW5zaWduZWQgbG9uZyBhdHRycykKIHsKIH0K IApkaWZmIC0tZ2l0IGEvYXJjaC9wb3dlcnBjL2tlcm5lbC9pYm1lYnVzLmMgYi9hcmNoL3Bvd2Vy cGMva2VybmVsL2libWVidXMuYwppbmRleCBhODlmNGY3YTY2YmQuLmMxY2E5MjgyZjRhMCAxMDA2 NDQKLS0tIGEvYXJjaC9wb3dlcnBjL2tlcm5lbC9pYm1lYnVzLmMKKysrIGIvYXJjaC9wb3dlcnBj L2tlcm5lbC9pYm1lYnVzLmMKQEAgLTY1LDcgKzY1LDcgQEAgc3RhdGljIHZvaWQgKmlibWVidXNf YWxsb2NfY29oZXJlbnQoc3RydWN0IGRldmljZSAqZGV2LAogCQkJCSAgICBzaXplX3Qgc2l6ZSwK IAkJCQkgICAgZG1hX2FkZHJfdCAqZG1hX2hhbmRsZSwKIAkJCQkgICAgZ2ZwX3QgZmxhZywKLQkJ CQkgICAgc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJCQkJICAgIHVuc2lnbmVkIGxvbmcgYXR0 cnMpCiB7CiAJdm9pZCAqbWVtOwogCkBAIC03OCw3ICs3OCw3IEBAIHN0YXRpYyB2b2lkICppYm1l YnVzX2FsbG9jX2NvaGVyZW50KHN0cnVjdCBkZXZpY2UgKmRldiwKIHN0YXRpYyB2b2lkIGlibWVi dXNfZnJlZV9jb2hlcmVudChzdHJ1Y3QgZGV2aWNlICpkZXYsCiAJCQkJICBzaXplX3Qgc2l6ZSwg dm9pZCAqdmFkZHIsCiAJCQkJICBkbWFfYWRkcl90IGRtYV9oYW5kbGUsCi0JCQkJICBzdHJ1Y3Qg ZG1hX2F0dHJzICphdHRycykKKwkJCQkgIHVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJa2ZyZWUo dmFkZHIpOwogfQpAQCAtODgsNyArODgsNyBAQCBzdGF0aWMgZG1hX2FkZHJfdCBpYm1lYnVzX21h cF9wYWdlKHN0cnVjdCBkZXZpY2UgKmRldiwKIAkJCQkgICB1bnNpZ25lZCBsb25nIG9mZnNldCwK IAkJCQkgICBzaXplX3Qgc2l6ZSwKIAkJCQkgICBlbnVtIGRtYV9kYXRhX2RpcmVjdGlvbiBkaXJl Y3Rpb24sCi0JCQkJICAgc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJCQkJICAgdW5zaWduZWQg bG9uZyBhdHRycykKIHsKIAlyZXR1cm4gKGRtYV9hZGRyX3QpKHBhZ2VfYWRkcmVzcyhwYWdlKSAr IG9mZnNldCk7CiB9CkBAIC05Nyw3ICs5Nyw3IEBAIHN0YXRpYyB2b2lkIGlibWVidXNfdW5tYXBf cGFnZShzdHJ1Y3QgZGV2aWNlICpkZXYsCiAJCQkgICAgICAgZG1hX2FkZHJfdCBkbWFfYWRkciwK IAkJCSAgICAgICBzaXplX3Qgc2l6ZSwKIAkJCSAgICAgICBlbnVtIGRtYV9kYXRhX2RpcmVjdGlv biBkaXJlY3Rpb24sCi0JCQkgICAgICAgc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJCQkgICAg ICAgdW5zaWduZWQgbG9uZyBhdHRycykKIHsKIAlyZXR1cm47CiB9CkBAIC0xMDUsNyArMTA1LDcg QEAgc3RhdGljIHZvaWQgaWJtZWJ1c191bm1hcF9wYWdlKHN0cnVjdCBkZXZpY2UgKmRldiwKIHN0 YXRpYyBpbnQgaWJtZWJ1c19tYXBfc2coc3RydWN0IGRldmljZSAqZGV2LAogCQkJICBzdHJ1Y3Qg c2NhdHRlcmxpc3QgKnNnbCwKIAkJCSAgaW50IG5lbnRzLCBlbnVtIGRtYV9kYXRhX2RpcmVjdGlv biBkaXJlY3Rpb24sCi0JCQkgIHN0cnVjdCBkbWFfYXR0cnMgKmF0dHJzKQorCQkJICB1bnNpZ25l ZCBsb25nIGF0dHJzKQogewogCXN0cnVjdCBzY2F0dGVybGlzdCAqc2c7CiAJaW50IGk7CkBAIC0x MjEsNyArMTIxLDcgQEAgc3RhdGljIGludCBpYm1lYnVzX21hcF9zZyhzdHJ1Y3QgZGV2aWNlICpk ZXYsCiBzdGF0aWMgdm9pZCBpYm1lYnVzX3VubWFwX3NnKHN0cnVjdCBkZXZpY2UgKmRldiwKIAkJ CSAgICAgc3RydWN0IHNjYXR0ZXJsaXN0ICpzZywKIAkJCSAgICAgaW50IG5lbnRzLCBlbnVtIGRt YV9kYXRhX2RpcmVjdGlvbiBkaXJlY3Rpb24sCi0JCQkgICAgIHN0cnVjdCBkbWFfYXR0cnMgKmF0 dHJzKQorCQkJICAgICB1bnNpZ25lZCBsb25nIGF0dHJzKQogewogCXJldHVybjsKIH0KZGlmZiAt LWdpdCBhL2FyY2gvcG93ZXJwYy9rZXJuZWwvaW9tbXUuYyBiL2FyY2gvcG93ZXJwYy9rZXJuZWwv aW9tbXUuYwppbmRleCBhOGUzNDkwYjU0ZTMuLjM3ZDZlNzQxYmU4MiAxMDA2NDQKLS0tIGEvYXJj aC9wb3dlcnBjL2tlcm5lbC9pb21tdS5jCisrKyBiL2FyY2gvcG93ZXJwYy9rZXJuZWwvaW9tbXUu YwpAQCAtMzA3LDcgKzMwNyw3IEBAIHN0YXRpYyBkbWFfYWRkcl90IGlvbW11X2FsbG9jKHN0cnVj dCBkZXZpY2UgKmRldiwgc3RydWN0IGlvbW11X3RhYmxlICp0YmwsCiAJCQkgICAgICB2b2lkICpw YWdlLCB1bnNpZ25lZCBpbnQgbnBhZ2VzLAogCQkJICAgICAgZW51bSBkbWFfZGF0YV9kaXJlY3Rp b24gZGlyZWN0aW9uLAogCQkJICAgICAgdW5zaWduZWQgbG9uZyBtYXNrLCB1bnNpZ25lZCBpbnQg YWxpZ25fb3JkZXIsCi0JCQkgICAgICBzdHJ1Y3QgZG1hX2F0dHJzICphdHRycykKKwkJCSAgICAg IHVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJdW5zaWduZWQgbG9uZyBlbnRyeTsKIAlkbWFfYWRk cl90IHJldCA9IERNQV9FUlJPUl9DT0RFOwpAQCAtNDMxLDcgKzQzMSw3IEBAIHN0YXRpYyB2b2lk IGlvbW11X2ZyZWUoc3RydWN0IGlvbW11X3RhYmxlICp0YmwsIGRtYV9hZGRyX3QgZG1hX2FkZHIs CiBpbnQgcHBjX2lvbW11X21hcF9zZyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBpb21tdV90 YWJsZSAqdGJsLAogCQkgICAgIHN0cnVjdCBzY2F0dGVybGlzdCAqc2dsaXN0LCBpbnQgbmVsZW1z LAogCQkgICAgIHVuc2lnbmVkIGxvbmcgbWFzaywgZW51bSBkbWFfZGF0YV9kaXJlY3Rpb24gZGly ZWN0aW9uLAotCQkgICAgIHN0cnVjdCBkbWFfYXR0cnMgKmF0dHJzKQorCQkgICAgIHVuc2lnbmVk IGxvbmcgYXR0cnMpCiB7CiAJZG1hX2FkZHJfdCBkbWFfbmV4dCA9IDAsIGRtYV9hZGRyOwogCXN0 cnVjdCBzY2F0dGVybGlzdCAqcywgKm91dHMsICpzZWdzdGFydDsKQEAgLTU3NCw3ICs1NzQsNyBA QCBpbnQgcHBjX2lvbW11X21hcF9zZyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBpb21tdV90 YWJsZSAqdGJsLAogCiB2b2lkIHBwY19pb21tdV91bm1hcF9zZyhzdHJ1Y3QgaW9tbXVfdGFibGUg KnRibCwgc3RydWN0IHNjYXR0ZXJsaXN0ICpzZ2xpc3QsCiAJCQlpbnQgbmVsZW1zLCBlbnVtIGRt YV9kYXRhX2RpcmVjdGlvbiBkaXJlY3Rpb24sCi0JCQlzdHJ1Y3QgZG1hX2F0dHJzICphdHRycykK KwkJCXVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJc3RydWN0IHNjYXR0ZXJsaXN0ICpzZzsKIApA QCAtNzUzLDcgKzc1Myw3IEBAIHZvaWQgaW9tbXVfZnJlZV90YWJsZShzdHJ1Y3QgaW9tbXVfdGFi bGUgKnRibCwgY29uc3QgY2hhciAqbm9kZV9uYW1lKQogZG1hX2FkZHJfdCBpb21tdV9tYXBfcGFn ZShzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBpb21tdV90YWJsZSAqdGJsLAogCQkJICBzdHJ1 Y3QgcGFnZSAqcGFnZSwgdW5zaWduZWQgbG9uZyBvZmZzZXQsIHNpemVfdCBzaXplLAogCQkJICB1 bnNpZ25lZCBsb25nIG1hc2ssIGVudW0gZG1hX2RhdGFfZGlyZWN0aW9uIGRpcmVjdGlvbiwKLQkJ CSAgc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJCQkgIHVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7 CiAJZG1hX2FkZHJfdCBkbWFfaGFuZGxlID0gRE1BX0VSUk9SX0NPREU7CiAJdm9pZCAqdmFkZHI7 CkBAIC03OTAsNyArNzkwLDcgQEAgZG1hX2FkZHJfdCBpb21tdV9tYXBfcGFnZShzdHJ1Y3QgZGV2 aWNlICpkZXYsIHN0cnVjdCBpb21tdV90YWJsZSAqdGJsLAogCiB2b2lkIGlvbW11X3VubWFwX3Bh Z2Uoc3RydWN0IGlvbW11X3RhYmxlICp0YmwsIGRtYV9hZGRyX3QgZG1hX2hhbmRsZSwKIAkJICAg ICAgc2l6ZV90IHNpemUsIGVudW0gZG1hX2RhdGFfZGlyZWN0aW9uIGRpcmVjdGlvbiwKLQkJICAg ICAgc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJCSAgICAgIHVuc2lnbmVkIGxvbmcgYXR0cnMp CiB7CiAJdW5zaWduZWQgaW50IG5wYWdlczsKIApAQCAtODQ1LDcgKzg0NSw3IEBAIHZvaWQgKmlv bW11X2FsbG9jX2NvaGVyZW50KHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IGlvbW11X3RhYmxl ICp0YmwsCiAJbmlvX3BhZ2VzID0gc2l6ZSA+PiB0YmwtPml0X3BhZ2Vfc2hpZnQ7CiAJaW9fb3Jk ZXIgPSBnZXRfaW9tbXVfb3JkZXIoc2l6ZSwgdGJsKTsKIAltYXBwaW5nID0gaW9tbXVfYWxsb2Mo ZGV2LCB0YmwsIHJldCwgbmlvX3BhZ2VzLCBETUFfQklESVJFQ1RJT05BTCwKLQkJCSAgICAgIG1h c2sgPj4gdGJsLT5pdF9wYWdlX3NoaWZ0LCBpb19vcmRlciwgTlVMTCk7CisJCQkgICAgICBtYXNr ID4+IHRibC0+aXRfcGFnZV9zaGlmdCwgaW9fb3JkZXIsIDApOwogCWlmIChtYXBwaW5nID09IERN QV9FUlJPUl9DT0RFKSB7CiAJCWZyZWVfcGFnZXMoKHVuc2lnbmVkIGxvbmcpcmV0LCBvcmRlcik7 CiAJCXJldHVybiBOVUxMOwpkaWZmIC0tZ2l0IGEvYXJjaC9wb3dlcnBjL2tlcm5lbC92aW8uYyBi L2FyY2gvcG93ZXJwYy9rZXJuZWwvdmlvLmMKaW5kZXggOGQ3MzU4ZjNhMjczLi5iMzgxM2RkYjJm YjQgMTAwNjQ0Ci0tLSBhL2FyY2gvcG93ZXJwYy9rZXJuZWwvdmlvLmMKKysrIGIvYXJjaC9wb3dl cnBjL2tlcm5lbC92aW8uYwpAQCAtNDgyLDcgKzQ4Miw3IEBAIHN0YXRpYyB2b2lkIHZpb19jbW9f YmFsYW5jZShzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspCiAKIHN0YXRpYyB2b2lkICp2aW9fZG1h X2lvbW11X2FsbG9jX2NvaGVyZW50KHN0cnVjdCBkZXZpY2UgKmRldiwgc2l6ZV90IHNpemUsCiAJ CQkJCSAgZG1hX2FkZHJfdCAqZG1hX2hhbmRsZSwgZ2ZwX3QgZmxhZywKLQkJCQkJICBzdHJ1Y3Qg ZG1hX2F0dHJzICphdHRycykKKwkJCQkJICB1bnNpZ25lZCBsb25nIGF0dHJzKQogewogCXN0cnVj dCB2aW9fZGV2ICp2aW9kZXYgPSB0b192aW9fZGV2KGRldik7CiAJdm9pZCAqcmV0OwpAQCAtNTAz LDcgKzUwMyw3IEBAIHN0YXRpYyB2b2lkICp2aW9fZG1hX2lvbW11X2FsbG9jX2NvaGVyZW50KHN0 cnVjdCBkZXZpY2UgKmRldiwgc2l6ZV90IHNpemUsCiAKIHN0YXRpYyB2b2lkIHZpb19kbWFfaW9t bXVfZnJlZV9jb2hlcmVudChzdHJ1Y3QgZGV2aWNlICpkZXYsIHNpemVfdCBzaXplLAogCQkJCQl2 b2lkICp2YWRkciwgZG1hX2FkZHJfdCBkbWFfaGFuZGxlLAotCQkJCQlzdHJ1Y3QgZG1hX2F0dHJz ICphdHRycykKKwkJCQkJdW5zaWduZWQgbG9uZyBhdHRycykKIHsKIAlzdHJ1Y3QgdmlvX2RldiAq dmlvZGV2ID0gdG9fdmlvX2RldihkZXYpOwogCkBAIC01MTUsNyArNTE1LDcgQEAgc3RhdGljIHZv aWQgdmlvX2RtYV9pb21tdV9mcmVlX2NvaGVyZW50KHN0cnVjdCBkZXZpY2UgKmRldiwgc2l6ZV90 IHNpemUsCiBzdGF0aWMgZG1hX2FkZHJfdCB2aW9fZG1hX2lvbW11X21hcF9wYWdlKHN0cnVjdCBk ZXZpY2UgKmRldiwgc3RydWN0IHBhZ2UgKnBhZ2UsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGxvbmcgb2Zmc2V0LCBzaXplX3Qgc2l6ZSwKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW51bSBkbWFfZGF0YV9kaXJlY3Rp b24gZGlyZWN0aW9uLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBz dHJ1Y3QgZG1hX2F0dHJzICphdHRycykKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdW5zaWduZWQgbG9uZyBhdHRycykKIHsKIAlzdHJ1Y3QgdmlvX2RldiAqdmlvZGV2 ID0gdG9fdmlvX2RldihkZXYpOwogCXN0cnVjdCBpb21tdV90YWJsZSAqdGJsOwpAQCAtNTM5LDcg KzUzOSw3IEBAIHN0YXRpYyBkbWFfYWRkcl90IHZpb19kbWFfaW9tbXVfbWFwX3BhZ2Uoc3RydWN0 IGRldmljZSAqZGV2LCBzdHJ1Y3QgcGFnZSAqcGFnZSwKIHN0YXRpYyB2b2lkIHZpb19kbWFfaW9t bXVfdW5tYXBfcGFnZShzdHJ1Y3QgZGV2aWNlICpkZXYsIGRtYV9hZGRyX3QgZG1hX2hhbmRsZSwK IAkJCQkgICAgIHNpemVfdCBzaXplLAogCQkJCSAgICAgZW51bSBkbWFfZGF0YV9kaXJlY3Rpb24g ZGlyZWN0aW9uLAotCQkJCSAgICAgc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJCQkJICAgICB1 bnNpZ25lZCBsb25nIGF0dHJzKQogewogCXN0cnVjdCB2aW9fZGV2ICp2aW9kZXYgPSB0b192aW9f ZGV2KGRldik7CiAJc3RydWN0IGlvbW11X3RhYmxlICp0Ymw7CkBAIC01NTIsNyArNTUyLDcgQEAg c3RhdGljIHZvaWQgdmlvX2RtYV9pb21tdV91bm1hcF9wYWdlKHN0cnVjdCBkZXZpY2UgKmRldiwg ZG1hX2FkZHJfdCBkbWFfaGFuZGxlLAogCiBzdGF0aWMgaW50IHZpb19kbWFfaW9tbXVfbWFwX3Nn KHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IHNjYXR0ZXJsaXN0ICpzZ2xpc3QsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGludCBuZWxlbXMsIGVudW0gZG1hX2RhdGFfZGlyZWN0 aW9uIGRpcmVjdGlvbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGRt YV9hdHRycyAqYXR0cnMpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk IGxvbmcgYXR0cnMpCiB7CiAJc3RydWN0IHZpb19kZXYgKnZpb2RldiA9IHRvX3Zpb19kZXYoZGV2 KTsKIAlzdHJ1Y3QgaW9tbXVfdGFibGUgKnRibDsKQEAgLTU4OCw3ICs1ODgsNyBAQCBzdGF0aWMg aW50IHZpb19kbWFfaW9tbXVfbWFwX3NnKHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IHNjYXR0 ZXJsaXN0ICpzZ2xpc3QsCiBzdGF0aWMgdm9pZCB2aW9fZG1hX2lvbW11X3VubWFwX3NnKHN0cnVj dCBkZXZpY2UgKmRldiwKIAkJc3RydWN0IHNjYXR0ZXJsaXN0ICpzZ2xpc3QsIGludCBuZWxlbXMs CiAJCWVudW0gZG1hX2RhdGFfZGlyZWN0aW9uIGRpcmVjdGlvbiwKLQkJc3RydWN0IGRtYV9hdHRy cyAqYXR0cnMpCisJCXVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJc3RydWN0IHZpb19kZXYgKnZp b2RldiA9IHRvX3Zpb19kZXYoZGV2KTsKIAlzdHJ1Y3QgaW9tbXVfdGFibGUgKnRibDsKZGlmZiAt LWdpdCBhL2FyY2gvcG93ZXJwYy9wbGF0Zm9ybXMvY2VsbC9pb21tdS5jIGIvYXJjaC9wb3dlcnBj L3BsYXRmb3Jtcy9jZWxsL2lvbW11LmMKaW5kZXggMGMyNzk0ZDJiNmMwLi41ZDFhN2VmM2ZkZWUg MTAwNjQ0Ci0tLSBhL2FyY2gvcG93ZXJwYy9wbGF0Zm9ybXMvY2VsbC9pb21tdS5jCisrKyBiL2Fy Y2gvcG93ZXJwYy9wbGF0Zm9ybXMvY2VsbC9pb21tdS5jCkBAIC0xNjYsNyArMTY2LDcgQEAgc3Rh dGljIHZvaWQgaW52YWxpZGF0ZV90Y2VfY2FjaGUoc3RydWN0IGNiZV9pb21tdSAqaW9tbXUsIHVu c2lnbmVkIGxvbmcgKnB0ZSwKIAogc3RhdGljIGludCB0Y2VfYnVpbGRfY2VsbChzdHJ1Y3QgaW9t bXVfdGFibGUgKnRibCwgbG9uZyBpbmRleCwgbG9uZyBucGFnZXMsCiAJCXVuc2lnbmVkIGxvbmcg dWFkZHIsIGVudW0gZG1hX2RhdGFfZGlyZWN0aW9uIGRpcmVjdGlvbiwKLQkJc3RydWN0IGRtYV9h dHRycyAqYXR0cnMpCisJCXVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJaW50IGk7CiAJdW5zaWdu ZWQgbG9uZyAqaW9fcHRlLCBiYXNlX3B0ZTsKQEAgLTU3Miw3ICs1NzIsNyBAQCBzdGF0aWMgc3Ry dWN0IGlvbW11X3RhYmxlICpjZWxsX2dldF9pb21tdV90YWJsZShzdHJ1Y3QgZGV2aWNlICpkZXYp CiAKIHN0YXRpYyB2b2lkICpkbWFfZml4ZWRfYWxsb2NfY29oZXJlbnQoc3RydWN0IGRldmljZSAq ZGV2LCBzaXplX3Qgc2l6ZSwKIAkJCQkgICAgICBkbWFfYWRkcl90ICpkbWFfaGFuZGxlLCBnZnBf dCBmbGFnLAotCQkJCSAgICAgIHN0cnVjdCBkbWFfYXR0cnMgKmF0dHJzKQorCQkJCSAgICAgIHVu c2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJaWYgKGlvbW11X2ZpeGVkX2lzX3dlYWspCiAJCXJldHVy biBpb21tdV9hbGxvY19jb2hlcmVudChkZXYsIGNlbGxfZ2V0X2lvbW11X3RhYmxlKGRldiksCkBA IC01ODYsNyArNTg2LDcgQEAgc3RhdGljIHZvaWQgKmRtYV9maXhlZF9hbGxvY19jb2hlcmVudChz dHJ1Y3QgZGV2aWNlICpkZXYsIHNpemVfdCBzaXplLAogCiBzdGF0aWMgdm9pZCBkbWFfZml4ZWRf ZnJlZV9jb2hlcmVudChzdHJ1Y3QgZGV2aWNlICpkZXYsIHNpemVfdCBzaXplLAogCQkJCSAgICB2 b2lkICp2YWRkciwgZG1hX2FkZHJfdCBkbWFfaGFuZGxlLAotCQkJCSAgICBzdHJ1Y3QgZG1hX2F0 dHJzICphdHRycykKKwkJCQkgICAgdW5zaWduZWQgbG9uZyBhdHRycykKIHsKIAlpZiAoaW9tbXVf Zml4ZWRfaXNfd2VhaykKIAkJaW9tbXVfZnJlZV9jb2hlcmVudChjZWxsX2dldF9pb21tdV90YWJs ZShkZXYpLCBzaXplLCB2YWRkciwKQEAgLTU5OCw3ICs1OTgsNyBAQCBzdGF0aWMgdm9pZCBkbWFf Zml4ZWRfZnJlZV9jb2hlcmVudChzdHJ1Y3QgZGV2aWNlICpkZXYsIHNpemVfdCBzaXplLAogc3Rh dGljIGRtYV9hZGRyX3QgZG1hX2ZpeGVkX21hcF9wYWdlKHN0cnVjdCBkZXZpY2UgKmRldiwgc3Ry dWN0IHBhZ2UgKnBhZ2UsCiAJCQkJICAgICB1bnNpZ25lZCBsb25nIG9mZnNldCwgc2l6ZV90IHNp emUsCiAJCQkJICAgICBlbnVtIGRtYV9kYXRhX2RpcmVjdGlvbiBkaXJlY3Rpb24sCi0JCQkJICAg ICBzdHJ1Y3QgZG1hX2F0dHJzICphdHRycykKKwkJCQkgICAgIHVuc2lnbmVkIGxvbmcgYXR0cnMp CiB7CiAJaWYgKGlvbW11X2ZpeGVkX2lzX3dlYWsgPT0gZG1hX2dldF9hdHRyKERNQV9BVFRSX1dF QUtfT1JERVJJTkcsIGF0dHJzKSkKIAkJcmV0dXJuIGRtYV9kaXJlY3Rfb3BzLm1hcF9wYWdlKGRl diwgcGFnZSwgb2Zmc2V0LCBzaXplLApAQCAtNjExLDcgKzYxMSw3IEBAIHN0YXRpYyBkbWFfYWRk cl90IGRtYV9maXhlZF9tYXBfcGFnZShzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBwYWdlICpw YWdlLAogCiBzdGF0aWMgdm9pZCBkbWFfZml4ZWRfdW5tYXBfcGFnZShzdHJ1Y3QgZGV2aWNlICpk ZXYsIGRtYV9hZGRyX3QgZG1hX2FkZHIsCiAJCQkJIHNpemVfdCBzaXplLCBlbnVtIGRtYV9kYXRh X2RpcmVjdGlvbiBkaXJlY3Rpb24sCi0JCQkJIHN0cnVjdCBkbWFfYXR0cnMgKmF0dHJzKQorCQkJ CSB1bnNpZ25lZCBsb25nIGF0dHJzKQogewogCWlmIChpb21tdV9maXhlZF9pc193ZWFrID09IGRt YV9nZXRfYXR0cihETUFfQVRUUl9XRUFLX09SREVSSU5HLCBhdHRycykpCiAJCWRtYV9kaXJlY3Rf b3BzLnVubWFwX3BhZ2UoZGV2LCBkbWFfYWRkciwgc2l6ZSwgZGlyZWN0aW9uLApAQCAtNjIzLDcg KzYyMyw3IEBAIHN0YXRpYyB2b2lkIGRtYV9maXhlZF91bm1hcF9wYWdlKHN0cnVjdCBkZXZpY2Ug KmRldiwgZG1hX2FkZHJfdCBkbWFfYWRkciwKIAogc3RhdGljIGludCBkbWFfZml4ZWRfbWFwX3Nn KHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IHNjYXR0ZXJsaXN0ICpzZywKIAkJCSAgIGludCBu ZW50cywgZW51bSBkbWFfZGF0YV9kaXJlY3Rpb24gZGlyZWN0aW9uLAotCQkJICAgc3RydWN0IGRt YV9hdHRycyAqYXR0cnMpCisJCQkgICB1bnNpZ25lZCBsb25nIGF0dHJzKQogewogCWlmIChpb21t dV9maXhlZF9pc193ZWFrID09IGRtYV9nZXRfYXR0cihETUFfQVRUUl9XRUFLX09SREVSSU5HLCBh dHRycykpCiAJCXJldHVybiBkbWFfZGlyZWN0X29wcy5tYXBfc2coZGV2LCBzZywgbmVudHMsIGRp cmVjdGlvbiwgYXR0cnMpOwpAQCAtNjM1LDcgKzYzNSw3IEBAIHN0YXRpYyBpbnQgZG1hX2ZpeGVk X21hcF9zZyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBzY2F0dGVybGlzdCAqc2csCiAKIHN0 YXRpYyB2b2lkIGRtYV9maXhlZF91bm1hcF9zZyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHN0cnVjdCBz Y2F0dGVybGlzdCAqc2csCiAJCQkgICAgICAgaW50IG5lbnRzLCBlbnVtIGRtYV9kYXRhX2RpcmVj dGlvbiBkaXJlY3Rpb24sCi0JCQkgICAgICAgc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJCQkg ICAgICAgdW5zaWduZWQgbG9uZyBhdHRycykKIHsKIAlpZiAoaW9tbXVfZml4ZWRfaXNfd2VhayA9 PSBkbWFfZ2V0X2F0dHIoRE1BX0FUVFJfV0VBS19PUkRFUklORywgYXR0cnMpKQogCQlkbWFfZGly ZWN0X29wcy51bm1hcF9zZyhkZXYsIHNnLCBuZW50cywgZGlyZWN0aW9uLCBhdHRycyk7CmRpZmYg LS1naXQgYS9hcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3Bhc2VtaS9pb21tdS5jIGIvYXJjaC9wb3dl cnBjL3BsYXRmb3Jtcy9wYXNlbWkvaW9tbXUuYwppbmRleCBjOTI5NjQ0ZTc0YTYuLmVmYWI1NTY4 Y2ZlZiAxMDA2NDQKLS0tIGEvYXJjaC9wb3dlcnBjL3BsYXRmb3Jtcy9wYXNlbWkvaW9tbXUuYwor KysgYi9hcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3Bhc2VtaS9pb21tdS5jCkBAIC04OCw3ICs4OCw3 IEBAIHN0YXRpYyBpbnQgaW9tbXVfdGFibGVfaW9ibWFwX2luaXRlZDsKIHN0YXRpYyBpbnQgaW9i bWFwX2J1aWxkKHN0cnVjdCBpb21tdV90YWJsZSAqdGJsLCBsb25nIGluZGV4LAogCQkJIGxvbmcg bnBhZ2VzLCB1bnNpZ25lZCBsb25nIHVhZGRyLAogCQkJIGVudW0gZG1hX2RhdGFfZGlyZWN0aW9u IGRpcmVjdGlvbiwKLQkJCSBzdHJ1Y3QgZG1hX2F0dHJzICphdHRycykKKwkJCSB1bnNpZ25lZCBs b25nIGF0dHJzKQogewogCXUzMiAqaXA7CiAJdTMyIHJwbjsKZGlmZiAtLWdpdCBhL2FyY2gvcG93 ZXJwYy9wbGF0Zm9ybXMvcG93ZXJudi9ucHUtZG1hLmMgYi9hcmNoL3Bvd2VycGMvcGxhdGZvcm1z L3Bvd2VybnYvbnB1LWRtYS5jCmluZGV4IDA0NTllMTAwYjRlNy4uYmJhNGM1M2FhZWE3IDEwMDY0 NAotLS0gYS9hcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3Bvd2VybnYvbnB1LWRtYS5jCisrKyBiL2Fy Y2gvcG93ZXJwYy9wbGF0Zm9ybXMvcG93ZXJudi9ucHUtZG1hLmMKQEAgLTczLDcgKzczLDcgQEAg RVhQT1JUX1NZTUJPTChwbnZfcGNpX2dldF9ucHVfZGV2KTsKIAogc3RhdGljIHZvaWQgKmRtYV9u cHVfYWxsb2Moc3RydWN0IGRldmljZSAqZGV2LCBzaXplX3Qgc2l6ZSwKIAkJCSAgIGRtYV9hZGRy X3QgKmRtYV9oYW5kbGUsIGdmcF90IGZsYWcsCi0JCQkgICBzdHJ1Y3QgZG1hX2F0dHJzICphdHRy cykKKwkJCSAgIHVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJTlBVX0RNQV9PUF9VTlNVUFBPUlRF RCgpOwogCXJldHVybiBOVUxMOwpAQCAtODEsNyArODEsNyBAQCBzdGF0aWMgdm9pZCAqZG1hX25w dV9hbGxvYyhzdHJ1Y3QgZGV2aWNlICpkZXYsIHNpemVfdCBzaXplLAogCiBzdGF0aWMgdm9pZCBk bWFfbnB1X2ZyZWUoc3RydWN0IGRldmljZSAqZGV2LCBzaXplX3Qgc2l6ZSwKIAkJCSB2b2lkICp2 YWRkciwgZG1hX2FkZHJfdCBkbWFfaGFuZGxlLAotCQkJIHN0cnVjdCBkbWFfYXR0cnMgKmF0dHJz KQorCQkJIHVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJTlBVX0RNQV9PUF9VTlNVUFBPUlRFRCgp OwogfQpAQCAtODksNyArODksNyBAQCBzdGF0aWMgdm9pZCBkbWFfbnB1X2ZyZWUoc3RydWN0IGRl dmljZSAqZGV2LCBzaXplX3Qgc2l6ZSwKIHN0YXRpYyBkbWFfYWRkcl90IGRtYV9ucHVfbWFwX3Bh Z2Uoc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3QgcGFnZSAqcGFnZSwKIAkJCQkgICB1bnNpZ25l ZCBsb25nIG9mZnNldCwgc2l6ZV90IHNpemUsCiAJCQkJICAgZW51bSBkbWFfZGF0YV9kaXJlY3Rp b24gZGlyZWN0aW9uLAotCQkJCSAgIHN0cnVjdCBkbWFfYXR0cnMgKmF0dHJzKQorCQkJCSAgIHVu c2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJTlBVX0RNQV9PUF9VTlNVUFBPUlRFRCgpOwogCXJldHVy biAwOwpAQCAtOTcsNyArOTcsNyBAQCBzdGF0aWMgZG1hX2FkZHJfdCBkbWFfbnB1X21hcF9wYWdl KHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IHBhZ2UgKnBhZ2UsCiAKIHN0YXRpYyBpbnQgZG1h X25wdV9tYXBfc2coc3RydWN0IGRldmljZSAqZGV2LCBzdHJ1Y3Qgc2NhdHRlcmxpc3QgKnNnbGlz dCwKIAkJCSAgaW50IG5lbGVtcywgZW51bSBkbWFfZGF0YV9kaXJlY3Rpb24gZGlyZWN0aW9uLAot CQkJICBzdHJ1Y3QgZG1hX2F0dHJzICphdHRycykKKwkJCSAgdW5zaWduZWQgbG9uZyBhdHRycykK IHsKIAlOUFVfRE1BX09QX1VOU1VQUE9SVEVEKCk7CiAJcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9h cmNoL3Bvd2VycGMvcGxhdGZvcm1zL3Bvd2VybnYvcGNpLWlvZGEuYyBiL2FyY2gvcG93ZXJwYy9w bGF0Zm9ybXMvcG93ZXJudi9wY2ktaW9kYS5jCmluZGV4IDNhNWVhODIzNmRiOC4uNDBlZjdlMjE0 MzlkIDEwMDY0NAotLS0gYS9hcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3Bvd2VybnYvcGNpLWlvZGEu YworKysgYi9hcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3Bvd2VybnYvcGNpLWlvZGEuYwpAQCAtMTc4 Myw3ICsxNzgzLDcgQEAgc3RhdGljIHZvaWQgcG52X3BjaV9pb2RhMV90Y2VfaW52YWxpZGF0ZShz dHJ1Y3QgaW9tbXVfdGFibGUgKnRibCwKIHN0YXRpYyBpbnQgcG52X2lvZGExX3RjZV9idWlsZChz dHJ1Y3QgaW9tbXVfdGFibGUgKnRibCwgbG9uZyBpbmRleCwKIAkJbG9uZyBucGFnZXMsIHVuc2ln bmVkIGxvbmcgdWFkZHIsCiAJCWVudW0gZG1hX2RhdGFfZGlyZWN0aW9uIGRpcmVjdGlvbiwKLQkJ c3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJCXVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJaW50 IHJldCA9IHBudl90Y2VfYnVpbGQodGJsLCBpbmRleCwgbnBhZ2VzLCB1YWRkciwgZGlyZWN0aW9u LAogCQkJYXR0cnMpOwpAQCAtMTkxMiw3ICsxOTEyLDcgQEAgc3RhdGljIHZvaWQgcG52X3BjaV9p b2RhMl90Y2VfaW52YWxpZGF0ZShzdHJ1Y3QgaW9tbXVfdGFibGUgKnRibCwKIHN0YXRpYyBpbnQg cG52X2lvZGEyX3RjZV9idWlsZChzdHJ1Y3QgaW9tbXVfdGFibGUgKnRibCwgbG9uZyBpbmRleCwK IAkJbG9uZyBucGFnZXMsIHVuc2lnbmVkIGxvbmcgdWFkZHIsCiAJCWVudW0gZG1hX2RhdGFfZGly ZWN0aW9uIGRpcmVjdGlvbiwKLQkJc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJCXVuc2lnbmVk IGxvbmcgYXR0cnMpCiB7CiAJaW50IHJldCA9IHBudl90Y2VfYnVpbGQodGJsLCBpbmRleCwgbnBh Z2VzLCB1YWRkciwgZGlyZWN0aW9uLAogCQkJYXR0cnMpOwpkaWZmIC0tZ2l0IGEvYXJjaC9wb3dl cnBjL3BsYXRmb3Jtcy9wb3dlcm52L3BjaS5jIGIvYXJjaC9wb3dlcnBjL3BsYXRmb3Jtcy9wb3dl cm52L3BjaS5jCmluZGV4IDFkOTJiZDkzYmNkOS4uYmIxNmViYmZjYTc3IDEwMDY0NAotLS0gYS9h cmNoL3Bvd2VycGMvcGxhdGZvcm1zL3Bvd2VybnYvcGNpLmMKKysrIGIvYXJjaC9wb3dlcnBjL3Bs YXRmb3Jtcy9wb3dlcm52L3BjaS5jCkBAIC01ODcsNyArNTg3LDcgQEAgc3RhdGljIF9fYmU2NCAq cG52X3RjZShzdHJ1Y3QgaW9tbXVfdGFibGUgKnRibCwgbG9uZyBpZHgpCiAKIGludCBwbnZfdGNl X2J1aWxkKHN0cnVjdCBpb21tdV90YWJsZSAqdGJsLCBsb25nIGluZGV4LCBsb25nIG5wYWdlcywK IAkJdW5zaWduZWQgbG9uZyB1YWRkciwgZW51bSBkbWFfZGF0YV9kaXJlY3Rpb24gZGlyZWN0aW9u LAotCQlzdHJ1Y3QgZG1hX2F0dHJzICphdHRycykKKwkJdW5zaWduZWQgbG9uZyBhdHRycykKIHsK IAl1NjQgcHJvdG9fdGNlID0gaW9tbXVfZGlyZWN0aW9uX3RvX3RjZV9wZXJtKGRpcmVjdGlvbik7 CiAJdTY0IHJwbiA9IF9fcGEodWFkZHIpID4+IHRibC0+aXRfcGFnZV9zaGlmdDsKZGlmZiAtLWdp dCBhL2FyY2gvcG93ZXJwYy9wbGF0Zm9ybXMvcG93ZXJudi9wY2kuaCBiL2FyY2gvcG93ZXJwYy9w bGF0Zm9ybXMvcG93ZXJudi9wY2kuaAppbmRleCA3ZGVlMjVlMzA0ZGIuLjlkYjFkMWFiMjU0OSAx MDA2NDQKLS0tIGEvYXJjaC9wb3dlcnBjL3BsYXRmb3Jtcy9wb3dlcm52L3BjaS5oCisrKyBiL2Fy Y2gvcG93ZXJwYy9wbGF0Zm9ybXMvcG93ZXJudi9wY2kuaApAQCAtMTc4LDcgKzE3OCw3IEBAIHN0 cnVjdCBwbnZfcGhiIHsKIGV4dGVybiBzdHJ1Y3QgcGNpX29wcyBwbnZfcGNpX29wczsKIGV4dGVy biBpbnQgcG52X3RjZV9idWlsZChzdHJ1Y3QgaW9tbXVfdGFibGUgKnRibCwgbG9uZyBpbmRleCwg bG9uZyBucGFnZXMsCiAJCXVuc2lnbmVkIGxvbmcgdWFkZHIsIGVudW0gZG1hX2RhdGFfZGlyZWN0 aW9uIGRpcmVjdGlvbiwKLQkJc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpOworCQl1bnNpZ25lZCBs b25nIGF0dHJzKTsKIGV4dGVybiB2b2lkIHBudl90Y2VfZnJlZShzdHJ1Y3QgaW9tbXVfdGFibGUg KnRibCwgbG9uZyBpbmRleCwgbG9uZyBucGFnZXMpOwogZXh0ZXJuIGludCBwbnZfdGNlX3hjaGco c3RydWN0IGlvbW11X3RhYmxlICp0YmwsIGxvbmcgaW5kZXgsCiAJCXVuc2lnbmVkIGxvbmcgKmhw YSwgZW51bSBkbWFfZGF0YV9kaXJlY3Rpb24gKmRpcmVjdGlvbik7CmRpZmYgLS1naXQgYS9hcmNo L3Bvd2VycGMvcGxhdGZvcm1zL3BzMy9zeXN0ZW0tYnVzLmMgYi9hcmNoL3Bvd2VycGMvcGxhdGZv cm1zL3BzMy9zeXN0ZW0tYnVzLmMKaW5kZXggNTYwNmZlMzZmYWYyLi44YWYxYzE1YWVmODUgMTAw NjQ0Ci0tLSBhL2FyY2gvcG93ZXJwYy9wbGF0Zm9ybXMvcHMzL3N5c3RlbS1idXMuYworKysgYi9h cmNoL3Bvd2VycGMvcGxhdGZvcm1zL3BzMy9zeXN0ZW0tYnVzLmMKQEAgLTUxNiw3ICs1MTYsNyBA QCBjb3JlX2luaXRjYWxsKHBzM19zeXN0ZW1fYnVzX2luaXQpOwogICovCiBzdGF0aWMgdm9pZCAq IHBzM19hbGxvY19jb2hlcmVudChzdHJ1Y3QgZGV2aWNlICpfZGV2LCBzaXplX3Qgc2l6ZSwKIAkJ CQkgZG1hX2FkZHJfdCAqZG1hX2hhbmRsZSwgZ2ZwX3QgZmxhZywKLQkJCQkgc3RydWN0IGRtYV9h dHRycyAqYXR0cnMpCisJCQkJIHVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJaW50IHJlc3VsdDsK IAlzdHJ1Y3QgcHMzX3N5c3RlbV9idXNfZGV2aWNlICpkZXYgPSBwczNfZGV2X3RvX3N5c3RlbV9i dXNfZGV2KF9kZXYpOwpAQCAtNTUzLDcgKzU1Myw3IEBAIGNsZWFuX25vbmU6CiB9CiAKIHN0YXRp YyB2b2lkIHBzM19mcmVlX2NvaGVyZW50KHN0cnVjdCBkZXZpY2UgKl9kZXYsIHNpemVfdCBzaXpl LCB2b2lkICp2YWRkciwKLQkJCSAgICAgIGRtYV9hZGRyX3QgZG1hX2hhbmRsZSwgc3RydWN0IGRt YV9hdHRycyAqYXR0cnMpCisJCQkgICAgICBkbWFfYWRkcl90IGRtYV9oYW5kbGUsIHVuc2lnbmVk IGxvbmcgYXR0cnMpCiB7CiAJc3RydWN0IHBzM19zeXN0ZW1fYnVzX2RldmljZSAqZGV2ID0gcHMz X2Rldl90b19zeXN0ZW1fYnVzX2RldihfZGV2KTsKIApAQCAtNTY5LDcgKzU2OSw3IEBAIHN0YXRp YyB2b2lkIHBzM19mcmVlX2NvaGVyZW50KHN0cnVjdCBkZXZpY2UgKl9kZXYsIHNpemVfdCBzaXpl LCB2b2lkICp2YWRkciwKIAogc3RhdGljIGRtYV9hZGRyX3QgcHMzX3NiX21hcF9wYWdlKHN0cnVj dCBkZXZpY2UgKl9kZXYsIHN0cnVjdCBwYWdlICpwYWdlLAogCXVuc2lnbmVkIGxvbmcgb2Zmc2V0 LCBzaXplX3Qgc2l6ZSwgZW51bSBkbWFfZGF0YV9kaXJlY3Rpb24gZGlyZWN0aW9uLAotCXN0cnVj dCBkbWFfYXR0cnMgKmF0dHJzKQorCXVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJc3RydWN0IHBz M19zeXN0ZW1fYnVzX2RldmljZSAqZGV2ID0gcHMzX2Rldl90b19zeXN0ZW1fYnVzX2RldihfZGV2 KTsKIAlpbnQgcmVzdWx0OwpAQCAtNTkyLDcgKzU5Miw3IEBAIHN0YXRpYyBkbWFfYWRkcl90IHBz M19zYl9tYXBfcGFnZShzdHJ1Y3QgZGV2aWNlICpfZGV2LCBzdHJ1Y3QgcGFnZSAqcGFnZSwKIHN0 YXRpYyBkbWFfYWRkcl90IHBzM19pb2MwX21hcF9wYWdlKHN0cnVjdCBkZXZpY2UgKl9kZXYsIHN0 cnVjdCBwYWdlICpwYWdlLAogCQkJCSAgICB1bnNpZ25lZCBsb25nIG9mZnNldCwgc2l6ZV90IHNp emUsCiAJCQkJICAgIGVudW0gZG1hX2RhdGFfZGlyZWN0aW9uIGRpcmVjdGlvbiwKLQkJCQkgICAg c3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJCQkJICAgIHVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7 CiAJc3RydWN0IHBzM19zeXN0ZW1fYnVzX2RldmljZSAqZGV2ID0gcHMzX2Rldl90b19zeXN0ZW1f YnVzX2RldihfZGV2KTsKIAlpbnQgcmVzdWx0OwpAQCAtNjI2LDcgKzYyNiw3IEBAIHN0YXRpYyBk bWFfYWRkcl90IHBzM19pb2MwX21hcF9wYWdlKHN0cnVjdCBkZXZpY2UgKl9kZXYsIHN0cnVjdCBw YWdlICpwYWdlLAogfQogCiBzdGF0aWMgdm9pZCBwczNfdW5tYXBfcGFnZShzdHJ1Y3QgZGV2aWNl ICpfZGV2LCBkbWFfYWRkcl90IGRtYV9hZGRyLAotCXNpemVfdCBzaXplLCBlbnVtIGRtYV9kYXRh X2RpcmVjdGlvbiBkaXJlY3Rpb24sIHN0cnVjdCBkbWFfYXR0cnMgKmF0dHJzKQorCXNpemVfdCBz aXplLCBlbnVtIGRtYV9kYXRhX2RpcmVjdGlvbiBkaXJlY3Rpb24sIHVuc2lnbmVkIGxvbmcgYXR0 cnMpCiB7CiAJc3RydWN0IHBzM19zeXN0ZW1fYnVzX2RldmljZSAqZGV2ID0gcHMzX2Rldl90b19z eXN0ZW1fYnVzX2RldihfZGV2KTsKIAlpbnQgcmVzdWx0OwpAQCAtNjQwLDcgKzY0MCw3IEBAIHN0 YXRpYyB2b2lkIHBzM191bm1hcF9wYWdlKHN0cnVjdCBkZXZpY2UgKl9kZXYsIGRtYV9hZGRyX3Qg ZG1hX2FkZHIsCiB9CiAKIHN0YXRpYyBpbnQgcHMzX3NiX21hcF9zZyhzdHJ1Y3QgZGV2aWNlICpf ZGV2LCBzdHJ1Y3Qgc2NhdHRlcmxpc3QgKnNnbCwKLQlpbnQgbmVudHMsIGVudW0gZG1hX2RhdGFf ZGlyZWN0aW9uIGRpcmVjdGlvbiwgc3RydWN0IGRtYV9hdHRycyAqYXR0cnMpCisJaW50IG5lbnRz LCBlbnVtIGRtYV9kYXRhX2RpcmVjdGlvbiBkaXJlY3Rpb24sIHVuc2lnbmVkIGxvbmcgYXR0cnMp CiB7CiAjaWYgZGVmaW5lZChDT05GSUdfUFMzX0RZTkFNSUNfRE1BKQogCUJVR19PTigiZG8iKTsK QEAgLTY3MCwxNCArNjcwLDE0IEBAIHN0YXRpYyBpbnQgcHMzX3NiX21hcF9zZyhzdHJ1Y3QgZGV2 aWNlICpfZGV2LCBzdHJ1Y3Qgc2NhdHRlcmxpc3QgKnNnbCwKIHN0YXRpYyBpbnQgcHMzX2lvYzBf bWFwX3NnKHN0cnVjdCBkZXZpY2UgKl9kZXYsIHN0cnVjdCBzY2F0dGVybGlzdCAqc2csCiAJCQkg ICBpbnQgbmVudHMsCiAJCQkgICBlbnVtIGRtYV9kYXRhX2RpcmVjdGlvbiBkaXJlY3Rpb24sCi0J CQkgICBzdHJ1Y3QgZG1hX2F0dHJzICphdHRycykKKwkJCSAgIHVuc2lnbmVkIGxvbmcgYXR0cnMp CiB7CiAJQlVHKCk7CiAJcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyB2b2lkIHBzM19zYl91bm1hcF9z ZyhzdHJ1Y3QgZGV2aWNlICpfZGV2LCBzdHJ1Y3Qgc2NhdHRlcmxpc3QgKnNnLAotCWludCBuZW50 cywgZW51bSBkbWFfZGF0YV9kaXJlY3Rpb24gZGlyZWN0aW9uLCBzdHJ1Y3QgZG1hX2F0dHJzICph dHRycykKKwlpbnQgbmVudHMsIGVudW0gZG1hX2RhdGFfZGlyZWN0aW9uIGRpcmVjdGlvbiwgdW5z aWduZWQgbG9uZyBhdHRycykKIHsKICNpZiBkZWZpbmVkKENPTkZJR19QUzNfRFlOQU1JQ19ETUEp CiAJQlVHX09OKCJkbyIpOwpAQCAtNjg2LDcgKzY4Niw3IEBAIHN0YXRpYyB2b2lkIHBzM19zYl91 bm1hcF9zZyhzdHJ1Y3QgZGV2aWNlICpfZGV2LCBzdHJ1Y3Qgc2NhdHRlcmxpc3QgKnNnLAogCiBz dGF0aWMgdm9pZCBwczNfaW9jMF91bm1hcF9zZyhzdHJ1Y3QgZGV2aWNlICpfZGV2LCBzdHJ1Y3Qg c2NhdHRlcmxpc3QgKnNnLAogCQkJICAgIGludCBuZW50cywgZW51bSBkbWFfZGF0YV9kaXJlY3Rp b24gZGlyZWN0aW9uLAotCQkJICAgIHN0cnVjdCBkbWFfYXR0cnMgKmF0dHJzKQorCQkJICAgIHVu c2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJQlVHKCk7CiB9CmRpZmYgLS1naXQgYS9hcmNoL3Bvd2Vy cGMvcGxhdGZvcm1zL3BzZXJpZXMvaW9tbXUuYyBiL2FyY2gvcG93ZXJwYy9wbGF0Zm9ybXMvcHNl cmllcy9pb21tdS5jCmluZGV4IGI3ZGZjMTM1OWQwMS4uYjUyZTYxYjg0MGE2IDEwMDY0NAotLS0g YS9hcmNoL3Bvd2VycGMvcGxhdGZvcm1zL3BzZXJpZXMvaW9tbXUuYworKysgYi9hcmNoL3Bvd2Vy cGMvcGxhdGZvcm1zL3BzZXJpZXMvaW9tbXUuYwpAQCAtMTUyLDcgKzE1Miw3IEBAIHN0YXRpYyB2 b2lkIHRjZV9pbnZhbGlkYXRlX3BTZXJpZXNfc3coc3RydWN0IGlvbW11X3RhYmxlICp0YmwsCiBz dGF0aWMgaW50IHRjZV9idWlsZF9wU2VyaWVzKHN0cnVjdCBpb21tdV90YWJsZSAqdGJsLCBsb25n IGluZGV4LAogCQkJICAgICAgbG9uZyBucGFnZXMsIHVuc2lnbmVkIGxvbmcgdWFkZHIsCiAJCQkg ICAgICBlbnVtIGRtYV9kYXRhX2RpcmVjdGlvbiBkaXJlY3Rpb24sCi0JCQkgICAgICBzdHJ1Y3Qg ZG1hX2F0dHJzICphdHRycykKKwkJCSAgICAgIHVuc2lnbmVkIGxvbmcgYXR0cnMpCiB7CiAJdTY0 IHByb3RvX3RjZTsKIAlfX2JlNjQgKnRjZXAsICp0Y2VzOwpAQCAtMjA4LDcgKzIwOCw3IEBAIHN0 YXRpYyB2b2lkIHRjZV9mcmVlbXVsdGlfcFNlcmllc0xQKHN0cnVjdCBpb21tdV90YWJsZSosIGxv bmcsIGxvbmcpOwogc3RhdGljIGludCB0Y2VfYnVpbGRfcFNlcmllc0xQKHN0cnVjdCBpb21tdV90 YWJsZSAqdGJsLCBsb25nIHRjZW51bSwKIAkJCQlsb25nIG5wYWdlcywgdW5zaWduZWQgbG9uZyB1 YWRkciwKIAkJCQllbnVtIGRtYV9kYXRhX2RpcmVjdGlvbiBkaXJlY3Rpb24sCi0JCQkJc3RydWN0 IGRtYV9hdHRycyAqYXR0cnMpCisJCQkJdW5zaWduZWQgbG9uZyBhdHRycykKIHsKIAl1NjQgcmMg PSAwOwogCXU2NCBwcm90b190Y2UsIHRjZTsKQEAgLTI1MSw3ICsyNTEsNyBAQCBzdGF0aWMgREVG SU5FX1BFUl9DUFUoX19iZTY0ICosIHRjZV9wYWdlKTsKIHN0YXRpYyBpbnQgdGNlX2J1aWxkbXVs dGlfcFNlcmllc0xQKHN0cnVjdCBpb21tdV90YWJsZSAqdGJsLCBsb25nIHRjZW51bSwKIAkJCQkg ICAgIGxvbmcgbnBhZ2VzLCB1bnNpZ25lZCBsb25nIHVhZGRyLAogCQkJCSAgICAgZW51bSBkbWFf ZGF0YV9kaXJlY3Rpb24gZGlyZWN0aW9uLAotCQkJCSAgICAgc3RydWN0IGRtYV9hdHRycyAqYXR0 cnMpCisJCQkJICAgICB1bnNpZ25lZCBsb25nIGF0dHJzKQogewogCXU2NCByYyA9IDA7CiAJdTY0 IHByb3RvX3RjZTsKZGlmZiAtLWdpdCBhL2FyY2gvcG93ZXJwYy9zeXNkZXYvZGFydF9pb21tdS5j IGIvYXJjaC9wb3dlcnBjL3N5c2Rldi9kYXJ0X2lvbW11LmMKaW5kZXggYjczNDg2MzdlYWUwLi45 YzI0ZjhlNjI0NmUgMTAwNjQ0Ci0tLSBhL2FyY2gvcG93ZXJwYy9zeXNkZXYvZGFydF9pb21tdS5j CisrKyBiL2FyY2gvcG93ZXJwYy9zeXNkZXYvZGFydF9pb21tdS5jCkBAIC0xNjMsNyArMTYzLDcg QEAgc3RhdGljIHZvaWQgZGFydF9mbHVzaChzdHJ1Y3QgaW9tbXVfdGFibGUgKnRibCkKIHN0YXRp YyBpbnQgZGFydF9idWlsZChzdHJ1Y3QgaW9tbXVfdGFibGUgKnRibCwgbG9uZyBpbmRleCwKIAkJ ICAgICAgIGxvbmcgbnBhZ2VzLCB1bnNpZ25lZCBsb25nIHVhZGRyLAogCQkgICAgICAgZW51bSBk bWFfZGF0YV9kaXJlY3Rpb24gZGlyZWN0aW9uLAotCQkgICAgICAgc3RydWN0IGRtYV9hdHRycyAq YXR0cnMpCisJCSAgICAgICB1bnNpZ25lZCBsb25nIGF0dHJzKQogewogCXVuc2lnbmVkIGludCAq ZHA7CiAJdW5zaWduZWQgaW50IHJwbjsKLS0gCjEuOS4xCgoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2 ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK