From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH 09/59] drm/i915: Merged the many do_execbuf() parameters into a structure Date: Thu, 19 Mar 2015 12:30:14 +0000 Message-ID: <1426768264-16996-10-git-send-email-John.C.Harrison@Intel.com> References: <1426768264-16996-1-git-send-email-John.C.Harrison@Intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 15CBE6EA05 for ; Thu, 19 Mar 2015 05:31:17 -0700 (PDT) In-Reply-To: <1426768264-16996-1-git-send-email-John.C.Harrison@Intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Intel-GFX@Lists.FreeDesktop.Org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KClRoZSBkb19l eGVjYnVmKCkgZnVuY3Rpb24gdGFrZXMgcXVpdGUgYSBmZXcgcGFyYW1ldGVycy4gVGhlIGFjdHVh bCBzZXQgb2YKcGFyYW1ldGVycyBpcyBnb2luZyB0byBjaGFuZ2Ugd2l0aCB0aGUgY29udmVyc2lv biB0byBwYXNzaW5nIHJlcXVlc3RzIGFyb3VuZC4KRnVydGhlciwgaXQgaXMgZHVlIHRvIGdyb3cg bWFzc2l2ZWx5IHdpdGggdGhlIGFycml2YWwgb2YgdGhlIEdQVSBzY2hlZHVsZXIuCgpUaGlzIHBh dGNoIHNpbXBsaWZpZXMgdGhlIHByb3RvdHlwZSBieSBwYXNzaW5nIGEgcGFyYW1ldGVyIHN0cnVj dHVyZSBpbnN0ZWFkLgpDaGFuZ2luZyB0aGUgcGFyYW1ldGVyIHNldCBpbiB0aGUgZnV0dXJlIGlz IHRoZW4gc2ltcGx5IGEgbWF0dGVyIG9mCmFkZGluZy9yZW1vdmluZyBpdGVtcyB0byB0aGUgc3Ry dWN0dXJlLgoKTm90ZSB0aGF0IHRoZSBzdHJ1Y3R1cmUgZG9lcyBub3QgY29udGFpbiBhYnNvbHV0 ZWx5IGV2ZXJ5dGhpbmcgdGhhdCBpcyBwYXNzZWQKaW4uIFRoaXMgaXMgYmVjYXVzZSB0aGUgaW50 ZW50aW9uIGlzIHRvIHVzZSB0aGlzIHN0cnVjdHVyZSBtb3JlIGV4dGVuc2l2ZWx5CmxhdGVyIGlu IHRoaXMgcGF0Y2ggc2VyaWVzIGFuZCBtb3JlIGVzcGVjaWFsbHkgaW4gdGhlIEdQVSBzY2hlZHVs ZXIgdGhhdCBpcwpjb21pbmcgc29vbi4gVGhlIGxhdHRlciByZXF1aXJlcyBoYW5naW5nIG9uIHRv IHRoZSBzdHJ1Y3R1cmUgYXMgdGhlIGZpbmFsCmhhcmR3YXJlIHN1Ym1pc3Npb24gY2FuIGJlIGRl bGF5ZWQgdW50aWwgbG9uZyBhZnRlciB0aGUgZXhlY2J1ZiBJT0NUTCBoYXMKcmV0dXJuZWQgdG8g dXNlciBsYW5kLiBUaHVzIGl0IGlzIHVuc2FmZSB0byBwdXQgYW55dGhpbmcgaW4gdGhlIHN0cnVj dHVyZSB0aGF0CmlzIGxvY2FsIHRvIHRoZSBJT0NUTCBjYWxsIGl0c2VsZiAtIHN1Y2ggYXMgdGhl ICdhcmdzJyBwYXJhbWV0ZXIuIEFsbCBlbnRyaWVzCm11c3QgYmUgY29waWVzIG9mIGRhdGEgb3Ig cG9pbnRlcnMgdG8gc3RydWN0dXJlcyB0aGF0IGFyZSByZWZlcmVuY2UgY291bnRlZCBpbgpzb21l IHdheSBhbmQgZ3VhcmFudGVlZCB0byBleGlzdCBmb3IgdGhlIGR1cmF0aW9uIG9mIHRoZSBiYXRj aCBidWZmZXIncyBsaWZlLgoKdjI6IFJlYmFzZWQgdG8gbmV3ZXIgdHJlZSBhbmQgdXBkYXRlZCBm b3IgY2hhbmdlcyB0byB0aGUgY29tbWFuZCBwYXJzZXIuClNwZWNpZmljYWxseSwgYSBjb2RlIHNo dWZmbGUgaGFzIHJlcXVpcmVkIHNhdmluZyB0aGUgYmF0Y2ggc3RhcnQgYWRkcmVzcyBpbiB0aGUK cGFyYW1zIHN0cnVjdHVyZS4KCkZvcjogVklaLTUxMTUKU2lnbmVkLW9mZi1ieTogSm9obiBIYXJy aXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KUmV2aWV3ZWQtYnk6IFRvbWFzIEVsZiA8 dG9tYXMuZWxmQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5o ICAgICAgICAgICAgfCAgIDI4ICsrKysrKystLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX2V4ZWNidWZmZXIuYyB8ICAgNjEgKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgICAgICAgICAgIHwgICAyNiArKysrKyst LS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5oICAgICAgICAgICB8ICAgIDkg KystLQogNCBmaWxlcyBjaGFuZ2VkLCA3MSBpbnNlcnRpb25zKCspLCA1MyBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCA3YjM2ZDRhLi42YWU5OWNlIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmgKQEAgLTE1NTgsNiArMTU1OCwxNyBAQCBzdHJ1Y3QgaTkxNV92aXJ0dWFs X2dwdSB7CiAJYm9vbCBhY3RpdmU7CiB9OwogCitzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3BhcmFt cyB7CisJc3RydWN0IGRybV9kZXZpY2UgICAgICAgICAgICAgICAqZGV2OworCXN0cnVjdCBkcm1f ZmlsZSAgICAgICAgICAgICAgICAgKmZpbGU7CisJdWludDMyX3QgICAgICAgICAgICAgICAgICAg ICAgICBkaXNwYXRjaF9mbGFnczsKKwl1aW50MzJfdCAgICAgICAgICAgICAgICAgICAgICAgIGFy Z3NfYmF0Y2hfc3RhcnRfb2Zmc2V0OworCXVpbnQzMl90ICAgICAgICAgICAgICAgICAgICAgICAg YmF0Y2hfb2JqX3ZtX29mZnNldDsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICAgICAgICAgICpy aW5nOworCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICAgICAgKmJhdGNoX29iajsKKwlzdHJ1 Y3QgaW50ZWxfY29udGV4dCAgICAgICAgICAgICpjdHg7Cit9OworCiBzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSB7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRldjsKIAlzdHJ1Y3Qga21lbV9jYWNoZSAq c2xhYjsKQEAgLTE4MTIsMTMgKzE4MjMsOSBAQCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSB7CiAK IAkvKiBBYnN0cmFjdCB0aGUgc3VibWlzc2lvbiBtZWNoYW5pc20gKGxlZ2FjeSByaW5nYnVmZmVy IG9yIGV4ZWNsaXN0cykgYXdheSAqLwogCXN0cnVjdCB7Ci0JCWludCAoKmV4ZWNidWZfc3VibWl0 KShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCi0JCQkJICAg ICAgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywKLQkJCQkgICAgICBzdHJ1Y3QgaW50ZWxf Y29udGV4dCAqY3R4LAorCQlpbnQgKCpleGVjYnVmX3N1Ym1pdCkoc3RydWN0IGk5MTVfZXhlY2J1 ZmZlcl9wYXJhbXMgKnBhcmFtcywKIAkJCQkgICAgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNi dWZmZXIyICphcmdzLAotCQkJCSAgICAgIHN0cnVjdCBsaXN0X2hlYWQgKnZtYXMsCi0JCQkJICAg ICAgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKmJhdGNoX29iaiwKLQkJCQkgICAgICB1NjQg ZXhlY19zdGFydCwgdTMyIGZsYWdzKTsKKwkJCQkgICAgICBzdHJ1Y3QgbGlzdF9oZWFkICp2bWFz KTsKIAkJaW50ICgqaW5pdF9yaW5ncykoc3RydWN0IGRybV9kZXZpY2UgKmRldik7CiAJCXZvaWQg KCpjbGVhbnVwX3JpbmcpKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpOwogCQl2b2lkICgq c3RvcF9yaW5nKShzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nKTsKQEAgLTI1NjksMTQgKzI1 NzYsOSBAQCB2b2lkIGk5MTVfZ2VtX2V4ZWNidWZmZXJfcmV0aXJlX2NvbW1hbmRzKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsCiAJCQkJCSBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCiAJCQkJCSBzdHJ1 Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLAogCQkJCQkgc3RydWN0IGRybV9pOTE1X2dlbV9vYmpl Y3QgKm9iaik7Ci1pbnQgaTkxNV9nZW1fcmluZ2J1ZmZlcl9zdWJtaXNzaW9uKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsCi0JCQkJICAgc3RydWN0IGRybV9maWxlICpmaWxlLAotCQkJCSAgIHN0cnVj dCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCi0JCQkJICAgc3RydWN0IGludGVsX2NvbnRleHQgKmN0 eCwKK2ludCBpOTE1X2dlbV9yaW5nYnVmZmVyX3N1Ym1pc3Npb24oc3RydWN0IGk5MTVfZXhlY2J1 ZmZlcl9wYXJhbXMgKnBhcmFtcywKIAkJCQkgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZm ZXIyICphcmdzLAotCQkJCSAgIHN0cnVjdCBsaXN0X2hlYWQgKnZtYXMsCi0JCQkJICAgc3RydWN0 IGRybV9pOTE1X2dlbV9vYmplY3QgKmJhdGNoX29iaiwKLQkJCQkgICB1NjQgZXhlY19zdGFydCwg dTMyIGZsYWdzKTsKKwkJCQkgICBzdHJ1Y3QgbGlzdF9oZWFkICp2bWFzKTsKIGludCBpOTE1X2dl bV9leGVjYnVmZmVyKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJCQlzdHJ1 Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdik7CiBpbnQgaTkxNV9nZW1fZXhlY2J1ZmZlcjIoc3RydWN0 IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtX2V4ZWNidWZmZXIuYwppbmRleCAyNTA0Y2ZkLi4yZmZmZDk5IDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jCkBAIC0xMTg1LDE3ICsxMTg1LDE1IEBAIGVy cjoKIH0KIAogaW50Ci1pOTE1X2dlbV9yaW5nYnVmZmVyX3N1Ym1pc3Npb24oc3RydWN0IGRybV9k ZXZpY2UgKmRldiwgc3RydWN0IGRybV9maWxlICpmaWxlLAotCQkJICAgICAgIHN0cnVjdCBpbnRl bF9lbmdpbmVfY3MgKnJpbmcsCi0JCQkgICAgICAgc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCwK K2k5MTVfZ2VtX3JpbmdidWZmZXJfc3VibWlzc2lvbihzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3Bh cmFtcyAqcGFyYW1zLAogCQkJICAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fZXhlY2J1ZmZlcjIg KmFyZ3MsCi0JCQkgICAgICAgc3RydWN0IGxpc3RfaGVhZCAqdm1hcywKLQkJCSAgICAgICBzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqYmF0Y2hfb2JqLAotCQkJICAgICAgIHU2NCBleGVjX3N0 YXJ0LCB1MzIgZGlzcGF0Y2hfZmxhZ3MpCisJCQkgICAgICAgc3RydWN0IGxpc3RfaGVhZCAqdm1h cykKIHsKIAlzdHJ1Y3QgZHJtX2NsaXBfcmVjdCAqY2xpcHJlY3RzID0gTlVMTDsKKwlzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2ID0gcGFyYW1zLT5kZXY7CisJc3RydWN0IGludGVsX2VuZ2luZV9jcyAq cmluZyA9IHBhcmFtcy0+cmluZzsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYg PSBkZXYtPmRldl9wcml2YXRlOwotCXU2NCBleGVjX2xlbjsKKwl1NjQgZXhlY19zdGFydCwgZXhl Y19sZW47CiAJaW50IGluc3RwX21vZGU7CiAJdTMyIGluc3RwX21hc2s7CiAJaW50IGksIHJldCA9 IDA7CkBAIC0xMjQ3LDcgKzEyNDUsNyBAQCBpOTE1X2dlbV9yaW5nYnVmZmVyX3N1Ym1pc3Npb24o c3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9maWxlICpmaWxlLAogCWlmIChyZXQp CiAJCWdvdG8gZXJyb3I7CiAKLQlyZXQgPSBpOTE1X3N3aXRjaF9jb250ZXh0KHJpbmcsIGN0eCk7 CisJcmV0ID0gaTkxNV9zd2l0Y2hfY29udGV4dChyaW5nLCBwYXJhbXMtPmN0eCk7CiAJaWYgKHJl dCkKIAkJZ290byBlcnJvcjsKIApAQCAtMTMwNCwxMiArMTMwMiwxNSBAQCBpOTE1X2dlbV9yaW5n YnVmZmVyX3N1Ym1pc3Npb24oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9maWxl ICpmaWxlLAogCX0KIAogCWlmIChhcmdzLT5mbGFncyAmIEk5MTVfRVhFQ19HRU43X1NPTF9SRVNF VCkgewotCQlyZXQgPSBpOTE1X3Jlc2V0X2dlbjdfc29sX29mZnNldHMoZGV2LCByaW5nKTsKKwkJ cmV0ID0gaTkxNV9yZXNldF9nZW43X3NvbF9vZmZzZXRzKHBhcmFtcy0+ZGV2LCByaW5nKTsKIAkJ aWYgKHJldCkKIAkJCWdvdG8gZXJyb3I7CiAJfQogCi0JZXhlY19sZW4gPSBhcmdzLT5iYXRjaF9s ZW47CisJZXhlY19sZW4gICA9IGFyZ3MtPmJhdGNoX2xlbjsKKwlleGVjX3N0YXJ0ID0gcGFyYW1z LT5iYXRjaF9vYmpfdm1fb2Zmc2V0ICsKKwkJICAgICBwYXJhbXMtPmFyZ3NfYmF0Y2hfc3RhcnRf b2Zmc2V0OworCiAJaWYgKGNsaXByZWN0cykgewogCQlmb3IgKGkgPSAwOyBpIDwgYXJncy0+bnVt X2NsaXByZWN0czsgaSsrKSB7CiAJCQlyZXQgPSBpOTE1X2VtaXRfYm94KHJpbmcsICZjbGlwcmVj dHNbaV0sCkBAIC0xMzE5LDIyICsxMzIwLDIzIEBAIGk5MTVfZ2VtX3JpbmdidWZmZXJfc3VibWlz c2lvbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCiAKIAkJ CXJldCA9IHJpbmctPmRpc3BhdGNoX2V4ZWNidWZmZXIocmluZywKIAkJCQkJCQlleGVjX3N0YXJ0 LCBleGVjX2xlbiwKLQkJCQkJCQlkaXNwYXRjaF9mbGFncyk7CisJCQkJCQkJcGFyYW1zLT5kaXNw YXRjaF9mbGFncyk7CiAJCQlpZiAocmV0KQogCQkJCWdvdG8gZXJyb3I7CiAJCX0KIAl9IGVsc2Ug ewogCQlyZXQgPSByaW5nLT5kaXNwYXRjaF9leGVjYnVmZmVyKHJpbmcsCiAJCQkJCQlleGVjX3N0 YXJ0LCBleGVjX2xlbiwKLQkJCQkJCWRpc3BhdGNoX2ZsYWdzKTsKKwkJCQkJCXBhcmFtcy0+ZGlz cGF0Y2hfZmxhZ3MpOwogCQlpZiAocmV0KQogCQkJcmV0dXJuIHJldDsKIAl9CiAKLQl0cmFjZV9p OTE1X2dlbV9yaW5nX2Rpc3BhdGNoKGludGVsX3JpbmdfZ2V0X3JlcXVlc3QocmluZyksIGRpc3Bh dGNoX2ZsYWdzKTsKKwl0cmFjZV9pOTE1X2dlbV9yaW5nX2Rpc3BhdGNoKGludGVsX3JpbmdfZ2V0 X3JlcXVlc3QocmluZyksIHBhcmFtcy0+ZGlzcGF0Y2hfZmxhZ3MpOwogCiAJaTkxNV9nZW1fZXhl Y2J1ZmZlcl9tb3ZlX3RvX2FjdGl2ZSh2bWFzLCByaW5nKTsKLQlpOTE1X2dlbV9leGVjYnVmZmVy X3JldGlyZV9jb21tYW5kcyhkZXYsIGZpbGUsIHJpbmcsIGJhdGNoX29iaik7CisJaTkxNV9nZW1f ZXhlY2J1ZmZlcl9yZXRpcmVfY29tbWFuZHMocGFyYW1zLT5kZXYsIHBhcmFtcy0+ZmlsZSwgcmlu ZywKKwkJCQkJICAgIHBhcmFtcy0+YmF0Y2hfb2JqKTsKIAogZXJyb3I6CiAJa2ZyZWUoY2xpcHJl Y3RzKTsKQEAgLTE0MDQsOCArMTQwNiw5IEBAIGk5MTVfZ2VtX2RvX2V4ZWNidWZmZXIoc3RydWN0 IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKIAlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpy aW5nOwogCXN0cnVjdCBpbnRlbF9jb250ZXh0ICpjdHg7CiAJc3RydWN0IGk5MTVfYWRkcmVzc19z cGFjZSAqdm07CisJc3RydWN0IGk5MTVfZXhlY2J1ZmZlcl9wYXJhbXMgcGFyYW1zX21hc3Rlcjsg LyogWFhYOiB3aWxsIGJlIHJlbW92ZWQgbGF0ZXIgKi8KKwlzdHJ1Y3QgaTkxNV9leGVjYnVmZmVy X3BhcmFtcyAqcGFyYW1zID0gJnBhcmFtc19tYXN0ZXI7CiAJY29uc3QgdTMyIGN0eF9pZCA9IGk5 MTVfZXhlY2J1ZmZlcjJfZ2V0X2NvbnRleHRfaWQoKmFyZ3MpOwotCXU2NCBleGVjX3N0YXJ0ID0g YXJncy0+YmF0Y2hfc3RhcnRfb2Zmc2V0OwogCXUzMiBkaXNwYXRjaF9mbGFnczsKIAlpbnQgcmV0 OwogCWJvb2wgbmVlZF9yZWxvY3M7CkBAIC0xNDk4LDYgKzE1MDEsOCBAQCBpOTE1X2dlbV9kb19l eGVjYnVmZmVyKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJZWxzZQogCQl2 bSA9ICZkZXZfcHJpdi0+Z3R0LmJhc2U7CiAKKwltZW1zZXQoJnBhcmFtc19tYXN0ZXIsIDB4MDAs IHNpemVvZihwYXJhbXNfbWFzdGVyKSk7CisKIAllYiA9IGViX2NyZWF0ZShhcmdzKTsKIAlpZiAo ZWIgPT0gTlVMTCkgewogCQlpOTE1X2dlbV9jb250ZXh0X3VucmVmZXJlbmNlKGN0eCk7CkBAIC0x NTY3LDggKzE1NzIsOSBAQCBpOTE1X2dlbV9kb19leGVjYnVmZmVyKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsIHZvaWQgKmRhdGEsCiAJCWlmIChVU0VTX0ZVTExfUFBHVFQoZGV2KSkKIAkJCWRpc3Bh dGNoX2ZsYWdzIHw9IEk5MTVfRElTUEFUQ0hfU0VDVVJFOwogCi0JCWV4ZWNfc3RhcnQgPSAwOwot CX0KKwkJcGFyYW1zLT5hcmdzX2JhdGNoX3N0YXJ0X29mZnNldCA9IDA7CisJfSBlbHNlCisJCXBh cmFtcy0+YXJnc19iYXRjaF9zdGFydF9vZmZzZXQgPSBhcmdzLT5iYXRjaF9zdGFydF9vZmZzZXQ7 CiAKIAliYXRjaF9vYmotPmJhc2UucGVuZGluZ19yZWFkX2RvbWFpbnMgfD0gSTkxNV9HRU1fRE9N QUlOX0NPTU1BTkQ7CiAKQEAgLTE1OTAsMTggKzE1OTYsMjkgQEAgaTkxNV9nZW1fZG9fZXhlY2J1 ZmZlcihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAogCQlpZiAocmV0KQogCQkJ Z290byBlcnI7CiAKLQkJZXhlY19zdGFydCArPSBpOTE1X2dlbV9vYmpfZ2d0dF9vZmZzZXQoYmF0 Y2hfb2JqKTsKKwkJcGFyYW1zLT5iYXRjaF9vYmpfdm1fb2Zmc2V0ID0gaTkxNV9nZW1fb2JqX2dn dHRfb2Zmc2V0KGJhdGNoX29iaik7CiAJfSBlbHNlCi0JCWV4ZWNfc3RhcnQgKz0gaTkxNV9nZW1f b2JqX29mZnNldChiYXRjaF9vYmosIHZtKTsKKwkJcGFyYW1zLT5iYXRjaF9vYmpfdm1fb2Zmc2V0 ID0gaTkxNV9nZW1fb2JqX29mZnNldChiYXRjaF9vYmosIHZtKTsKIAogCS8qIEFsbG9jYXRlIGEg cmVxdWVzdCBmb3IgdGhpcyBiYXRjaCBidWZmZXIgbmljZSBhbmQgZWFybHkuICovCiAJcmV0ID0g aTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhyaW5nLCBjdHgpOwogCWlmIChyZXQpCiAJCWdvdG8gZXJy X2JhdGNoX3VucGluOwogCi0JcmV0ID0gZGV2X3ByaXYtPmd0LmV4ZWNidWZfc3VibWl0KGRldiwg ZmlsZSwgcmluZywgY3R4LCBhcmdzLAotCQkJCQkgICZlYi0+dm1hcywgYmF0Y2hfb2JqLCBleGVj X3N0YXJ0LAotCQkJCQkgIGRpc3BhdGNoX2ZsYWdzKTsKKwkvKgorCSAqIFNhdmUgYXNzb3J0ZWQg c3R1ZmYgYXdheSB0byBwYXNzIHRocm91Z2ggdG8gKl9zdWJtaXNzaW9uKCkuCisJICogTkI6IFRo aXMgZGF0YSBzaG91bGQgYmUgJ3BlcnNpc3RlbnQnIGFuZCBub3QgbG9jYWwgYXMgaXQgd2lsbAor CSAqIGtlcHQgYXJvdW5kIGJleW9uZCB0aGUgZHVyYXRpb24gb2YgdGhlIElPQ1RMIG9uY2UgdGhl IEdQVQorCSAqIHNjaGVkdWxlciBhcnJpdmVzLgorCSAqLworCXBhcmFtcy0+ZGV2ICAgICAgICAg ICAgICAgICAgICAgPSBkZXY7CisJcGFyYW1zLT5maWxlICAgICAgICAgICAgICAgICAgICA9IGZp bGU7CisJcGFyYW1zLT5yaW5nICAgICAgICAgICAgICAgICAgICA9IHJpbmc7CisJcGFyYW1zLT5k aXNwYXRjaF9mbGFncyAgICAgICAgICA9IGRpc3BhdGNoX2ZsYWdzOworCXBhcmFtcy0+YmF0Y2hf b2JqICAgICAgICAgICAgICAgPSBiYXRjaF9vYmo7CisJcGFyYW1zLT5jdHggICAgICAgICAgICAg ICAgICAgICA9IGN0eDsKKworCXJldCA9IGRldl9wcml2LT5ndC5leGVjYnVmX3N1Ym1pdChwYXJh bXMsIGFyZ3MsICZlYi0+dm1hcyk7CiAKIGVycl9iYXRjaF91bnBpbjoKIAkvKgpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9scmMuYwppbmRleCBhMGNlNjViLi5jMGQ5N2U5NyAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfbHJjLmMKQEAgLTg1MywxNiArODUzLDE1IEBAIHN0YXRpYyBpbnQgaW50ZWxfbG9naWNhbF9y aW5nX2JlZ2luKHN0cnVjdCBpbnRlbF9yaW5nYnVmZmVyICpyaW5nYnVmLAogICoKICAqIFJldHVy bjogbm9uLXplcm8gaWYgdGhlIHN1Ym1pc3Npb24gZmFpbHMuCiAgKi8KLWludCBpbnRlbF9leGVj bGlzdHNfc3VibWlzc2lvbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2ZpbGUg KmZpbGUsCi0JCQkgICAgICAgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywKLQkJCSAgICAg ICBzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY3R4LAoraW50IGludGVsX2V4ZWNsaXN0c19zdWJtaXNz aW9uKHN0cnVjdCBpOTE1X2V4ZWNidWZmZXJfcGFyYW1zICpwYXJhbXMsCiAJCQkgICAgICAgc3Ry dWN0IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyMiAqYXJncywKLQkJCSAgICAgICBzdHJ1Y3QgbGlz dF9oZWFkICp2bWFzLAotCQkJICAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpiYXRj aF9vYmosCi0JCQkgICAgICAgdTY0IGV4ZWNfc3RhcnQsIHUzMiBkaXNwYXRjaF9mbGFncykKKwkJ CSAgICAgICBzdHJ1Y3QgbGlzdF9oZWFkICp2bWFzKQogeworCXN0cnVjdCBkcm1fZGV2aWNlICAg ICAgICpkZXYgPSBwYXJhbXMtPmRldjsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICAqcmluZyA9 IHBhcmFtcy0+cmluZzsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYt PmRldl9wcml2YXRlOwotCXN0cnVjdCBpbnRlbF9yaW5nYnVmZmVyICpyaW5nYnVmID0gY3R4LT5l bmdpbmVbcmluZy0+aWRdLnJpbmdidWY7CisJc3RydWN0IGludGVsX3JpbmdidWZmZXIgKnJpbmdi dWYgPSBwYXJhbXMtPmN0eC0+ZW5naW5lW3JpbmctPmlkXS5yaW5nYnVmOworCXU2NCBleGVjX3N0 YXJ0OwogCWludCBpbnN0cF9tb2RlOwogCXUzMiBpbnN0cF9tYXNrOwogCWludCByZXQ7CkBAIC05 MTMsMTMgKzkxMiwxMyBAQCBpbnQgaW50ZWxfZXhlY2xpc3RzX3N1Ym1pc3Npb24oc3RydWN0IGRy bV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9maWxlICpmaWxlLAogCQlyZXR1cm4gLUVJTlZBTDsK IAl9CiAKLQlyZXQgPSBleGVjbGlzdHNfbW92ZV90b19ncHUocmluZ2J1ZiwgY3R4LCB2bWFzKTsK KwlyZXQgPSBleGVjbGlzdHNfbW92ZV90b19ncHUocmluZ2J1ZiwgcGFyYW1zLT5jdHgsIHZtYXMp OwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAKIAlpZiAocmluZyA9PSAmZGV2X3ByaXYtPnJp bmdbUkNTXSAmJgogCSAgICBpbnN0cF9tb2RlICE9IGRldl9wcml2LT5yZWxhdGl2ZV9jb25zdGFu dHNfbW9kZSkgewotCQlyZXQgPSBpbnRlbF9sb2dpY2FsX3JpbmdfYmVnaW4ocmluZ2J1ZiwgY3R4 LCA0KTsKKwkJcmV0ID0gaW50ZWxfbG9naWNhbF9yaW5nX2JlZ2luKHJpbmdidWYsIHBhcmFtcy0+ Y3R4LCA0KTsKIAkJaWYgKHJldCkKIAkJCXJldHVybiByZXQ7CiAKQEAgLTkzMiwxNCArOTMxLDE3 IEBAIGludCBpbnRlbF9leGVjbGlzdHNfc3VibWlzc2lvbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCiAJCWRldl9wcml2LT5yZWxhdGl2ZV9jb25zdGFudHNf bW9kZSA9IGluc3RwX21vZGU7CiAJfQogCi0JcmV0ID0gcmluZy0+ZW1pdF9iYl9zdGFydChyaW5n YnVmLCBjdHgsIGV4ZWNfc3RhcnQsIGRpc3BhdGNoX2ZsYWdzKTsKKwlleGVjX3N0YXJ0ID0gcGFy YW1zLT5iYXRjaF9vYmpfdm1fb2Zmc2V0ICsKKwkJICAgICBhcmdzLT5iYXRjaF9zdGFydF9vZmZz ZXQ7CisKKwlyZXQgPSByaW5nLT5lbWl0X2JiX3N0YXJ0KHJpbmdidWYsIHBhcmFtcy0+Y3R4LCBl eGVjX3N0YXJ0LCBwYXJhbXMtPmRpc3BhdGNoX2ZsYWdzKTsKIAlpZiAocmV0KQogCQlyZXR1cm4g cmV0OwogCi0JdHJhY2VfaTkxNV9nZW1fcmluZ19kaXNwYXRjaChpbnRlbF9yaW5nX2dldF9yZXF1 ZXN0KHJpbmcpLCBkaXNwYXRjaF9mbGFncyk7CisJdHJhY2VfaTkxNV9nZW1fcmluZ19kaXNwYXRj aChpbnRlbF9yaW5nX2dldF9yZXF1ZXN0KHJpbmcpLCBwYXJhbXMtPmRpc3BhdGNoX2ZsYWdzKTsK IAogCWk5MTVfZ2VtX2V4ZWNidWZmZXJfbW92ZV90b19hY3RpdmUodm1hcywgcmluZyk7Ci0JaTkx NV9nZW1fZXhlY2J1ZmZlcl9yZXRpcmVfY29tbWFuZHMoZGV2LCBmaWxlLCByaW5nLCBiYXRjaF9v YmopOworCWk5MTVfZ2VtX2V4ZWNidWZmZXJfcmV0aXJlX2NvbW1hbmRzKHBhcmFtcy0+ZGV2LCBw YXJhbXMtPmZpbGUsIHJpbmcsIHBhcmFtcy0+YmF0Y2hfb2JqKTsKIAogCXJldHVybiAwOwogfQpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmggYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9scmMuaAppbmRleCA0MTQ4ZGUwLi5iZjEzN2M0IDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9scmMuaApAQCAtNzYsMTMgKzc2LDEwIEBAIHZvaWQgaW50ZWxfbHJfY29udGV4 dF9yZXNldChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCiAvKiBFeGVjbGlzdHMgKi8KIGludCBp bnRlbF9zYW5pdGl6ZV9lbmFibGVfZXhlY2xpc3RzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGlu dCBlbmFibGVfZXhlY2xpc3RzKTsKLWludCBpbnRlbF9leGVjbGlzdHNfc3VibWlzc2lvbihzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCi0JCQkgICAgICAgc3Ry dWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywKLQkJCSAgICAgICBzdHJ1Y3QgaW50ZWxfY29udGV4 dCAqY3R4LAorc3RydWN0IGk5MTVfZXhlY2J1ZmZlcl9wYXJhbXM7CitpbnQgaW50ZWxfZXhlY2xp c3RzX3N1Ym1pc3Npb24oc3RydWN0IGk5MTVfZXhlY2J1ZmZlcl9wYXJhbXMgKnBhcmFtcywKIAkJ CSAgICAgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIyICphcmdzLAotCQkJICAgICAg IHN0cnVjdCBsaXN0X2hlYWQgKnZtYXMsCi0JCQkgICAgICAgc3RydWN0IGRybV9pOTE1X2dlbV9v YmplY3QgKmJhdGNoX29iaiwKLQkJCSAgICAgICB1NjQgZXhlY19zdGFydCwgdTMyIGRpc3BhdGNo X2ZsYWdzKTsKKwkJCSAgICAgICBzdHJ1Y3QgbGlzdF9oZWFkICp2bWFzKTsKIHUzMiBpbnRlbF9l eGVjbGlzdHNfY3R4X2lkKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpjdHhfb2JqKTsKIAog dm9pZCBpbnRlbF9scmNfaXJxX2hhbmRsZXIoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyk7 Ci0tIAoxLjcuOS41CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdm eAo=