From mboxrd@z Thu Jan 1 00:00:00 1970 From: John Hunter Subject: [PATCH v2 1/8] drm/bochs: phase 1 - use the transitional helpers Date: Mon, 20 Jul 2015 22:08:52 +0800 Message-ID: <1437401333-7915-1-git-send-email-zhjwpku@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from pku.edu.cn (mx12.pku.edu.cn [162.105.129.175]) by gabe.freedesktop.org (Postfix) with ESMTP id E7E2D6E1C6 for ; Mon, 20 Jul 2015 07:09:05 -0700 (PDT) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: Daniel Vetter List-Id: dri-devel@lists.freedesktop.org RnJvbTogWmhhbyBKdW53YW5nIDx6aGp3cGt1QGdtYWlsLmNvbT4KCi1yZWdpc3RlciBkcml2ZXIn cyBvd24gcHJpbWFyeSBwbGFuZQotdXNlIGRybV9jcnRjX2luaXRfd2l0aF9wbGFuZXMgaW5zdGVh ZCBvZiBkcm1fY3J0Y19pbml0Cgotc3BsaXQgLT5tb2RlX3NldCBpbnRvOgoJMS4gc2V0IHRoZSBu ZXcgaHcgbW9kZQoJMi4gdXBkYXRlIHRoZSBwcmltYXJ5IHBsYW5lIChUaGlzIGlzIGRvbmUgYnkg LT5zZXRfYmFzZSkKLW1vdmUgd2hhdCAtPnNldF9iYXNlIGRvIGludG8gLT5hdG9taWNfdXBkYXRl CgotdGhlIG5ldyBhdG9taWMgaW5mcmFzdHJ1Y3R1cmUgbmVlZHMgdGhlIC0+bW9kZV9zZXRfbm9m YiBjYWxsYmFjawogdG8gdXBkYXRlIENSVEMgdGltaW5ncyBiZWZvcmUgc2V0dGluZyBhbnkgcGxh bmUKCi1zaW5jZSB0aGUgLT5jbGVhbnVwX2ZiIGNhbid0IGZhaWwsIHNldCB0aGUgaW50ZXJydXB0 aWJsZSBhcmd1bWVudAogb2YgdGhlIHR0bV9ib19yZXNlcnZlIHRvIGZhbHNlLCB0aGlzIG1ha2Ug c3VyZSB0aGUgdHRtX2JvX3Jlc2VydmUKIGNhbid0IGZhaWwKCnYyOiAtYWRkIGEgZmV3IGNoZWNr cyB0byBwbGFuZSdzIC0+YXRvbWljX2NoZWNrLCB1c2luZwogICAgIGRybV9wbGFuZV9oZWxwZXJf Y2hlY2tfdXBkYXRlCgp2MzogLXBvbGlzaCB0aGUgYXRvbWljX2NoZWNrLCBpdCBkb2VzIHRvbyBt dWNoIGluIHYyLCByZW1vdmUgdGhlCiAgICAgLT5kaXNhYmxlX3BsYW5lIGFuZCAtPnNldF9jb25m aWcKCnY0OiAtdXNlIHBsYW5lLT5zdGF0ZSBpbnN0ZWFkIG9mIG9sZF9zdGF0ZSBpbgogICAgIGJv Y2hzX3BsYW5lX2F0b21pY191cGRhdGUKCnY1OiAtanVzdCByZXR1cm4gMCBpbiBwbGFuZSAtPmF0 b21pY19jaGVjaywgaS5lLiByZW1vdmUgd2hhdCB3ZQogICAgIGRvIGluIHYyLXY0Cgp2NjogLXJl bW92ZSBncHVfYWRkciBhbmQgbG9vayB1cCB0aGUgYm8gb2Zmc2V0IHNhbWUgYXMKICAgICBib2No c19ib19ncHVfb2Zmc2V0CiAgICAtYWRkIGF0b21pY19wbGFuZV9kaXNhYmxlIGhvb2ssIHRoaXMg d2lsbCBndWFyYW50ZWUgd2hlbiBpdAogICAgIGNhbGxzIGF0b21pY19wbGFuZV91cGRhdGUgc3Rh dGUtPmZiIGFuZCBzdGF0ZS0+Y3J0YyBhcmUgYm90aAogICAgIG5vbi1OVUxMCgpDYzogR2VyZCBI b2ZmbWFubiA8a3JheGVsQHJlZGhhdC5jb20+CkNjOiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRl bi5sYW5raG9yc3RAbGludXguaW50ZWwuY29tPgpDYzogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZl dHRlckBmZndsbC5jaD4KU2lnbmVkLW9mZi1ieTogWmhhbyBKdW53YW5nIDx6aGp3cGt1QGdtYWls LmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vYm9jaHMvYm9jaHMuaCAgICAgfCAgICAyICsKIGRy aXZlcnMvZ3B1L2RybS9ib2Nocy9ib2Noc19rbXMuYyB8ICAxNjkgKysrKysrKysrKysrKysrKysr KysrKysrKy0tLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAxMTggaW5zZXJ0aW9ucygrKSwg NTMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2JvY2hzL2JvY2hz LmggYi9kcml2ZXJzL2dwdS9kcm0vYm9jaHMvYm9jaHMuaAppbmRleCA3MWYyNjg3Li4yZjEwNDgw IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYm9jaHMvYm9jaHMuaAorKysgYi9kcml2ZXJz L2dwdS9kcm0vYm9jaHMvYm9jaHMuaApAQCAtNSw2ICs1LDcgQEAKICNpbmNsdWRlIDxkcm0vZHJt UC5oPgogI2luY2x1ZGUgPGRybS9kcm1fY3J0Yy5oPgogI2luY2x1ZGUgPGRybS9kcm1fY3J0Y19o ZWxwZXIuaD4KKyNpbmNsdWRlIDxkcm0vZHJtX2F0b21pY19oZWxwZXIuaD4KICNpbmNsdWRlIDxk cm0vZHJtX2ZiX2hlbHBlci5oPgogCiAjaW5jbHVkZSA8ZHJtL2RybV9nZW0uaD4KQEAgLTcyLDYg KzczLDcgQEAgc3RydWN0IGJvY2hzX2RldmljZSB7CiAKIAkvKiBkcm0gKi8KIAlzdHJ1Y3QgZHJt X2RldmljZSAgKmRldjsKKwlzdHJ1Y3QgZHJtX3BsYW5lIHByaW1hcnk7CiAJc3RydWN0IGRybV9j cnRjIGNydGM7CiAJc3RydWN0IGRybV9lbmNvZGVyIGVuY29kZXI7CiAJc3RydWN0IGRybV9jb25u ZWN0b3IgY29ubmVjdG9yOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2JvY2hzL2JvY2hz X2ttcy5jIGIvZHJpdmVycy9ncHUvZHJtL2JvY2hzL2JvY2hzX2ttcy5jCmluZGV4IDI2YmNkMDMu LjBlZGE3ZmUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9ib2Nocy9ib2Noc19rbXMuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vYm9jaHMvYm9jaHNfa21zLmMKQEAgLTExLDYgKzExLDEwIEBA CiBzdGF0aWMgaW50IGRlZnggPSAxMDI0Owogc3RhdGljIGludCBkZWZ5ID0gNzY4OwogCitzdGF0 aWMgY29uc3QgdWludDMyX3QgYm9jaHNfcHJpbWFyeV9mb3JtYXRzW10gPSB7CisJRFJNX0ZPUk1B VF9YUkdCODg4OCwKK307CisKIG1vZHVsZV9wYXJhbShkZWZ4LCBpbnQsIDA0NDQpOwogbW9kdWxl X3BhcmFtKGRlZnksIGludCwgMDQ0NCk7CiBNT0RVTEVfUEFSTV9ERVNDKGRlZngsICJkZWZhdWx0 IHggcmVzb2x1dGlvbiIpOwpAQCAtMzcsNTkgKzQxLDEyIEBAIHN0YXRpYyBib29sIGJvY2hzX2Ny dGNfbW9kZV9maXh1cChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJcmV0dXJuIHRydWU7CiB9CiAK LXN0YXRpYyBpbnQgYm9jaHNfY3J0Y19tb2RlX3NldF9iYXNlKHN0cnVjdCBkcm1fY3J0YyAqY3J0 YywgaW50IHgsIGludCB5LAotCQkJCSAgICBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpvbGRfZmIp Ci17Ci0Jc3RydWN0IGJvY2hzX2RldmljZSAqYm9jaHMgPQotCQljb250YWluZXJfb2YoY3J0Yywg c3RydWN0IGJvY2hzX2RldmljZSwgY3J0Yyk7Ci0Jc3RydWN0IGJvY2hzX2ZyYW1lYnVmZmVyICpi b2Noc19mYjsKLQlzdHJ1Y3QgYm9jaHNfYm8gKmJvOwotCXU2NCBncHVfYWRkciA9IDA7Ci0JaW50 IHJldDsKLQotCWlmIChvbGRfZmIpIHsKLQkJYm9jaHNfZmIgPSB0b19ib2Noc19mcmFtZWJ1ZmZl cihvbGRfZmIpOwotCQlibyA9IGdlbV90b19ib2Noc19ibyhib2Noc19mYi0+b2JqKTsKLQkJcmV0 ID0gdHRtX2JvX3Jlc2VydmUoJmJvLT5ibywgdHJ1ZSwgZmFsc2UsIGZhbHNlLCBOVUxMKTsKLQkJ aWYgKHJldCkgewotCQkJRFJNX0VSUk9SKCJmYWlsZWQgdG8gcmVzZXJ2ZSBvbGRfZmIgYm9cbiIp OwotCQl9IGVsc2UgewotCQkJYm9jaHNfYm9fdW5waW4oYm8pOwotCQkJdHRtX2JvX3VucmVzZXJ2 ZSgmYm8tPmJvKTsKLQkJfQotCX0KLQotCWlmIChXQVJOX09OKGNydGMtPnByaW1hcnktPmZiID09 IE5VTEwpKQotCQlyZXR1cm4gLUVJTlZBTDsKLQotCWJvY2hzX2ZiID0gdG9fYm9jaHNfZnJhbWVi dWZmZXIoY3J0Yy0+cHJpbWFyeS0+ZmIpOwotCWJvID0gZ2VtX3RvX2JvY2hzX2JvKGJvY2hzX2Zi LT5vYmopOwotCXJldCA9IHR0bV9ib19yZXNlcnZlKCZiby0+Ym8sIHRydWUsIGZhbHNlLCBmYWxz ZSwgTlVMTCk7Ci0JaWYgKHJldCkKLQkJcmV0dXJuIHJldDsKLQotCXJldCA9IGJvY2hzX2JvX3Bp bihibywgVFRNX1BMX0ZMQUdfVlJBTSwgJmdwdV9hZGRyKTsKLQlpZiAocmV0KSB7Ci0JCXR0bV9i b191bnJlc2VydmUoJmJvLT5ibyk7Ci0JCXJldHVybiByZXQ7Ci0JfQotCi0JdHRtX2JvX3VucmVz ZXJ2ZSgmYm8tPmJvKTsKLQlib2Noc19od19zZXRiYXNlKGJvY2hzLCB4LCB5LCBncHVfYWRkcik7 Ci0JcmV0dXJuIDA7Ci19Ci0KLXN0YXRpYyBpbnQgYm9jaHNfY3J0Y19tb2RlX3NldChzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMsCi0JCQkgICAgICAgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUs Ci0JCQkgICAgICAgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKmFkanVzdGVkX21vZGUsCi0JCQkg ICAgICAgaW50IHgsIGludCB5LCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpvbGRfZmIpCitzdGF0 aWMgdm9pZCBib2Noc19jcnRjX21vZGVfc2V0X25vZmIoc3RydWN0IGRybV9jcnRjICpjcnRjKQog ewogCXN0cnVjdCBib2Noc19kZXZpY2UgKmJvY2hzID0KIAkJY29udGFpbmVyX29mKGNydGMsIHN0 cnVjdCBib2Noc19kZXZpY2UsIGNydGMpOwogCi0JYm9jaHNfaHdfc2V0bW9kZShib2NocywgbW9k ZSk7Ci0JYm9jaHNfY3J0Y19tb2RlX3NldF9iYXNlKGNydGMsIHgsIHksIG9sZF9mYik7Ci0JcmV0 dXJuIDA7CisJYm9jaHNfaHdfc2V0bW9kZShib2NocywgJmNydGMtPm1vZGUpOwogfQogCiBzdGF0 aWMgdm9pZCBib2Noc19jcnRjX3ByZXBhcmUoc3RydWN0IGRybV9jcnRjICpjcnRjKQpAQCAtMTE2 LDcgKzczLDcgQEAgc3RhdGljIGludCBib2Noc19jcnRjX3BhZ2VfZmxpcChzdHJ1Y3QgZHJtX2Ny dGMgKmNydGMsCiAJdW5zaWduZWQgbG9uZyBpcnFmbGFnczsKIAogCWNydGMtPnByaW1hcnktPmZi ID0gZmI7Ci0JYm9jaHNfY3J0Y19tb2RlX3NldF9iYXNlKGNydGMsIDAsIDAsIG9sZF9mYik7CisJ ZHJtX2hlbHBlcl9jcnRjX21vZGVfc2V0X2Jhc2UoY3J0YywgMCwgMCwgb2xkX2ZiKTsKIAlpZiAo ZXZlbnQpIHsKIAkJc3Bpbl9sb2NrX2lycXNhdmUoJmJvY2hzLT5kZXYtPmV2ZW50X2xvY2ssIGly cWZsYWdzKTsKIAkJZHJtX3NlbmRfdmJsYW5rX2V2ZW50KGJvY2hzLT5kZXYsIC0xLCBldmVudCk7 CkBAIC0xMzYsOCArOTMsOSBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2Z1bmNzIGJv Y2hzX2NydGNfZnVuY3MgPSB7CiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2hlbHBlcl9m dW5jcyBib2Noc19oZWxwZXJfZnVuY3MgPSB7CiAJLmRwbXMgPSBib2Noc19jcnRjX2RwbXMsCiAJ Lm1vZGVfZml4dXAgPSBib2Noc19jcnRjX21vZGVfZml4dXAsCi0JLm1vZGVfc2V0ID0gYm9jaHNf Y3J0Y19tb2RlX3NldCwKLQkubW9kZV9zZXRfYmFzZSA9IGJvY2hzX2NydGNfbW9kZV9zZXRfYmFz ZSwKKwkubW9kZV9zZXQgPSBkcm1faGVscGVyX2NydGNfbW9kZV9zZXQsCisJLm1vZGVfc2V0X2Jh c2UgPSBkcm1faGVscGVyX2NydGNfbW9kZV9zZXRfYmFzZSwKKwkubW9kZV9zZXRfbm9mYiA9IGJv Y2hzX2NydGNfbW9kZV9zZXRfbm9mYiwKIAkucHJlcGFyZSA9IGJvY2hzX2NydGNfcHJlcGFyZSwK IAkuY29tbWl0ID0gYm9jaHNfY3J0Y19jb21taXQsCiB9OwpAQCAtMTQ2LDEyICsxMDQsMTE2IEBA IHN0YXRpYyB2b2lkIGJvY2hzX2NydGNfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogewog CXN0cnVjdCBib2Noc19kZXZpY2UgKmJvY2hzID0gZGV2LT5kZXZfcHJpdmF0ZTsKIAlzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMgPSAmYm9jaHMtPmNydGM7CisJc3RydWN0IGRybV9wbGFuZSAqcHJpbWFy eSA9ICZib2Nocy0+cHJpbWFyeTsKIAotCWRybV9jcnRjX2luaXQoZGV2LCBjcnRjLCAmYm9jaHNf Y3J0Y19mdW5jcyk7CisJZHJtX2NydGNfaW5pdF93aXRoX3BsYW5lcyhkZXYsIGNydGMsIHByaW1h cnksIE5VTEwsICZib2Noc19jcnRjX2Z1bmNzKTsKIAlkcm1fbW9kZV9jcnRjX3NldF9nYW1tYV9z aXplKGNydGMsIDI1Nik7CiAJZHJtX2NydGNfaGVscGVyX2FkZChjcnRjLCAmYm9jaHNfaGVscGVy X2Z1bmNzKTsKIH0KIAorc3RhdGljIGludCBib2Noc19wbGFuZV9wcmVwYXJlX2ZiKHN0cnVjdCBk cm1fcGxhbmUgKnBsYW5lLAorCQkJICBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwKKwkJCSAg Y29uc3Qgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqbmV3X3N0YXRlKQoreworCXN0cnVjdCBib2No c19mcmFtZWJ1ZmZlciAqYm9jaHNfZmI7CisJc3RydWN0IGJvY2hzX2JvICpibzsKKwlpbnQgcmV0 OworCisJaWYgKFdBUk5fT04ocGxhbmUtPmZiID09IE5VTEwpKQorCQlyZXR1cm4gLUVJTlZBTDsK KworCWJvY2hzX2ZiID0gdG9fYm9jaHNfZnJhbWVidWZmZXIocGxhbmUtPmZiKTsKKwlibyA9IGdl bV90b19ib2Noc19ibyhib2Noc19mYi0+b2JqKTsKKwl0dG1fYm9fcmVzZXJ2ZSgmYm8tPmJvLCB0 cnVlLCBmYWxzZSwgZmFsc2UsIE5VTEwpOworCisJcmV0ID0gYm9jaHNfYm9fcGluKGJvLCBUVE1f UExfRkxBR19WUkFNLCBOVUxMKTsKKwlpZiAocmV0KSB7CisJCXR0bV9ib191bnJlc2VydmUoJmJv LT5ibyk7CisJCXJldHVybiByZXQ7CisJfQorCisJdHRtX2JvX3VucmVzZXJ2ZSgmYm8tPmJvKTsK KwlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQgYm9jaHNfcGxhbmVfY2xlYW51cF9mYihzdHJ1 Y3QgZHJtX3BsYW5lICpwbGFuZSwKKwkJCSAgIHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKm9sZF9m YiwKKwkJCSAgIGNvbnN0IHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKm9sZF9zdGF0ZSkKK3sKKwlz dHJ1Y3QgYm9jaHNfZnJhbWVidWZmZXIgKmJvY2hzX2ZiOworCXN0cnVjdCBib2Noc19ibyAqYm87 CisKKwlib2Noc19mYiA9IHRvX2JvY2hzX2ZyYW1lYnVmZmVyKG9sZF9mYik7CisJYm8gPSBnZW1f dG9fYm9jaHNfYm8oYm9jaHNfZmItPm9iaik7CisKKwkvKgorCSAqIFNpbmNlIGNsZWFudXAgY2Fu J3QgZmFpbCwgY2hhbmdlIHRoZSBpbnRlcnJ1cHRpYmxlIGFyZ3VtZW50IGkuZS4gdGhlCisJICog c2Vjb25kIGFyZ3VtZW50IHRvIGZhbHNlLCB0aGlzIG1ha2Ugc3VyZSB0dG1fYm9fdW5waW4gY2Fu J3QgZmFpbC4KKwkgKi8KKwl0dG1fYm9fcmVzZXJ2ZSgmYm8tPmJvLCBmYWxzZSwgZmFsc2UsIGZh bHNlLCBOVUxMKTsKKwlib2Noc19ib191bnBpbihibyk7CisJdHRtX2JvX3VucmVzZXJ2ZSgmYm8t PmJvKTsKK30KKworc3RhdGljIGludCBib2Noc19wbGFuZV9hdG9taWNfY2hlY2soc3RydWN0IGRy bV9wbGFuZSAqcGxhbmUsCisJCQkgICAgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqcGxhbmVfc3Rh dGUpCit7CisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyB2b2lkIGJvY2hzX3BsYW5lX2F0b21pY191 cGRhdGUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCisJCQkgICAgICBzdHJ1Y3QgZHJtX3BsYW5l X3N0YXRlICpvbGRfc3RhdGUpCit7CisJc3RydWN0IGJvY2hzX2RldmljZSAqYm9jaHMgPQorCQlj b250YWluZXJfb2YocGxhbmUsIHN0cnVjdCBib2Noc19kZXZpY2UsIHByaW1hcnkpOworCXN0cnVj dCBib2Noc19mcmFtZWJ1ZmZlciAqYm9jaHNfZmIgPQorCQl0b19ib2Noc19mcmFtZWJ1ZmZlcihw bGFuZS0+c3RhdGUtPmZiKTsKKwlzdHJ1Y3QgYm9jaHNfYm8gKmJvID0gZ2VtX3RvX2JvY2hzX2Jv KGJvY2hzX2ZiLT5vYmopOworCXU2NCBncHVfYWRkciA9IGJvLT5iby5vZmZzZXQ7CisKKwlpbnQg eCA9IHBsYW5lLT5zdGF0ZS0+c3JjX3ggPj4gMTY7CisJaW50IHkgPSBwbGFuZS0+c3RhdGUtPnNy Y195ID4+IDE2OworCisJYm9jaHNfaHdfc2V0YmFzZShib2NocywgeCwgeSwgZ3B1X2FkZHIpOwor fQorCitzdGF0aWMgdm9pZCBib2Noc19wbGFuZV9hdG9taWNfZGlzYWJsZShzdHJ1Y3QgZHJtX3Bs YW5lICpwbGFuZSwKKwkJCSAgICAgICBzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpvbGRfc3RhdGUp Cit7Cit9CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX3BsYW5lX2Z1bmNzIGJvY2hzX3BsYW5l X2Z1bmNzID0geworCS51cGRhdGVfcGxhbmUgPSBkcm1fcGxhbmVfaGVscGVyX3VwZGF0ZSwKKwku ZGlzYWJsZV9wbGFuZSA9IGRybV9wbGFuZV9oZWxwZXJfZGlzYWJsZSwKK307CisKK3N0YXRpYyBj b25zdCBzdHJ1Y3QgZHJtX3BsYW5lX2hlbHBlcl9mdW5jcyBib2Noc19wbGFuZV9oZWxwZXJfZnVu Y3MgPSB7CisJLnByZXBhcmVfZmIgPSBib2Noc19wbGFuZV9wcmVwYXJlX2ZiLAorCS5jbGVhbnVw X2ZiID0gYm9jaHNfcGxhbmVfY2xlYW51cF9mYiwKKwkuYXRvbWljX2NoZWNrID0gYm9jaHNfcGxh bmVfYXRvbWljX2NoZWNrLAorCS5hdG9taWNfdXBkYXRlID0gYm9jaHNfcGxhbmVfYXRvbWljX3Vw ZGF0ZSwKKwkuYXRvbWljX2Rpc2FibGUgPSBib2Noc19wbGFuZV9hdG9taWNfZGlzYWJsZSwKK307 CisKK3N0YXRpYyB2b2lkIGJvY2hzX3BsYW5lX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldikK K3sKKwlzdHJ1Y3QgYm9jaHNfZGV2aWNlICpib2NocyA9IGRldi0+ZGV2X3ByaXZhdGU7CisJc3Ry dWN0IGRybV9wbGFuZSAqcHJpbWFyeSA9ICZib2Nocy0+cHJpbWFyeTsKKwlpbnQgcmV0OworCisJ cmV0ID0gZHJtX3VuaXZlcnNhbF9wbGFuZV9pbml0KGRldiwgcHJpbWFyeSwgMCwKKwkJCQkgICAg ICAgJmJvY2hzX3BsYW5lX2Z1bmNzLAorCQkJCSAgICAgICBib2Noc19wcmltYXJ5X2Zvcm1hdHMs CisJCQkJICAgICAgIEFSUkFZX1NJWkUoYm9jaHNfcHJpbWFyeV9mb3JtYXRzKSwKKwkJCQkgICAg ICAgRFJNX1BMQU5FX1RZUEVfUFJJTUFSWSk7CisJaWYgKHJldCkgeworCQlEUk1fREVCVUdfS01T KCJGYWlsZWQgdG8gaW5pdCBwcmltYXJ5IHBsYW5lIGluaXQiKTsKKwkJcmV0dXJuOworCX0KKwor CWRybV9wbGFuZV9oZWxwZXJfYWRkKHByaW1hcnksICZib2Noc19wbGFuZV9oZWxwZXJfZnVuY3Mp OworfQorCiBzdGF0aWMgYm9vbCBib2Noc19lbmNvZGVyX21vZGVfZml4dXAoc3RydWN0IGRybV9l bmNvZGVyICplbmNvZGVyLAogCQkJCSAgICAgY29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUg Km1vZGUsCiAJCQkJICAgICBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqYWRqdXN0ZWRfbW9kZSkK QEAgLTI4NSw2ICszNDcsNyBAQCBpbnQgYm9jaHNfa21zX2luaXQoc3RydWN0IGJvY2hzX2Rldmlj ZSAqYm9jaHMpCiAKIAlib2Nocy0+ZGV2LT5tb2RlX2NvbmZpZy5mdW5jcyA9ICh2b2lkICopJmJv Y2hzX21vZGVfZnVuY3M7CiAKKwlib2Noc19wbGFuZV9pbml0KGJvY2hzLT5kZXYpOwogCWJvY2hz X2NydGNfaW5pdChib2Nocy0+ZGV2KTsKIAlib2Noc19lbmNvZGVyX2luaXQoYm9jaHMtPmRldik7 CiAJYm9jaHNfY29ubmVjdG9yX2luaXQoYm9jaHMtPmRldik7Ci0tIAoxLjcuMTAuNAoKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWls aW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==