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, 19 Feb 2015 17:17:16 +0000 Message-ID: <1424366285-29232-5-git-send-email-John.C.Harrison@Intel.com> References: <1423828140-10653-1-git-send-email-John.C.Harrison@Intel.com> <1424366285-29232-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 mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id 924E76E603 for ; Thu, 19 Feb 2015 09:18:12 -0800 (PST) In-Reply-To: <1424366285-29232-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 dGNoIHNpbXBsaWVzIHRoZSBwcm90b3R5cGUgYnkgcGFzc2luZyBhIHBhcmFtZXRlciBzdHJ1Y3R1 cmUgaW5zdGVhZC4KQ2hhbmdpbmcgdGhlIHBhcmFtZXRlciBzZXQgaW4gdGhlIGZ1dHVyZSBpcyB0 aGVuIHNpbXBseSBhIG1hdHRlciBvZgphZGRpbmcvcmVtb3ZpbmcgaXRlbXMgdG8gdGhlIHN0cnVj dHVyZS4KCk5vdGUgdGhhdCB0aGUgc3RydWN0dXJlIGRvZXMgbm90IGNvbnRhaW4gYWJzb2x1dGVs eSBldmVyeXRoaW5nIHRoYXQgaXMgcGFzc2VkCmluLiBUaGlzIGlzIGJlY2F1c2UgdGhlIGludGVu dGlvbiBpcyB0byB1c2UgdGhpcyBzdHJ1Y3R1cmUgbW9yZSBleHRlbnNpdmVseQpsYXRlciBpbiB0 aGlzIHBhdGNoIHNlcmllcyBhbmQgbW9yZSBlc3BlY2lhbGx5IGluIHRoZSBHUFUgc2NoZWR1bGVy IHRoYXQgaXMKY29taW5nIHNvb24uIFRoZSBsYXR0ZXIgcmVxdWlyZXMgaGFuZ2luZyBvbiB0byB0 aGUgc3RydWN0dXJlIGFzIHRoZSBmaW5hbApoYXJkd2FyZSBzdWJtaXNzaW9uIGNhbiBiZSBkZWxh eWVkIHVudGlsIGxvbmcgYWZ0ZXIgdGhlIGV4ZWNidWYgSU9DVEwgaGFzCnJldHVybmVkIHRvIHVz ZXIgbGFuZC4gVGh1cyBpdCBpcyB1bnNhZmUgdG8gcHV0IGFueXRoaW5nIGluIHRoZSBzdHJ1Y3R1 cmUgdGhhdAppcyBsb2NhbCB0byB0aGUgSU9DVEwgY2FsbCBpdHNlbGYgLSBzdWNoIGFzIHRoZSAn YXJncycgcGFyYW1ldGVyLiBBbGwgZW50cmllcwptdXN0IGJlIGNvcGllcyBvZiBkYXRhIG9yIHBv aW50ZXJzIHRvIHN0cnVjdHVyZXMgdGhhdCBhcmUgcmVmZXJlbmNlIGNvdW50ZWQgaW4Kc29tZXdh eSBhbmQgZ3VhcmFudGVlZCB0byBleGlzdCBmb3IgdGhlIGR1cmF0aW9uIG9mIHRoZSBiYXRjaCBi dWZmZXIncyBsaWZlLgoKRm9yOiBWSVotNTExNQpTaWduZWQtb2ZmLWJ5OiBKb2huIEhhcnJpc29u IDxKb2huLkMuSGFycmlzb25ASW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZHJ2LmggICAgICAgICAgICB8ICAgMjcgKysrKysrKy0tLS0tLS0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYyB8ICAgNTYgKysrKysrKysrKysrKysrKysrLS0t LS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgICAgICAgICAgIHwgICAy NiArKysrKysrLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuaCAgICAgICAg ICAgfCAgICA5ICsrLS0tCiA0IGZpbGVzIGNoYW5nZWQsIDY3IGluc2VydGlvbnMoKyksIDUxIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2Lmgg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IGJhMDkxMzcuLmZkZDYzYWIg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMTY0NSw2ICsxNjQ1LDE2IEBAIHN0cnVjdCBp OTE1X3ZpcnR1YWxfZ3B1IHsKIAlib29sIGFjdGl2ZTsKIH07CiAKK3N0cnVjdCBpOTE1X2V4ZWNi dWZmZXJfcGFyYW1zIHsKKwlzdHJ1Y3QgZHJtX2RldmljZSAgICAgICAgICAgICAgICpkZXY7CisJ c3RydWN0IGRybV9maWxlICAgICAgICAgICAgICAgICAqZmlsZTsKKwl1aW50MzJfdCAgICAgICAg ICAgICAgICAgICAgICAgIGRpc3BhdGNoX2ZsYWdzOworCXVpbnQzMl90ICAgICAgICAgICAgICAg ICAgICAgICAgYmF0Y2hfb2JqX3ZtX29mZnNldDsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICAg ICAgICAgICpyaW5nOworCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICAgICAgKmJhdGNoX29i ajsKKwlzdHJ1Y3QgaW50ZWxfY29udGV4dCAgICAgICAgICAgICpjdHg7Cit9OworCiBzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSB7CiAJc3RydWN0IGRybV9kZXZpY2UgKmRldjsKIAlzdHJ1Y3Qga21l bV9jYWNoZSAqc2xhYjsKQEAgLTE4OTgsMTMgKzE5MDgsOSBAQCBzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSB7CiAKIAkvKiBBYnN0cmFjdCB0aGUgc3VibWlzc2lvbiBtZWNoYW5pc20gKGxlZ2FjeSBy aW5nYnVmZmVyIG9yIGV4ZWNsaXN0cykgYXdheSAqLwogCXN0cnVjdCB7Ci0JCWludCAoKmRvX2V4 ZWNidWYpKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSwKLQkJ CQkgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCi0JCQkJICBzdHJ1Y3QgaW50ZWxfY29u dGV4dCAqY3R4LAorCQlpbnQgKCpkb19leGVjYnVmKShzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3Bh cmFtcyAqcGFyYW1zLAogCQkJCSAgc3RydWN0IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyMiAqYXJn cywKLQkJCQkgIHN0cnVjdCBsaXN0X2hlYWQgKnZtYXMsCi0JCQkJICBzdHJ1Y3QgZHJtX2k5MTVf Z2VtX29iamVjdCAqYmF0Y2hfb2JqLAotCQkJCSAgdTY0IGV4ZWNfc3RhcnQsIHUzMiBmbGFncyk7 CisJCQkJICBzdHJ1Y3QgbGlzdF9oZWFkICp2bWFzKTsKIAkJaW50ICgqaW5pdF9yaW5ncykoc3Ry dWN0IGRybV9kZXZpY2UgKmRldik7CiAJCXZvaWQgKCpjbGVhbnVwX3JpbmcpKHN0cnVjdCBpbnRl bF9lbmdpbmVfY3MgKnJpbmcpOwogCQl2b2lkICgqc3RvcF9yaW5nKShzdHJ1Y3QgaW50ZWxfZW5n aW5lX2NzICpyaW5nKTsKQEAgLTI2MzgsMTQgKzI2NDQsOSBAQCB2b2lkIGk5MTVfZ2VtX2V4ZWNi dWZmZXJfcmV0aXJlX2NvbW1hbmRzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCQkJCSBzdHJ1 Y3QgZHJtX2ZpbGUgKmZpbGUsCiAJCQkJCSBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLAog CQkJCQkgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaik7Ci1pbnQgaTkxNV9nZW1fcmlu Z2J1ZmZlcl9zdWJtaXNzaW9uKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCi0JCQkJICAgc3RydWN0 IGRybV9maWxlICpmaWxlLAotCQkJCSAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCi0J CQkJICAgc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCwKK2ludCBpOTE1X2dlbV9yaW5nYnVmZmVy X3N1Ym1pc3Npb24oc3RydWN0IGk5MTVfZXhlY2J1ZmZlcl9wYXJhbXMgKnBhcmFtcywKIAkJCQkg ICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIyICphcmdzLAotCQkJCSAgIHN0cnVjdCBs aXN0X2hlYWQgKnZtYXMsCi0JCQkJICAgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKmJhdGNo X29iaiwKLQkJCQkgICB1NjQgZXhlY19zdGFydCwgdTMyIGZsYWdzKTsKKwkJCQkgICBzdHJ1Y3Qg bGlzdF9oZWFkICp2bWFzKTsKIGludCBpOTE1X2dlbV9leGVjYnVmZmVyKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJCQlzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdik7CiBp bnQgaTkxNV9nZW1fZXhlY2J1ZmZlcjIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0 YSwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIu YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwppbmRleCBlYzll YTQ1Li45M2IwZWYwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9l eGVjYnVmZmVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZl ci5jCkBAIC0xMTMyLDE3ICsxMTMyLDE1IEBAIGk5MTVfZ2VtX2V4ZWNidWZmZXJfcGFyc2Uoc3Ry dWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywKIH0KIAogaW50Ci1pOTE1X2dlbV9yaW5nYnVmZmVy X3N1Ym1pc3Npb24oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9maWxlICpmaWxl LAotCQkJICAgICAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCi0JCQkgICAgICAgc3Ry dWN0IGludGVsX2NvbnRleHQgKmN0eCwKK2k5MTVfZ2VtX3JpbmdidWZmZXJfc3VibWlzc2lvbihz dHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3BhcmFtcyAqcGFyYW1zLAogCQkJICAgICAgIHN0cnVjdCBk cm1faTkxNV9nZW1fZXhlY2J1ZmZlcjIgKmFyZ3MsCi0JCQkgICAgICAgc3RydWN0IGxpc3RfaGVh ZCAqdm1hcywKLQkJCSAgICAgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqYmF0Y2hfb2Jq LAotCQkJICAgICAgIHU2NCBleGVjX3N0YXJ0LCB1MzIgZGlzcGF0Y2hfZmxhZ3MpCisJCQkgICAg ICAgc3RydWN0IGxpc3RfaGVhZCAqdm1hcykKIHsKIAlzdHJ1Y3QgZHJtX2NsaXBfcmVjdCAqY2xp cHJlY3RzID0gTlVMTDsKKwlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gcGFyYW1zLT5kZXY7CisJ c3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyA9IHBhcmFtcy0+cmluZzsKIAlzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwotCXU2NCBleGVjX2xl bjsKKwl1NjQgZXhlY19zdGFydCwgZXhlY19sZW47CiAJaW50IGluc3RwX21vZGU7CiAJdTMyIGlu c3RwX21hc2s7CiAJaW50IGksIHJldCA9IDA7CkBAIC0xMTk0LDcgKzExOTIsNyBAQCBpOTE1X2dl bV9yaW5nYnVmZmVyX3N1Ym1pc3Npb24oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRy bV9maWxlICpmaWxlLAogCWlmIChyZXQpCiAJCWdvdG8gZXJyb3I7CiAKLQlyZXQgPSBpOTE1X3N3 aXRjaF9jb250ZXh0KHJpbmcsIGN0eCk7CisJcmV0ID0gaTkxNV9zd2l0Y2hfY29udGV4dChyaW5n LCBwYXJhbXMtPmN0eCk7CiAJaWYgKHJldCkKIAkJZ290byBlcnJvcjsKIApAQCAtMTI1MSwxMiAr MTI0OSwxNSBAQCBpOTE1X2dlbV9yaW5nYnVmZmVyX3N1Ym1pc3Npb24oc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgc3RydWN0IGRybV9maWxlICpmaWxlLAogCX0KIAogCWlmIChhcmdzLT5mbGFncyAm IEk5MTVfRVhFQ19HRU43X1NPTF9SRVNFVCkgewotCQlyZXQgPSBpOTE1X3Jlc2V0X2dlbjdfc29s X29mZnNldHMoZGV2LCByaW5nKTsKKwkJcmV0ID0gaTkxNV9yZXNldF9nZW43X3NvbF9vZmZzZXRz KHBhcmFtcy0+ZGV2LCByaW5nKTsKIAkJaWYgKHJldCkKIAkJCWdvdG8gZXJyb3I7CiAJfQogCi0J ZXhlY19sZW4gPSBhcmdzLT5iYXRjaF9sZW47CisJZXhlY19sZW4gICA9IGFyZ3MtPmJhdGNoX2xl bjsKKwlleGVjX3N0YXJ0ID0gcGFyYW1zLT5iYXRjaF9vYmpfdm1fb2Zmc2V0ICsKKwkJICAgICBh cmdzLT5iYXRjaF9zdGFydF9vZmZzZXQ7CisKIAlpZiAoY2xpcHJlY3RzKSB7CiAJCWZvciAoaSA9 IDA7IGkgPCBhcmdzLT5udW1fY2xpcHJlY3RzOyBpKyspIHsKIAkJCXJldCA9IGk5MTVfZW1pdF9i b3gocmluZywgJmNsaXByZWN0c1tpXSwKQEAgLTEyNjYsMjIgKzEyNjcsMjMgQEAgaTkxNV9nZW1f cmluZ2J1ZmZlcl9zdWJtaXNzaW9uKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1f ZmlsZSAqZmlsZSwKIAogCQkJcmV0ID0gcmluZy0+ZGlzcGF0Y2hfZXhlY2J1ZmZlcihyaW5nLAog CQkJCQkJCWV4ZWNfc3RhcnQsIGV4ZWNfbGVuLAotCQkJCQkJCWRpc3BhdGNoX2ZsYWdzKTsKKwkJ CQkJCQlwYXJhbXMtPmRpc3BhdGNoX2ZsYWdzKTsKIAkJCWlmIChyZXQpCiAJCQkJZ290byBlcnJv cjsKIAkJfQogCX0gZWxzZSB7CiAJCXJldCA9IHJpbmctPmRpc3BhdGNoX2V4ZWNidWZmZXIocmlu ZywKIAkJCQkJCWV4ZWNfc3RhcnQsIGV4ZWNfbGVuLAotCQkJCQkJZGlzcGF0Y2hfZmxhZ3MpOwor CQkJCQkJcGFyYW1zLT5kaXNwYXRjaF9mbGFncyk7CiAJCWlmIChyZXQpCiAJCQlyZXR1cm4gcmV0 OwogCX0KIAotCXRyYWNlX2k5MTVfZ2VtX3JpbmdfZGlzcGF0Y2goaW50ZWxfcmluZ19nZXRfcmVx dWVzdChyaW5nKSwgZGlzcGF0Y2hfZmxhZ3MpOworCXRyYWNlX2k5MTVfZ2VtX3JpbmdfZGlzcGF0 Y2goaW50ZWxfcmluZ19nZXRfcmVxdWVzdChyaW5nKSwgcGFyYW1zLT5kaXNwYXRjaF9mbGFncyk7 CiAKIAlpOTE1X2dlbV9leGVjYnVmZmVyX21vdmVfdG9fYWN0aXZlKHZtYXMsIHJpbmcpOwotCWk5 MTVfZ2VtX2V4ZWNidWZmZXJfcmV0aXJlX2NvbW1hbmRzKGRldiwgZmlsZSwgcmluZywgYmF0Y2hf b2JqKTsKKwlpOTE1X2dlbV9leGVjYnVmZmVyX3JldGlyZV9jb21tYW5kcyhwYXJhbXMtPmRldiwg cGFyYW1zLT5maWxlLCByaW5nLAorCQkJCQkgICAgcGFyYW1zLT5iYXRjaF9vYmopOwogCiBlcnJv cjoKIAlrZnJlZShjbGlwcmVjdHMpOwpAQCAtMTM1MSw4ICsxMzUzLDkgQEAgaTkxNV9nZW1fZG9f ZXhlY2J1ZmZlcihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAogCXN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKnJpbmc7CiAJc3RydWN0IGludGVsX2NvbnRleHQgKmN0eDsKIAlzdHJ1 Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bTsKKwlzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3BhcmFt cyBwYXJhbXNfbWFzdGVyOyAvKiBYWFg6IHdpbGwgYmUgcmVtb3ZlZCBsYXRlciAqLworCXN0cnVj dCBpOTE1X2V4ZWNidWZmZXJfcGFyYW1zICpwYXJhbXMgPSAmcGFyYW1zX21hc3RlcjsKIAljb25z dCB1MzIgY3R4X2lkID0gaTkxNV9leGVjYnVmZmVyMl9nZXRfY29udGV4dF9pZCgqYXJncyk7Ci0J dTY0IGV4ZWNfc3RhcnQgPSBhcmdzLT5iYXRjaF9zdGFydF9vZmZzZXQ7CiAJdTMyIGRpc3BhdGNo X2ZsYWdzOwogCWludCByZXQ7CiAJYm9vbCBuZWVkX3JlbG9jczsKQEAgLTE0NDUsNiArMTQ0OCw4 IEBAIGk5MTVfZ2VtX2RvX2V4ZWNidWZmZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAq ZGF0YSwKIAllbHNlCiAJCXZtID0gJmRldl9wcml2LT5ndHQuYmFzZTsKIAorCW1lbXNldCgmcGFy YW1zX21hc3RlciwgMHgwMCwgc2l6ZW9mKHBhcmFtc19tYXN0ZXIpKTsKKwogCWViID0gZWJfY3Jl YXRlKGFyZ3MpOwogCWlmIChlYiA9PSBOVUxMKSB7CiAJCWk5MTVfZ2VtX2NvbnRleHRfdW5yZWZl cmVuY2UoY3R4KTsKQEAgLTE1MjIsMTMgKzE1MjcsMjQgQEAgaTkxNV9nZW1fZG9fZXhlY2J1ZmZl cihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAogCQlpZiAocmV0KQogCQkJZ290 byBlcnI7CiAKLQkJZXhlY19zdGFydCArPSBpOTE1X2dlbV9vYmpfZ2d0dF9vZmZzZXQoYmF0Y2hf b2JqKTsKKwkJcGFyYW1zLT5iYXRjaF9vYmpfdm1fb2Zmc2V0ID0gaTkxNV9nZW1fb2JqX2dndHRf b2Zmc2V0KGJhdGNoX29iaik7CiAJfSBlbHNlCi0JCWV4ZWNfc3RhcnQgKz0gaTkxNV9nZW1fb2Jq X29mZnNldChiYXRjaF9vYmosIHZtKTsKKwkJcGFyYW1zLT5iYXRjaF9vYmpfdm1fb2Zmc2V0ID0g aTkxNV9nZW1fb2JqX29mZnNldChiYXRjaF9vYmosIHZtKTsKIAotCXJldCA9IGRldl9wcml2LT5n dC5kb19leGVjYnVmKGRldiwgZmlsZSwgcmluZywgY3R4LCBhcmdzLAotCQkJCSAgICAgICZlYi0+ dm1hcywgYmF0Y2hfb2JqLCBleGVjX3N0YXJ0LAotCQkJCSAgICAgIGRpc3BhdGNoX2ZsYWdzKTsK KwkvKgorCSAqIFNhdmUgYXNzb3J0ZWQgc3R1ZmYgYXdheSB0byBwYXNzIHRocm91Z2ggdG8gKl9z dWJtaXNzaW9uKCkuCisJICogTkI6IFRoaXMgZGF0YSBzaG91bGQgYmUgJ3BlcnNpc3RlbnQnIGFu ZCBub3QgbG9jYWwgYXMgaXQgd2lsbAorCSAqIGtlcHQgYXJvdW5kIGJleW9uZCB0aGUgZHVyYXRp b24gb2YgdGhlIElPQ1RMIG9uY2UgdGhlIEdQVQorCSAqIHNjaGVkdWxlciBhcnJpdmVzLgorCSAq LworCXBhcmFtcy0+ZGV2ICAgICAgICAgICAgICAgICAgICAgPSBkZXY7CisJcGFyYW1zLT5maWxl ICAgICAgICAgICAgICAgICAgICA9IGZpbGU7CisJcGFyYW1zLT5yaW5nICAgICAgICAgICAgICAg ICAgICA9IHJpbmc7CisJcGFyYW1zLT5kaXNwYXRjaF9mbGFncyAgICAgICAgICA9IGRpc3BhdGNo X2ZsYWdzOworCXBhcmFtcy0+YmF0Y2hfb2JqICAgICAgICAgICAgICAgPSBiYXRjaF9vYmo7CisJ cGFyYW1zLT5jdHggICAgICAgICAgICAgICAgICAgICA9IGN0eDsKKworCXJldCA9IGRldl9wcml2 LT5ndC5kb19leGVjYnVmKHBhcmFtcywgYXJncywgJmViLT52bWFzKTsKIAogCS8qCiAJICogRklY TUU6IFdlIGNydWNpYWxseSByZWx5IHVwb24gdGhlIGFjdGl2ZSB0cmFja2luZyBmb3IgdGhlIChw cGd0dCkKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKaW5kZXggZjE0YjUxNy4uZjZhMjRlOGEyIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYwpAQCAtNjI3LDE2ICs2MjcsMTUgQEAgc3RhdGljIGlu dCBleGVjbGlzdHNfbW92ZV90b19ncHUoc3RydWN0IGludGVsX3JpbmdidWZmZXIgKnJpbmdidWYs CiAgKgogICogUmV0dXJuOiBub24temVybyBpZiB0aGUgc3VibWlzc2lvbiBmYWlscy4KICAqLwot aW50IGludGVsX2V4ZWNsaXN0c19zdWJtaXNzaW9uKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0 cnVjdCBkcm1fZmlsZSAqZmlsZSwKLQkJCSAgICAgICBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpy aW5nLAotCQkJICAgICAgIHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjdHgsCitpbnQgaW50ZWxfZXhl Y2xpc3RzX3N1Ym1pc3Npb24oc3RydWN0IGk5MTVfZXhlY2J1ZmZlcl9wYXJhbXMgKnBhcmFtcywK IAkJCSAgICAgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZmZXIyICphcmdzLAotCQkJICAg ICAgIHN0cnVjdCBsaXN0X2hlYWQgKnZtYXMsCi0JCQkgICAgICAgc3RydWN0IGRybV9pOTE1X2dl bV9vYmplY3QgKmJhdGNoX29iaiwKLQkJCSAgICAgICB1NjQgZXhlY19zdGFydCwgdTMyIGRpc3Bh dGNoX2ZsYWdzKQorCQkJICAgICAgIHN0cnVjdCBsaXN0X2hlYWQgKnZtYXMpCiB7CisJc3RydWN0 IGRybV9kZXZpY2UgICAgICAgKmRldiA9IHBhcmFtcy0+ZGV2OworCXN0cnVjdCBpbnRlbF9lbmdp bmVfY3MgICpyaW5nID0gcGFyYW1zLT5yaW5nOwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Ci0Jc3RydWN0IGludGVsX3JpbmdidWZmZXIgKnJp bmdidWYgPSBjdHgtPmVuZ2luZVtyaW5nLT5pZF0ucmluZ2J1ZjsKKwlzdHJ1Y3QgaW50ZWxfcmlu Z2J1ZmZlciAqcmluZ2J1ZiA9IHBhcmFtcy0+Y3R4LT5lbmdpbmVbcmluZy0+aWRdLnJpbmdidWY7 CisJdTY0IGV4ZWNfc3RhcnQ7CiAJaW50IGluc3RwX21vZGU7CiAJdTMyIGluc3RwX21hc2s7CiAJ aW50IHJldDsKQEAgLTY4NywxMyArNjg2LDEzIEBAIGludCBpbnRlbF9leGVjbGlzdHNfc3VibWlz c2lvbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCiAJCXJl dHVybiAtRUlOVkFMOwogCX0KIAotCXJldCA9IGV4ZWNsaXN0c19tb3ZlX3RvX2dwdShyaW5nYnVm LCBjdHgsIHZtYXMpOworCXJldCA9IGV4ZWNsaXN0c19tb3ZlX3RvX2dwdShyaW5nYnVmLCBwYXJh bXMtPmN0eCwgdm1hcyk7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIAogCWlmIChyaW5nID09 ICZkZXZfcHJpdi0+cmluZ1tSQ1NdICYmCiAJICAgIGluc3RwX21vZGUgIT0gZGV2X3ByaXYtPnJl bGF0aXZlX2NvbnN0YW50c19tb2RlKSB7Ci0JCXJldCA9IGludGVsX2xvZ2ljYWxfcmluZ19iZWdp bihyaW5nYnVmLCBjdHgsIDQpOworCQlyZXQgPSBpbnRlbF9sb2dpY2FsX3JpbmdfYmVnaW4ocmlu Z2J1ZiwgcGFyYW1zLT5jdHgsIDQpOwogCQlpZiAocmV0KQogCQkJcmV0dXJuIHJldDsKIApAQCAt NzA2LDE0ICs3MDUsMTcgQEAgaW50IGludGVsX2V4ZWNsaXN0c19zdWJtaXNzaW9uKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSwKIAkJZGV2X3ByaXYtPnJlbGF0 aXZlX2NvbnN0YW50c19tb2RlID0gaW5zdHBfbW9kZTsKIAl9CiAKLQlyZXQgPSByaW5nLT5lbWl0 X2JiX3N0YXJ0KHJpbmdidWYsIGN0eCwgZXhlY19zdGFydCwgZGlzcGF0Y2hfZmxhZ3MpOworCWV4 ZWNfc3RhcnQgPSBwYXJhbXMtPmJhdGNoX29ial92bV9vZmZzZXQgKworCQkgICAgIGFyZ3MtPmJh dGNoX3N0YXJ0X29mZnNldDsKKworCXJldCA9IHJpbmctPmVtaXRfYmJfc3RhcnQocmluZ2J1Ziwg cGFyYW1zLT5jdHgsIGV4ZWNfc3RhcnQsIHBhcmFtcy0+ZGlzcGF0Y2hfZmxhZ3MpOwogCWlmIChy ZXQpCiAJCXJldHVybiByZXQ7CiAKLQl0cmFjZV9pOTE1X2dlbV9yaW5nX2Rpc3BhdGNoKGludGVs X3JpbmdfZ2V0X3JlcXVlc3QocmluZyksIGRpc3BhdGNoX2ZsYWdzKTsKKwl0cmFjZV9pOTE1X2dl bV9yaW5nX2Rpc3BhdGNoKGludGVsX3JpbmdfZ2V0X3JlcXVlc3QocmluZyksIHBhcmFtcy0+ZGlz cGF0Y2hfZmxhZ3MpOwogCiAJaTkxNV9nZW1fZXhlY2J1ZmZlcl9tb3ZlX3RvX2FjdGl2ZSh2bWFz LCByaW5nKTsKLQlpOTE1X2dlbV9leGVjYnVmZmVyX3JldGlyZV9jb21tYW5kcyhkZXYsIGZpbGUs IHJpbmcsIGJhdGNoX29iaik7CisJaTkxNV9nZW1fZXhlY2J1ZmZlcl9yZXRpcmVfY29tbWFuZHMo cGFyYW1zLT5kZXYsIHBhcmFtcy0+ZmlsZSwgcmluZywgcGFyYW1zLT5iYXRjaF9vYmopOwogCiAJ cmV0dXJuIDA7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMu aCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5oCmluZGV4IGI2NmZjNGQuLjNhNmFi Y2UgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5oCisrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5oCkBAIC03NiwxMyArNzYsMTAgQEAgdm9pZCBp bnRlbF9scl9jb250ZXh0X3VucGluKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCiAKIC8q IEV4ZWNsaXN0cyAqLwogaW50IGludGVsX3Nhbml0aXplX2VuYWJsZV9leGVjbGlzdHMoc3RydWN0 IGRybV9kZXZpY2UgKmRldiwgaW50IGVuYWJsZV9leGVjbGlzdHMpOwotaW50IGludGVsX2V4ZWNs aXN0c19zdWJtaXNzaW9uKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1fZmlsZSAq ZmlsZSwKLQkJCSAgICAgICBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLAotCQkJICAgICAg IHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjdHgsCitzdHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3BhcmFt czsKK2ludCBpbnRlbF9leGVjbGlzdHNfc3VibWlzc2lvbihzdHJ1Y3QgaTkxNV9leGVjYnVmZmVy X3BhcmFtcyAqcGFyYW1zLAogCQkJICAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fZXhlY2J1ZmZl cjIgKmFyZ3MsCi0JCQkgICAgICAgc3RydWN0IGxpc3RfaGVhZCAqdm1hcywKLQkJCSAgICAgICBz dHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqYmF0Y2hfb2JqLAotCQkJICAgICAgIHU2NCBleGVj X3N0YXJ0LCB1MzIgZGlzcGF0Y2hfZmxhZ3MpOworCQkJICAgICAgIHN0cnVjdCBsaXN0X2hlYWQg KnZtYXMpOwogdTMyIGludGVsX2V4ZWNsaXN0c19jdHhfaWQoc3RydWN0IGRybV9pOTE1X2dlbV9v YmplY3QgKmN0eF9vYmopOwogCiB2b2lkIGludGVsX2xyY19pcnFfaGFuZGxlcihzdHJ1Y3QgaW50 ZWxfZW5naW5lX2NzICpyaW5nKTsKLS0gCjEuNy45LjUKCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4 QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==