From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tomas Elf Subject: Re: [PATCH 09/59] drm/i915: Merged the many do_execbuf() parameters into a structure Date: Tue, 31 Mar 2015 17:16:54 +0100 Message-ID: <551AC876.1030901@intel.com> References: <1426768264-16996-1-git-send-email-John.C.Harrison@Intel.com> <1426768264-16996-10-git-send-email-John.C.Harrison@Intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 6A0396E716 for ; Tue, 31 Mar 2015 09:16:56 -0700 (PDT) In-Reply-To: <1426768264-16996-10-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: "John.C.Harrison@Intel.com" , "Intel-GFX@Lists.FreeDesktop.Org" List-Id: intel-gfx@lists.freedesktop.org T24gMTkvMDMvMjAxNSAxMjozMCwgSm9obi5DLkhhcnJpc29uQEludGVsLmNvbSB3cm90ZToKPiBG cm9tOiBKb2huIEhhcnJpc29uIDxKb2huLkMuSGFycmlzb25ASW50ZWwuY29tPgo+Cj4gVGhlIGRv X2V4ZWNidWYoKSBmdW5jdGlvbiB0YWtlcyBxdWl0ZSBhIGZldyBwYXJhbWV0ZXJzLiBUaGUgYWN0 dWFsIHNldCBvZgo+IHBhcmFtZXRlcnMgaXMgZ29pbmcgdG8gY2hhbmdlIHdpdGggdGhlIGNvbnZl cnNpb24gdG8gcGFzc2luZyByZXF1ZXN0cyBhcm91bmQuCj4gRnVydGhlciwgaXQgaXMgZHVlIHRv IGdyb3cgbWFzc2l2ZWx5IHdpdGggdGhlIGFycml2YWwgb2YgdGhlIEdQVSBzY2hlZHVsZXIuCj4K PiBUaGlzIHBhdGNoIHNpbXBsaWZpZXMgdGhlIHByb3RvdHlwZSBieSBwYXNzaW5nIGEgcGFyYW1l dGVyIHN0cnVjdHVyZSBpbnN0ZWFkLgo+IENoYW5naW5nIHRoZSBwYXJhbWV0ZXIgc2V0IGluIHRo ZSBmdXR1cmUgaXMgdGhlbiBzaW1wbHkgYSBtYXR0ZXIgb2YKPiBhZGRpbmcvcmVtb3ZpbmcgaXRl bXMgdG8gdGhlIHN0cnVjdHVyZS4KPgo+IE5vdGUgdGhhdCB0aGUgc3RydWN0dXJlIGRvZXMgbm90 IGNvbnRhaW4gYWJzb2x1dGVseSBldmVyeXRoaW5nIHRoYXQgaXMgcGFzc2VkCj4gaW4uIFRoaXMg aXMgYmVjYXVzZSB0aGUgaW50ZW50aW9uIGlzIHRvIHVzZSB0aGlzIHN0cnVjdHVyZSBtb3JlIGV4 dGVuc2l2ZWx5Cj4gbGF0ZXIgaW4gdGhpcyBwYXRjaCBzZXJpZXMgYW5kIG1vcmUgZXNwZWNpYWxs eSBpbiB0aGUgR1BVIHNjaGVkdWxlciB0aGF0IGlzCj4gY29taW5nIHNvb24uIFRoZSBsYXR0ZXIg cmVxdWlyZXMgaGFuZ2luZyBvbiB0byB0aGUgc3RydWN0dXJlIGFzIHRoZSBmaW5hbAo+IGhhcmR3 YXJlIHN1Ym1pc3Npb24gY2FuIGJlIGRlbGF5ZWQgdW50aWwgbG9uZyBhZnRlciB0aGUgZXhlY2J1 ZiBJT0NUTCBoYXMKPiByZXR1cm5lZCB0byB1c2VyIGxhbmQuIFRodXMgaXQgaXMgdW5zYWZlIHRv IHB1dCBhbnl0aGluZyBpbiB0aGUgc3RydWN0dXJlIHRoYXQKPiBpcyBsb2NhbCB0byB0aGUgSU9D VEwgY2FsbCBpdHNlbGYgLSBzdWNoIGFzIHRoZSAnYXJncycgcGFyYW1ldGVyLiBBbGwgZW50cmll cwo+IG11c3QgYmUgY29waWVzIG9mIGRhdGEgb3IgcG9pbnRlcnMgdG8gc3RydWN0dXJlcyB0aGF0 IGFyZSByZWZlcmVuY2UgY291bnRlZCBpbgo+IHNvbWUgd2F5IGFuZCBndWFyYW50ZWVkIHRvIGV4 aXN0IGZvciB0aGUgZHVyYXRpb24gb2YgdGhlIGJhdGNoIGJ1ZmZlcidzIGxpZmUuCj4KPiB2Mjog UmViYXNlZCB0byBuZXdlciB0cmVlIGFuZCB1cGRhdGVkIGZvciBjaGFuZ2VzIHRvIHRoZSBjb21t YW5kIHBhcnNlci4KPiBTcGVjaWZpY2FsbHksIGEgY29kZSBzaHVmZmxlIGhhcyByZXF1aXJlZCBz YXZpbmcgdGhlIGJhdGNoIHN0YXJ0IGFkZHJlc3MgaW4gdGhlCj4gcGFyYW1zIHN0cnVjdHVyZS4K Pgo+IEZvcjogVklaLTUxMTUKPiBTaWduZWQtb2ZmLWJ5OiBKb2huIEhhcnJpc29uIDxKb2huLkMu SGFycmlzb25ASW50ZWwuY29tPgo+IFJldmlld2VkLWJ5OiBUb21hcyBFbGYgPHRvbWFzLmVsZkBp bnRlbC5jb20+Cj4gLS0tCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAg ICAgICAgfCAgIDI4ICsrKysrKystLS0tLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtX2V4ZWNidWZmZXIuYyB8ICAgNjEgKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLQo+ICAg ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMgICAgICAgICAgIHwgICAyNiArKysrKyst LS0tLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5oICAgICAgICAgICB8ICAg IDkgKystLQo+ICAgNCBmaWxlcyBjaGFuZ2VkLCA3MSBpbnNlcnRpb25zKCspLCA1MyBkZWxldGlv bnMoLSkKPgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+IGluZGV4IDdiMzZkNGEuLjZhZTk5Y2Ug MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiBAQCAtMTU1OCw2ICsxNTU4LDE3IEBAIHN0 cnVjdCBpOTE1X3ZpcnR1YWxfZ3B1IHsKPiAgIAlib29sIGFjdGl2ZTsKPiAgIH07Cj4KPiArc3Ry dWN0IGk5MTVfZXhlY2J1ZmZlcl9wYXJhbXMgewo+ICsJc3RydWN0IGRybV9kZXZpY2UgICAgICAg ICAgICAgICAqZGV2Owo+ICsJc3RydWN0IGRybV9maWxlICAgICAgICAgICAgICAgICAqZmlsZTsK PiArCXVpbnQzMl90ICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGF0Y2hfZmxhZ3M7Cj4gKwl1 aW50MzJfdCAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3NfYmF0Y2hfc3RhcnRfb2Zmc2V0Owo+ ICsJdWludDMyX3QgICAgICAgICAgICAgICAgICAgICAgICBiYXRjaF9vYmpfdm1fb2Zmc2V0Owo+ ICsJc3RydWN0IGludGVsX2VuZ2luZV9jcyAgICAgICAgICAqcmluZzsKPiArCXN0cnVjdCBkcm1f aTkxNV9nZW1fb2JqZWN0ICAgICAgKmJhdGNoX29iajsKPiArCXN0cnVjdCBpbnRlbF9jb250ZXh0 ICAgICAgICAgICAgKmN0eDsKPiArfTsKPiArCj4gICBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSB7 Cj4gICAJc3RydWN0IGRybV9kZXZpY2UgKmRldjsKPiAgIAlzdHJ1Y3Qga21lbV9jYWNoZSAqc2xh YjsKPiBAQCAtMTgxMiwxMyArMTgyMyw5IEBAIHN0cnVjdCBkcm1faTkxNV9wcml2YXRlIHsKPgo+ ICAgCS8qIEFic3RyYWN0IHRoZSBzdWJtaXNzaW9uIG1lY2hhbmlzbSAobGVnYWN5IHJpbmdidWZm ZXIgb3IgZXhlY2xpc3RzKSBhd2F5ICovCj4gICAJc3RydWN0IHsKPiAtCQlpbnQgKCpleGVjYnVm X3N1Ym1pdCkoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9maWxlICpmaWxlLAo+ IC0JCQkJICAgICAgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywKPiAtCQkJCSAgICAgIHN0 cnVjdCBpbnRlbF9jb250ZXh0ICpjdHgsCj4gKwkJaW50ICgqZXhlY2J1Zl9zdWJtaXQpKHN0cnVj dCBpOTE1X2V4ZWNidWZmZXJfcGFyYW1zICpwYXJhbXMsCj4gICAJCQkJICAgICAgc3RydWN0IGRy bV9pOTE1X2dlbV9leGVjYnVmZmVyMiAqYXJncywKPiAtCQkJCSAgICAgIHN0cnVjdCBsaXN0X2hl YWQgKnZtYXMsCj4gLQkJCQkgICAgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqYmF0Y2hf b2JqLAo+IC0JCQkJICAgICAgdTY0IGV4ZWNfc3RhcnQsIHUzMiBmbGFncyk7Cj4gKwkJCQkgICAg ICBzdHJ1Y3QgbGlzdF9oZWFkICp2bWFzKTsKPiAgIAkJaW50ICgqaW5pdF9yaW5ncykoc3RydWN0 IGRybV9kZXZpY2UgKmRldik7Cj4gICAJCXZvaWQgKCpjbGVhbnVwX3JpbmcpKHN0cnVjdCBpbnRl bF9lbmdpbmVfY3MgKnJpbmcpOwo+ICAgCQl2b2lkICgqc3RvcF9yaW5nKShzdHJ1Y3QgaW50ZWxf ZW5naW5lX2NzICpyaW5nKTsKPiBAQCAtMjU2OSwxNCArMjU3Niw5IEBAIHZvaWQgaTkxNV9nZW1f ZXhlY2J1ZmZlcl9yZXRpcmVfY29tbWFuZHMoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgIAkJ CQkJIHN0cnVjdCBkcm1fZmlsZSAqZmlsZSwKPiAgIAkJCQkJIHN0cnVjdCBpbnRlbF9lbmdpbmVf Y3MgKnJpbmcsCj4gICAJCQkJCSBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKTsKPiAt aW50IGk5MTVfZ2VtX3JpbmdidWZmZXJfc3VibWlzc2lvbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LAo+IC0JCQkJICAgc3RydWN0IGRybV9maWxlICpmaWxlLAo+IC0JCQkJICAgc3RydWN0IGludGVs X2VuZ2luZV9jcyAqcmluZywKPiAtCQkJCSAgIHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjdHgsCj4g K2ludCBpOTE1X2dlbV9yaW5nYnVmZmVyX3N1Ym1pc3Npb24oc3RydWN0IGk5MTVfZXhlY2J1ZmZl cl9wYXJhbXMgKnBhcmFtcywKPiAgIAkJCQkgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZm ZXIyICphcmdzLAo+IC0JCQkJICAgc3RydWN0IGxpc3RfaGVhZCAqdm1hcywKPiAtCQkJCSAgIHN0 cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpiYXRjaF9vYmosCj4gLQkJCQkgICB1NjQgZXhlY19z dGFydCwgdTMyIGZsYWdzKTsKPiArCQkJCSAgIHN0cnVjdCBsaXN0X2hlYWQgKnZtYXMpOwo+ICAg aW50IGk5MTVfZ2VtX2V4ZWNidWZmZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0 YSwKPiAgIAkJCXN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2KTsKPiAgIGludCBpOTE1X2dlbV9l eGVjYnVmZmVyMihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMKPiBpbmRleCAyNTA0Y2ZkLi4yZmZm ZDk5IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZm ZXIuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwo+ IEBAIC0xMTg1LDE3ICsxMTg1LDE1IEBAIGVycjoKPiAgIH0KPgo+ICAgaW50Cj4gLWk5MTVfZ2Vt X3JpbmdidWZmZXJfc3VibWlzc2lvbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJt X2ZpbGUgKmZpbGUsCj4gLQkJCSAgICAgICBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLAo+ IC0JCQkgICAgICAgc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCwKPiAraTkxNV9nZW1fcmluZ2J1 ZmZlcl9zdWJtaXNzaW9uKHN0cnVjdCBpOTE1X2V4ZWNidWZmZXJfcGFyYW1zICpwYXJhbXMsCj4g ICAJCQkgICAgICAgc3RydWN0IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyMiAqYXJncywKPiAtCQkJ ICAgICAgIHN0cnVjdCBsaXN0X2hlYWQgKnZtYXMsCj4gLQkJCSAgICAgICBzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdCAqYmF0Y2hfb2JqLAo+IC0JCQkgICAgICAgdTY0IGV4ZWNfc3RhcnQsIHUz MiBkaXNwYXRjaF9mbGFncykKPiArCQkJICAgICAgIHN0cnVjdCBsaXN0X2hlYWQgKnZtYXMpCj4g ICB7Cj4gICAJc3RydWN0IGRybV9jbGlwX3JlY3QgKmNsaXByZWN0cyA9IE5VTEw7Cj4gKwlzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2ID0gcGFyYW1zLT5kZXY7Cj4gKwlzdHJ1Y3QgaW50ZWxfZW5naW5l X2NzICpyaW5nID0gcGFyYW1zLT5yaW5nOwo+ICAgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpk ZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gLQl1NjQgZXhlY19sZW47Cj4gKwl1NjQgZXhl Y19zdGFydCwgZXhlY19sZW47Cj4gICAJaW50IGluc3RwX21vZGU7Cj4gICAJdTMyIGluc3RwX21h c2s7Cj4gICAJaW50IGksIHJldCA9IDA7Cj4gQEAgLTEyNDcsNyArMTI0NSw3IEBAIGk5MTVfZ2Vt X3JpbmdidWZmZXJfc3VibWlzc2lvbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJt X2ZpbGUgKmZpbGUsCj4gICAJaWYgKHJldCkKPiAgIAkJZ290byBlcnJvcjsKPgo+IC0JcmV0ID0g aTkxNV9zd2l0Y2hfY29udGV4dChyaW5nLCBjdHgpOwo+ICsJcmV0ID0gaTkxNV9zd2l0Y2hfY29u dGV4dChyaW5nLCBwYXJhbXMtPmN0eCk7Cj4gICAJaWYgKHJldCkKPiAgIAkJZ290byBlcnJvcjsK Pgo+IEBAIC0xMzA0LDEyICsxMzAyLDE1IEBAIGk5MTVfZ2VtX3JpbmdidWZmZXJfc3VibWlzc2lv bihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCj4gICAJfQo+ Cj4gICAJaWYgKGFyZ3MtPmZsYWdzICYgSTkxNV9FWEVDX0dFTjdfU09MX1JFU0VUKSB7Cj4gLQkJ cmV0ID0gaTkxNV9yZXNldF9nZW43X3NvbF9vZmZzZXRzKGRldiwgcmluZyk7Cj4gKwkJcmV0ID0g aTkxNV9yZXNldF9nZW43X3NvbF9vZmZzZXRzKHBhcmFtcy0+ZGV2LCByaW5nKTsKCkkga25vdyB0 aGF0IEkgYWxyZWFkeSByLWI6ZWQgdGhpcyBwYXRjaCBiZWZvcmUgYnV0IEkgZGlzY292ZXJlZCB0 aGF0IAp0aGlzIGNoYW5nZSBpcyBub3QgbmVjZXNzYXJ5IHNpbmNlIGRldiBpcyBhbHJlYWR5IGRl ZmluZWQgZnVydGhlciB1cC4gCkp1c3QgcmV1c2UgdGhhdCBsb2NhbCB2YXJpYWJsZSBhbmQgcmV2 ZXJ0IHRoaXMgY2hhbmdlLgoKPiAgIAkJaWYgKHJldCkKPiAgIAkJCWdvdG8gZXJyb3I7Cj4gICAJ fQo+Cj4gLQlleGVjX2xlbiA9IGFyZ3MtPmJhdGNoX2xlbjsKPiArCWV4ZWNfbGVuICAgPSBhcmdz LT5iYXRjaF9sZW47Cj4gKwlleGVjX3N0YXJ0ID0gcGFyYW1zLT5iYXRjaF9vYmpfdm1fb2Zmc2V0 ICsKPiArCQkgICAgIHBhcmFtcy0+YXJnc19iYXRjaF9zdGFydF9vZmZzZXQ7Cj4gKwo+ICAgCWlm IChjbGlwcmVjdHMpIHsKPiAgIAkJZm9yIChpID0gMDsgaSA8IGFyZ3MtPm51bV9jbGlwcmVjdHM7 IGkrKykgewo+ICAgCQkJcmV0ID0gaTkxNV9lbWl0X2JveChyaW5nLCAmY2xpcHJlY3RzW2ldLAo+ IEBAIC0xMzE5LDIyICsxMzIwLDIzIEBAIGk5MTVfZ2VtX3JpbmdidWZmZXJfc3VibWlzc2lvbihz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCj4KPiAgIAkJCXJl dCA9IHJpbmctPmRpc3BhdGNoX2V4ZWNidWZmZXIocmluZywKPiAgIAkJCQkJCQlleGVjX3N0YXJ0 LCBleGVjX2xlbiwKPiAtCQkJCQkJCWRpc3BhdGNoX2ZsYWdzKTsKPiArCQkJCQkJCXBhcmFtcy0+ ZGlzcGF0Y2hfZmxhZ3MpOwo+ICAgCQkJaWYgKHJldCkKPiAgIAkJCQlnb3RvIGVycm9yOwo+ICAg CQl9Cj4gICAJfSBlbHNlIHsKPiAgIAkJcmV0ID0gcmluZy0+ZGlzcGF0Y2hfZXhlY2J1ZmZlcihy aW5nLAo+ICAgCQkJCQkJZXhlY19zdGFydCwgZXhlY19sZW4sCj4gLQkJCQkJCWRpc3BhdGNoX2Zs YWdzKTsKPiArCQkJCQkJcGFyYW1zLT5kaXNwYXRjaF9mbGFncyk7Cj4gICAJCWlmIChyZXQpCj4g ICAJCQlyZXR1cm4gcmV0Owo+ICAgCX0KPgo+IC0JdHJhY2VfaTkxNV9nZW1fcmluZ19kaXNwYXRj aChpbnRlbF9yaW5nX2dldF9yZXF1ZXN0KHJpbmcpLCBkaXNwYXRjaF9mbGFncyk7Cj4gKwl0cmFj ZV9pOTE1X2dlbV9yaW5nX2Rpc3BhdGNoKGludGVsX3JpbmdfZ2V0X3JlcXVlc3QocmluZyksIHBh cmFtcy0+ZGlzcGF0Y2hfZmxhZ3MpOwo+Cj4gICAJaTkxNV9nZW1fZXhlY2J1ZmZlcl9tb3ZlX3Rv X2FjdGl2ZSh2bWFzLCByaW5nKTsKPiAtCWk5MTVfZ2VtX2V4ZWNidWZmZXJfcmV0aXJlX2NvbW1h bmRzKGRldiwgZmlsZSwgcmluZywgYmF0Y2hfb2JqKTsKPiArCWk5MTVfZ2VtX2V4ZWNidWZmZXJf cmV0aXJlX2NvbW1hbmRzKHBhcmFtcy0+ZGV2LCBwYXJhbXMtPmZpbGUsIHJpbmcsCj4gKwkJCQkJ ICAgIHBhcmFtcy0+YmF0Y2hfb2JqKTsKPgo+ICAgZXJyb3I6Cj4gICAJa2ZyZWUoY2xpcHJlY3Rz KTsKPiBAQCAtMTQwNCw4ICsxNDA2LDkgQEAgaTkxNV9nZW1fZG9fZXhlY2J1ZmZlcihzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+ICAgCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3Mg KnJpbmc7Cj4gICAJc3RydWN0IGludGVsX2NvbnRleHQgKmN0eDsKPiAgIAlzdHJ1Y3QgaTkxNV9h ZGRyZXNzX3NwYWNlICp2bTsKPiArCXN0cnVjdCBpOTE1X2V4ZWNidWZmZXJfcGFyYW1zIHBhcmFt c19tYXN0ZXI7IC8qIFhYWDogd2lsbCBiZSByZW1vdmVkIGxhdGVyICovCj4gKwlzdHJ1Y3QgaTkx NV9leGVjYnVmZmVyX3BhcmFtcyAqcGFyYW1zID0gJnBhcmFtc19tYXN0ZXI7Cj4gICAJY29uc3Qg dTMyIGN0eF9pZCA9IGk5MTVfZXhlY2J1ZmZlcjJfZ2V0X2NvbnRleHRfaWQoKmFyZ3MpOwo+IC0J dTY0IGV4ZWNfc3RhcnQgPSBhcmdzLT5iYXRjaF9zdGFydF9vZmZzZXQ7Cj4gICAJdTMyIGRpc3Bh dGNoX2ZsYWdzOwo+ICAgCWludCByZXQ7Cj4gICAJYm9vbCBuZWVkX3JlbG9jczsKPiBAQCAtMTQ5 OCw2ICsxNTAxLDggQEAgaTkxNV9nZW1fZG9fZXhlY2J1ZmZlcihzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LCB2b2lkICpkYXRhLAo+ICAgCWVsc2UKPiAgIAkJdm0gPSAmZGV2X3ByaXYtPmd0dC5iYXNl Owo+Cj4gKwltZW1zZXQoJnBhcmFtc19tYXN0ZXIsIDB4MDAsIHNpemVvZihwYXJhbXNfbWFzdGVy KSk7Cj4gKwo+ICAgCWViID0gZWJfY3JlYXRlKGFyZ3MpOwo+ICAgCWlmIChlYiA9PSBOVUxMKSB7 Cj4gICAJCWk5MTVfZ2VtX2NvbnRleHRfdW5yZWZlcmVuY2UoY3R4KTsKPiBAQCAtMTU2Nyw4ICsx NTcyLDkgQEAgaTkxNV9nZW1fZG9fZXhlY2J1ZmZlcihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2 b2lkICpkYXRhLAo+ICAgCQlpZiAoVVNFU19GVUxMX1BQR1RUKGRldikpCj4gICAJCQlkaXNwYXRj aF9mbGFncyB8PSBJOTE1X0RJU1BBVENIX1NFQ1VSRTsKPgo+IC0JCWV4ZWNfc3RhcnQgPSAwOwo+ IC0JfQo+ICsJCXBhcmFtcy0+YXJnc19iYXRjaF9zdGFydF9vZmZzZXQgPSAwOwo+ICsJfSBlbHNl Cj4gKwkJcGFyYW1zLT5hcmdzX2JhdGNoX3N0YXJ0X29mZnNldCA9IGFyZ3MtPmJhdGNoX3N0YXJ0 X29mZnNldDsKPgo+ICAgCWJhdGNoX29iai0+YmFzZS5wZW5kaW5nX3JlYWRfZG9tYWlucyB8PSBJ OTE1X0dFTV9ET01BSU5fQ09NTUFORDsKPgo+IEBAIC0xNTkwLDE4ICsxNTk2LDI5IEBAIGk5MTVf Z2VtX2RvX2V4ZWNidWZmZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiAg IAkJaWYgKHJldCkKPiAgIAkJCWdvdG8gZXJyOwo+Cj4gLQkJZXhlY19zdGFydCArPSBpOTE1X2dl bV9vYmpfZ2d0dF9vZmZzZXQoYmF0Y2hfb2JqKTsKPiArCQlwYXJhbXMtPmJhdGNoX29ial92bV9v ZmZzZXQgPSBpOTE1X2dlbV9vYmpfZ2d0dF9vZmZzZXQoYmF0Y2hfb2JqKTsKPiAgIAl9IGVsc2UK PiAtCQlleGVjX3N0YXJ0ICs9IGk5MTVfZ2VtX29ial9vZmZzZXQoYmF0Y2hfb2JqLCB2bSk7Cj4g KwkJcGFyYW1zLT5iYXRjaF9vYmpfdm1fb2Zmc2V0ID0gaTkxNV9nZW1fb2JqX29mZnNldChiYXRj aF9vYmosIHZtKTsKPgo+ICAgCS8qIEFsbG9jYXRlIGEgcmVxdWVzdCBmb3IgdGhpcyBiYXRjaCBi dWZmZXIgbmljZSBhbmQgZWFybHkuICovCj4gICAJcmV0ID0gaTkxNV9nZW1fcmVxdWVzdF9hbGxv YyhyaW5nLCBjdHgpOwo+ICAgCWlmIChyZXQpCj4gICAJCWdvdG8gZXJyX2JhdGNoX3VucGluOwo+ Cj4gLQlyZXQgPSBkZXZfcHJpdi0+Z3QuZXhlY2J1Zl9zdWJtaXQoZGV2LCBmaWxlLCByaW5nLCBj dHgsIGFyZ3MsCj4gLQkJCQkJICAmZWItPnZtYXMsIGJhdGNoX29iaiwgZXhlY19zdGFydCwKPiAt CQkJCQkgIGRpc3BhdGNoX2ZsYWdzKTsKPiArCS8qCj4gKwkgKiBTYXZlIGFzc29ydGVkIHN0dWZm IGF3YXkgdG8gcGFzcyB0aHJvdWdoIHRvICpfc3VibWlzc2lvbigpLgo+ICsJICogTkI6IFRoaXMg ZGF0YSBzaG91bGQgYmUgJ3BlcnNpc3RlbnQnIGFuZCBub3QgbG9jYWwgYXMgaXQgd2lsbAo+ICsJ ICoga2VwdCBhcm91bmQgYmV5b25kIHRoZSBkdXJhdGlvbiBvZiB0aGUgSU9DVEwgb25jZSB0aGUg R1BVCj4gKwkgKiBzY2hlZHVsZXIgYXJyaXZlcy4KPiArCSAqLwo+ICsJcGFyYW1zLT5kZXYgICAg ICAgICAgICAgICAgICAgICA9IGRldjsKPiArCXBhcmFtcy0+ZmlsZSAgICAgICAgICAgICAgICAg ICAgPSBmaWxlOwo+ICsJcGFyYW1zLT5yaW5nICAgICAgICAgICAgICAgICAgICA9IHJpbmc7Cj4g KwlwYXJhbXMtPmRpc3BhdGNoX2ZsYWdzICAgICAgICAgID0gZGlzcGF0Y2hfZmxhZ3M7Cj4gKwlw YXJhbXMtPmJhdGNoX29iaiAgICAgICAgICAgICAgID0gYmF0Y2hfb2JqOwo+ICsJcGFyYW1zLT5j dHggICAgICAgICAgICAgICAgICAgICA9IGN0eDsKPiArCj4gKwlyZXQgPSBkZXZfcHJpdi0+Z3Qu ZXhlY2J1Zl9zdWJtaXQocGFyYW1zLCBhcmdzLCAmZWItPnZtYXMpOwo+Cj4gICBlcnJfYmF0Y2hf dW5waW46Cj4gICAJLyoKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf bHJjLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYwo+IGluZGV4IGEwY2U2NWIu LmMwZDk3ZTk3IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5j Cj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKPiBAQCAtODUzLDE2ICs4 NTMsMTUgQEAgc3RhdGljIGludCBpbnRlbF9sb2dpY2FsX3JpbmdfYmVnaW4oc3RydWN0IGludGVs X3JpbmdidWZmZXIgKnJpbmdidWYsCj4gICAgKgo+ICAgICogUmV0dXJuOiBub24temVybyBpZiB0 aGUgc3VibWlzc2lvbiBmYWlscy4KPiAgICAqLwo+IC1pbnQgaW50ZWxfZXhlY2xpc3RzX3N1Ym1p c3Npb24oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9maWxlICpmaWxlLAo+IC0J CQkgICAgICAgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywKPiAtCQkJICAgICAgIHN0cnVj dCBpbnRlbF9jb250ZXh0ICpjdHgsCj4gK2ludCBpbnRlbF9leGVjbGlzdHNfc3VibWlzc2lvbihz dHJ1Y3QgaTkxNV9leGVjYnVmZmVyX3BhcmFtcyAqcGFyYW1zLAo+ICAgCQkJICAgICAgIHN0cnVj dCBkcm1faTkxNV9nZW1fZXhlY2J1ZmZlcjIgKmFyZ3MsCj4gLQkJCSAgICAgICBzdHJ1Y3QgbGlz dF9oZWFkICp2bWFzLAo+IC0JCQkgICAgICAgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKmJh dGNoX29iaiwKPiAtCQkJICAgICAgIHU2NCBleGVjX3N0YXJ0LCB1MzIgZGlzcGF0Y2hfZmxhZ3Mp Cj4gKwkJCSAgICAgICBzdHJ1Y3QgbGlzdF9oZWFkICp2bWFzKQo+ICAgewo+ICsJc3RydWN0IGRy bV9kZXZpY2UgICAgICAgKmRldiA9IHBhcmFtcy0+ZGV2Owo+ICsJc3RydWN0IGludGVsX2VuZ2lu ZV9jcyAgKnJpbmcgPSBwYXJhbXMtPnJpbmc7Cj4gICAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKPiAtCXN0cnVjdCBpbnRlbF9yaW5nYnVmZmVy ICpyaW5nYnVmID0gY3R4LT5lbmdpbmVbcmluZy0+aWRdLnJpbmdidWY7Cj4gKwlzdHJ1Y3QgaW50 ZWxfcmluZ2J1ZmZlciAqcmluZ2J1ZiA9IHBhcmFtcy0+Y3R4LT5lbmdpbmVbcmluZy0+aWRdLnJp bmdidWY7Cj4gKwl1NjQgZXhlY19zdGFydDsKPiAgIAlpbnQgaW5zdHBfbW9kZTsKPiAgIAl1MzIg aW5zdHBfbWFzazsKPiAgIAlpbnQgcmV0Owo+IEBAIC05MTMsMTMgKzkxMiwxMyBAQCBpbnQgaW50 ZWxfZXhlY2xpc3RzX3N1Ym1pc3Npb24oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRy bV9maWxlICpmaWxlLAo+ICAgCQlyZXR1cm4gLUVJTlZBTDsKPiAgIAl9Cj4KPiAtCXJldCA9IGV4 ZWNsaXN0c19tb3ZlX3RvX2dwdShyaW5nYnVmLCBjdHgsIHZtYXMpOwo+ICsJcmV0ID0gZXhlY2xp c3RzX21vdmVfdG9fZ3B1KHJpbmdidWYsIHBhcmFtcy0+Y3R4LCB2bWFzKTsKPiAgIAlpZiAocmV0 KQo+ICAgCQlyZXR1cm4gcmV0Owo+Cj4gICAJaWYgKHJpbmcgPT0gJmRldl9wcml2LT5yaW5nW1JD U10gJiYKPiAgIAkgICAgaW5zdHBfbW9kZSAhPSBkZXZfcHJpdi0+cmVsYXRpdmVfY29uc3RhbnRz X21vZGUpIHsKPiAtCQlyZXQgPSBpbnRlbF9sb2dpY2FsX3JpbmdfYmVnaW4ocmluZ2J1ZiwgY3R4 LCA0KTsKPiArCQlyZXQgPSBpbnRlbF9sb2dpY2FsX3JpbmdfYmVnaW4ocmluZ2J1ZiwgcGFyYW1z LT5jdHgsIDQpOwo+ICAgCQlpZiAocmV0KQo+ICAgCQkJcmV0dXJuIHJldDsKPgo+IEBAIC05MzIs MTQgKzkzMSwxNyBAQCBpbnQgaW50ZWxfZXhlY2xpc3RzX3N1Ym1pc3Npb24oc3RydWN0IGRybV9k ZXZpY2UgKmRldiwgc3RydWN0IGRybV9maWxlICpmaWxlLAo+ICAgCQlkZXZfcHJpdi0+cmVsYXRp dmVfY29uc3RhbnRzX21vZGUgPSBpbnN0cF9tb2RlOwo+ICAgCX0KPgo+IC0JcmV0ID0gcmluZy0+ ZW1pdF9iYl9zdGFydChyaW5nYnVmLCBjdHgsIGV4ZWNfc3RhcnQsIGRpc3BhdGNoX2ZsYWdzKTsK PiArCWV4ZWNfc3RhcnQgPSBwYXJhbXMtPmJhdGNoX29ial92bV9vZmZzZXQgKwo+ICsJCSAgICAg YXJncy0+YmF0Y2hfc3RhcnRfb2Zmc2V0Owo+ICsKPiArCXJldCA9IHJpbmctPmVtaXRfYmJfc3Rh cnQocmluZ2J1ZiwgcGFyYW1zLT5jdHgsIGV4ZWNfc3RhcnQsIHBhcmFtcy0+ZGlzcGF0Y2hfZmxh Z3MpOwo+ICAgCWlmIChyZXQpCj4gICAJCXJldHVybiByZXQ7Cj4KPiAtCXRyYWNlX2k5MTVfZ2Vt X3JpbmdfZGlzcGF0Y2goaW50ZWxfcmluZ19nZXRfcmVxdWVzdChyaW5nKSwgZGlzcGF0Y2hfZmxh Z3MpOwo+ICsJdHJhY2VfaTkxNV9nZW1fcmluZ19kaXNwYXRjaChpbnRlbF9yaW5nX2dldF9yZXF1 ZXN0KHJpbmcpLCBwYXJhbXMtPmRpc3BhdGNoX2ZsYWdzKTsKPgo+ICAgCWk5MTVfZ2VtX2V4ZWNi dWZmZXJfbW92ZV90b19hY3RpdmUodm1hcywgcmluZyk7Cj4gLQlpOTE1X2dlbV9leGVjYnVmZmVy X3JldGlyZV9jb21tYW5kcyhkZXYsIGZpbGUsIHJpbmcsIGJhdGNoX29iaik7Cj4gKwlpOTE1X2dl bV9leGVjYnVmZmVyX3JldGlyZV9jb21tYW5kcyhwYXJhbXMtPmRldiwgcGFyYW1zLT5maWxlLCBy aW5nLCBwYXJhbXMtPmJhdGNoX29iaik7Cj4KPiAgIAlyZXR1cm4gMDsKPiAgIH0KPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmggYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9scmMuaAo+IGluZGV4IDQxNDhkZTAuLmJmMTM3YzQgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9scmMuaAo+IEBAIC03NiwxMyArNzYsMTAgQEAgdm9pZCBpbnRlbF9scl9jb250 ZXh0X3Jlc2V0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4KPiAgIC8qIEV4ZWNsaXN0cyAqLwo+ ICAgaW50IGludGVsX3Nhbml0aXplX2VuYWJsZV9leGVjbGlzdHMoc3RydWN0IGRybV9kZXZpY2Ug KmRldiwgaW50IGVuYWJsZV9leGVjbGlzdHMpOwo+IC1pbnQgaW50ZWxfZXhlY2xpc3RzX3N1Ym1p c3Npb24oc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9maWxlICpmaWxlLAo+IC0J CQkgICAgICAgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywKPiAtCQkJICAgICAgIHN0cnVj dCBpbnRlbF9jb250ZXh0ICpjdHgsCj4gK3N0cnVjdCBpOTE1X2V4ZWNidWZmZXJfcGFyYW1zOwo+ ICtpbnQgaW50ZWxfZXhlY2xpc3RzX3N1Ym1pc3Npb24oc3RydWN0IGk5MTVfZXhlY2J1ZmZlcl9w YXJhbXMgKnBhcmFtcywKPiAgIAkJCSAgICAgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNidWZm ZXIyICphcmdzLAo+IC0JCQkgICAgICAgc3RydWN0IGxpc3RfaGVhZCAqdm1hcywKPiAtCQkJICAg ICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpiYXRjaF9vYmosCj4gLQkJCSAgICAgICB1 NjQgZXhlY19zdGFydCwgdTMyIGRpc3BhdGNoX2ZsYWdzKTsKPiArCQkJICAgICAgIHN0cnVjdCBs aXN0X2hlYWQgKnZtYXMpOwo+ICAgdTMyIGludGVsX2V4ZWNsaXN0c19jdHhfaWQoc3RydWN0IGRy bV9pOTE1X2dlbV9vYmplY3QgKmN0eF9vYmopOwo+Cj4gICB2b2lkIGludGVsX2xyY19pcnFfaGFu ZGxlcihzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nKTsKPgoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRl bC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK