From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH 3/7] drm/i915: Add per context timelines to fence object Date: Fri, 8 Jan 2016 18:47:24 +0000 Message-ID: <1452278848-33708-4-git-send-email-John.C.Harrison@Intel.com> References: <1449839521-21958-1-git-send-email-John.C.Harrison@Intel.com> <1452278848-33708-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 mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTP id F03CD720C6 for ; Fri, 8 Jan 2016 10:47:33 -0800 (PST) In-Reply-To: <1452278848-33708-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 ZGVidWdmcyBvdXRwdXQuCgp2NTogTGluZSB3cmFwcGluZyBhbmQgb3RoZXIgd2hpdGUgc3BhY2Ug Zml4ZXMgdG8ga2VlcCBzdHlsZSBjaGVja2VyCmhhcHB5LgoKRm9yOiBWSVotNTE5MApTaWduZWQt b2ZmLWJ5OiBKb2huIEhhcnJpc29uIDxKb2huLkMuSGFycmlzb25ASW50ZWwuY29tPgpDYzogVHZy dGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2Rydi5oICAgICAgICAgfCAyNSArKysrKysrLS0tCiBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbS5jICAgICAgICAgfCA4MyArKysrKysrKysrKysrKysrKysrKysrKysr KysrKy0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYyB8IDE2ICsr KysrKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jICAgICAgICB8ICA4ICsrKysK IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaCB8ICAxIC0KIDUgZmlsZXMg Y2hhbmdlZCwgMTE1IGluc2VydGlvbnMoKyksIDE4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2Rydi5oCmluZGV4IGNhZjc4OTcuLjdkNmE3YzAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aApAQCAtODQxLDYgKzg0MSwxNSBAQCBzdHJ1Y3QgaTkxNV9jdHhfaGFuZ19zdGF0cyB7CiAJYm9v bCBiYW5uZWQ7CiB9OwogCitzdHJ1Y3QgaTkxNV9mZW5jZV90aW1lbGluZSB7CisJY2hhciAgICAg ICAgbmFtZVszMl07CisJdW5zaWduZWQgICAgZmVuY2VfY29udGV4dDsKKwl1bnNpZ25lZCAgICBu ZXh0OworCisJc3RydWN0IGludGVsX2NvbnRleHQgKmN0eDsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5l X2NzICpyaW5nOworfTsKKwogLyogVGhpcyBtdXN0IG1hdGNoIHVwIHdpdGggdGhlIHZhbHVlIHBy ZXZpb3VzbHkgdXNlZCBmb3IgZXhlY2J1ZjIucnN2ZDEuICovCiAjZGVmaW5lIERFRkFVTFRfQ09O VEVYVF9IQU5ETEUgMAogCkBAIC04ODUsNiArODk0LDcgQEAgc3RydWN0IGludGVsX2NvbnRleHQg ewogCQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqc3RhdGU7CiAJCXN0cnVjdCBpbnRlbF9y aW5nYnVmZmVyICpyaW5nYnVmOwogCQlpbnQgcGluX2NvdW50OworCQlzdHJ1Y3QgaTkxNV9mZW5j ZV90aW1lbGluZSBmZW5jZV90aW1lbGluZTsKIAl9IGVuZ2luZVtJOTE1X05VTV9SSU5HU107CiAK IAlzdHJ1Y3QgbGlzdF9oZWFkIGxpbms7CkBAIC0yMTc3LDEzICsyMTg3LDEwIEBAIHZvaWQgaTkx NV9nZW1fdHJhY2tfZmIoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9sZCwKIHN0cnVjdCBk cm1faTkxNV9nZW1fcmVxdWVzdCB7CiAJLyoqCiAJICogVW5kZXJseWluZyBvYmplY3QgZm9yIGlt cGxlbWVudGluZyB0aGUgc2lnbmFsL3dhaXQgc3R1ZmYuCi0JICogTkI6IE5ldmVyIGNhbGwgZmVu Y2VfbGF0ZXIoKSBvciByZXR1cm4gdGhpcyBmZW5jZSBvYmplY3QgdG8gdXNlcgotCSAqIGxhbmQh IER1ZSB0byBsYXp5IGFsbG9jYXRpb24sIHNjaGVkdWxlciByZS1vcmRlcmluZywgcHJlLWVtcHRp b24sCi0JICogZXRjLiwgdGhlcmUgaXMgbm8gZ3VhcmFudGVlIGF0IGFsbCBhYm91dCB0aGUgdmFs aWRpdHkgb3IKLQkgKiBzZXF1ZW50aWFsaXR5IG9mIHRoZSBmZW5jZSdzIHNlcW5vISBJdCBpcyBh bHNvIHVuc2FmZSB0byBsZXQKLQkgKiBhbnl0aGluZyBvdXRzaWRlIG9mIHRoZSBpOTE1IGRyaXZl ciBnZXQgaG9sZCBvZiB0aGUgZmVuY2Ugb2JqZWN0Ci0JICogYXMgdGhlIGNsZWFuIHVwIHdoZW4g ZGVjcmVtZW50aW5nIHRoZSByZWZlcmVuY2UgY291bnQgcmVxdWlyZXMKLQkgKiBob2xkaW5nIHRo ZSBkcml2ZXIgbXV0ZXggbG9jay4KKwkgKiBOQjogTmV2ZXIgcmV0dXJuIHRoaXMgZmVuY2Ugb2Jq ZWN0IHRvIHVzZXIgbGFuZCEgSXQgaXMgdW5zYWZlIHRvCisJICogbGV0IGFueXRoaW5nIG91dHNp ZGUgb2YgdGhlIGk5MTUgZHJpdmVyIGdldCBob2xkIG9mIHRoZSBmZW5jZQorCSAqIG9iamVjdCBh cyB0aGUgY2xlYW4gdXAgd2hlbiBkZWNyZW1lbnRpbmcgdGhlIHJlZmVyZW5jZSBjb3VudAorCSAq IHJlcXVpcmVzIGhvbGRpbmcgdGhlIGRyaXZlciBtdXRleCBsb2NrLgogCSAqLwogCXN0cnVjdCBm ZW5jZSBmZW5jZTsKIApAQCAtMjI2Myw2ICsyMjcwLDEwIEBAIGludCBpOTE1X2dlbV9yZXF1ZXN0 X2FsbG9jKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCiAJCQkgICBzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX3JlcXVlc3QgKipyZXFfb3V0KTsKIHZvaWQgaTkxNV9nZW1fcmVxdWVzdF9jYW5jZWwo c3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEpOwogCitpbnQgaTkxNV9jcmVhdGVfZmVu Y2VfdGltZWxpbmUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKKwkJCSAgICAgICBzdHJ1Y3QgaW50 ZWxfY29udGV4dCAqY3R4LAorCQkJICAgICAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcp OworCiBzdGF0aWMgaW5saW5lIGJvb2wgaTkxNV9nZW1fcmVxdWVzdF9jb21wbGV0ZWQoc3RydWN0 IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEpCiB7CiAJcmV0dXJuIGZlbmNlX2lzX3NpZ25hbGVk KCZyZXEtPmZlbmNlKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCmluZGV4IDkzZDJmMzIuLjljZTE3 YTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwpAQCAtMjY2NSw5ICsyNjY1LDM1IEBAIHN0YXRp YyBjb25zdCBjaGFyICppOTE1X2dlbV9yZXF1ZXN0X2dldF9kcml2ZXJfbmFtZShzdHJ1Y3QgZmVu Y2UgKnJlcV9mZW5jZSkKIAogc3RhdGljIGNvbnN0IGNoYXIgKmk5MTVfZ2VtX3JlcXVlc3RfZ2V0 X3RpbWVsaW5lX25hbWUoc3RydWN0IGZlbmNlICpyZXFfZmVuY2UpCiB7Ci0Jc3RydWN0IGRybV9p OTE1X2dlbV9yZXF1ZXN0ICpyZXEgPSBjb250YWluZXJfb2YocmVxX2ZlbmNlLAotCQkJCQkJIHR5 cGVvZigqcmVxKSwgZmVuY2UpOwotCXJldHVybiByZXEtPnJpbmctPm5hbWU7CisJc3RydWN0IGRy bV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXE7CisJc3RydWN0IGk5MTVfZmVuY2VfdGltZWxpbmUgKnRp bWVsaW5lOworCisJcmVxID0gY29udGFpbmVyX29mKHJlcV9mZW5jZSwgdHlwZW9mKCpyZXEpLCBm ZW5jZSk7CisJdGltZWxpbmUgPSAmcmVxLT5jdHgtPmVuZ2luZVtyZXEtPnJpbmctPmlkXS5mZW5j ZV90aW1lbGluZTsKKworCXJldHVybiB0aW1lbGluZS0+bmFtZTsKK30KKworc3RhdGljIHZvaWQg aTkxNV9nZW1fcmVxdWVzdF90aW1lbGluZV92YWx1ZV9zdHIoc3RydWN0IGZlbmNlICpyZXFfZmVu Y2UsCisJCQkJCQljaGFyICpzdHIsIGludCBzaXplKQoreworCXN0cnVjdCBkcm1faTkxNV9nZW1f cmVxdWVzdCAqcmVxOworCisJcmVxID0gY29udGFpbmVyX29mKHJlcV9mZW5jZSwgdHlwZW9mKCpy ZXEpLCBmZW5jZSk7CisKKwkvKiBMYXN0IHNpZ25hbGxlZCB0aW1lbGluZSB2YWx1ZSA/Pz8gKi8K KwlzbnByaW50ZihzdHIsIHNpemUsICI/IFslZF0iLyosIHRpbWVsaW5lLT52YWx1ZSovLAorCQkg cmVxLT5yaW5nLT5nZXRfc2Vxbm8ocmVxLT5yaW5nLCB0cnVlKSk7Cit9CisKK3N0YXRpYyB2b2lk IGk5MTVfZ2VtX3JlcXVlc3RfZmVuY2VfdmFsdWVfc3RyKHN0cnVjdCBmZW5jZSAqcmVxX2ZlbmNl LAorCQkJCQkgICAgIGNoYXIgKnN0ciwgaW50IHNpemUpCit7CisJc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpyZXE7CisKKwlyZXEgPSBjb250YWluZXJfb2YocmVxX2ZlbmNlLCB0eXBlb2Yo KnJlcSksIGZlbmNlKTsKKworCXNucHJpbnRmKHN0ciwgc2l6ZSwgIiVkIFslZF0iLCByZXEtPmZl bmNlLnNlcW5vLCByZXEtPnNlcW5vKTsKIH0KIAogc3RhdGljIGNvbnN0IHN0cnVjdCBmZW5jZV9v cHMgaTkxNV9nZW1fcmVxdWVzdF9mb3BzID0gewpAQCAtMjY3Nyw4ICsyNzAzLDUwIEBAIHN0YXRp YyBjb25zdCBzdHJ1Y3QgZmVuY2Vfb3BzIGk5MTVfZ2VtX3JlcXVlc3RfZm9wcyA9IHsKIAkucmVs ZWFzZQkJPSBpOTE1X2dlbV9yZXF1ZXN0X2ZyZWUsCiAJLmdldF9kcml2ZXJfbmFtZQk9IGk5MTVf Z2VtX3JlcXVlc3RfZ2V0X2RyaXZlcl9uYW1lLAogCS5nZXRfdGltZWxpbmVfbmFtZQk9IGk5MTVf Z2VtX3JlcXVlc3RfZ2V0X3RpbWVsaW5lX25hbWUsCisJLmZlbmNlX3ZhbHVlX3N0cgk9IGk5MTVf Z2VtX3JlcXVlc3RfZmVuY2VfdmFsdWVfc3RyLAorCS50aW1lbGluZV92YWx1ZV9zdHIJPSBpOTE1 X2dlbV9yZXF1ZXN0X3RpbWVsaW5lX3ZhbHVlX3N0ciwKIH07CiAKK2ludCBpOTE1X2NyZWF0ZV9m ZW5jZV90aW1lbGluZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAorCQkJICAgICAgIHN0cnVjdCBp bnRlbF9jb250ZXh0ICpjdHgsCisJCQkgICAgICAgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmlu ZykKK3sKKwlzdHJ1Y3QgaTkxNV9mZW5jZV90aW1lbGluZSAqdGltZWxpbmU7CisKKwl0aW1lbGlu ZSA9ICZjdHgtPmVuZ2luZVtyaW5nLT5pZF0uZmVuY2VfdGltZWxpbmU7CisKKwlpZiAodGltZWxp bmUtPnJpbmcpCisJCXJldHVybiAwOworCisJdGltZWxpbmUtPmZlbmNlX2NvbnRleHQgPSBmZW5j ZV9jb250ZXh0X2FsbG9jKDEpOworCisJLyoKKwkgKiBTdGFydCB0aGUgdGltZWxpbmUgZnJvbSBz ZXFubyAwIGFzIHRoaXMgaXMgYSBzcGVjaWFsIHZhbHVlCisJICogdGhhdCBpcyByZXNlcnZlZCBm b3IgaW52YWxpZCBzeW5jIHBvaW50cy4KKwkgKi8KKwl0aW1lbGluZS0+bmV4dCAgICAgICA9IDE7 CisJdGltZWxpbmUtPmN0eCAgICAgICAgPSBjdHg7CisJdGltZWxpbmUtPnJpbmcgICAgICAgPSBy aW5nOworCisJc25wcmludGYodGltZWxpbmUtPm5hbWUsIHNpemVvZih0aW1lbGluZS0+bmFtZSks ICIlZD4lczolZCIsCisJCSB0aW1lbGluZS0+ZmVuY2VfY29udGV4dCwgcmluZy0+bmFtZSwgY3R4 LT51c2VyX2hhbmRsZSk7CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHVuc2lnbmVkIGk5MTVf ZmVuY2VfdGltZWxpbmVfZ2V0X25leHRfc2Vxbm8oc3RydWN0IGk5MTVfZmVuY2VfdGltZWxpbmUg KnRpbWVsaW5lKQoreworCXVuc2lnbmVkIHNlcW5vOworCisJc2Vxbm8gPSB0aW1lbGluZS0+bmV4 dDsKKworCS8qIFJlc2VydmUgemVybyBmb3IgaW52YWxpZCAqLworCWlmICgrK3RpbWVsaW5lLT5u ZXh0ID09IDApCisJCXRpbWVsaW5lLT5uZXh0ID0gMTsKKworCXJldHVybiBzZXFubzsKK30KKwog aW50IGk5MTVfZ2VtX3JlcXVlc3RfYWxsb2Moc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywK IAkJCSAgIHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjdHgsCiAJCQkgICBzdHJ1Y3QgZHJtX2k5MTVf Z2VtX3JlcXVlc3QgKipyZXFfb3V0KQpAQCAtMjcxNSw3ICsyNzgzLDggQEAgaW50IGk5MTVfZ2Vt X3JlcXVlc3RfYWxsb2Moc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywKIAl9CiAKIAlmZW5j ZV9pbml0KCZyZXEtPmZlbmNlLCAmaTkxNV9nZW1fcmVxdWVzdF9mb3BzLCAmcmluZy0+ZmVuY2Vf bG9jaywKLQkJICAgcmluZy0+ZmVuY2VfY29udGV4dCwgcmVxLT5zZXFubyk7CisJCSAgIGN0eC0+ ZW5naW5lW3JpbmctPmlkXS5mZW5jZV90aW1lbGluZS5mZW5jZV9jb250ZXh0LAorCQkgICBpOTE1 X2ZlbmNlX3RpbWVsaW5lX2dldF9uZXh0X3NlcW5vKCZjdHgtPmVuZ2luZVtyaW5nLT5pZF0uZmVu Y2VfdGltZWxpbmUpKTsKIAogCS8qCiAJICogUmVzZXJ2ZSBzcGFjZSBpbiB0aGUgcmluZyBidWZm ZXIgZm9yIGFsbCB0aGUgY29tbWFuZHMgcmVxdWlyZWQgdG8KQEAgLTQ3NjYsNyArNDgzNSw3IEBA IGk5MTVfZ2VtX2luaXRfaHcoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwogCXN0cnVjdCBpbnRl bF9lbmdpbmVfY3MgKnJpbmc7Ci0JaW50IHJldCwgaSwgaiwgZmVuY2VfYmFzZTsKKwlpbnQgcmV0 LCBpLCBqOwogCiAJaWYgKElOVEVMX0lORk8oZGV2KS0+Z2VuIDwgNiAmJiAhaW50ZWxfZW5hYmxl X2d0dCgpKQogCQlyZXR1cm4gLUVJTzsKQEAgLTQ4MzYsMTYgKzQ5MDUsMTIgQEAgaTkxNV9nZW1f aW5pdF9odyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCWlmIChyZXQpCiAJCWdvdG8gb3V0Owog Ci0JZmVuY2VfYmFzZSA9IGZlbmNlX2NvbnRleHRfYWxsb2MoSTkxNV9OVU1fUklOR1MpOwotCiAJ LyogTm93IGl0IGlzIHNhZmUgdG8gZ28gYmFjayByb3VuZCBhbmQgZG8gZXZlcnl0aGluZyBlbHNl OiAqLwogCWZvcl9lYWNoX3JpbmcocmluZywgZGV2X3ByaXYsIGkpIHsKIAkJc3RydWN0IGRybV9p OTE1X2dlbV9yZXF1ZXN0ICpyZXE7CiAKIAkJV0FSTl9PTighcmluZy0+ZGVmYXVsdF9jb250ZXh0 KTsKIAotCQlyaW5nLT5mZW5jZV9jb250ZXh0ID0gZmVuY2VfYmFzZSArIGk7Ci0KIAkJcmV0ID0g aTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhyaW5nLCByaW5nLT5kZWZhdWx0X2NvbnRleHQsICZyZXEp OwogCQlpZiAocmV0KSB7CiAJCQlpOTE1X2dlbV9jbGVhbnVwX3JpbmdidWZmZXIoZGV2KTsKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYwppbmRleCA0M2IxYzczLi40NTcwZWRk IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMKKysr IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jCkBAIC0yNjYsNyArMjY2 LDcgQEAgaTkxNV9nZW1fY3JlYXRlX2NvbnRleHQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIHsK IAljb25zdCBib29sIGlzX2dsb2JhbF9kZWZhdWx0X2N0eCA9IGZpbGVfcHJpdiA9PSBOVUxMOwog CXN0cnVjdCBpbnRlbF9jb250ZXh0ICpjdHg7Ci0JaW50IHJldCA9IDA7CisJaW50IGksIHJldCA9 IDA7CiAKIAlCVUdfT04oIW11dGV4X2lzX2xvY2tlZCgmZGV2LT5zdHJ1Y3RfbXV0ZXgpKTsKIApA QCAtMjc0LDYgKzI3NCwyMCBAQCBpOTE1X2dlbV9jcmVhdGVfY29udGV4dChzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LAogCWlmIChJU19FUlIoY3R4KSkKIAkJcmV0dXJuIGN0eDsKIAorCWlmICghaTkx NS5lbmFibGVfZXhlY2xpc3RzKSB7CisJCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmc7CisK KwkJLyogQ3JlYXRlIGEgcGVyIGNvbnRleHQgdGltZWxpbmUgZm9yIGZlbmNlcyAqLworCQlmb3Jf ZWFjaF9yaW5nKHJpbmcsIHRvX2k5MTUoZGV2KSwgaSkgeworCQkJcmV0ID0gaTkxNV9jcmVhdGVf ZmVuY2VfdGltZWxpbmUoZGV2LCBjdHgsIHJpbmcpOworCQkJaWYgKHJldCkgeworCQkJCURSTV9F UlJPUigiRmVuY2UgdGltZWxpbmUgY3JlYXRpb24gZmFpbGVkIGZvciBsZWdhY3kgJXM6ICVwXG4i LAorCQkJCQkgIHJpbmctPm5hbWUsIGN0eCk7CisJCQkJZ290byBlcnJfZGVzdHJveTsKKwkJCX0K KwkJfQorCX0KKwogCWlmIChpc19nbG9iYWxfZGVmYXVsdF9jdHggJiYgY3R4LT5sZWdhY3lfaHdf Y3R4LnJjc19zdGF0ZSkgewogCQkvKiBXZSBtYXkgbmVlZCB0byBkbyB0aGluZ3Mgd2l0aCB0aGUg c2hyaW5rZXIgd2hpY2gKIAkJICogcmVxdWlyZSB1cyB0byBpbW1lZGlhdGVseSBzd2l0Y2ggYmFj ayB0byB0aGUgZGVmYXVsdApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf bHJjLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYwppbmRleCBiOGM4ZjliLi4y YjU2NjUxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9scmMuYwpAQCAtMjQ4OSw2ICsyNDg5LDE0IEBA IGludCBpbnRlbF9scl9jb250ZXh0X2RlZmVycmVkX2FsbG9jKHN0cnVjdCBpbnRlbF9jb250ZXh0 ICpjdHgsCiAJCWdvdG8gZXJyb3JfcmluZ2J1ZjsKIAl9CiAKKwkvKiBDcmVhdGUgYSBwZXIgY29u dGV4dCB0aW1lbGluZSBmb3IgZmVuY2VzICovCisJcmV0ID0gaTkxNV9jcmVhdGVfZmVuY2VfdGlt ZWxpbmUoZGV2LCBjdHgsIHJpbmcpOworCWlmIChyZXQpIHsKKwkJRFJNX0VSUk9SKCJGZW5jZSB0 aW1lbGluZSBjcmVhdGlvbiBmYWlsZWQgZm9yIHJpbmcgJXMsIGN0eCAlcFxuIiwKKwkJCSAgcmlu Zy0+bmFtZSwgY3R4KTsKKwkJZ290byBlcnJvcl9yaW5nYnVmOworCX0KKwogCWN0eC0+ZW5naW5l W3JpbmctPmlkXS5yaW5nYnVmID0gcmluZ2J1ZjsKIAljdHgtPmVuZ2luZVtyaW5nLT5pZF0uc3Rh dGUgPSBjdHhfb2JqOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9y aW5nYnVmZmVyLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKaW5k ZXggNDU0NzY0NS4uMzU2YjZhOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50 ZWxfcmluZ2J1ZmZlci5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZm ZXIuaApAQCAtMzQ5LDcgKzM0OSw2IEBAIHN0cnVjdCAgaW50ZWxfZW5naW5lX2NzIHsKIAkgKi8K IAl1MzIgKCpnZXRfY21kX2xlbmd0aF9tYXNrKSh1MzIgY21kX2hlYWRlcik7CiAKLQl1bnNpZ25l ZCBmZW5jZV9jb250ZXh0OwogCXNwaW5sb2NrX3QgZmVuY2VfbG9jazsKIH07CiAKLS0gCjEuOS4x CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1n ZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xp c3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=