From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH 04/53] drm/i915: Merged the many do_execbuf() parameters into a structure Date: Thu, 5 Mar 2015 13:37:13 +0000 Message-ID: <1425562633-16675-1-git-send-email-John.C.Harrison@Intel.com> References: <1424366285-29232-5-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 mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id BC7846E7BF for ; Thu, 5 Mar 2015 05:37:22 -0800 (PST) In-Reply-To: <1424366285-29232-5-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 dGNoIHNpbXBsaWVzIHRoZSBwcm90b3R5cGUgYnkgcGFzc2luZyBhIHBhcmFtZXRlciBzdHJ1Y3R1 cmUgaW5zdGVhZC4KQ2hhbmdpbmcgdGhlIHBhcmFtZXRlciBzZXQgaW4gdGhlIGZ1dHVyZSBpcyB0 aGVuIHNpbXBseSBhIG1hdHRlciBvZgphZGRpbmcvcmVtb3ZpbmcgaXRlbXMgdG8gdGhlIHN0cnVj dHVyZS4KCk5vdGUgdGhhdCB0aGUgc3RydWN0dXJlIGRvZXMgbm90IGNvbnRhaW4gYWJzb2x1dGVs eSBldmVyeXRoaW5nIHRoYXQgaXMgcGFzc2VkCmluLiBUaGlzIGlzIGJlY2F1c2UgdGhlIGludGVu dGlvbiBpcyB0byB1c2UgdGhpcyBzdHJ1Y3R1cmUgbW9yZSBleHRlbnNpdmVseQpsYXRlciBpbiB0 aGlzIHBhdGNoIHNlcmllcyBhbmQgbW9yZSBlc3BlY2lhbGx5IGluIHRoZSBHUFUgc2NoZWR1bGVy IHRoYXQgaXMKY29taW5nIHNvb24uIFRoZSBsYXR0ZXIgcmVxdWlyZXMgaGFuZ2luZyBvbiB0byB0 aGUgc3RydWN0dXJlIGFzIHRoZSBmaW5hbApoYXJkd2FyZSBzdWJtaXNzaW9uIGNhbiBiZSBkZWxh eWVkIHVudGlsIGxvbmcgYWZ0ZXIgdGhlIGV4ZWNidWYgSU9DVEwgaGFzCnJldHVybmVkIHRvIHVz ZXIgbGFuZC4gVGh1cyBpdCBpcyB1bnNhZmUgdG8gcHV0IGFueXRoaW5nIGluIHRoZSBzdHJ1Y3R1 cmUgdGhhdAppcyBsb2NhbCB0byB0aGUgSU9DVEwgY2FsbCBpdHNlbGYgLSBzdWNoIGFzIHRoZSAn YXJncycgcGFyYW1ldGVyLiBBbGwgZW50cmllcwptdXN0IGJlIGNvcGllcyBvZiBkYXRhIG9yIHBv aW50ZXJzIHRvIHN0cnVjdHVyZXMgdGhhdCBhcmUgcmVmZXJlbmNlIGNvdW50ZWQgaW4Kc29tZXdh eSBhbmQgZ3VhcmFudGVlZCB0byBleGlzdCBmb3IgdGhlIGR1cmF0aW9uIG9mIHRoZSBiYXRjaCBi dWZmZXIncyBsaWZlLgoKdjI6IFJlYmFzZWQgdG8gbmV3ZXIgdHJlZSBhbmQgdXBkYXRlZCBmb3Ig Y2hhbmdlcyB0byB0aGUgY29tbWFuZCBwYXJzZXIuClNwZWNpZmljYWxseSwgYSBjb2RlIHNodWZm bGUgaGFzIHJlcXVpcmVkIHNhdmluZyB0aGUgYmF0Y2ggc3RhcnQgYWRkcmVzcyBpbiB0aGUKcGFy YW1zIHN0cnVjdHVyZS4KCkZvcjogVklaLTUxMTUKU2lnbmVkLW9mZi1ieTogSm9obiBIYXJyaXNv biA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oICAgICAgICAgICAgfCAgIDI4ICsrKysrKystLS0tLS0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYyB8ICAgNjEgKysrKysrKysrKysrKysrKysrLS0t LS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgICAgICAgICAgIHwgICAy NiArKysrKystLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5oICAgICAgICAg ICB8ICAgIDkgKystLQogNCBmaWxlcyBjaGFuZ2VkLCA3MSBpbnNlcnRpb25zKCspLCA1MyBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCAwNWYxMDZkLi44ZGMwOGJjIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKQEAgLTE1MjUsNiArMTUyNSwxNyBAQCBzdHJ1Y3QgaTkx NV92aXJ0dWFsX2dwdSB7CiAJYm9vbCBhY3RpdmU7CiB9OwogCitzdHJ1Y3QgaTkxNV9leGVjYnVm ZmVyX3BhcmFtcyB7CisJc3RydWN0IGRybV9kZXZpY2UgICAgICAgICAgICAgICAqZGV2OworCXN0 cnVjdCBkcm1fZmlsZSAgICAgICAgICAgICAgICAgKmZpbGU7CisJdWludDMyX3QgICAgICAgICAg ICAgICAgICAgICAgICBkaXNwYXRjaF9mbGFnczsKKwl1aW50MzJfdCAgICAgICAgICAgICAgICAg ICAgICAgIGFyZ3NfYmF0Y2hfc3RhcnRfb2Zmc2V0OworCXVpbnQzMl90ICAgICAgICAgICAgICAg ICAgICAgICAgYmF0Y2hfb2JqX3ZtX29mZnNldDsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICAg ICAgICAgICpyaW5nOworCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICAgICAgKmJhdGNoX29i ajsKKwlzdHJ1Y3QgaW50ZWxfY29udGV4dCAgICAgICAgICAgICpjdHg7Cit9OworCiBzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSB7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRldjsKIAlzdHJ1Y3Qga21l bV9jYWNoZSAqc2xhYjsKQEAgLTE3NzgsMTMgKzE3ODksOSBAQCBzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSB7CiAKIAkvKiBBYnN0cmFjdCB0aGUgc3VibWlzc2lvbiBtZWNoYW5pc20gKGxlZ2FjeSBy aW5nYnVmZmVyIG9yIGV4ZWNsaXN0cykgYXdheSAqLwogCXN0cnVjdCB7Ci0JCWludCAoKmRvX2V4 ZWNidWYpKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSwKLQkJ CQkgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCi0JCQkJICBzdHJ1Y3QgaW50ZWxfY29u dGV4dCAqY3R4LAorCQlpbnQgKCpkb19leGVjYnVmKShzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3Bh cmFtcyAqcGFyYW1zLAogCQkJCSAgc3RydWN0IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyMiAqYXJn cywKLQkJCQkgIHN0cnVjdCBsaXN0X2hlYWQgKnZtYXMsCi0JCQkJICBzdHJ1Y3QgZHJtX2k5MTVf Z2VtX29iamVjdCAqYmF0Y2hfb2JqLAotCQkJCSAgdTY0IGV4ZWNfc3RhcnQsIHUzMiBmbGFncyk7 CisJCQkJICBzdHJ1Y3QgbGlzdF9oZWFkICp2bWFzKTsKIAkJaW50ICgqaW5pdF9yaW5ncykoc3Ry dWN0IGRybV9kZXZpY2UgKmRldik7CiAJCXZvaWQgKCpjbGVhbnVwX3JpbmcpKHN0cnVjdCBpbnRl bF9lbmdpbmVfY3MgKnJpbmcpOwogCQl2b2lkICgqc3RvcF9yaW5nKShzdHJ1Y3QgaW50ZWxfZW5n aW5lX2NzICpyaW5nKTsKQEAgLTI1MzEsMTQgKzI1MzgsOSBAQCB2b2lkIGk5MTVfZ2VtX2V4ZWNi dWZmZXJfcmV0aXJlX2NvbW1hbmRzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCQkJCSBzdHJ1 Y3QgZHJtX2ZpbGUgKmZpbGUsCiAJCQkJCSBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLAog CQkJCQkgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaik7Ci1pbnQgaTkxNV9nZW1fcmlu Z2J1ZmZlcl9zdWJtaXNzaW9uKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCi0JCQkJICAgc3RydWN0 IGRybV9maWxlICpmaWxlLAotCQkJCSAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCi0J CQkJICAgc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCwKK2ludCBpOTE1X2dlbV9yaW5nYnVmZmVy X3N1Ym1pc3Npb24oc3RydWN0IGk5MTVfZXhlY2J1ZmZlcl9wYXJhbXMgKnBhcmFtcywKIAkJCQkg ICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIyICphcmdzLAotCQkJCSAgIHN0cnVjdCBs aXN0X2hlYWQgKnZtYXMsCi0JCQkJICAgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKmJhdGNo X29iaiwKLQkJCQkgICB1NjQgZXhlY19zdGFydCwgdTMyIGZsYWdzKTsKKwkJCQkgICBzdHJ1Y3Qg bGlzdF9oZWFkICp2bWFzKTsKIGludCBpOTE1X2dlbV9leGVjYnVmZmVyKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJCQlzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdik7CiBp bnQgaTkxNV9nZW1fZXhlY2J1ZmZlcjIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0 YSwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwppbmRleCA2MWZk OGZhLi4yYzQxNzZmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9l eGVjYnVmZmVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZl ci5jCkBAIC0xMTIxLDE3ICsxMTIxLDE1IEBAIGVycjoKIH0KIAogaW50Ci1pOTE1X2dlbV9yaW5n YnVmZmVyX3N1Ym1pc3Npb24oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9maWxl ICpmaWxlLAotCQkJICAgICAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCi0JCQkgICAg ICAgc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCwKK2k5MTVfZ2VtX3JpbmdidWZmZXJfc3VibWlz c2lvbihzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3BhcmFtcyAqcGFyYW1zLAogCQkJICAgICAgIHN0 cnVjdCBkcm1faTkxNV9nZW1fZXhlY2J1ZmZlcjIgKmFyZ3MsCi0JCQkgICAgICAgc3RydWN0IGxp c3RfaGVhZCAqdm1hcywKLQkJCSAgICAgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqYmF0 Y2hfb2JqLAotCQkJICAgICAgIHU2NCBleGVjX3N0YXJ0LCB1MzIgZGlzcGF0Y2hfZmxhZ3MpCisJ CQkgICAgICAgc3RydWN0IGxpc3RfaGVhZCAqdm1hcykKIHsKIAlzdHJ1Y3QgZHJtX2NsaXBfcmVj dCAqY2xpcHJlY3RzID0gTlVMTDsKKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gcGFyYW1zLT5k ZXY7CisJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyA9IHBhcmFtcy0+cmluZzsKIAlzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwotCXU2NCBl eGVjX2xlbjsKKwl1NjQgZXhlY19zdGFydCwgZXhlY19sZW47CiAJaW50IGluc3RwX21vZGU7CiAJ dTMyIGluc3RwX21hc2s7CiAJaW50IGksIHJldCA9IDA7CkBAIC0xMTgzLDcgKzExODEsNyBAQCBp OTE1X2dlbV9yaW5nYnVmZmVyX3N1Ym1pc3Npb24oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3Ry dWN0IGRybV9maWxlICpmaWxlLAogCWlmIChyZXQpCiAJCWdvdG8gZXJyb3I7CiAKLQlyZXQgPSBp OTE1X3N3aXRjaF9jb250ZXh0KHJpbmcsIGN0eCk7CisJcmV0ID0gaTkxNV9zd2l0Y2hfY29udGV4 dChyaW5nLCBwYXJhbXMtPmN0eCk7CiAJaWYgKHJldCkKIAkJZ290byBlcnJvcjsKIApAQCAtMTI0 MCwxMiArMTIzOCwxNSBAQCBpOTE1X2dlbV9yaW5nYnVmZmVyX3N1Ym1pc3Npb24oc3RydWN0IGRy bV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9maWxlICpmaWxlLAogCX0KIAogCWlmIChhcmdzLT5m bGFncyAmIEk5MTVfRVhFQ19HRU43X1NPTF9SRVNFVCkgewotCQlyZXQgPSBpOTE1X3Jlc2V0X2dl bjdfc29sX29mZnNldHMoZGV2LCByaW5nKTsKKwkJcmV0ID0gaTkxNV9yZXNldF9nZW43X3NvbF9v ZmZzZXRzKHBhcmFtcy0+ZGV2LCByaW5nKTsKIAkJaWYgKHJldCkKIAkJCWdvdG8gZXJyb3I7CiAJ fQogCi0JZXhlY19sZW4gPSBhcmdzLT5iYXRjaF9sZW47CisJZXhlY19sZW4gICA9IGFyZ3MtPmJh dGNoX2xlbjsKKwlleGVjX3N0YXJ0ID0gcGFyYW1zLT5iYXRjaF9vYmpfdm1fb2Zmc2V0ICsKKwkJ ICAgICBwYXJhbXMtPmFyZ3NfYmF0Y2hfc3RhcnRfb2Zmc2V0OworCiAJaWYgKGNsaXByZWN0cykg ewogCQlmb3IgKGkgPSAwOyBpIDwgYXJncy0+bnVtX2NsaXByZWN0czsgaSsrKSB7CiAJCQlyZXQg PSBpOTE1X2VtaXRfYm94KHJpbmcsICZjbGlwcmVjdHNbaV0sCkBAIC0xMjU1LDIyICsxMjU2LDIz IEBAIGk5MTVfZ2VtX3JpbmdidWZmZXJfc3VibWlzc2lvbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCiAKIAkJCXJldCA9IHJpbmctPmRpc3BhdGNoX2V4ZWNi dWZmZXIocmluZywKIAkJCQkJCQlleGVjX3N0YXJ0LCBleGVjX2xlbiwKLQkJCQkJCQlkaXNwYXRj aF9mbGFncyk7CisJCQkJCQkJcGFyYW1zLT5kaXNwYXRjaF9mbGFncyk7CiAJCQlpZiAocmV0KQog CQkJCWdvdG8gZXJyb3I7CiAJCX0KIAl9IGVsc2UgewogCQlyZXQgPSByaW5nLT5kaXNwYXRjaF9l eGVjYnVmZmVyKHJpbmcsCiAJCQkJCQlleGVjX3N0YXJ0LCBleGVjX2xlbiwKLQkJCQkJCWRpc3Bh dGNoX2ZsYWdzKTsKKwkJCQkJCXBhcmFtcy0+ZGlzcGF0Y2hfZmxhZ3MpOwogCQlpZiAocmV0KQog CQkJcmV0dXJuIHJldDsKIAl9CiAKLQl0cmFjZV9pOTE1X2dlbV9yaW5nX2Rpc3BhdGNoKGludGVs X3JpbmdfZ2V0X3JlcXVlc3QocmluZyksIGRpc3BhdGNoX2ZsYWdzKTsKKwl0cmFjZV9pOTE1X2dl bV9yaW5nX2Rpc3BhdGNoKGludGVsX3JpbmdfZ2V0X3JlcXVlc3QocmluZyksIHBhcmFtcy0+ZGlz cGF0Y2hfZmxhZ3MpOwogCiAJaTkxNV9nZW1fZXhlY2J1ZmZlcl9tb3ZlX3RvX2FjdGl2ZSh2bWFz LCByaW5nKTsKLQlpOTE1X2dlbV9leGVjYnVmZmVyX3JldGlyZV9jb21tYW5kcyhkZXYsIGZpbGUs IHJpbmcsIGJhdGNoX29iaik7CisJaTkxNV9nZW1fZXhlY2J1ZmZlcl9yZXRpcmVfY29tbWFuZHMo cGFyYW1zLT5kZXYsIHBhcmFtcy0+ZmlsZSwgcmluZywKKwkJCQkJICAgIHBhcmFtcy0+YmF0Y2hf b2JqKTsKIAogZXJyb3I6CiAJa2ZyZWUoY2xpcHJlY3RzKTsKQEAgLTEzNDAsOCArMTM0Miw5IEBA IGk5MTVfZ2VtX2RvX2V4ZWNidWZmZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0 YSwKIAlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nOwogCXN0cnVjdCBpbnRlbF9jb250ZXh0 ICpjdHg7CiAJc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm07CisJc3RydWN0IGk5MTVfZXhl Y2J1ZmZlcl9wYXJhbXMgcGFyYW1zX21hc3RlcjsgLyogWFhYOiB3aWxsIGJlIHJlbW92ZWQgbGF0 ZXIgKi8KKwlzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3BhcmFtcyAqcGFyYW1zID0gJnBhcmFtc19t YXN0ZXI7CiAJY29uc3QgdTMyIGN0eF9pZCA9IGk5MTVfZXhlY2J1ZmZlcjJfZ2V0X2NvbnRleHRf aWQoKmFyZ3MpOwotCXU2NCBleGVjX3N0YXJ0ID0gYXJncy0+YmF0Y2hfc3RhcnRfb2Zmc2V0Owog CXUzMiBkaXNwYXRjaF9mbGFnczsKIAlpbnQgcmV0OwogCWJvb2wgbmVlZF9yZWxvY3M7CkBAIC0x NDM0LDYgKzE0MzcsOCBAQCBpOTE1X2dlbV9kb19leGVjYnVmZmVyKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsIHZvaWQgKmRhdGEsCiAJZWxzZQogCQl2bSA9ICZkZXZfcHJpdi0+Z3R0LmJhc2U7CiAK KwltZW1zZXQoJnBhcmFtc19tYXN0ZXIsIDB4MDAsIHNpemVvZihwYXJhbXNfbWFzdGVyKSk7CisK IAllYiA9IGViX2NyZWF0ZShhcmdzKTsKIAlpZiAoZWIgPT0gTlVMTCkgewogCQlpOTE1X2dlbV9j b250ZXh0X3VucmVmZXJlbmNlKGN0eCk7CkBAIC0xNTAzLDggKzE1MDgsOSBAQCBpOTE1X2dlbV9k b19leGVjYnVmZmVyKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJCWlmIChV U0VTX0ZVTExfUFBHVFQoZGV2KSkKIAkJCWRpc3BhdGNoX2ZsYWdzIHw9IEk5MTVfRElTUEFUQ0hf U0VDVVJFOwogCi0JCWV4ZWNfc3RhcnQgPSAwOwotCX0KKwkJcGFyYW1zLT5hcmdzX2JhdGNoX3N0 YXJ0X29mZnNldCA9IDA7CisJfSBlbHNlCisJCXBhcmFtcy0+YXJnc19iYXRjaF9zdGFydF9vZmZz ZXQgPSBhcmdzLT5iYXRjaF9zdGFydF9vZmZzZXQ7CiAKIAliYXRjaF9vYmotPmJhc2UucGVuZGlu Z19yZWFkX2RvbWFpbnMgfD0gSTkxNV9HRU1fRE9NQUlOX0NPTU1BTkQ7CiAKQEAgLTE1MjYsMTMg KzE1MzIsMjQgQEAgaTkxNV9nZW1fZG9fZXhlY2J1ZmZlcihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LCB2b2lkICpkYXRhLAogCQlpZiAocmV0KQogCQkJZ290byBlcnI7CiAKLQkJZXhlY19zdGFydCAr PSBpOTE1X2dlbV9vYmpfZ2d0dF9vZmZzZXQoYmF0Y2hfb2JqKTsKKwkJcGFyYW1zLT5iYXRjaF9v Ympfdm1fb2Zmc2V0ID0gaTkxNV9nZW1fb2JqX2dndHRfb2Zmc2V0KGJhdGNoX29iaik7CiAJfSBl bHNlCi0JCWV4ZWNfc3RhcnQgKz0gaTkxNV9nZW1fb2JqX29mZnNldChiYXRjaF9vYmosIHZtKTsK KwkJcGFyYW1zLT5iYXRjaF9vYmpfdm1fb2Zmc2V0ID0gaTkxNV9nZW1fb2JqX29mZnNldChiYXRj aF9vYmosIHZtKTsKIAotCXJldCA9IGRldl9wcml2LT5ndC5kb19leGVjYnVmKGRldiwgZmlsZSwg cmluZywgY3R4LCBhcmdzLAotCQkJCSAgICAgICZlYi0+dm1hcywgYmF0Y2hfb2JqLCBleGVjX3N0 YXJ0LAotCQkJCSAgICAgIGRpc3BhdGNoX2ZsYWdzKTsKKwkvKgorCSAqIFNhdmUgYXNzb3J0ZWQg c3R1ZmYgYXdheSB0byBwYXNzIHRocm91Z2ggdG8gKl9zdWJtaXNzaW9uKCkuCisJICogTkI6IFRo aXMgZGF0YSBzaG91bGQgYmUgJ3BlcnNpc3RlbnQnIGFuZCBub3QgbG9jYWwgYXMgaXQgd2lsbAor CSAqIGtlcHQgYXJvdW5kIGJleW9uZCB0aGUgZHVyYXRpb24gb2YgdGhlIElPQ1RMIG9uY2UgdGhl IEdQVQorCSAqIHNjaGVkdWxlciBhcnJpdmVzLgorCSAqLworCXBhcmFtcy0+ZGV2ICAgICAgICAg ICAgICAgICAgICAgPSBkZXY7CisJcGFyYW1zLT5maWxlICAgICAgICAgICAgICAgICAgICA9IGZp bGU7CisJcGFyYW1zLT5yaW5nICAgICAgICAgICAgICAgICAgICA9IHJpbmc7CisJcGFyYW1zLT5k aXNwYXRjaF9mbGFncyAgICAgICAgICA9IGRpc3BhdGNoX2ZsYWdzOworCXBhcmFtcy0+YmF0Y2hf b2JqICAgICAgICAgICAgICAgPSBiYXRjaF9vYmo7CisJcGFyYW1zLT5jdHggICAgICAgICAgICAg ICAgICAgICA9IGN0eDsKKworCXJldCA9IGRldl9wcml2LT5ndC5kb19leGVjYnVmKHBhcmFtcywg YXJncywgJmViLT52bWFzKTsKIAogCS8qCiAJICogRklYTUU6IFdlIGNydWNpYWxseSByZWx5IHVw b24gdGhlIGFjdGl2ZSB0cmFja2luZyBmb3IgdGhlIChwcGd0dCkKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf bHJjLmMKaW5kZXggZmNiMDc0Yi4uMzJmYWJiYyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfbHJjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMK QEAgLTYyOCwxNiArNjI4LDE1IEBAIHN0YXRpYyBpbnQgZXhlY2xpc3RzX21vdmVfdG9fZ3B1KHN0 cnVjdCBpbnRlbF9yaW5nYnVmZmVyICpyaW5nYnVmLAogICoKICAqIFJldHVybjogbm9uLXplcm8g aWYgdGhlIHN1Ym1pc3Npb24gZmFpbHMuCiAgKi8KLWludCBpbnRlbF9leGVjbGlzdHNfc3VibWlz c2lvbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCi0JCQkg ICAgICAgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywKLQkJCSAgICAgICBzdHJ1Y3QgaW50 ZWxfY29udGV4dCAqY3R4LAoraW50IGludGVsX2V4ZWNsaXN0c19zdWJtaXNzaW9uKHN0cnVjdCBp OTE1X2V4ZWNidWZmZXJfcGFyYW1zICpwYXJhbXMsCiAJCQkgICAgICAgc3RydWN0IGRybV9pOTE1 X2dlbV9leGVjYnVmZmVyMiAqYXJncywKLQkJCSAgICAgICBzdHJ1Y3QgbGlzdF9oZWFkICp2bWFz LAotCQkJICAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpiYXRjaF9vYmosCi0JCQkg ICAgICAgdTY0IGV4ZWNfc3RhcnQsIHUzMiBkaXNwYXRjaF9mbGFncykKKwkJCSAgICAgICBzdHJ1 Y3QgbGlzdF9oZWFkICp2bWFzKQogeworCXN0cnVjdCBkcm1fZGV2aWNlICAgICAgICpkZXYgPSBw YXJhbXMtPmRldjsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICAqcmluZyA9IHBhcmFtcy0+cmlu ZzsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRl OwotCXN0cnVjdCBpbnRlbF9yaW5nYnVmZmVyICpyaW5nYnVmID0gY3R4LT5lbmdpbmVbcmluZy0+ aWRdLnJpbmdidWY7CisJc3RydWN0IGludGVsX3JpbmdidWZmZXIgKnJpbmdidWYgPSBwYXJhbXMt PmN0eC0+ZW5naW5lW3JpbmctPmlkXS5yaW5nYnVmOworCXU2NCBleGVjX3N0YXJ0OwogCWludCBp bnN0cF9tb2RlOwogCXUzMiBpbnN0cF9tYXNrOwogCWludCByZXQ7CkBAIC02ODgsMTMgKzY4Nywx MyBAQCBpbnQgaW50ZWxfZXhlY2xpc3RzX3N1Ym1pc3Npb24oc3RydWN0IGRybV9kZXZpY2UgKmRl diwgc3RydWN0IGRybV9maWxlICpmaWxlLAogCQlyZXR1cm4gLUVJTlZBTDsKIAl9CiAKLQlyZXQg PSBleGVjbGlzdHNfbW92ZV90b19ncHUocmluZ2J1ZiwgY3R4LCB2bWFzKTsKKwlyZXQgPSBleGVj bGlzdHNfbW92ZV90b19ncHUocmluZ2J1ZiwgcGFyYW1zLT5jdHgsIHZtYXMpOwogCWlmIChyZXQp CiAJCXJldHVybiByZXQ7CiAKIAlpZiAocmluZyA9PSAmZGV2X3ByaXYtPnJpbmdbUkNTXSAmJgog CSAgICBpbnN0cF9tb2RlICE9IGRldl9wcml2LT5yZWxhdGl2ZV9jb25zdGFudHNfbW9kZSkgewot CQlyZXQgPSBpbnRlbF9sb2dpY2FsX3JpbmdfYmVnaW4ocmluZ2J1ZiwgY3R4LCA0KTsKKwkJcmV0 ID0gaW50ZWxfbG9naWNhbF9yaW5nX2JlZ2luKHJpbmdidWYsIHBhcmFtcy0+Y3R4LCA0KTsKIAkJ aWYgKHJldCkKIAkJCXJldHVybiByZXQ7CiAKQEAgLTcwNywxNCArNzA2LDE3IEBAIGludCBpbnRl bF9leGVjbGlzdHNfc3VibWlzc2lvbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJt X2ZpbGUgKmZpbGUsCiAJCWRldl9wcml2LT5yZWxhdGl2ZV9jb25zdGFudHNfbW9kZSA9IGluc3Rw X21vZGU7CiAJfQogCi0JcmV0ID0gcmluZy0+ZW1pdF9iYl9zdGFydChyaW5nYnVmLCBjdHgsIGV4 ZWNfc3RhcnQsIGRpc3BhdGNoX2ZsYWdzKTsKKwlleGVjX3N0YXJ0ID0gcGFyYW1zLT5iYXRjaF9v Ympfdm1fb2Zmc2V0ICsKKwkJICAgICBhcmdzLT5iYXRjaF9zdGFydF9vZmZzZXQ7CisKKwlyZXQg PSByaW5nLT5lbWl0X2JiX3N0YXJ0KHJpbmdidWYsIHBhcmFtcy0+Y3R4LCBleGVjX3N0YXJ0LCBw YXJhbXMtPmRpc3BhdGNoX2ZsYWdzKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCi0JdHJh Y2VfaTkxNV9nZW1fcmluZ19kaXNwYXRjaChpbnRlbF9yaW5nX2dldF9yZXF1ZXN0KHJpbmcpLCBk aXNwYXRjaF9mbGFncyk7CisJdHJhY2VfaTkxNV9nZW1fcmluZ19kaXNwYXRjaChpbnRlbF9yaW5n X2dldF9yZXF1ZXN0KHJpbmcpLCBwYXJhbXMtPmRpc3BhdGNoX2ZsYWdzKTsKIAogCWk5MTVfZ2Vt X2V4ZWNidWZmZXJfbW92ZV90b19hY3RpdmUodm1hcywgcmluZyk7Ci0JaTkxNV9nZW1fZXhlY2J1 ZmZlcl9yZXRpcmVfY29tbWFuZHMoZGV2LCBmaWxlLCByaW5nLCBiYXRjaF9vYmopOworCWk5MTVf Z2VtX2V4ZWNidWZmZXJfcmV0aXJlX2NvbW1hbmRzKHBhcmFtcy0+ZGV2LCBwYXJhbXMtPmZpbGUs IHJpbmcsIHBhcmFtcy0+YmF0Y2hfb2JqKTsKIAogCXJldHVybiAwOwogfQpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9scmMuaAppbmRleCBhZGI3MzFlNC4uYTY0ZTM0NCAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfbHJjLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf bHJjLmgKQEAgLTc4LDEzICs3OCwxMCBAQCB2b2lkIGludGVsX2xyX2NvbnRleHRfcmVzZXQoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwKIAogLyogRXhlY2xpc3RzICovCiBpbnQgaW50ZWxfc2FuaXRp emVfZW5hYmxlX2V4ZWNsaXN0cyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBpbnQgZW5hYmxlX2V4 ZWNsaXN0cyk7Ci1pbnQgaW50ZWxfZXhlY2xpc3RzX3N1Ym1pc3Npb24oc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgc3RydWN0IGRybV9maWxlICpmaWxlLAotCQkJICAgICAgIHN0cnVjdCBpbnRlbF9l bmdpbmVfY3MgKnJpbmcsCi0JCQkgICAgICAgc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCwKK3N0 cnVjdCBpOTE1X2V4ZWNidWZmZXJfcGFyYW1zOworaW50IGludGVsX2V4ZWNsaXN0c19zdWJtaXNz aW9uKHN0cnVjdCBpOTE1X2V4ZWNidWZmZXJfcGFyYW1zICpwYXJhbXMsCiAJCQkgICAgICAgc3Ry dWN0IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyMiAqYXJncywKLQkJCSAgICAgICBzdHJ1Y3QgbGlz dF9oZWFkICp2bWFzLAotCQkJICAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpiYXRj aF9vYmosCi0JCQkgICAgICAgdTY0IGV4ZWNfc3RhcnQsIHUzMiBkaXNwYXRjaF9mbGFncyk7CisJ CQkgICAgICAgc3RydWN0IGxpc3RfaGVhZCAqdm1hcyk7CiB1MzIgaW50ZWxfZXhlY2xpc3RzX2N0 eF9pZChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqY3R4X29iaik7CiAKIHZvaWQgaW50ZWxf bHJjX2lycV9oYW5kbGVyKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpOwotLSAKMS43Ljku NQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK