From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ie0-f169.google.com (mail-ie0-f169.google.com [209.85.223.169]) by dpdk.org (Postfix) with ESMTP id 363965A7B for ; Sun, 12 Jul 2015 20:39:04 +0200 (CEST) Received: by ieik3 with SMTP id k3so10022348iei.3 for ; Sun, 12 Jul 2015 11:39:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=z0clrnFhuRPkNwlnXiz9/K/9RjSSz7Gs9m8lqKSUWjI=; b=UI0ULA+83Iop00vab328PRLpBCKeLs2NSLWAzCb8BZbTLyW0huXYMRm4ZDv4deZSNV JlF1oa3fILXkNO1IvVlVQZNRN4REoanmXoDMTpQ3oECUjeqUL6VkNfMtk7ZSwOHlO/y6 PN5z7hZdmnxRZtttE6qY8TNeAisH2+XPRD+NoQTlsY2QTH+4ITCMQQQPm7RiSOiJQauF PV+TmPqrL8vBnY6r9pZautXhIwEPXzY0AIf5Bx9STCkM/CnyBYZH4Sl5HNJKvQWi9uQw OeNtdE8jkYkBJD1VGL1xeVcNFZW43TFXmBe02DFqMItbFB8o42QTv+d6KvG+5OW2OHtD 6BgQ== MIME-Version: 1.0 X-Received: by 10.50.62.106 with SMTP id x10mr8927331igr.29.1436726343461; Sun, 12 Jul 2015 11:39:03 -0700 (PDT) Received: by 10.36.194.129 with HTTP; Sun, 12 Jul 2015 11:39:03 -0700 (PDT) Date: Sun, 12 Jul 2015 11:39:03 -0700 Message-ID: From: Gopakumar Choorakkot Edakkunni To: dev@dpdk.org, Stephen Hemminger Content-Type: multipart/mixed; boundary=047d7b3a821858acc1051ab1ebf7 Subject: [dpdk-dev] Diff for persistent KNI interfaces X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Jul 2015 18:39:04 -0000 --047d7b3a821858acc1051ab1ebf7 Content-Type: text/plain; charset=UTF-8 I guess theres not much interest from others for this support in general, but putting it out here in case anyone wants to take a look. If anyone finds any major issues with the diffset, please do let me know, that will be of great help. I have tested this on my machine. Rgds, Gopa. --047d7b3a821858acc1051ab1ebf7 Content-Type: text/plain; charset=US-ASCII; name="kni.diff" Content-Disposition: attachment; filename="kni.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_ic0trn1n0 Y29tbWl0IDU4OTY4ZjY5MDA1NmQ1YWZhNzUxN2U3MjRiYzkxZjY0MzY2MzlkMTAKQXV0aG9yOiBH b3Bha3VtYXIgQyBFIDxnb3Bha3VtYXIuYy5lQGdtYWlsLmNvbT4KRGF0ZTogICBTdW4gSnVsIDEy IDExOjE4OjMzIDIwMTUgLTA3MDAKCiAgICBLTkkgcGVyc2lzdGVudCBpbnRlcmZhY2VzCgpkaWZm IC0tZ2l0IGEvbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2luY2x1ZGUvZXhlYy1lbnYvcnRl X2tuaV9jb21tb24uaCBiL2xpYi9saWJydGVfZWFsL2xpbnV4YXBwL2VhbC9pbmNsdWRlL2V4ZWMt ZW52L3J0ZV9rbmlfY29tbW9uLmgKaW5kZXggMWU1NWMyZC4uMzY5YWI4NSAxMDA2NDQKLS0tIGEv bGliL2xpYnJ0ZV9lYWwvbGludXhhcHAvZWFsL2luY2x1ZGUvZXhlYy1lbnYvcnRlX2tuaV9jb21t b24uaAorKysgYi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9lYWwvaW5jbHVkZS9leGVjLWVudi9y dGVfa25pX2NvbW1vbi5oCkBAIC0xNjAsNiArMTYwLDcgQEAgc3RydWN0IHJ0ZV9rbmlfZGV2aWNl X2luZm8gewogCXVpbnQzMl90IGNvcmVfaWQ7ICAgICAgICAgICAgIC8qKjwgY29yZSBJRCB0byBi aW5kIGZvciBrZXJuZWwgdGhyZWFkICovCiAKIAl1aW50OF90IGZvcmNlX2JpbmQgOiAxOyAgICAg ICAvKio8IEZsYWcgZm9yIGtlcm5lbCB0aHJlYWQgYmluZGluZyAqLworCXVpbnQ4X3QgcGVyc2lz dF9vbl9jbG9zZSA6IDE7IC8qKjwgRG9udCBkZWxldGUgaW50ZXJmYWNlIG9uIGRldi9rbmkgY2xv c2UgKi8KIAogCS8qIG1idWYgc2l6ZSAqLwogCXVuc2lnbmVkIG1idWZfc2l6ZTsKZGlmZiAtLWdp dCBhL2xpYi9saWJydGVfZWFsL2xpbnV4YXBwL2tuaS9rbmlfZGV2LmggYi9saWIvbGlicnRlX2Vh bC9saW51eGFwcC9rbmkva25pX2Rldi5oCmluZGV4IGU3OWU0NzIuLmU1MGFhZDcgMTAwNjQ0Ci0t LSBhL2xpYi9saWJydGVfZWFsL2xpbnV4YXBwL2tuaS9rbmlfZGV2LmgKKysrIGIvbGliL2xpYnJ0 ZV9lYWwvbGludXhhcHAva25pL2tuaV9kZXYuaApAQCAtOTYsNiArOTYsMTIgQEAgc3RydWN0IGtu aV9kZXYgewogCS8qIHN5bmNocm8gZm9yIHJlcXVlc3QgcHJvY2Vzc2luZyAqLwogCXVuc2lnbmVk IGxvbmcgc3luY2hybzsKIAorCS8qIFBlcnNpc3QgbmV0ZGV2IG9uIC9kZXYva25pIGNsb3NlICov CisJdWludDhfdCBuZXRkZXZfcGVyc2lzdCA6IDE7CisKKwkvKiAvZGV2L2tuaSBpcyBjbG9zZWQg b3Igbm90ICovCisJdWludDhfdCBrbmlfcmVsZWFzZWQgOiAxOworCiAjaWZkZWYgUlRFX0tOSV9W SE9TVAogCXN0cnVjdCBrbmlfdmhvc3RfcXVldWUqIHZob3N0X3F1ZXVlOwogCXZvbGF0aWxlIGVu dW0gewpkaWZmIC0tZ2l0IGEvbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAva25pL2tuaV9taXNjLmMg Yi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9rbmkva25pX21pc2MuYwppbmRleCAxOTM1ZDMyLi5m Mzg2YTMxIDEwMDY0NAotLS0gYS9saWIvbGlicnRlX2VhbC9saW51eGFwcC9rbmkva25pX21pc2Mu YworKysgYi9saWIvbGlicnRlX2VhbC9saW51eGFwcC9rbmkva25pX21pc2MuYwpAQCAtNTgsNyAr NTgsNyBAQCBzdGF0aWMgaW50IGtuaV9pb2N0bChzdHJ1Y3QgaW5vZGUgKmlub2RlLCB1bnNpZ25l ZCBpbnQgaW9jdGxfbnVtLAogCQkJCQl1bnNpZ25lZCBsb25nIGlvY3RsX3BhcmFtKTsKIHN0YXRp YyBpbnQga25pX2NvbXBhdF9pb2N0bChzdHJ1Y3QgaW5vZGUgKmlub2RlLCB1bnNpZ25lZCBpbnQg aW9jdGxfbnVtLAogCQkJCQkJdW5zaWduZWQgbG9uZyBpb2N0bF9wYXJhbSk7Ci1zdGF0aWMgaW50 IGtuaV9kZXZfcmVtb3ZlKHN0cnVjdCBrbmlfZGV2ICpkZXYpOworc3RhdGljIGludCBrbmlfZGV2 X3JlbW92ZShzdHJ1Y3Qga25pX2RldiAqZGV2LCBpbnQgbmV0ZGV2X3JlbW92ZSk7CiAKIHN0YXRp YyBpbnQgX19pbml0IGtuaV9wYXJzZV9rdGhyZWFkX21vZGUodm9pZCk7CiAKQEAgLTEyOCw2ICsx MjgsMjEgQEAga25pX2luaXQodm9pZCkKIHN0YXRpYyB2b2lkIF9fZXhpdAoga25pX2V4aXQodm9p ZCkKIHsKKyAgICAgICAgc3RydWN0IGtuaV9kZXYgKmRldiwgKm47CisKKwkvKgorCSAqIFJlbW92 ZSBhbGwgdGhlIHBlcnNpc3RlbnQgS05JIGludGVyZmFjZXMuCisJICovCisgICAgICAgIGRvd25f d3JpdGUoJmtuaV9saXN0X2xvY2spOworICAgICAgICBsaXN0X2Zvcl9lYWNoX2VudHJ5X3NhZmUo ZGV2LCBuLCAma25pX2xpc3RfaGVhZCwgbGlzdCkgeworCQlpZiAoZGV2LT5uZXRfZGV2KSB7CQkJ CisgICAgICAgICAgICAgICAgCXVucmVnaXN0ZXJfbmV0ZGV2KGRldi0+bmV0X2Rldik7CisgICAg ICAgICAgICAgICAgCWZyZWVfbmV0ZGV2KGRldi0+bmV0X2Rldik7CisJCX0KKyAgICAgICAgICAg ICAgICBsaXN0X2RlbCgmZGV2LT5saXN0KTsKKwl9CisgICAgICAgIHVwX3dyaXRlKCZrbmlfbGlz dF9sb2NrKTsKKwogCW1pc2NfZGVyZWdpc3Rlcigma25pX21pc2MpOwogCUtOSV9QUklOVCgiIyMj IyMjIyBEUERLIGtuaSBtb2R1bGUgdW5sb2FkZWQgICMjIyMjIyNcbiIpOwogfQpAQCAtMTk2LDgg KzIxMSwxMiBAQCBrbmlfcmVsZWFzZShzdHJ1Y3QgaW5vZGUgKmlub2RlLCBzdHJ1Y3QgZmlsZSAq ZmlsZSkKICNpZmRlZiBSVEVfS05JX1ZIT1NUCiAJCWtuaV92aG9zdF9iYWNrZW5kX3JlbGVhc2Uo ZGV2KTsKICNlbmRpZgotCQlrbmlfZGV2X3JlbW92ZShkZXYpOwotCQlsaXN0X2RlbCgmZGV2LT5s aXN0KTsKKwkJa25pX2Rldl9yZW1vdmUoZGV2LCAhZGV2LT5uZXRkZXZfcGVyc2lzdCk7CisJCWlm ICghZGV2LT5uZXRkZXZfcGVyc2lzdCkgewkKKwkJCWxpc3RfZGVsKCZkZXYtPmxpc3QpOworCQl9 IGVsc2UgeworCQkJZGV2LT5rbmlfcmVsZWFzZWQgPSAxOworCQl9CiAJfQogCXVwX3dyaXRlKCZr bmlfbGlzdF9sb2NrKTsKIApAQCAtMjY0LDcgKzI4Myw3IEBAIGtuaV90aHJlYWRfbXVsdGlwbGUo dm9pZCAqcGFyYW0pCiB9CiAKIHN0YXRpYyBpbnQKLWtuaV9kZXZfcmVtb3ZlKHN0cnVjdCBrbmlf ZGV2ICpkZXYpCitrbmlfZGV2X3JlbW92ZShzdHJ1Y3Qga25pX2RldiAqZGV2LCBpbnQgbmV0ZGV2 X3JlbW92ZSkKIHsKIAlpZiAoIWRldikKIAkJcmV0dXJuIC1FTk9ERVY7CkBAIC0yODIsNyArMzAx LDcgQEAga25pX2Rldl9yZW1vdmUoc3RydWN0IGtuaV9kZXYgKmRldikKIAkJYnJlYWs7CiAJfQog Ci0JaWYgKGRldi0+bmV0X2RldikgeworCWlmIChkZXYtPm5ldF9kZXYgJiYgbmV0ZGV2X3JlbW92 ZSkgewogCQl1bnJlZ2lzdGVyX25ldGRldihkZXYtPm5ldF9kZXYpOwogCQlmcmVlX25ldGRldihk ZXYtPm5ldF9kZXYpOwogCX0KQEAgLTMxNCw4ICszMzMsOSBAQCBrbmlfaW9jdGxfY3JlYXRlKHVu c2lnbmVkIGludCBpb2N0bF9udW0sIHVuc2lnbmVkIGxvbmcgaW9jdGxfcGFyYW0pCiAJc3RydWN0 IHBjaV9kZXYgKmZvdW5kX3BjaSA9IE5VTEw7CiAJc3RydWN0IG5ldF9kZXZpY2UgKm5ldF9kZXYg PSBOVUxMOwogCXN0cnVjdCBuZXRfZGV2aWNlICpsYWRfZGV2ID0gTlVMTDsKLQlzdHJ1Y3Qga25p X2RldiAqa25pLCAqZGV2LCAqbjsKKwlzdHJ1Y3Qga25pX2RldiAqa25pID0gTlVMTCwgKmRldiwg Km47CiAJc3RydWN0IG5ldCAqbmV0OworCWludCBrbmlfZXhpc3RzID0gMDsKIAogCXByaW50ayhL RVJOX0lORk8gIktOSTogQ3JlYXRpbmcga25pLi4uXG4iKTsKIAkvKiBDaGVjayB0aGUgYnVmZmVy IHNpemUsIHRvIGF2b2lkIHdhcm5pbmcgKi8KQEAgLTM0MywzMiArMzYzLDUyIEBAIGtuaV9pb2N0 bF9jcmVhdGUodW5zaWduZWQgaW50IGlvY3RsX251bSwgdW5zaWduZWQgbG9uZyBpb2N0bF9wYXJh bSkKIAlkb3duX3JlYWQoJmtuaV9saXN0X2xvY2spOwogCWxpc3RfZm9yX2VhY2hfZW50cnlfc2Fm ZShkZXYsIG4sICZrbmlfbGlzdF9oZWFkLCBsaXN0KSB7CiAJCWlmIChrbmlfY2hlY2tfcGFyYW0o ZGV2LCAmZGV2X2luZm8pIDwgMCkgewotCQkJdXBfcmVhZCgma25pX2xpc3RfbG9jayk7Ci0JCQly ZXR1cm4gLUVJTlZBTDsKKwkJCWtuaSA9IGRldjsKKwkJCWtuaV9leGlzdHMgPSAxOwkJCQkKKwkJ CWJyZWFrOwkKIAkJfQogCX0KIAl1cF9yZWFkKCZrbmlfbGlzdF9sb2NrKTsKIAotCW5ldF9kZXYg PSBhbGxvY19uZXRkZXYoc2l6ZW9mKHN0cnVjdCBrbmlfZGV2KSwgZGV2X2luZm8ubmFtZSwKKwlp ZiAoa25pX2V4aXN0cyAmJiAhZGV2X2luZm8ucGVyc2lzdF9vbl9jbG9zZSkgeworCQlyZXR1cm4g LUVJTlZBTDsKKwl9CisKKwlpZiAoIWtuaV9leGlzdHMpIHsKKwkJbmV0X2RldiA9IGFsbG9jX25l dGRldihzaXplb2Yoc3RydWN0IGtuaV9kZXYpLCBkZXZfaW5mby5uYW1lLAogI2lmZGVmIE5FVF9O QU1FX1VOS05PV04KIAkJCQkJCQlORVRfTkFNRV9VTktOT1dOLAogI2VuZGlmCiAJCQkJCQkJa25p X25ldF9pbml0KTsKLQlpZiAobmV0X2RldiA9PSBOVUxMKSB7Ci0JCUtOSV9FUlIoImVycm9yIGFs bG9jYXRpbmcgZGV2aWNlIFwiJXNcIlxuIiwgZGV2X2luZm8ubmFtZSk7Ci0JCXJldHVybiAtRUJV U1k7CisJCWlmIChuZXRfZGV2ID09IE5VTEwpIHsKKwkJCUtOSV9FUlIoImVycm9yIGFsbG9jYXRp bmcgZGV2aWNlIFwiJXNcIlxuIiwgZGV2X2luZm8ubmFtZSk7CisJCQlyZXR1cm4gLUVCVVNZOwor CQl9CisJfSBlbHNlIHsKKwkJbmV0X2RldiA9IGtuaS0+bmV0X2RldjsKIAl9CiAKIAluZXQgPSBn ZXRfbmV0X25zX2J5X3BpZChjdXJyZW50LT5waWQpOwogCWlmIChJU19FUlIobmV0KSkgewogCQlm cmVlX25ldGRldihuZXRfZGV2KTsKKwkJaWYgKGtuaV9leGlzdHMpIHsKKwkJCWRvd25fd3JpdGUo JmtuaV9saXN0X2xvY2spOworCQkJbGlzdF9kZWwoJmtuaS0+bGlzdCk7CisJCQl1cF93cml0ZSgm a25pX2xpc3RfbG9jayk7CQkJCQorCQl9CiAJCXJldHVybiBQVFJfRVJSKG5ldCk7CiAJfQogCWRl dl9uZXRfc2V0KG5ldF9kZXYsIG5ldCk7CiAJcHV0X25ldChuZXQpOwogCi0Ja25pID0gbmV0ZGV2 X3ByaXYobmV0X2Rldik7Ci0KKwlpZiAoIWtuaV9leGlzdHMpIHsKKwkJa25pID0gbmV0ZGV2X3By aXYobmV0X2Rldik7CisJfQorCWlmIChkZXZfaW5mby5wZXJzaXN0X29uX2Nsb3NlKSB7CisJCWtu aS0+bmV0ZGV2X3BlcnNpc3QgPSAxOworCX0gZWxzZSB7CisJCWtuaS0+bmV0ZGV2X3BlcnNpc3Qg PSAwOworCX0KIAlrbmktPm5ldF9kZXYgPSBuZXRfZGV2OwogCWtuaS0+Z3JvdXBfaWQgPSBkZXZf aW5mby5ncm91cF9pZDsKIAlrbmktPmNvcmVfaWQgPSBkZXZfaW5mby5jb3JlX2lkOwpAQCAtNDY2 LDEyICs1MDYsMTQgQEAga25pX2lvY3RsX2NyZWF0ZSh1bnNpZ25lZCBpbnQgaW9jdGxfbnVtLCB1 bnNpZ25lZCBsb25nIGlvY3RsX3BhcmFtKQogCWlmIChwY2kpCiAJCXBjaV9kZXZfcHV0KHBjaSk7 CiAKLQlyZXQgPSByZWdpc3Rlcl9uZXRkZXYobmV0X2Rldik7Ci0JaWYgKHJldCkgewotCQlLTklf RVJSKCJlcnJvciAlaSByZWdpc3RlcmluZyBkZXZpY2UgXCIlc1wiXG4iLAotCQkJCQlyZXQsIGRl dl9pbmZvLm5hbWUpOwotCQlrbmlfZGV2X3JlbW92ZShrbmkpOwotCQlyZXR1cm4gLUVOT0RFVjsK KwlpZiAoIWtuaV9leGlzdHMpIHsKKwkJcmV0ID0gcmVnaXN0ZXJfbmV0ZGV2KG5ldF9kZXYpOwor CQlpZiAocmV0KSB7CisJCQlLTklfRVJSKCJlcnJvciAlaSByZWdpc3RlcmluZyBkZXZpY2UgXCIl c1wiXG4iLAorCQkJCQkJcmV0LCBkZXZfaW5mby5uYW1lKTsKKwkJCWtuaV9kZXZfcmVtb3ZlKGtu aSwgMSk7CisJCQlyZXR1cm4gLUVOT0RFVjsKKwkJfQogCX0KIAogI2lmZGVmIFJURV9LTklfVkhP U1QKQEAgLTQ4Nyw3ICs1MjksMTIgQEAga25pX2lvY3RsX2NyZWF0ZSh1bnNpZ25lZCBpbnQgaW9j dGxfbnVtLCB1bnNpZ25lZCBsb25nIGlvY3RsX3BhcmFtKQogCQkJCQkgICAgICAodm9pZCAqKWtu aSwKIAkJCQkJICAgICAgImtuaV8lcyIsIGtuaS0+bmFtZSk7CiAJCWlmIChJU19FUlIoa25pLT5w dGhyZWFkKSkgewotCQkJa25pX2Rldl9yZW1vdmUoa25pKTsKKwkJCWtuaV9kZXZfcmVtb3ZlKGtu aSwgMSk7CisJCQlpZiAoa25pX2V4aXN0cykgeworCQkJCWRvd25fd3JpdGUoJmtuaV9saXN0X2xv Y2spOworCQkJCWxpc3RfZGVsKCZrbmktPmxpc3QpOworCQkJCXVwX3dyaXRlKCZrbmlfbGlzdF9s b2NrKTsJCQkJCisJCQl9CiAJCQlyZXR1cm4gLUVDQU5DRUxFRDsKIAkJfQogCQlpZiAoZGV2X2lu Zm8uZm9yY2VfYmluZCkKQEAgLTQ5NSw5ICs1NDIsMTMgQEAga25pX2lvY3RsX2NyZWF0ZSh1bnNp Z25lZCBpbnQgaW9jdGxfbnVtLCB1bnNpZ25lZCBsb25nIGlvY3RsX3BhcmFtKQogCQl3YWtlX3Vw X3Byb2Nlc3Moa25pLT5wdGhyZWFkKTsKIAl9CiAKLQlkb3duX3dyaXRlKCZrbmlfbGlzdF9sb2Nr KTsKLQlsaXN0X2FkZCgma25pLT5saXN0LCAma25pX2xpc3RfaGVhZCk7Ci0JdXBfd3JpdGUoJmtu aV9saXN0X2xvY2spOworCWlmICgha25pX2V4aXN0cykgeworCQlkb3duX3dyaXRlKCZrbmlfbGlz dF9sb2NrKTsKKwkJbGlzdF9hZGQoJmtuaS0+bGlzdCwgJmtuaV9saXN0X2hlYWQpOworCQl1cF93 cml0ZSgma25pX2xpc3RfbG9jayk7CisJfSBlbHNlIHsKKwkJa25pLT5rbmlfcmVsZWFzZWQgPSAw OworCX0KIAogCXJldHVybiAwOwogfQpAQCAtNTM1LDcgKzU4Niw3IEBAIGtuaV9pb2N0bF9yZWxl YXNlKHVuc2lnbmVkIGludCBpb2N0bF9udW0sIHVuc2lnbmVkIGxvbmcgaW9jdGxfcGFyYW0pCiAj aWZkZWYgUlRFX0tOSV9WSE9TVAogCQlrbmlfdmhvc3RfYmFja2VuZF9yZWxlYXNlKGRldik7CiAj ZW5kaWYKLQkJa25pX2Rldl9yZW1vdmUoZGV2KTsKKwkJa25pX2Rldl9yZW1vdmUoZGV2LCAxKTsK IAkJbGlzdF9kZWwoJmRldi0+bGlzdCk7CiAJCXJldCA9IDA7CiAJCWJyZWFrOwpkaWZmIC0tZ2l0 IGEvbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAva25pL2tuaV9uZXQuYyBiL2xpYi9saWJydGVfZWFs L2xpbnV4YXBwL2tuaS9rbmlfbmV0LmMKaW5kZXggZGQ5NWRiNS4uM2RiNTIxZiAxMDA2NDQKLS0t IGEvbGliL2xpYnJ0ZV9lYWwvbGludXhhcHAva25pL2tuaV9uZXQuYworKysgYi9saWIvbGlicnRl X2VhbC9saW51eGFwcC9rbmkva25pX25ldC5jCkBAIC03MCw2ICs3MCwxMCBAQCBrbmlfbmV0X29w ZW4oc3RydWN0IG5ldF9kZXZpY2UgKmRldikKIAlzdHJ1Y3QgcnRlX2tuaV9yZXF1ZXN0IHJlcTsK IAlzdHJ1Y3Qga25pX2RldiAqa25pID0gbmV0ZGV2X3ByaXYoZGV2KTsKIAorCWlmIChrbmktPmtu aV9yZWxlYXNlZCkgeworCQlyZXR1cm4gLUVBR0FJTjsKKwl9CisKIAlpZiAoa25pLT5sYWRfZGV2 KQogCQltZW1jcHkoZGV2LT5kZXZfYWRkciwga25pLT5sYWRfZGV2LT5kZXZfYWRkciwgRVRIX0FM RU4pOwogCWVsc2UKQEAgLTk4LDYgKzEwMiwxMCBAQCBrbmlfbmV0X3JlbGVhc2Uoc3RydWN0IG5l dF9kZXZpY2UgKmRldikKIAlzdHJ1Y3QgcnRlX2tuaV9yZXF1ZXN0IHJlcTsKIAlzdHJ1Y3Qga25p X2RldiAqa25pID0gbmV0ZGV2X3ByaXYoZGV2KTsKIAorCWlmIChrbmktPmtuaV9yZWxlYXNlZCkg eworCQlyZXR1cm4gLUVBR0FJTjsKKwl9CisKIAluZXRpZl9zdG9wX3F1ZXVlKGRldik7IC8qIGNh bid0IHRyYW5zbWl0IGFueSBtb3JlICovCiAKIAltZW1zZXQoJnJlcSwgMCwgc2l6ZW9mKHJlcSkp OwpAQCAtMzcwLDYgKzM3OCwxMCBAQCBrbmlfbmV0X3J4X2xvX2ZpZm9fc2tiKHN0cnVjdCBrbmlf ZGV2ICprbmkpCiB2b2lkCiBrbmlfbmV0X3J4KHN0cnVjdCBrbmlfZGV2ICprbmkpCiB7CisJaWYg KGtuaS0+a25pX3JlbGVhc2VkKSB7CisJCXJldHVybjsKKwl9CisKIAkvKioKIAkgKiBJdCBkb2Vz bid0IG5lZWQgdG8gY2hlY2sgaWYgaXQgaXMgTlVMTCBwb2ludGVyLAogCSAqIGFzIGl0IGhhcyBh IGRlZmF1bHQgdmFsdWUKQEAgLTM4Niw2ICszOTgsMTAgQEAga25pX25ldF90eChzdHJ1Y3Qgc2tf YnVmZiAqc2tiLCBzdHJ1Y3QgbmV0X2RldmljZSAqZGV2KQogewogCXN0cnVjdCBrbmlfZGV2ICpr bmkgPSBuZXRkZXZfcHJpdihkZXYpOwogCisJaWYgKGtuaS0+a25pX3JlbGVhc2VkKSB7CisJCXJl dHVybiBORVRERVZfVFhfQlVTWTsKKwl9CisKIAlkZXZfa2ZyZWVfc2tiKHNrYik7CiAJa25pLT5z dGF0cy50eF9kcm9wcGVkKys7CiAKQEAgLTQwMSw2ICs0MTcsMTAgQEAga25pX25ldF90eChzdHJ1 Y3Qgc2tfYnVmZiAqc2tiLCBzdHJ1Y3QgbmV0X2RldmljZSAqZGV2KQogCXN0cnVjdCBydGVfa25p X21idWYgKnBrdF9rdmEgPSBOVUxMOwogCXN0cnVjdCBydGVfa25pX21idWYgKnBrdF92YSA9IE5V TEw7CiAKKwlpZiAoa25pLT5rbmlfcmVsZWFzZWQpIHsKKwkJcmV0dXJuIE5FVERFVl9UWF9CVVNZ OworCX0KKwkJCiAJZGV2LT50cmFuc19zdGFydCA9IGppZmZpZXM7IC8qIHNhdmUgdGhlIHRpbWVz dGFtcCAqLwogCiAJLyogQ2hlY2sgaWYgdGhlIGxlbmd0aCBvZiBza2IgaXMgbGVzcyB0aGFuIG1i dWYgc2l6ZSAqLwpAQCAtNDc4LDYgKzQ5OCwxMCBAQCBrbmlfbmV0X3R4X3RpbWVvdXQgKHN0cnVj dCBuZXRfZGV2aWNlICpkZXYpCiAJS05JX0RCRygiVHJhbnNtaXQgdGltZW91dCBhdCAlbGQsIGxh dGVuY3kgJWxkXG4iLCBqaWZmaWVzLAogCQkJamlmZmllcyAtIGRldi0+dHJhbnNfc3RhcnQpOwog CisJaWYgKGtuaS0+a25pX3JlbGVhc2VkKSB7CisJCXJldHVybjsKKwl9CisKIAlrbmktPnN0YXRz LnR4X2Vycm9ycysrOwogCW5ldGlmX3dha2VfcXVldWUoZGV2KTsKIAlyZXR1cm47CkBAIC00ODks NiArNTEzLDEyIEBAIGtuaV9uZXRfdHhfdGltZW91dCAoc3RydWN0IG5ldF9kZXZpY2UgKmRldikK IHN0YXRpYyBpbnQKIGtuaV9uZXRfaW9jdGwoc3RydWN0IG5ldF9kZXZpY2UgKmRldiwgc3RydWN0 IGlmcmVxICpycSwgaW50IGNtZCkKIHsKKwlzdHJ1Y3Qga25pX2RldiAqa25pID0gbmV0ZGV2X3By aXYoZGV2KTsKKworCWlmIChrbmktPmtuaV9yZWxlYXNlZCkgeworCQlyZXR1cm4gLUVBR0FJTjsK Kwl9CisKIAlLTklfREJHKCJrbmlfbmV0X2lvY3RsICVkXG4iLAogCQkoKHN0cnVjdCBrbmlfZGV2 ICopbmV0ZGV2X3ByaXYoZGV2KSktPmdyb3VwX2lkKTsKIApAQCAtNTA0LDYgKzUzNCwxMCBAQCBr bmlfbmV0X2NoYW5nZV9tdHUoc3RydWN0IG5ldF9kZXZpY2UgKmRldiwgaW50IG5ld19tdHUpCiAK IAlLTklfREJHKCJrbmlfbmV0X2NoYW5nZV9tdHUgbmV3IG10dSAlZCB0byBiZSBzZXRcbiIsIG5l d19tdHUpOwogCisJaWYgKGtuaS0+a25pX3JlbGVhc2VkKSB7CisJCXJldHVybiAtRUFHQUlOOwor CX0KKwogCW1lbXNldCgmcmVxLCAwLCBzaXplb2YocmVxKSk7CiAJcmVxLnJlcV9pZCA9IFJURV9L TklfUkVRX0NIQU5HRV9NVFU7CiAJcmVxLm5ld19tdHUgPSBuZXdfbXR1OwpAQCAtNTIwLDYgKzU1 NCw5IEBAIGtuaV9uZXRfY2hhbmdlX210dShzdHJ1Y3QgbmV0X2RldmljZSAqZGV2LCBpbnQgbmV3 X210dSkKIHZvaWQKIGtuaV9uZXRfcG9sbF9yZXNwKHN0cnVjdCBrbmlfZGV2ICprbmkpCiB7CisJ aWYgKGtuaS0+a25pX3JlbGVhc2VkKSB7CisJCXJldHVybjsKKwl9CiAJaWYgKGtuaV9maWZvX2Nv dW50KGtuaS0+cmVzcF9xKSkKIAkJd2FrZV91cF9pbnRlcnJ1cHRpYmxlKCZrbmktPndxKTsKIH0K ZGlmZiAtLWdpdCBhL2xpYi9saWJydGVfa25pL3J0ZV9rbmkuYyBiL2xpYi9saWJydGVfa25pL3J0 ZV9rbmkuYwppbmRleCA0ZTcwZmEwLi4xY2Y3YzFmIDEwMDY0NAotLS0gYS9saWIvbGlicnRlX2tu aS9ydGVfa25pLmMKKysrIGIvbGliL2xpYnJ0ZV9rbmkvcnRlX2tuaS5jCkBAIC0zODEsNiArMzgx LDcgQEAgcnRlX2tuaV9hbGxvYyhzdHJ1Y3QgcnRlX21lbXBvb2wgKnBrdG1idWZfcG9vbCwKIAlk ZXZfaW5mby5kZXZpY2VfaWQgPSBjb25mLT5pZC5kZXZpY2VfaWQ7CiAJZGV2X2luZm8uY29yZV9p ZCA9IGNvbmYtPmNvcmVfaWQ7CiAJZGV2X2luZm8uZm9yY2VfYmluZCA9IGNvbmYtPmZvcmNlX2Jp bmQ7CisJZGV2X2luZm8ucGVyc2lzdF9vbl9jbG9zZSA9IGNvbmYtPnBlcnNpc3Rfb25fY2xvc2U7 CiAJZGV2X2luZm8uZ3JvdXBfaWQgPSBjb25mLT5ncm91cF9pZDsKIAlkZXZfaW5mby5tYnVmX3Np emUgPSBjb25mLT5tYnVmX3NpemU7CiAKZGlmZiAtLWdpdCBhL2xpYi9saWJydGVfa25pL3J0ZV9r bmkuaCBiL2xpYi9saWJydGVfa25pL3J0ZV9rbmkuaAppbmRleCA4MTViOGUyLi5jNTg1YmM3IDEw MDY0NAotLS0gYS9saWIvbGlicnRlX2tuaS9ydGVfa25pLmgKKysrIGIvbGliL2xpYnJ0ZV9rbmkv cnRlX2tuaS5oCkBAIC04Nyw2ICs4Nyw3IEBAIHN0cnVjdCBydGVfa25pX2NvbmYgewogCXN0cnVj dCBydGVfcGNpX2lkIGlkOwogCiAJdWludDhfdCBmb3JjZV9iaW5kIDogMTsgLyogRmxhZyB0byBi aW5kIGtlcm5lbCB0aHJlYWQgKi8KKwl1aW50OF90IHBlcnNpc3Rfb25fY2xvc2UgOiAxOyAvKiBG bGFnIHRvIGtlZXAgS05JIGFyb3VuZCBwb3N0IC9kZXYva25pIGNsb3NlICovCiB9OwogCiAvKioK --047d7b3a821858acc1051ab1ebf7--