From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH 07/13] drm/i915: Add per context timelines to fence object Date: Fri, 11 Dec 2015 13:11:55 +0000 Message-ID: <1449839521-21958-8-git-send-email-John.C.Harrison@Intel.com> References: <1449839521-21958-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 mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 33B716EFA3 for ; Fri, 11 Dec 2015 05:12:27 -0800 (PST) In-Reply-To: <1449839521-21958-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 RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KClRoZSBmZW5j ZSBvYmplY3QgdXNlZCBpbnNpZGUgdGhlIHJlcXVlc3Qgc3RydWN0dXJlIHJlcXVpcmVzIGEgc2Vx dWVuY2UKbnVtYmVyLiBBbHRob3VnaCB0aGlzIGlzIG5vdCB1c2VkIGJ5IHRoZSBpOTE1IGRyaXZl ciBpdHNlbGYsIGl0IGNvdWxkCnBvdGVudGlhbGx5IGJlIHVzZWQgYnkgbm9uLWk5MTUgY29kZSBp ZiB0aGUgZmVuY2UgaXMgcGFzc2VkIG91dHNpZGUgb2YKdGhlIGRyaXZlci4gVGhpcyBpcyB0aGUg aW50ZW50aW9uIGFzIGl0IGFsbG93cyBleHRlcm5hbCBrZXJuZWwgZHJpdmVycwphbmQgdXNlciBh cHBsaWNhdGlvbnMgdG8gd2FpdCBvbiBiYXRjaCBidWZmZXIgY29tcGxldGlvbgphc3luY2hyb25v dXNseSB2aWEgdGhlIGRtYS1idWZmIGZlbmNlIEFQSS4KClRvIGVuc3VyZSB0aGF0IHN1Y2ggZXh0 ZXJuYWwgdXNlcnMgYXJlIG5vdCBjb25mdXNlZCBieSBzdHJhbmdlIHRoaW5ncwpoYXBwZW5pbmcg d2l0aCB0aGUgc2Vxbm8sIHRoaXMgcGF0Y2ggYWRkcyBpbiBhIHBlciBjb250ZXh0IHRpbWVsaW5l CnRoYXQgY2FuIHByb3ZpZGUgYSBndWFyYW50ZWVkIGluLW9yZGVyIHNlcW5vIHZhbHVlIGZvciB0 aGUgZmVuY2UuIFRoaXMKaXMgc2FmZSBiZWNhdXNlIHRoZSBzY2hlZHVsZXIgd2lsbCBub3QgcmUt b3JkZXIgYmF0Y2ggYnVmZmVycyB3aXRoaW4gYQpjb250ZXh0IC0gdGhleSBhcmUgY29uc2lkZXJl ZCB0byBiZSBtdXR1YWxseSBkZXBlbmRlbnQuCgp2MjogTmV3IHBhdGNoIGluIHNlcmllcy4KCnYz OiBSZW5hbWVkL3JldHlwZWQgdGltZWxpbmUgc3RydWN0dXJlIGZpZWxkcyBhZnRlciByZXZpZXcg Y29tbWVudHMgYnkKVHZydGtvIFVyc3VsaW4uCgpBZGRlZCBjb250ZXh0IGluZm9ybWF0aW9uIHRv IHRoZSB0aW1lbGluZSdzIG5hbWUgc3RyaW5nIGZvciBiZXR0ZXIKaWRlbnRpZmljYXRpb24gaW4g ZGVidWdmcyBvdXRwdXQuCgpGb3I6IFZJWi01MTkwClNpZ25lZC1vZmYtYnk6IEpvaG4gSGFycmlz b24gPEpvaG4uQy5IYXJyaXNvbkBJbnRlbC5jb20+CkNjOiBUdnJ0a28gVXJzdWxpbiA8dHZydGtv LnVyc3VsaW5AaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2Lmgg ICAgICAgICB8IDI1ICsrKysrKysrLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5j ICAgICAgICAgfCA4MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0KIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYyB8IDE1ICsrKysrKy0KIGRyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2xyYy5jICAgICAgICB8ICA4ICsrKysKIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2ludGVsX3JpbmdidWZmZXIuaCB8ICAxIC0KIDUgZmlsZXMgY2hhbmdlZCwgMTExIGluc2Vy dGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCmluZGV4IGNh Zjc4OTcuLjdkNmE3YzAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2 LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtODQxLDYgKzg0MSwx NSBAQCBzdHJ1Y3QgaTkxNV9jdHhfaGFuZ19zdGF0cyB7CiAJYm9vbCBiYW5uZWQ7CiB9OwogCitz dHJ1Y3QgaTkxNV9mZW5jZV90aW1lbGluZSB7CisJY2hhciAgICAgICAgbmFtZVszMl07CisJdW5z aWduZWQgICAgZmVuY2VfY29udGV4dDsKKwl1bnNpZ25lZCAgICBuZXh0OworCisJc3RydWN0IGlu dGVsX2NvbnRleHQgKmN0eDsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nOworfTsKKwog LyogVGhpcyBtdXN0IG1hdGNoIHVwIHdpdGggdGhlIHZhbHVlIHByZXZpb3VzbHkgdXNlZCBmb3Ig ZXhlY2J1ZjIucnN2ZDEuICovCiAjZGVmaW5lIERFRkFVTFRfQ09OVEVYVF9IQU5ETEUgMAogCkBA IC04ODUsNiArODk0LDcgQEAgc3RydWN0IGludGVsX2NvbnRleHQgewogCQlzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX29iamVjdCAqc3RhdGU7CiAJCXN0cnVjdCBpbnRlbF9yaW5nYnVmZmVyICpyaW5nYnVm OwogCQlpbnQgcGluX2NvdW50OworCQlzdHJ1Y3QgaTkxNV9mZW5jZV90aW1lbGluZSBmZW5jZV90 aW1lbGluZTsKIAl9IGVuZ2luZVtJOTE1X05VTV9SSU5HU107CiAKIAlzdHJ1Y3QgbGlzdF9oZWFk IGxpbms7CkBAIC0yMTc3LDEzICsyMTg3LDEwIEBAIHZvaWQgaTkxNV9nZW1fdHJhY2tfZmIoc3Ry dWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9sZCwKIHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVz dCB7CiAJLyoqCiAJICogVW5kZXJseWluZyBvYmplY3QgZm9yIGltcGxlbWVudGluZyB0aGUgc2ln bmFsL3dhaXQgc3R1ZmYuCi0JICogTkI6IE5ldmVyIGNhbGwgZmVuY2VfbGF0ZXIoKSBvciByZXR1 cm4gdGhpcyBmZW5jZSBvYmplY3QgdG8gdXNlcgotCSAqIGxhbmQhIER1ZSB0byBsYXp5IGFsbG9j YXRpb24sIHNjaGVkdWxlciByZS1vcmRlcmluZywgcHJlLWVtcHRpb24sCi0JICogZXRjLiwgdGhl cmUgaXMgbm8gZ3VhcmFudGVlIGF0IGFsbCBhYm91dCB0aGUgdmFsaWRpdHkgb3IKLQkgKiBzZXF1 ZW50aWFsaXR5IG9mIHRoZSBmZW5jZSdzIHNlcW5vISBJdCBpcyBhbHNvIHVuc2FmZSB0byBsZXQK LQkgKiBhbnl0aGluZyBvdXRzaWRlIG9mIHRoZSBpOTE1IGRyaXZlciBnZXQgaG9sZCBvZiB0aGUg ZmVuY2Ugb2JqZWN0Ci0JICogYXMgdGhlIGNsZWFuIHVwIHdoZW4gZGVjcmVtZW50aW5nIHRoZSBy ZWZlcmVuY2UgY291bnQgcmVxdWlyZXMKLQkgKiBob2xkaW5nIHRoZSBkcml2ZXIgbXV0ZXggbG9j ay4KKwkgKiBOQjogTmV2ZXIgcmV0dXJuIHRoaXMgZmVuY2Ugb2JqZWN0IHRvIHVzZXIgbGFuZCEg SXQgaXMgdW5zYWZlIHRvCisJICogbGV0IGFueXRoaW5nIG91dHNpZGUgb2YgdGhlIGk5MTUgZHJp dmVyIGdldCBob2xkIG9mIHRoZSBmZW5jZQorCSAqIG9iamVjdCBhcyB0aGUgY2xlYW4gdXAgd2hl biBkZWNyZW1lbnRpbmcgdGhlIHJlZmVyZW5jZSBjb3VudAorCSAqIHJlcXVpcmVzIGhvbGRpbmcg dGhlIGRyaXZlciBtdXRleCBsb2NrLgogCSAqLwogCXN0cnVjdCBmZW5jZSBmZW5jZTsKIApAQCAt MjI2Myw2ICsyMjcwLDEwIEBAIGludCBpOTE1X2dlbV9yZXF1ZXN0X2FsbG9jKHN0cnVjdCBpbnRl bF9lbmdpbmVfY3MgKnJpbmcsCiAJCQkgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKipy ZXFfb3V0KTsKIHZvaWQgaTkxNV9nZW1fcmVxdWVzdF9jYW5jZWwoc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpyZXEpOwogCitpbnQgaTkxNV9jcmVhdGVfZmVuY2VfdGltZWxpbmUoc3RydWN0 IGRybV9kZXZpY2UgKmRldiwKKwkJCSAgICAgICBzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY3R4LAor CQkJICAgICAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcpOworCiBzdGF0aWMgaW5saW5l IGJvb2wgaTkxNV9nZW1fcmVxdWVzdF9jb21wbGV0ZWQoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1 ZXN0ICpyZXEpCiB7CiAJcmV0dXJuIGZlbmNlX2lzX3NpZ25hbGVkKCZyZXEtPmZlbmNlKTsKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbS5jCmluZGV4IDA4MDE3MzguLjdhMzdmYjcgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW0uYwpAQCAtMjY2NSw5ICsyNjY1LDMyIEBAIHN0YXRpYyBjb25zdCBjaGFyICppOTE1 X2dlbV9yZXF1ZXN0X2dldF9kcml2ZXJfbmFtZShzdHJ1Y3QgZmVuY2UgKnJlcV9mZW5jZSkKIAog c3RhdGljIGNvbnN0IGNoYXIgKmk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3RpbWVsaW5lX25hbWUoc3Ry dWN0IGZlbmNlICpyZXFfZmVuY2UpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpy ZXEgPSBjb250YWluZXJfb2YocmVxX2ZlbmNlLAotCQkJCQkJIHR5cGVvZigqcmVxKSwgZmVuY2Up OwotCXJldHVybiByZXEtPnJpbmctPm5hbWU7CisJc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0 ICpyZXE7CisJc3RydWN0IGk5MTVfZmVuY2VfdGltZWxpbmUgKnRpbWVsaW5lOworCisJcmVxID0g Y29udGFpbmVyX29mKHJlcV9mZW5jZSwgdHlwZW9mKCpyZXEpLCBmZW5jZSk7CisJdGltZWxpbmUg PSAmcmVxLT5jdHgtPmVuZ2luZVtyZXEtPnJpbmctPmlkXS5mZW5jZV90aW1lbGluZTsKKworCXJl dHVybiB0aW1lbGluZS0+bmFtZTsKK30KKworc3RhdGljIHZvaWQgaTkxNV9nZW1fcmVxdWVzdF90 aW1lbGluZV92YWx1ZV9zdHIoc3RydWN0IGZlbmNlICpyZXFfZmVuY2UsIGNoYXIgKnN0ciwgaW50 IHNpemUpCit7CisJc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXE7CisKKwlyZXEgPSBj b250YWluZXJfb2YocmVxX2ZlbmNlLCB0eXBlb2YoKnJlcSksIGZlbmNlKTsKKworCS8qIExhc3Qg c2lnbmFsbGVkIHRpbWVsaW5lIHZhbHVlID8/PyAqLworCXNucHJpbnRmKHN0ciwgc2l6ZSwgIj8g WyVkXSIvKiwgdGltZWxpbmUtPnZhbHVlKi8sIHJlcS0+cmluZy0+Z2V0X3NlcW5vKHJlcS0+cmlu ZywgdHJ1ZSkpOworfQorCitzdGF0aWMgdm9pZCBpOTE1X2dlbV9yZXF1ZXN0X2ZlbmNlX3ZhbHVl X3N0cihzdHJ1Y3QgZmVuY2UgKnJlcV9mZW5jZSwgY2hhciAqc3RyLCBpbnQgc2l6ZSkKK3sKKwlz dHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcTsKKworCXJlcSA9IGNvbnRhaW5lcl9vZihy ZXFfZmVuY2UsIHR5cGVvZigqcmVxKSwgZmVuY2UpOworCisJc25wcmludGYoc3RyLCBzaXplLCAi JWQgWyVkXSIsIHJlcS0+ZmVuY2Uuc2Vxbm8sIHJlcS0+c2Vxbm8pOwogfQogCiBzdGF0aWMgY29u c3Qgc3RydWN0IGZlbmNlX29wcyBpOTE1X2dlbV9yZXF1ZXN0X2ZvcHMgPSB7CkBAIC0yNjc3LDgg KzI3MDAsNDkgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBmZW5jZV9vcHMgaTkxNV9nZW1fcmVxdWVz dF9mb3BzID0gewogCS5yZWxlYXNlCQk9IGk5MTVfZ2VtX3JlcXVlc3RfZnJlZSwKIAkuZ2V0X2Ry aXZlcl9uYW1lCT0gaTkxNV9nZW1fcmVxdWVzdF9nZXRfZHJpdmVyX25hbWUsCiAJLmdldF90aW1l bGluZV9uYW1lCT0gaTkxNV9nZW1fcmVxdWVzdF9nZXRfdGltZWxpbmVfbmFtZSwKKwkuZmVuY2Vf dmFsdWVfc3RyCT0gaTkxNV9nZW1fcmVxdWVzdF9mZW5jZV92YWx1ZV9zdHIsCisJLnRpbWVsaW5l X3ZhbHVlX3N0cgk9IGk5MTVfZ2VtX3JlcXVlc3RfdGltZWxpbmVfdmFsdWVfc3RyLAogfTsKIAor aW50IGk5MTVfY3JlYXRlX2ZlbmNlX3RpbWVsaW5lKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCisJ CQkgICAgICAgc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCwKKwkJCSAgICAgICBzdHJ1Y3QgaW50 ZWxfZW5naW5lX2NzICpyaW5nKQoreworCXN0cnVjdCBpOTE1X2ZlbmNlX3RpbWVsaW5lICp0aW1l bGluZTsKKworCXRpbWVsaW5lID0gJmN0eC0+ZW5naW5lW3JpbmctPmlkXS5mZW5jZV90aW1lbGlu ZTsKKworCWlmICh0aW1lbGluZS0+cmluZykKKwkJcmV0dXJuIDA7CisKKwl0aW1lbGluZS0+ZmVu Y2VfY29udGV4dCA9IGZlbmNlX2NvbnRleHRfYWxsb2MoMSk7CisKKwkvKgorCSAqIFN0YXJ0IHRo ZSB0aW1lbGluZSBmcm9tIHNlcW5vIDAgYXMgdGhpcyBpcyBhIHNwZWNpYWwgdmFsdWUKKwkgKiB0 aGF0IGlzIHJlc2VydmVkIGZvciBpbnZhbGlkIHN5bmMgcG9pbnRzLgorCSAqLworCXRpbWVsaW5l LT5uZXh0ICAgICAgID0gMTsKKwl0aW1lbGluZS0+Y3R4ICAgICAgICA9IGN0eDsKKwl0aW1lbGlu ZS0+cmluZyAgICAgICA9IHJpbmc7CisKKwlzbnByaW50Zih0aW1lbGluZS0+bmFtZSwgc2l6ZW9m KHRpbWVsaW5lLT5uYW1lKSwgIiVkPiVzOiVkIiwgdGltZWxpbmUtPmZlbmNlX2NvbnRleHQsIHJp bmctPm5hbWUsIGN0eC0+dXNlcl9oYW5kbGUpOworCisJcmV0dXJuIDA7Cit9CisKK3N0YXRpYyB1 bnNpZ25lZCBpOTE1X2ZlbmNlX3RpbWVsaW5lX2dldF9uZXh0X3NlcW5vKHN0cnVjdCBpOTE1X2Zl bmNlX3RpbWVsaW5lICp0aW1lbGluZSkKK3sKKwl1bnNpZ25lZCBzZXFubzsKKworCXNlcW5vID0g dGltZWxpbmUtPm5leHQ7CisKKwkvKiBSZXNlcnZlIHplcm8gZm9yIGludmFsaWQgKi8KKwlpZiAo Kyt0aW1lbGluZS0+bmV4dCA9PSAwICkKKwkJdGltZWxpbmUtPm5leHQgPSAxOworCisJcmV0dXJu IHNlcW5vOworfQorCiBpbnQgaTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhzdHJ1Y3QgaW50ZWxfZW5n aW5lX2NzICpyaW5nLAogCQkJICAgc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCwKIAkJCSAgIHN0 cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqKnJlcV9vdXQpCkBAIC0yNzE0LDcgKzI3NzgsOSBA QCBpbnQgaTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5n LAogCQlnb3RvIGVycjsKIAl9CiAKLQlmZW5jZV9pbml0KCZyZXEtPmZlbmNlLCAmaTkxNV9nZW1f cmVxdWVzdF9mb3BzLCAmcmluZy0+ZmVuY2VfbG9jaywgcmluZy0+ZmVuY2VfY29udGV4dCwgcmVx LT5zZXFubyk7CisJZmVuY2VfaW5pdCgmcmVxLT5mZW5jZSwgJmk5MTVfZ2VtX3JlcXVlc3RfZm9w cywgJnJpbmctPmZlbmNlX2xvY2ssCisJCSAgIGN0eC0+ZW5naW5lW3JpbmctPmlkXS5mZW5jZV90 aW1lbGluZS5mZW5jZV9jb250ZXh0LAorCQkgICBpOTE1X2ZlbmNlX3RpbWVsaW5lX2dldF9uZXh0 X3NlcW5vKCZjdHgtPmVuZ2luZVtyaW5nLT5pZF0uZmVuY2VfdGltZWxpbmUpKTsKIAogCS8qCiAJ ICogUmVzZXJ2ZSBzcGFjZSBpbiB0aGUgcmluZyBidWZmZXIgZm9yIGFsbCB0aGUgY29tbWFuZHMg cmVxdWlyZWQgdG8KQEAgLTQ3NjUsNyArNDgzMSw3IEBAIGk5MTVfZ2VtX2luaXRfaHcoc3RydWN0 IGRybV9kZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYg PSBkZXYtPmRldl9wcml2YXRlOwogCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmc7Ci0JaW50 IHJldCwgaSwgaiwgZmVuY2VfYmFzZTsKKwlpbnQgcmV0LCBpLCBqOwogCiAJaWYgKElOVEVMX0lO Rk8oZGV2KS0+Z2VuIDwgNiAmJiAhaW50ZWxfZW5hYmxlX2d0dCgpKQogCQlyZXR1cm4gLUVJTzsK QEAgLTQ4MzUsMTYgKzQ5MDEsMTIgQEAgaTkxNV9nZW1faW5pdF9odyhzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2KQogCWlmIChyZXQpCiAJCWdvdG8gb3V0OwogCi0JZmVuY2VfYmFzZSA9IGZlbmNlX2Nv bnRleHRfYWxsb2MoSTkxNV9OVU1fUklOR1MpOwotCiAJLyogTm93IGl0IGlzIHNhZmUgdG8gZ28g YmFjayByb3VuZCBhbmQgZG8gZXZlcnl0aGluZyBlbHNlOiAqLwogCWZvcl9lYWNoX3Jpbmcocmlu ZywgZGV2X3ByaXYsIGkpIHsKIAkJc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXE7CiAK IAkJV0FSTl9PTighcmluZy0+ZGVmYXVsdF9jb250ZXh0KTsKIAotCQlyaW5nLT5mZW5jZV9jb250 ZXh0ID0gZmVuY2VfYmFzZSArIGk7Ci0KIAkJcmV0ID0gaTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhy aW5nLCByaW5nLT5kZWZhdWx0X2NvbnRleHQsICZyZXEpOwogCQlpZiAocmV0KSB7CiAJCQlpOTE1 X2dlbV9jbGVhbnVwX3JpbmdidWZmZXIoZGV2KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt X2NvbnRleHQuYwppbmRleCA0M2IxYzczLi4yNzk4ZGRjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW1fY29udGV4dC5jCkBAIC0yNjYsNyArMjY2LDcgQEAgaTkxNV9nZW1fY3JlYXRlX2Nv bnRleHQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIHsKIAljb25zdCBib29sIGlzX2dsb2JhbF9k ZWZhdWx0X2N0eCA9IGZpbGVfcHJpdiA9PSBOVUxMOwogCXN0cnVjdCBpbnRlbF9jb250ZXh0ICpj dHg7Ci0JaW50IHJldCA9IDA7CisJaW50IGksIHJldCA9IDA7CiAKIAlCVUdfT04oIW11dGV4X2lz X2xvY2tlZCgmZGV2LT5zdHJ1Y3RfbXV0ZXgpKTsKIApAQCAtMjc0LDYgKzI3NCwxOSBAQCBpOTE1 X2dlbV9jcmVhdGVfY29udGV4dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCWlmIChJU19FUlIo Y3R4KSkKIAkJcmV0dXJuIGN0eDsKIAorCWlmICghaTkxNS5lbmFibGVfZXhlY2xpc3RzKSB7CisJ CXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmc7CisKKwkJLyogQ3JlYXRlIGEgcGVyIGNvbnRl eHQgdGltZWxpbmUgZm9yIGZlbmNlcyAqLworCQlmb3JfZWFjaF9yaW5nKHJpbmcsIHRvX2k5MTUo ZGV2KSwgaSkgeworCQkJcmV0ID0gaTkxNV9jcmVhdGVfZmVuY2VfdGltZWxpbmUoZGV2LCBjdHgs IHJpbmcpOworCQkJaWYgKHJldCkgeworCQkJCURSTV9FUlJPUigiRmVuY2UgdGltZWxpbmUgY3Jl YXRpb24gZmFpbGVkIGZvciBsZWdhY3kgJXM6ICVwXG4iLCByaW5nLT5uYW1lLCBjdHgpOworCQkJ CWdvdG8gZXJyX2Rlc3Ryb3k7CisJCQl9CisJCX0KKwl9CisKIAlpZiAoaXNfZ2xvYmFsX2RlZmF1 bHRfY3R4ICYmIGN0eC0+bGVnYWN5X2h3X2N0eC5yY3Nfc3RhdGUpIHsKIAkJLyogV2UgbWF5IG5l ZWQgdG8gZG8gdGhpbmdzIHdpdGggdGhlIHNocmlua2VyIHdoaWNoCiAJCSAqIHJlcXVpcmUgdXMg dG8gaW1tZWRpYXRlbHkgc3dpdGNoIGJhY2sgdG8gdGhlIGRlZmF1bHQKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfbHJjLmMKaW5kZXggYjhjOGY5Yi4uMmI1NjY1MSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfbHJjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJj LmMKQEAgLTI0ODksNiArMjQ4OSwxNCBAQCBpbnQgaW50ZWxfbHJfY29udGV4dF9kZWZlcnJlZF9h bGxvYyhzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY3R4LAogCQlnb3RvIGVycm9yX3JpbmdidWY7CiAJ fQogCisJLyogQ3JlYXRlIGEgcGVyIGNvbnRleHQgdGltZWxpbmUgZm9yIGZlbmNlcyAqLworCXJl dCA9IGk5MTVfY3JlYXRlX2ZlbmNlX3RpbWVsaW5lKGRldiwgY3R4LCByaW5nKTsKKwlpZiAocmV0 KSB7CisJCURSTV9FUlJPUigiRmVuY2UgdGltZWxpbmUgY3JlYXRpb24gZmFpbGVkIGZvciByaW5n ICVzLCBjdHggJXBcbiIsCisJCQkgIHJpbmctPm5hbWUsIGN0eCk7CisJCWdvdG8gZXJyb3Jfcmlu Z2J1ZjsKKwl9CisKIAljdHgtPmVuZ2luZVtyaW5nLT5pZF0ucmluZ2J1ZiA9IHJpbmdidWY7CiAJ Y3R4LT5lbmdpbmVbcmluZy0+aWRdLnN0YXRlID0gY3R4X29iajsKIApkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcmluZ2J1ZmZlci5oCmluZGV4IDQ1NDc2NDUuLjM1NmI2YTggMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaAorKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKQEAgLTM0OSw3ICszNDksNiBAQCBzdHJ1Y3Qg IGludGVsX2VuZ2luZV9jcyB7CiAJICovCiAJdTMyICgqZ2V0X2NtZF9sZW5ndGhfbWFzaykodTMy IGNtZF9oZWFkZXIpOwogCi0JdW5zaWduZWQgZmVuY2VfY29udGV4dDsKIAlzcGlubG9ja190IGZl bmNlX2xvY2s7CiB9OwogCi0tIAoxLjkuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9pbnRlbC1nZngK