From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [RFC 5/9] drm/i915: Add per context timelines to fence object Date: Fri, 17 Jul 2015 15:31:19 +0100 Message-ID: <1437143483-6234-6-git-send-email-John.C.Harrison@Intel.com> References: <1437143483-6234-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 mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTP id ABD566E43A for ; Fri, 17 Jul 2015 07:31:38 -0700 (PDT) In-Reply-To: <1437143483-6234-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 dWVuY2UgbnVtYmVyLgpBbHRob3VnaCB0aGlzIGlzIG5vdCB1c2VkIGJ5IHRoZSBpOTE1IGRyaXZl ciBpdHNlbGYsIGl0IGNvdWxkIHBvdGVudGlhbGx5IGJlCnVzZWQgYnkgbm9uLWk5MTUgY29kZSBp ZiB0aGUgZmVuY2UgaXMgcGFzc2VkIG91dHNpZGUgb2YgdGhlIGRyaXZlci4gVGhpcyBpcyB0aGUK aW50ZW50aW9uIGFzIGl0IGFsbG93cyBleHRlcm5hbCBrZXJuZWwgZHJpdmVycyBhbmQgdXNlciBh cHBsaWNhdGlvbnMgdG8gd2FpdCBvbgpiYXRjaCBidWZmZXIgY29tcGxldGlvbiBhc3luY2hyb25v dXNseSB2aWEgdGhlIGRtYS1idWZmIGZlbmNlIEFQSS4KClRvIGVuc3VyZSB0aGF0IHN1Y2ggZXh0 ZXJuYWwgdXNlcnMgYXJlIG5vdCBjb25mdXNlZCBieSBzdHJhbmdlIHRoaW5ncyBoYXBwZW5pbmcK d2l0aCB0aGUgc2Vxbm8sIHRoaXMgcGF0Y2ggYWRkcyBpbiBhIHBlciBjb250ZXh0IHRpbWVsaW5l IHRoYXQgY2FuIHByb3ZpZGUgYQpndWFyYW50ZWVkIGluLW9yZGVyIHNlcW5vIHZhbHVlIGZvciB0 aGUgZmVuY2UuIFRoaXMgaXMgc2FmZSBiZWNhdXNlIHRoZQpzY2hlZHVsZXIgd2lsbCBub3QgcmUt b3JkZXIgYmF0Y2ggYnVmZmVycyB3aXRoaW4gYSBjb250ZXh0IC0gdGhleSBhcmUgY29uc2lkZXJl ZAp0byBiZSBtdXR1YWxseSBkZXBlbmRlbnQuCgpbbmV3IHBhdGNoIGluIHNlcmllc10KCkZvcjog VklaLTUxOTAKU2lnbmVkLW9mZi1ieTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQElu dGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAgICAgfCAy NSArKysrKysrKy0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgICAgICAgICB8 IDY5ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLQogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW1fY29udGV4dC5jIHwgMTUgKysrKysrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfbHJjLmMgICAgICAgIHwgIDggKysrKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf cmluZ2J1ZmZlci5oIHwgIDEgLQogNSBmaWxlcyBjaGFuZ2VkLCAxMDMgaW5zZXJ0aW9ucygrKSwg MTUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9k cnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggMGM3ZGY0Ni4uODhh NDc0NiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAorKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBAIC04NDAsNiArODQwLDE1IEBAIHN0cnVj dCBpOTE1X2N0eF9oYW5nX3N0YXRzIHsKIAlib29sIGJhbm5lZDsKIH07CiAKK3N0cnVjdCBpOTE1 X2ZlbmNlX3RpbWVsaW5lIHsKKwl1bnNpZ25lZCAgICBmZW5jZV9jb250ZXh0OworCXVpbnQzMl90 ICAgIGNvbnRleHQ7CisJdWludDMyX3QgICAgbmV4dDsKKworCXN0cnVjdCBpbnRlbF9jb250ZXh0 ICpjdHg7CisJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZzsKK307CisKIC8qIFRoaXMgbXVz dCBtYXRjaCB1cCB3aXRoIHRoZSB2YWx1ZSBwcmV2aW91c2x5IHVzZWQgZm9yIGV4ZWNidWYyLnJz dmQxLiAqLwogI2RlZmluZSBERUZBVUxUX0NPTlRFWFRfSEFORExFIDAKIApAQCAtODg1LDYgKzg5 NCw3IEBAIHN0cnVjdCBpbnRlbF9jb250ZXh0IHsKIAkJc3RydWN0IGRybV9pOTE1X2dlbV9vYmpl Y3QgKnN0YXRlOwogCQlzdHJ1Y3QgaW50ZWxfcmluZ2J1ZmZlciAqcmluZ2J1ZjsKIAkJaW50IHBp bl9jb3VudDsKKwkJc3RydWN0IGk5MTVfZmVuY2VfdGltZWxpbmUgZmVuY2VfdGltZWxpbmU7CiAJ fSBlbmdpbmVbSTkxNV9OVU1fUklOR1NdOwogCiAJc3RydWN0IGxpc3RfaGVhZCBsaW5rOwpAQCAt MjE1MywxMyArMjE2MywxMCBAQCB2b2lkIGk5MTVfZ2VtX3RyYWNrX2ZiKHN0cnVjdCBkcm1faTkx NV9nZW1fb2JqZWN0ICpvbGQsCiBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgewogCS8qKgog CSAqIFVuZGVybHlpbmcgb2JqZWN0IGZvciBpbXBsZW1lbnRpbmcgdGhlIHNpZ25hbC93YWl0IHN0 dWZmLgotCSAqIE5COiBOZXZlciBjYWxsIGZlbmNlX2xhdGVyKCkgb3IgcmV0dXJuIHRoaXMgZmVu Y2Ugb2JqZWN0IHRvIHVzZXIKLQkgKiBsYW5kISBEdWUgdG8gbGF6eSBhbGxvY2F0aW9uLCBzY2hl ZHVsZXIgcmUtb3JkZXJpbmcsIHByZS1lbXB0aW9uLAotCSAqIGV0Yy4sIHRoZXJlIGlzIG5vIGd1 YXJhbnRlZSBhdCBhbGwgYWJvdXQgdGhlIHZhbGlkaXR5IG9yCi0JICogc2VxdWVudGlhbGl0eSBv ZiB0aGUgZmVuY2UncyBzZXFubyEgSXQgaXMgYWxzbyB1bnNhZmUgdG8gbGV0Ci0JICogYW55dGhp bmcgb3V0c2lkZSBvZiB0aGUgaTkxNSBkcml2ZXIgZ2V0IGhvbGQgb2YgdGhlIGZlbmNlIG9iamVj dAotCSAqIGFzIHRoZSBjbGVhbiB1cCB3aGVuIGRlY3JlbWVudGluZyB0aGUgcmVmZXJlbmNlIGNv dW50IHJlcXVpcmVzCi0JICogaG9sZGluZyB0aGUgZHJpdmVyIG11dGV4IGxvY2suCisJICogTkI6 IE5ldmVyIHJldHVybiB0aGlzIGZlbmNlIG9iamVjdCB0byB1c2VyIGxhbmQhIEl0IGlzIHVuc2Fm ZSB0bworCSAqIGxldCBhbnl0aGluZyBvdXRzaWRlIG9mIHRoZSBpOTE1IGRyaXZlciBnZXQgaG9s ZCBvZiB0aGUgZmVuY2UKKwkgKiBvYmplY3QgYXMgdGhlIGNsZWFuIHVwIHdoZW4gZGVjcmVtZW50 aW5nIHRoZSByZWZlcmVuY2UgY291bnQKKwkgKiByZXF1aXJlcyBob2xkaW5nIHRoZSBkcml2ZXIg bXV0ZXggbG9jay4KIAkgKi8KIAlzdHJ1Y3QgZmVuY2UgZmVuY2U7CiAKQEAgLTIyMzksNiArMjI0 NiwxMCBAQCBpbnQgaTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2Nz ICpyaW5nLAogCQkJICAgc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICoqcmVxX291dCk7CiB2 b2lkIGk5MTVfZ2VtX3JlcXVlc3RfY2FuY2VsKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAq cmVxKTsKIAoraW50IGk5MTVfY3JlYXRlX2ZlbmNlX3RpbWVsaW5lKHN0cnVjdCBkcm1fZGV2aWNl ICpkZXYsCisJCQkgICAgICAgc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCwKKwkJCSAgICAgICBz dHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nKTsKKwogc3RhdGljIGlubGluZSBib29sIGk5MTVf Z2VtX3JlcXVlc3RfY29tcGxldGVkKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxKQog ewogCXJldHVybiBmZW5jZV9pc19zaWduYWxlZCgmcmVxLT5mZW5jZSk7CmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9nZW0uYwppbmRleCAzOTcwMjUwLi5hZjc5NzE2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMK QEAgLTI2NzEsNiArMjY3MSwyNSBAQCBzdGF0aWMgYm9vbCBpOTE1X2dlbV9yZXF1ZXN0X2lzX2Nv bXBsZXRlZChzdHJ1Y3QgZmVuY2UgKnJlcV9mZW5jZSkKIAlyZXR1cm4gaTkxNV9zZXFub19wYXNz ZWQoc2Vxbm8sIHJlcS0+c2Vxbm8pOwogfQogCitzdGF0aWMgdm9pZCBpOTE1X2ZlbmNlX3RpbWVs aW5lX3ZhbHVlX3N0cihzdHJ1Y3QgZmVuY2UgKmZlbmNlLCBjaGFyICpzdHIsIGludCBzaXplKQor eworCXN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxOworCisJcmVxID0gY29udGFpbmVy X29mKGZlbmNlLCB0eXBlb2YoKnJlcSksIGZlbmNlKTsKKworCS8qIExhc3Qgc2lnbmFsbGVkIHRp bWVsaW5lIHZhbHVlID8/PyAqLworCXNucHJpbnRmKHN0ciwgc2l6ZSwgIj8gWyVkXSIvKiwgdGwt PnZhbHVlKi8sIHJlcS0+cmluZy0+Z2V0X3NlcW5vKHJlcS0+cmluZywgdHJ1ZSkpOworfQorCitz dGF0aWMgdm9pZCBpOTE1X2ZlbmNlX3ZhbHVlX3N0cihzdHJ1Y3QgZmVuY2UgKmZlbmNlLCBjaGFy ICpzdHIsIGludCBzaXplKQoreworCXN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxOwor CisJcmVxID0gY29udGFpbmVyX29mKGZlbmNlLCB0eXBlb2YoKnJlcSksIGZlbmNlKTsKKworCXNu cHJpbnRmKHN0ciwgc2l6ZSwgIiVkIFslZF0iLCByZXEtPmZlbmNlLnNlcW5vLCByZXEtPnNlcW5v KTsKK30KKwogc3RhdGljIGNvbnN0IHN0cnVjdCBmZW5jZV9vcHMgaTkxNV9nZW1fcmVxdWVzdF9m b3BzID0gewogCS5nZXRfZHJpdmVyX25hbWUJPSBpOTE1X2dlbV9yZXF1ZXN0X2dldF9kcml2ZXJf bmFtZSwKIAkuZ2V0X3RpbWVsaW5lX25hbWUJPSBpOTE1X2dlbV9yZXF1ZXN0X2dldF90aW1lbGlu ZV9uYW1lLApAQCAtMjY3OCw4ICsyNjk3LDQ4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZmVuY2Vf b3BzIGk5MTVfZ2VtX3JlcXVlc3RfZm9wcyA9IHsKIAkuc2lnbmFsZWQJCT0gaTkxNV9nZW1fcmVx dWVzdF9pc19jb21wbGV0ZWQsCiAJLndhaXQJCQk9IGZlbmNlX2RlZmF1bHRfd2FpdCwKIAkucmVs ZWFzZQkJPSBpOTE1X2dlbV9yZXF1ZXN0X2ZyZWUsCisJLmZlbmNlX3ZhbHVlX3N0cgk9IGk5MTVf ZmVuY2VfdmFsdWVfc3RyLAorCS50aW1lbGluZV92YWx1ZV9zdHIJPSBpOTE1X2ZlbmNlX3RpbWVs aW5lX3ZhbHVlX3N0ciwKIH07CiAKK2ludCBpOTE1X2NyZWF0ZV9mZW5jZV90aW1lbGluZShzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LAorCQkJICAgICAgIHN0cnVjdCBpbnRlbF9jb250ZXh0ICpjdHgs CisJCQkgICAgICAgc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZykKK3sKKwlzdHJ1Y3QgaTkx NV9mZW5jZV90aW1lbGluZSAqdGltZWxpbmU7CisKKwl0aW1lbGluZSA9ICZjdHgtPmVuZ2luZVty aW5nLT5pZF0uZmVuY2VfdGltZWxpbmU7CisKKwlpZiAodGltZWxpbmUtPnJpbmcpCisJCXJldHVy biAwOworCisJdGltZWxpbmUtPmZlbmNlX2NvbnRleHQgPSBmZW5jZV9jb250ZXh0X2FsbG9jKDEp OworCisJLyoKKwkgKiBTdGFydCB0aGUgdGltZWxpbmUgZnJvbSBzZXFubyAwIGFzIHRoaXMgaXMg YSBzcGVjaWFsIHZhbHVlCisJICogdGhhdCBpcyByZXNlcnZlZCBmb3IgaW52YWxpZCBzeW5jIHBv aW50cy4KKwkgKi8KKwl0aW1lbGluZS0+bmV4dCAgICAgICA9IDE7CisJdGltZWxpbmUtPmN0eCAg ICAgICAgPSBjdHg7CisJdGltZWxpbmUtPnJpbmcgICAgICAgPSByaW5nOworCisJcmV0dXJuIDA7 Cit9CisKK3N0YXRpYyB1aW50MzJfdCBpOTE1X2ZlbmNlX3RpbWVsaW5lX2dldF9uZXh0X3NlcW5v KHN0cnVjdCBpOTE1X2ZlbmNlX3RpbWVsaW5lICp0aW1lbGluZSkKK3sKKwl1aW50MzJfdCBzZXFu bzsKKworCXNlcW5vID0gdGltZWxpbmUtPm5leHQ7CisKKwkvKiBSZXNlcnZlIHplcm8gZm9yIGlu dmFsaWQgKi8KKwlpZiAoKyt0aW1lbGluZS0+bmV4dCA9PSAwICkgeworCQl0aW1lbGluZS0+bmV4 dCA9IDE7CisJfQorCisJcmV0dXJuIHNlcW5vOworfQorCiBpbnQgaTkxNV9nZW1fcmVxdWVzdF9h bGxvYyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLAogCQkJICAgc3RydWN0IGludGVsX2Nv bnRleHQgKmN0eCwKIAkJCSAgIHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqKnJlcV9vdXQp CkBAIC0yNzE1LDcgKzI3NzQsOSBAQCBpbnQgaTkxNV9nZW1fcmVxdWVzdF9hbGxvYyhzdHJ1Y3Qg aW50ZWxfZW5naW5lX2NzICpyaW5nLAogCQlnb3RvIGVycjsKIAl9CiAKLQlmZW5jZV9pbml0KCZy ZXEtPmZlbmNlLCAmaTkxNV9nZW1fcmVxdWVzdF9mb3BzLCAmcmluZy0+ZmVuY2VfbG9jaywgcmlu Zy0+ZmVuY2VfY29udGV4dCwgcmVxLT5zZXFubyk7CisJZmVuY2VfaW5pdCgmcmVxLT5mZW5jZSwg Jmk5MTVfZ2VtX3JlcXVlc3RfZm9wcywgJnJpbmctPmZlbmNlX2xvY2ssCisJCSAgIGN0eC0+ZW5n aW5lW3JpbmctPmlkXS5mZW5jZV90aW1lbGluZS5mZW5jZV9jb250ZXh0LAorCQkgICBpOTE1X2Zl bmNlX3RpbWVsaW5lX2dldF9uZXh0X3NlcW5vKCZjdHgtPmVuZ2luZVtyaW5nLT5pZF0uZmVuY2Vf dGltZWxpbmUpKTsKIAogCS8qCiAJICogUmVzZXJ2ZSBzcGFjZSBpbiB0aGUgcmluZyBidWZmZXIg Zm9yIGFsbCB0aGUgY29tbWFuZHMgcmVxdWlyZWQgdG8KQEAgLTUwNjUsNyArNTEyNiw3IEBAIGk5 MTVfZ2VtX2luaXRfaHcoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIHsKIAlzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwogCXN0cnVjdCBpbnRlbF9l bmdpbmVfY3MgKnJpbmc7Ci0JaW50IHJldCwgaSwgaiwgZmVuY2VfYmFzZTsKKwlpbnQgcmV0LCBp LCBqOwogCiAJaWYgKElOVEVMX0lORk8oZGV2KS0+Z2VuIDwgNiAmJiAhaW50ZWxfZW5hYmxlX2d0 dCgpKQogCQlyZXR1cm4gLUVJTzsKQEAgLTUxMTcsMTYgKzUxNzgsMTIgQEAgaTkxNV9nZW1faW5p dF9odyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCQkJZ290byBvdXQ7CiAJfQogCi0JZmVuY2Vf YmFzZSA9IGZlbmNlX2NvbnRleHRfYWxsb2MoSTkxNV9OVU1fUklOR1MpOwotCiAJLyogTm93IGl0 IGlzIHNhZmUgdG8gZ28gYmFjayByb3VuZCBhbmQgZG8gZXZlcnl0aGluZyBlbHNlOiAqLwogCWZv cl9lYWNoX3JpbmcocmluZywgZGV2X3ByaXYsIGkpIHsKIAkJc3RydWN0IGRybV9pOTE1X2dlbV9y ZXF1ZXN0ICpyZXE7CiAKIAkJV0FSTl9PTighcmluZy0+ZGVmYXVsdF9jb250ZXh0KTsKIAotCQly aW5nLT5mZW5jZV9jb250ZXh0ID0gZmVuY2VfYmFzZSArIGk7Ci0KIAkJcmV0ID0gaTkxNV9nZW1f cmVxdWVzdF9hbGxvYyhyaW5nLCByaW5nLT5kZWZhdWx0X2NvbnRleHQsICZyZXEpOwogCQlpZiAo cmV0KSB7CiAJCQlpOTE1X2dlbV9jbGVhbnVwX3JpbmdidWZmZXIoZGV2KTsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYwppbmRleCBiNzdhOGY3Li43ZWI4Njk0IDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jCkBAIC0yNDIsNyArMjQyLDcgQEAgaTkx NV9nZW1fY3JlYXRlX2NvbnRleHQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIHsKIAljb25zdCBi b29sIGlzX2dsb2JhbF9kZWZhdWx0X2N0eCA9IGZpbGVfcHJpdiA9PSBOVUxMOwogCXN0cnVjdCBp bnRlbF9jb250ZXh0ICpjdHg7Ci0JaW50IHJldCA9IDA7CisJaW50IGksIHJldCA9IDA7CiAKIAlC VUdfT04oIW11dGV4X2lzX2xvY2tlZCgmZGV2LT5zdHJ1Y3RfbXV0ZXgpKTsKIApAQCAtMjUwLDYg KzI1MCwxOSBAQCBpOTE1X2dlbV9jcmVhdGVfY29udGV4dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LAogCWlmIChJU19FUlIoY3R4KSkKIAkJcmV0dXJuIGN0eDsKIAorCWlmICghaTkxNS5lbmFibGVf ZXhlY2xpc3RzKSB7CisJCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmc7CisKKwkJLyogQ3Jl YXRlIGEgcGVyIGNvbnRleHQgdGltZWxpbmUgZm9yIGZlbmNlcyAqLworCQlmb3JfZWFjaF9yaW5n KHJpbmcsIHRvX2k5MTUoZGV2KSwgaSkgeworCQkJcmV0ID0gaTkxNV9jcmVhdGVfZmVuY2VfdGlt ZWxpbmUoZGV2LCBjdHgsIHJpbmcpOworCQkJaWYgKHJldCkgeworCQkJCURSTV9FUlJPUigiRmVu Y2UgdGltZWxpbmUgY3JlYXRpb24gZmFpbGVkIGZvciBsZWdhY3kgJXM6ICVwXG4iLCByaW5nLT5u YW1lLCBjdHgpOworCQkJCWdvdG8gZXJyX2Rlc3Ryb3k7CisJCQl9CisJCX0KKwl9CisKIAlpZiAo aXNfZ2xvYmFsX2RlZmF1bHRfY3R4ICYmIGN0eC0+bGVnYWN5X2h3X2N0eC5yY3Nfc3RhdGUpIHsK IAkJLyogV2UgbWF5IG5lZWQgdG8gZG8gdGhpbmdzIHdpdGggdGhlIHNocmlua2VyIHdoaWNoCiAJ CSAqIHJlcXVpcmUgdXMgdG8gaW1tZWRpYXRlbHkgc3dpdGNoIGJhY2sgdG8gdGhlIGRlZmF1bHQK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2xyYy5jIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKaW5kZXggZWU0YWVjZC4uOGYyNTVkZSAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfbHJjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfbHJjLmMKQEAgLTIzNzYsNiArMjM3NiwxNCBAQCBpbnQgaW50ZWxfbHJfY29u dGV4dF9kZWZlcnJlZF9jcmVhdGUoc3RydWN0IGludGVsX2NvbnRleHQgKmN0eCwKIAkJZ290byBl cnJvcjsKIAl9CiAKKwkvKiBDcmVhdGUgYSBwZXIgY29udGV4dCB0aW1lbGluZSBmb3IgZmVuY2Vz ICovCisJcmV0ID0gaTkxNV9jcmVhdGVfZmVuY2VfdGltZWxpbmUoZGV2LCBjdHgsIHJpbmcpOwor CWlmIChyZXQpIHsKKwkJRFJNX0VSUk9SKCJGZW5jZSB0aW1lbGluZSBjcmVhdGlvbiBmYWlsZWQg Zm9yIHJpbmcgJXMsIGN0eCAlcFxuIiwKKwkJCSAgcmluZy0+bmFtZSwgY3R4KTsKKwkJZ290byBl cnJvcjsKKwl9CisKIAljdHgtPmVuZ2luZVtyaW5nLT5pZF0ucmluZ2J1ZiA9IHJpbmdidWY7CiAJ Y3R4LT5lbmdpbmVbcmluZy0+aWRdLnN0YXRlID0gY3R4X29iajsKIApkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5oIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcmluZ2J1ZmZlci5oCmluZGV4IGE0YjA1NDUuLmUyZWViYzAgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaAorKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmgKQEAgLTM0Nyw3ICszNDcsNiBAQCBzdHJ1Y3Qg IGludGVsX2VuZ2luZV9jcyB7CiAJICovCiAJdTMyICgqZ2V0X2NtZF9sZW5ndGhfbWFzaykodTMy IGNtZF9oZWFkZXIpOwogCi0JdW5zaWduZWQgZmVuY2VfY29udGV4dDsKIAlzcGlubG9ja190IGZl bmNlX2xvY2s7CiB9OwogCi0tIAoxLjkuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9pbnRlbC1nZngK