From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH 25/55] drm/i915: Update i915_gem_object_sync() to take a request structure Date: Thu, 18 Jun 2015 13:14:56 +0100 Message-ID: <1434629696-10327-1-git-send-email-John.C.Harrison@Intel.com> References: <55704B2C.8040905@Intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 84DE86ECC3 for ; Thu, 18 Jun 2015 05:15:02 -0700 (PDT) In-Reply-To: <55704B2C.8040905@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 RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KClRoZSBwbGFu IGlzIHRvIHBhc3MgcmVxdWVzdHMgYXJvdW5kIGFzIHRoZSBiYXNpYyBzdWJtaXNzaW9uIHRyYWNr aW5nIHN0cnVjdHVyZQpyYXRoZXIgdGhhbiByaW5ncyBhbmQgY29udGV4dHMuIFRoaXMgcGF0Y2gg dXBkYXRlcyB0aGUgaTkxNV9nZW1fb2JqZWN0X3N5bmMoKQpjb2RlIHBhdGguCgp2MjogTXVjaCBt b3JlIGNvbXBsZXggcGF0Y2ggdG8gc2hhcmUgYSBzaW5nbGUgcmVxdWVzdCBiZXR3ZWVuIHRoZSBz eW5jIGFuZCB0aGUKcGFnZSBmbGlwLiBUaGUgX3N5bmMoKSBmdW5jdGlvbiBub3cgc3VwcG9ydHMg bGF6eSBhbGxvY2F0aW9uIG9mIHRoZSByZXF1ZXN0CnN0cnVjdHVyZS4gVGhhdCBpcywgaWYgb25l IGlzIHBhc3NlZCBpbiB0aGVuIHRoYXQgd2lsbCBiZSB1c2VkLiBJZiBvbmUgaXMgbm90LAp0aGVu IGEgcmVxdWVzdCB3aWxsIGJlIGFsbG9jYXRlZCBhbmQgcGFzc2VkIGJhY2sgb3V0LiBOb3RlIHRo YXQgdGhlIF9zeW5jKCkgY29kZQpkb2VzIG5vdCBuZWNlc3NhcmlseSByZXF1aXJlIGEgcmVxdWVz dC4gVGh1cyBvbmUgd2lsbCBvbmx5IGJlIGNyZWF0ZWQgdW50aWwKY2VydGFpbiBzaXR1YXRpb25z LiBUaGUgcmVhc29uIHRoZSBsYXp5IGFsbG9jYXRpb24gbXVzdCBiZSBkb25lIHdpdGhpbiB0aGUK X3N5bmMoKSBjb2RlIGl0c2VsZiBpcyBiZWNhdXNlIHRoZSBkZWNpc2lvbiB0byBuZWVkIG9uZSBv ciBub3QgaXMgbm90IHJlYWxseQpzb21ldGhpbmcgdGhhdCBjb2RlIGFib3ZlIGNhbiBzZWNvbmQg Z3Vlc3MgKGV4Y2VwdCBpbiB0aGUgY2FzZSB3aGVyZSBvbmUgaXMKZGVmaW5pdGVseSBub3QgcmVx dWlyZWQgYmVjYXVzZSBubyByaW5nIGlzIHBhc3NlZCBpbikuCgpUaGUgY2FsbCBjaGFpbnMgYWJv dmUgX3N5bmMoKSBub3cgc3VwcG9ydCBwYXNzaW5nIGEgcmVxdWVzdCB0aHJvdWdoIHdoaWNoIG1v c3QKY2FsbGVycyBwYXNzaW5nIGluIE5VTEwgYW5kIGFzc3VtaW5nIHRoYXQgbm8gcmVxdWVzdCB3 aWxsIGJlIHJlcXVpcmVkIChiZWNhdXNlCnRoZXkgYWxzbyBwYXNzIGluIE5VTEwgZm9yIHRoZSBy aW5nIGFuZCB0aGVyZWZvcmUgY2FuJ3QgYmUgZ2VuZXJhdGluZyBhbnkgcmluZwpjb2RlKS4KClRo ZSBleGVjZXB0aW9uIGlzIGludGVsX2NydGNfcGFnZV9mbGlwKCkgd2hpY2ggbm93IHN1cHBvcnRz IGhhdmluZyBhIHJlcXVlc3QKcmV0dXJuZWQgZnJvbSBfc3luYygpLiBJZiBvbmUgaXMsIHRoZW4g dGhhdCByZXF1ZXN0IGlzIHNoYXJlZCBieSB0aGUgcGFnZSBmbGlwCihpZiB0aGUgcGFnZSBmbGlw IGlzIG9mIGEgdHlwZSB0byBuZWVkIGEgcmVxdWVzdCkuIElmIF9zeW5jKCkgZG9lcyBub3QgZ2Vu ZXJhdGUKYSByZXF1ZXN0IGJ1dCB0aGUgcGFnZSBmbGlwIGRvZXMgbmVlZCBvbmUsIHRoZW4gdGhl IHBhZ2UgZmxpcCBwYXRoIHdpbGwgY3JlYXRlCml0cyBvd24gcmVxdWVzdC4KCnYzOiBVcGRhdGVk IGNvbW1lbnQgZGVzY3JpcHRpb24gdG8gYmUgY2xlYXJlciBhYm91dCAndG9fcmVxJyBwYXJhbWV0 ZXIgKFRvbWFzCkVsZiByZXZpZXcgcmVxdWVzdCkuIFJlYmFzZWQgb250byBuZXdlciB0cmVlIHRo YXQgc2lnbmlmaWNhbnRseSBjaGFuZ2VkIHRoZQpzeW5jaHJvbmlzYXRpb24gY29kZS4KCnY0OiBV cGRhdGVkIGNvbW1lbnRzIGZyb20gcmV2aWV3IGZlZWRiYWNrIChUb21hcyBFbGYpCgpGb3I6IFZJ Wi01MTE1ClNpZ25lZC1vZmYtYnk6IEpvaG4gSGFycmlzb24gPEpvaG4uQy5IYXJyaXNvbkBJbnRl bC5jb20+ClJldmlld2VkLWJ5OiBUb21hcyBFbGYgPHRvbWFzLmVsZkBpbnRlbC5jb20+Ci0tLQog ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCAgICAgICAgICAgIHwgICAgNCArKy0KIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgICAgICAgICAgICB8ICAgNDggKysrKysrKysr KysrKysrKysrKysrLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1 ZmZlci5jIHwgICAgMiArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jICAg ICAgIHwgICAxNyArKysrKysrLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYuaCAg ICAgICAgICAgfCAgICAzICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9mYmRldi5jICAg ICAgICAgfCAgICAyICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYyAgICAgICAg ICAgfCAgICAyICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9vdmVybGF5LmMgICAgICAg fCAgICAyICstCiA4IGZpbGVzIGNoYW5nZWQsIDU3IGluc2VydGlvbnMoKyksIDIzIGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IDY0YTEwZmEuLmY2OWU5Y2IgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMjc3OCw3ICsyNzc4LDggQEAgc3RhdGljIGlubGluZSB2 b2lkIGk5MTVfZ2VtX29iamVjdF91bnBpbl9wYWdlcyhzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVj dCAqb2JqKQogCiBpbnQgX19tdXN0X2NoZWNrIGk5MTVfbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxl KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOwogaW50IGk5MTVfZ2VtX29iamVjdF9zeW5jKHN0cnVj dCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCi0JCQkgc3RydWN0IGludGVsX2VuZ2luZV9jcyAq dG8pOworCQkJIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnRvLAorCQkJIHN0cnVjdCBkcm1faTkx NV9nZW1fcmVxdWVzdCAqKnRvX3JlcSk7CiB2b2lkIGk5MTVfdm1hX21vdmVfdG9fYWN0aXZlKHN0 cnVjdCBpOTE1X3ZtYSAqdm1hLAogCQkJICAgICBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5n KTsKIGludCBpOTE1X2dlbV9kdW1iX2NyZWF0ZShzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGVfcHJpdiwK QEAgLTI4ODksNiArMjg5MCw3IEBAIGludCBfX211c3RfY2hlY2sKIGk5MTVfZ2VtX29iamVjdF9w aW5fdG9fZGlzcGxheV9wbGFuZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAogCQkJ CSAgICAgdTMyIGFsaWdubWVudCwKIAkJCQkgICAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnBp cGVsaW5lZCwKKwkJCQkgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqKnBpcGVsaW5l ZF9yZXF1ZXN0LAogCQkJCSAgICAgY29uc3Qgc3RydWN0IGk5MTVfZ2d0dF92aWV3ICp2aWV3KTsK IHZvaWQgaTkxNV9nZW1fb2JqZWN0X3VucGluX2Zyb21fZGlzcGxheV9wbGFuZShzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdCAqb2JqLAogCQkJCQkgICAgICBjb25zdCBzdHJ1Y3QgaTkxNV9nZ3R0 X3ZpZXcgKnZpZXcpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0u YyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKaW5kZXggZTU5MzY5YS4uZDdjNzEy NyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCkBAIC0zMDk1LDI1ICszMDk1LDI2IEBAIG91dDoK IHN0YXRpYyBpbnQKIF9faTkxNV9nZW1fb2JqZWN0X3N5bmMoc3RydWN0IGRybV9pOTE1X2dlbV9v YmplY3QgKm9iaiwKIAkJICAgICAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnRvLAotCQkgICAg ICAgc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEpCisJCSAgICAgICBzdHJ1Y3QgZHJt X2k5MTVfZ2VtX3JlcXVlc3QgKmZyb21fcmVxLAorCQkgICAgICAgc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICoqdG9fcmVxKQogewogCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmZyb207CiAJ aW50IHJldDsKIAotCWZyb20gPSBpOTE1X2dlbV9yZXF1ZXN0X2dldF9yaW5nKHJlcSk7CisJZnJv bSA9IGk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3JpbmcoZnJvbV9yZXEpOwogCWlmICh0byA9PSBmcm9t KQogCQlyZXR1cm4gMDsKIAotCWlmIChpOTE1X2dlbV9yZXF1ZXN0X2NvbXBsZXRlZChyZXEsIHRy dWUpKQorCWlmIChpOTE1X2dlbV9yZXF1ZXN0X2NvbXBsZXRlZChmcm9tX3JlcSwgdHJ1ZSkpCiAJ CXJldHVybiAwOwogCi0JcmV0ID0gaTkxNV9nZW1fY2hlY2tfb2xyKHJlcSk7CisJcmV0ID0gaTkx NV9nZW1fY2hlY2tfb2xyKGZyb21fcmVxKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCiAJ aWYgKCFpOTE1X3NlbWFwaG9yZV9pc19lbmFibGVkKG9iai0+YmFzZS5kZXYpKSB7CiAJCXN0cnVj dCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0gdG9faTkxNShvYmotPmJhc2UuZGV2KTsKLQkJcmV0 ID0gX19pOTE1X3dhaXRfcmVxdWVzdChyZXEsCisJCXJldCA9IF9faTkxNV93YWl0X3JlcXVlc3Qo ZnJvbV9yZXEsCiAJCQkJCSAgYXRvbWljX3JlYWQoJmk5MTUtPmdwdV9lcnJvci5yZXNldF9jb3Vu dGVyKSwKIAkJCQkJICBpOTE1LT5tbS5pbnRlcnJ1cHRpYmxlLAogCQkJCQkgIE5VTEwsCkBAIC0z MTIxLDE1ICszMTIyLDIzIEBAIF9faTkxNV9nZW1fb2JqZWN0X3N5bmMoc3RydWN0IGRybV9pOTE1 X2dlbV9vYmplY3QgKm9iaiwKIAkJaWYgKHJldCkKIAkJCXJldHVybiByZXQ7CiAKLQkJaTkxNV9n ZW1fb2JqZWN0X3JldGlyZV9yZXF1ZXN0KG9iaiwgcmVxKTsKKwkJaTkxNV9nZW1fb2JqZWN0X3Jl dGlyZV9yZXF1ZXN0KG9iaiwgZnJvbV9yZXEpOwogCX0gZWxzZSB7CiAJCWludCBpZHggPSBpbnRl bF9yaW5nX3N5bmNfaW5kZXgoZnJvbSwgdG8pOwotCQl1MzIgc2Vxbm8gPSBpOTE1X2dlbV9yZXF1 ZXN0X2dldF9zZXFubyhyZXEpOworCQl1MzIgc2Vxbm8gPSBpOTE1X2dlbV9yZXF1ZXN0X2dldF9z ZXFubyhmcm9tX3JlcSk7CisKKwkJV0FSTl9PTighdG9fcmVxKTsKIAogCQlpZiAoc2Vxbm8gPD0g ZnJvbS0+c2VtYXBob3JlLnN5bmNfc2Vxbm9baWR4XSkKIAkJCXJldHVybiAwOwogCi0JCXRyYWNl X2k5MTVfZ2VtX3Jpbmdfc3luY190byhmcm9tLCB0bywgcmVxKTsKKwkJaWYgKCp0b19yZXEgPT0g TlVMTCkgeworCQkJcmV0ID0gaTkxNV9nZW1fcmVxdWVzdF9hbGxvYyh0bywgdG8tPmRlZmF1bHRf Y29udGV4dCwgdG9fcmVxKTsKKwkJCWlmIChyZXQpCisJCQkJcmV0dXJuIHJldDsKKwkJfQorCisJ CXRyYWNlX2k5MTVfZ2VtX3Jpbmdfc3luY190byhmcm9tLCB0bywgZnJvbV9yZXEpOwogCQlyZXQg PSB0by0+c2VtYXBob3JlLnN5bmNfdG8odG8sIGZyb20sIHNlcW5vKTsKIAkJaWYgKHJldCkKIAkJ CXJldHVybiByZXQ7CkBAIC0zMTUwLDExICszMTU5LDE0IEBAIF9faTkxNV9nZW1fb2JqZWN0X3N5 bmMoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKICAqCiAgKiBAb2JqOiBvYmplY3Qg d2hpY2ggbWF5IGJlIGluIHVzZSBvbiBhbm90aGVyIHJpbmcuCiAgKiBAdG86IHJpbmcgd2Ugd2lz aCB0byB1c2UgdGhlIG9iamVjdCBvbi4gTWF5IGJlIE5VTEwuCisgKiBAdG9fcmVxOiByZXF1ZXN0 IHdlIHdpc2ggdG8gdXNlIHRoZSBvYmplY3QgZm9yLiBTZWUgYmVsb3cuCisgKiAgICAgICAgICBU aGlzIHdpbGwgYmUgYWxsb2NhdGVkIGFuZCByZXR1cm5lZCBpZiBhIHJlcXVlc3QgaXMKKyAqICAg ICAgICAgIHJlcXVpcmVkIGJ1dCBub3QgcGFzc2VkIGluLgogICoKICAqIFRoaXMgY29kZSBpcyBt ZWFudCB0byBhYnN0cmFjdCBvYmplY3Qgc3luY2hyb25pemF0aW9uIHdpdGggdGhlIEdQVS4KICAq IENhbGxpbmcgd2l0aCBOVUxMIGltcGxpZXMgc3luY2hyb25pemluZyB0aGUgb2JqZWN0IHdpdGgg dGhlIENQVQogICogcmF0aGVyIHRoYW4gYSBwYXJ0aWN1bGFyIEdQVSByaW5nLiBDb25jZXB0dWFs bHkgd2Ugc2VyaWFsaXNlIHdyaXRlcwotICogYmV0d2VlbiBlbmdpbmVzIGluc2lkZSB0aGUgR1BV LiBXZSBvbmx5IGFsbG93IG9uIGVuZ2luZSB0byB3cml0ZQorICogYmV0d2VlbiBlbmdpbmVzIGlu c2lkZSB0aGUgR1BVLiBXZSBvbmx5IGFsbG93IG9uZSBlbmdpbmUgdG8gd3JpdGUKICAqIGludG8g YSBidWZmZXIgYXQgYW55IHRpbWUsIGJ1dCBtdWx0aXBsZSByZWFkZXJzLiBUbyBlbnN1cmUgZWFj aCBoYXMKICAqIGEgY29oZXJlbnQgdmlldyBvZiBtZW1vcnksIHdlIG11c3Q6CiAgKgpAQCAtMzE2 NSwxMSArMzE3NywyMiBAQCBfX2k5MTVfZ2VtX29iamVjdF9zeW5jKHN0cnVjdCBkcm1faTkxNV9n ZW1fb2JqZWN0ICpvYmosCiAgKiAtIElmIHdlIGFyZSBhIHdyaXRlIHJlcXVlc3QgKHBlbmRpbmdf d3JpdGVfZG9tYWluIGlzIHNldCksIHRoZSBuZXcKICAqICAgcmVxdWVzdCBtdXN0IHdhaXQgZm9y IG91dHN0YW5kaW5nIHJlYWQgcmVxdWVzdHMgdG8gY29tcGxldGUuCiAgKgorICogRm9yIENQVSBz eW5jaHJvbmlzYXRpb24gKE5VTEwgdG8pIG5vIHJlcXVlc3QgaXMgcmVxdWlyZWQuIEZvciBzeW5j aW5nIHdpdGgKKyAqIHJpbmdzIHRvX3JlcSBtdXN0IGJlIG5vbi1OVUxMLiBIb3dldmVyLCBhIHJl cXVlc3QgZG9lcyBub3QgaGF2ZSB0byBiZQorICogcHJlLWFsbG9jYXRlZC4gSWYgKnRvX3JlcSBp cyBOVUxMIGFuZCBzeW5jIGNvbW1hbmRzIHdpbGwgYmUgZW1pdHRlZCB0aGVuIGEKKyAqIHJlcXVl c3Qgd2lsbCBiZSBhbGxvY2F0ZWQgYXV0b21hdGljYWxseSBhbmQgcmV0dXJuZWQgdGhyb3VnaCAq dG9fcmVxLiBOb3RlCisgKiB0aGF0IGl0IGlzIG5vdCBndWFyYW50ZWVkIHRoYXQgY29tbWFuZHMg d2lsbCBiZSBlbWl0dGVkIChiZWNhdXNlIHRoZSBzeXN0ZW0KKyAqIG1pZ2h0IGFscmVhZHkgYmUg aWRsZSkuIEhlbmNlIHRoZXJlIGlzIG5vIG5lZWQgdG8gY3JlYXRlIGEgcmVxdWVzdCB0aGF0Cisg KiBtaWdodCBuZXZlciBoYXZlIGFueSB3b3JrIHN1Ym1pdHRlZC4gTm90ZSBmdXJ0aGVyIHRoYXQg aWYgYSByZXF1ZXN0IGlzCisgKiByZXR1cm5lZCBpbiAqdG9fcmVxLCBpdCBpcyB0aGUgcmVzcG9u c2liaWxpdHkgb2YgdGhlIGNhbGxlciB0byBzdWJtaXQKKyAqIHRoYXQgcmVxdWVzdCAoYWZ0ZXIg cG90ZW50aWFsbHkgYWRkaW5nIG1vcmUgd29yayB0byBpdCkuCisgKgogICogUmV0dXJucyAwIGlm IHN1Y2Nlc3NmdWwsIGVsc2UgcHJvcGFnYXRlcyB1cCB0aGUgbG93ZXIgbGF5ZXIgZXJyb3IuCiAg Ki8KIGludAogaTkxNV9nZW1fb2JqZWN0X3N5bmMoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3Qg Km9iaiwKLQkJICAgICBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICp0bykKKwkJICAgICBzdHJ1Y3Qg aW50ZWxfZW5naW5lX2NzICp0bywKKwkJICAgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3Qg Kip0b19yZXEpCiB7CiAJY29uc3QgYm9vbCByZWFkb25seSA9IG9iai0+YmFzZS5wZW5kaW5nX3dy aXRlX2RvbWFpbiA9PSAwOwogCXN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxW0k5MTVf TlVNX1JJTkdTXTsKQEAgLTMxOTEsNyArMzIxNCw3IEBAIGk5MTVfZ2VtX29iamVjdF9zeW5jKHN0 cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJCQkJcmVxW24rK10gPSBvYmotPmxhc3Rf cmVhZF9yZXFbaV07CiAJfQogCWZvciAoaSA9IDA7IGkgPCBuOyBpKyspIHsKLQkJcmV0ID0gX19p OTE1X2dlbV9vYmplY3Rfc3luYyhvYmosIHRvLCByZXFbaV0pOworCQlyZXQgPSBfX2k5MTVfZ2Vt X29iamVjdF9zeW5jKG9iaiwgdG8sIHJlcVtpXSwgdG9fcmVxKTsKIAkJaWYgKHJldCkKIAkJCXJl dHVybiByZXQ7CiAJfQpAQCAtNDE0MSwxMiArNDE2NCwxMyBAQCBpbnQKIGk5MTVfZ2VtX29iamVj dF9waW5fdG9fZGlzcGxheV9wbGFuZShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAog CQkJCSAgICAgdTMyIGFsaWdubWVudCwKIAkJCQkgICAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3Mg KnBpcGVsaW5lZCwKKwkJCQkgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqKnBpcGVs aW5lZF9yZXF1ZXN0LAogCQkJCSAgICAgY29uc3Qgc3RydWN0IGk5MTVfZ2d0dF92aWV3ICp2aWV3 KQogewogCXUzMiBvbGRfcmVhZF9kb21haW5zLCBvbGRfd3JpdGVfZG9tYWluOwogCWludCByZXQ7 CiAKLQlyZXQgPSBpOTE1X2dlbV9vYmplY3Rfc3luYyhvYmosIHBpcGVsaW5lZCk7CisJcmV0ID0g aTkxNV9nZW1fb2JqZWN0X3N5bmMob2JqLCBwaXBlbGluZWQsIHBpcGVsaW5lZF9yZXF1ZXN0KTsK IAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9leGVjYnVmZmVyLmMKaW5kZXggNTBiMWNlZC4uYmVhOTJhZCAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwpAQCAtODk5LDcgKzg5OSw3IEBAIGk5MTVfZ2Vt X2V4ZWNidWZmZXJfbW92ZV90b19ncHUoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEs CiAJCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmogPSB2bWEtPm9iajsKIAogCQlpZiAo b2JqLT5hY3RpdmUgJiBvdGhlcl9yaW5ncykgewotCQkJcmV0ID0gaTkxNV9nZW1fb2JqZWN0X3N5 bmMob2JqLCByZXEtPnJpbmcpOworCQkJcmV0ID0gaTkxNV9nZW1fb2JqZWN0X3N5bmMob2JqLCBy ZXEtPnJpbmcsICZyZXEpOwogCQkJaWYgKHJldCkKIAkJCQlyZXR1cm4gcmV0OwogCQl9CmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKaW5kZXggNjU3YTMzMy4uNjUyOGFkYSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwpAQCAtMjMzOCw3ICsyMzM4LDggQEAgaW50CiBp bnRlbF9waW5fYW5kX2ZlbmNlX2ZiX29iaihzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKIAkJCSAg IHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiLAogCQkJICAgY29uc3Qgc3RydWN0IGRybV9wbGFu ZV9zdGF0ZSAqcGxhbmVfc3RhdGUsCi0JCQkgICBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpwaXBl bGluZWQpCisJCQkgICBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpwaXBlbGluZWQsCisJCQkgICBz dHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKipwaXBlbGluZWRfcmVxdWVzdCkKIHsKIAlzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2ID0gZmItPmRldjsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwpAQCAtMjQwMyw3ICsyNDA0LDcgQEAgaW50ZWxf cGluX2FuZF9mZW5jZV9mYl9vYmooc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiAKIAlkZXZfcHJp di0+bW0uaW50ZXJydXB0aWJsZSA9IGZhbHNlOwogCXJldCA9IGk5MTVfZ2VtX29iamVjdF9waW5f dG9fZGlzcGxheV9wbGFuZShvYmosIGFsaWdubWVudCwgcGlwZWxpbmVkLAotCQkJCQkJICAgJnZp ZXcpOworCQkJCQkJICAgcGlwZWxpbmVkX3JlcXVlc3QsICZ2aWV3KTsKIAlpZiAocmV0KQogCQln b3RvIGVycl9pbnRlcnJ1cHRpYmxlOwogCkBAIC0xMTExOSw2ICsxMTEyMCw3IEBAIHN0YXRpYyBp bnQgaW50ZWxfY3J0Y19wYWdlX2ZsaXAoc3RydWN0IGRybV9jcnRjICpjcnRjLAogCXN0cnVjdCBp bnRlbF91bnBpbl93b3JrICp3b3JrOwogCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmc7CiAJ Ym9vbCBtbWlvX2ZsaXA7CisJc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXF1ZXN0ID0g TlVMTDsKIAlpbnQgcmV0OwogCiAJLyoKQEAgLTExMjI1LDcgKzExMjI3LDcgQEAgc3RhdGljIGlu dCBpbnRlbF9jcnRjX3BhZ2VfZmxpcChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJICovCiAJcmV0 ID0gaW50ZWxfcGluX2FuZF9mZW5jZV9mYl9vYmooY3J0Yy0+cHJpbWFyeSwgZmIsCiAJCQkJCSBj cnRjLT5wcmltYXJ5LT5zdGF0ZSwKLQkJCQkJIG1taW9fZmxpcCA/IGk5MTVfZ2VtX3JlcXVlc3Rf Z2V0X3Jpbmcob2JqLT5sYXN0X3dyaXRlX3JlcSkgOiByaW5nKTsKKwkJCQkJIG1taW9fZmxpcCA/ IGk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3Jpbmcob2JqLT5sYXN0X3dyaXRlX3JlcSkgOiByaW5nLCAm cmVxdWVzdCk7CiAJaWYgKHJldCkKIAkJZ290byBjbGVhbnVwX3BlbmRpbmc7CiAKQEAgLTExMjU2 LDYgKzExMjU4LDkgQEAgc3RhdGljIGludCBpbnRlbF9jcnRjX3BhZ2VfZmxpcChzdHJ1Y3QgZHJt X2NydGMgKmNydGMsCiAJCQkJCWludGVsX3JpbmdfZ2V0X3JlcXVlc3QocmluZykpOwogCX0KIAor CWlmIChyZXF1ZXN0KQorCQlpOTE1X2FkZF9yZXF1ZXN0X25vX2ZsdXNoKHJlcXVlc3QtPnJpbmcp OworCiAJd29yay0+ZmxpcF9xdWV1ZWRfdmJsYW5rID0gZHJtX2NydGNfdmJsYW5rX2NvdW50KGNy dGMpOwogCXdvcmstPmVuYWJsZV9zdGFsbF9jaGVjayA9IHRydWU7CiAKQEAgLTExMjczLDYgKzEx Mjc4LDggQEAgc3RhdGljIGludCBpbnRlbF9jcnRjX3BhZ2VfZmxpcChzdHJ1Y3QgZHJtX2NydGMg KmNydGMsCiBjbGVhbnVwX3VucGluOgogCWludGVsX3VucGluX2ZiX29iaihmYiwgY3J0Yy0+cHJp bWFyeS0+c3RhdGUpOwogY2xlYW51cF9wZW5kaW5nOgorCWlmIChyZXF1ZXN0KQorCQlpOTE1X2dl bV9yZXF1ZXN0X2NhbmNlbChyZXF1ZXN0KTsKIAlhdG9taWNfZGVjKCZpbnRlbF9jcnRjLT51bnBp bl93b3JrX2NvdW50KTsKIAltdXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKIGNsZWFu dXA6CkBAIC0xMzE3MSw3ICsxMzE3OCw3IEBAIGludGVsX3ByZXBhcmVfcGxhbmVfZmIoc3RydWN0 IGRybV9wbGFuZSAqcGxhbmUsCiAJCWlmIChyZXQpCiAJCQlEUk1fREVCVUdfS01TKCJmYWlsZWQg dG8gYXR0YWNoIHBoeXMgb2JqZWN0XG4iKTsKIAl9IGVsc2UgewotCQlyZXQgPSBpbnRlbF9waW5f YW5kX2ZlbmNlX2ZiX29iaihwbGFuZSwgZmIsIG5ld19zdGF0ZSwgTlVMTCk7CisJCXJldCA9IGlu dGVsX3Bpbl9hbmRfZmVuY2VfZmJfb2JqKHBsYW5lLCBmYiwgbmV3X3N0YXRlLCBOVUxMLCBOVUxM KTsKIAl9CiAKIAlpZiAocmV0ID09IDApCkBAIC0xNTIxOCw3ICsxNTIyNSw3IEBAIHZvaWQgaW50 ZWxfbW9kZXNldF9nZW1faW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCQlyZXQgPSBpbnRl bF9waW5fYW5kX2ZlbmNlX2ZiX29iaihjLT5wcmltYXJ5LAogCQkJCQkJIGMtPnByaW1hcnktPmZi LAogCQkJCQkJIGMtPnByaW1hcnktPnN0YXRlLAotCQkJCQkJIE5VTEwpOworCQkJCQkJIE5VTEws IE5VTEwpOwogCQltdXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKIAkJaWYgKHJldCkg ewogCQkJRFJNX0VSUk9SKCJmYWlsZWQgdG8gcGluIGJvb3QgZmIgb24gcGlwZSAlZFxuIiwKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZHJ2LmgKaW5kZXggMDJkODMxNy4uNzM2NTBhZSAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZHJ2LmgKQEAgLTEwMzQsNyArMTAzNCw4IEBAIHZvaWQgaW50ZWxfcmVsZWFzZV9s b2FkX2RldGVjdF9waXBlKHN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IsCiBpbnQgaW50 ZWxfcGluX2FuZF9mZW5jZV9mYl9vYmooc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiAJCQkgICAg ICAgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCiAJCQkgICAgICAgY29uc3Qgc3RydWN0IGRy bV9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGUsCi0JCQkgICAgICAgc3RydWN0IGludGVsX2VuZ2lu ZV9jcyAqcGlwZWxpbmVkKTsKKwkJCSAgICAgICBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpwaXBl bGluZWQsCisJCQkgICAgICAgc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICoqcGlwZWxpbmVk X3JlcXVlc3QpOwogc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqCiBfX2ludGVsX2ZyYW1lYnVmZmVy X2NyZWF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQkJICAgc3RydWN0IGRybV9tb2RlX2Zi X2NtZDIgKm1vZGVfY21kLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZmJkZXYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2ZiZGV2LmMKaW5kZXggNGU3ZTdk YS4uZGQ5ZjNiMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZmJkZXYu YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9mYmRldi5jCkBAIC0xNTEsNyArMTUx LDcgQEAgc3RhdGljIGludCBpbnRlbGZiX2FsbG9jKHN0cnVjdCBkcm1fZmJfaGVscGVyICpoZWxw ZXIsCiAJfQogCiAJLyogRmx1c2ggZXZlcnl0aGluZyBvdXQsIHdlJ2xsIGJlIGRvaW5nIEdUVCBv bmx5IGZyb20gbm93IG9uICovCi0JcmV0ID0gaW50ZWxfcGluX2FuZF9mZW5jZV9mYl9vYmooTlVM TCwgZmIsIE5VTEwsIE5VTEwpOworCXJldCA9IGludGVsX3Bpbl9hbmRfZmVuY2VfZmJfb2JqKE5V TEwsIGZiLCBOVUxMLCBOVUxMLCBOVUxMKTsKIAlpZiAocmV0KSB7CiAJCURSTV9FUlJPUigiZmFp bGVkIHRvIHBpbiBvYmo6ICVkXG4iLCByZXQpOwogCQlnb3RvIG91dF9mYjsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfbHJjLmMKaW5kZXggMWQ5ZDI0OC4uYzI5ZDZjNSAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf bHJjLmMKQEAgLTYzOCw3ICs2MzgsNyBAQCBzdGF0aWMgaW50IGV4ZWNsaXN0c19tb3ZlX3RvX2dw dShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSwKIAkJc3RydWN0IGRybV9pOTE1X2dl bV9vYmplY3QgKm9iaiA9IHZtYS0+b2JqOwogCiAJCWlmIChvYmotPmFjdGl2ZSAmIG90aGVyX3Jp bmdzKSB7Ci0JCQlyZXQgPSBpOTE1X2dlbV9vYmplY3Rfc3luYyhvYmosIHJlcS0+cmluZyk7CisJ CQlyZXQgPSBpOTE1X2dlbV9vYmplY3Rfc3luYyhvYmosIHJlcS0+cmluZywgJnJlcSk7CiAJCQlp ZiAocmV0KQogCQkJCXJldHVybiByZXQ7CiAJCX0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX292ZXJsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX292ZXJs YXkuYwppbmRleCBlNzUzNGI5Li4wZjgxODdhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9vdmVybGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfb3Zl cmxheS5jCkBAIC03MjQsNyArNzI0LDcgQEAgc3RhdGljIGludCBpbnRlbF9vdmVybGF5X2RvX3B1 dF9pbWFnZShzdHJ1Y3QgaW50ZWxfb3ZlcmxheSAqb3ZlcmxheSwKIAlpZiAocmV0ICE9IDApCiAJ CXJldHVybiByZXQ7CiAKLQlyZXQgPSBpOTE1X2dlbV9vYmplY3RfcGluX3RvX2Rpc3BsYXlfcGxh bmUobmV3X2JvLCAwLCBOVUxMLAorCXJldCA9IGk5MTVfZ2VtX29iamVjdF9waW5fdG9fZGlzcGxh eV9wbGFuZShuZXdfYm8sIDAsIE5VTEwsIE5VTEwsCiAJCQkJCQkgICAmaTkxNV9nZ3R0X3ZpZXdf bm9ybWFsKTsKIAlpZiAocmV0ICE9IDApCiAJCXJldHVybiByZXQ7Ci0tIAoxLjcuOS41CgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=