From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH v5] drm/i915: Apply missed interrupt after reset w/a to all ringbuffer gen Date: Thu, 13 Dec 2018 13:05:31 +0000 Message-ID: <20181213130531.16683-1-chris@chris-wilson.co.uk> References: <20181213085359.31541-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from fireflyinternet.com (mail.fireflyinternet.com [109.228.58.192]) by gabe.freedesktop.org (Postfix) with ESMTPS id 518296EE24 for ; Thu, 13 Dec 2018 13:05:45 +0000 (UTC) In-Reply-To: <20181213085359.31541-1-chris@chris-wilson.co.uk> 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 SGF2aW5nIGNvbXBsZXRlZCBhIHRlc3QgcnVuIG9mIGdlbV9laW8gYWNyb3NzIGFsbCBtYWNoaW5l cyBpbiBDSSB3ZSBhbHNvCm9ic2VydmUgdGhlIHBoZW5vbWVub24gKG9mIGxvc3QgaW50ZXJydXB0 cyBhZnRlciByZXNldHRpbmcgdGhlIEdQVSkgb24KZ2VuMyBtYWNoaW5lcyBhcyB3ZWxsIGFzIHRo ZSBwcmV2aW91c2x5IHNpZ2h0ZWQgZ2VuNi9nZW43LiBMZXQncyBhcHBseQp0aGUgc2FtZSBIV1NU QU0gd29ya2Fyb3VuZCB0aGF0IHdhcyBlZmZlY3RpdmUgZm9yIGdlbjYrIGZvciBhbGwsIGFzCmFs dGhvdWdoIHdlIGhhdmVuJ3Qgc2VlbiB0aGUgc2FtZSBmYWlsdXJlIG9uIGdlbjQvNSBpdCBzZWVt cyBwcnVkZW50IHRvCmtlZXAgdGhlIGNvZGUgdGhlIHNhbWUuCgpBcyBhIGNvbnNlcXVlbmNlIHdl IGNhbiByZW1vdmUgdGhlIGV4dHJhIHNldHRpbmcgb2YgSFdTVEFNIGFuZCBhcHBseSB0aGUKcmVn aXN0ZXIgZnJvbSBhIHNpbmdsZSBzaXRlLgoKdjI6IERlbGF6eSBhbmQgbW92ZSB0aGUgSFdTVEFN IGludG8gaXRzIG93biBmdW5jdGlvbgp2MzogTWFzayBvZmYgYWxsIEhXU1Agd3JpdGVzIG9uIGRy aXZlciB1bmxvYWQgYW5kIGVuZ2luZSBjbGVhbnVwLgp2NDogQW5kIHdoYXQgYWJvdXQgdGhlIHBo eXNpY2FsIGh3c3A/CnY1OiBObywgZW5naW5lLT5pbml0X2h3KCkgaXMgbm90IGNhbGxlZCBmcm9t IGRyaXZlcl9pbml0X2h3KCksIGRvbid0IGJlCmRhZnQuIFJlYWxseSBzY3J1YiBIV1NUQU0gYXMg ZWFybHkgYXMgd2UgY2FuIGluIGRyaXZlcl9pbml0X21taW8oKQoKUmVmZXJlbmNlczogaHR0cHM6 Ly9idWdzLmZyZWVkZXNrdG9wLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA4NzM1ClNpZ25lZC1vZmYt Ynk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpDYzogVHZydGtvIFVy c3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KQ2M6IFZpbGxlIFN5cmrDpGzDpCA8dmls bGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9pcnEuYyAgICAgICAgIHwgICA5IC0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9lbmdp bmVfY3MuYyAgfCAgMjQgKysrKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVm ZmVyLmMgfCAxMDcgKysrKysrKysrKysrKysrLS0tLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDky IGluc2VydGlvbnMoKyksIDQ4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfaXJxLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2lycS5jCmlu ZGV4IGUyZGFjOWI1ZjRjZS4uMGM3ZmM5ODkwODkxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2lycS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMK QEAgLTM1ODYsOSArMzU4Niw2IEBAIHN0YXRpYyB2b2lkIGlyb25sYWtlX2lycV9yZXNldChzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2KQogewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diA9IHRvX2k5MTUoZGV2KTsKIAotCWlmIChJU19HRU4oZGV2X3ByaXYsIDUpKQotCQlJOTE1X1dS SVRFKEhXU1RBTSwgMHhmZmZmZmZmZik7Ci0KIAlHRU4zX0lSUV9SRVNFVChERSk7CiAJaWYgKElT X0dFTihkZXZfcHJpdiwgNykpCiAJCUk5MTVfV1JJVEUoR0VON19FUlJfSU5ULCAweGZmZmZmZmZm KTsKQEAgLTQzNjgsOCArNDM2NSw2IEBAIHN0YXRpYyB2b2lkIGk4eHhfaXJxX3Jlc2V0KHN0cnVj dCBkcm1fZGV2aWNlICpkZXYpCiAKIAlpOXh4X3BpcGVzdGF0X2lycV9yZXNldChkZXZfcHJpdik7 CiAKLQlJOTE1X1dSSVRFMTYoSFdTVEFNLCAweGZmZmYpOwotCiAJR0VOMl9JUlFfUkVTRVQoKTsK IH0KIApAQCAtNDUzNyw4ICs0NTMyLDYgQEAgc3RhdGljIHZvaWQgaTkxNV9pcnFfcmVzZXQoc3Ry dWN0IGRybV9kZXZpY2UgKmRldikKIAogCWk5eHhfcGlwZXN0YXRfaXJxX3Jlc2V0KGRldl9wcml2 KTsKIAotCUk5MTVfV1JJVEUoSFdTVEFNLCAweGZmZmZmZmZmKTsKLQogCUdFTjNfSVJRX1JFU0VU KCk7CiB9CiAKQEAgLTQ2NDgsOCArNDY0MSw2IEBAIHN0YXRpYyB2b2lkIGk5NjVfaXJxX3Jlc2V0 KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAKIAlpOXh4X3BpcGVzdGF0X2lycV9yZXNldChkZXZf cHJpdik7CiAKLQlJOTE1X1dSSVRFKEhXU1RBTSwgMHhmZmZmZmZmZik7Ci0KIAlHRU4zX0lSUV9S RVNFVCgpOwogfQogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9lbmdp bmVfY3MuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2VuZ2luZV9jcy5jCmluZGV4IDZm MTY1ZjlhZDJiZi4uMjQyNDVkYmEzMjA3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9lbmdpbmVfY3MuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9lbmdp bmVfY3MuYwpAQCAtMjYxLDYgKzI2MSwyNCBAQCBzdGF0aWMgdm9pZCBfX3NwcmludF9lbmdpbmVf bmFtZShjaGFyICpuYW1lLCBjb25zdCBzdHJ1Y3QgZW5naW5lX2luZm8gKmluZm8pCiAJCQkgaW5m by0+aW5zdGFuY2UpID49IElOVEVMX0VOR0lORV9DU19NQVhfTkFNRSk7CiB9CiAKK3N0YXRpYyB2 b2lkIHNldF9od3NwKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSwgdTMyIG1hc2spCit7 CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZW5naW5lLT5pOTE1OworCWk5 MTVfcmVnX3QgaHdzdGFtOworCisJaHdzdGFtID0gUklOR19IV1NUQU0oZW5naW5lLT5tbWlvX2Jh c2UpOworCWlmIChJTlRFTF9HRU4oZGV2X3ByaXYpID49IDMpCisJCUk5MTVfV1JJVEUoaHdzdGFt LCBtYXNrKTsKKwllbHNlCisJCUk5MTVfV1JJVEUxNihod3N0YW0sIG1hc2spOworfQorCitzdGF0 aWMgdm9pZCBpbnRlbF9lbmdpbmVfc2FuaXRpemVfbW1pbyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2Nz ICplbmdpbmUpCit7CisJLyogTWFzayBvZmYgYWxsIHdyaXRlcyBpbnRvIHRoZSB1bmtub3duIEhX U1AgKi8KKwlzZXRfaHdzcChlbmdpbmUsIH4wdSk7Cit9CisKIHN0YXRpYyBpbnQKIGludGVsX2Vu Z2luZV9zZXR1cChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCSAgIGVudW0g aW50ZWxfZW5naW5lX2lkIGlkKQpAQCAtMzEyLDYgKzMzMCw5IEBAIGludGVsX2VuZ2luZV9zZXR1 cChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAKIAlBVE9NSUNfSU5JVF9OT1RJ RklFUl9IRUFEKCZlbmdpbmUtPmNvbnRleHRfc3RhdHVzX25vdGlmaWVyKTsKIAorCS8qIFNjcnVi IG1taW8gc3RhdGUgb24gdGFrZW92ZXIgKi8KKwlpbnRlbF9lbmdpbmVfc2FuaXRpemVfbW1pbyhl bmdpbmUpOworCiAJZGV2X3ByaXYtPmVuZ2luZV9jbGFzc1tpbmZvLT5jbGFzc11baW5mby0+aW5z dGFuY2VdID0gZW5naW5lOwogCWRldl9wcml2LT5lbmdpbmVbaWRdID0gZW5naW5lOwogCXJldHVy biAwOwpAQCAtNDk1LDYgKzUxNiw5IEBAIHZvaWQgaW50ZWxfZW5naW5lX3NldHVwX2NvbW1vbihz dHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCiAKIHN0YXRpYyB2b2lkIGNsZWFudXBfc3Rh dHVzX3BhZ2Uoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQogeworCS8qIFN0b3Agd3Jp dGluZyBpbnRvIHRoZSBzdGF0dXMgcGFnZSBiZWZvcmUgcmV0dXJuaWcgaXQgdG8gdGhlIHN5c3Rl bSAqLworCXNldF9od3NwKGVuZ2luZSwgfjB1KTsKKwogCWlmIChIV1NfTkVFRFNfUEhZU0lDQUwo ZW5naW5lLT5pOTE1KSkgewogCQl2b2lkICphZGRyID0gZmV0Y2hfYW5kX3plcm8oJmVuZ2luZS0+ c3RhdHVzX3BhZ2UucGFnZV9hZGRyKTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcmluZ2J1ZmZlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1 ZmZlci5jCmluZGV4IGZkZWNhMmI4NzdjOS4uODhmNTBlMzBhMGM0IDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jCkBAIC0zNzksMTEgKzM3OSwzMSBAQCBnZW43X3JlbmRl cl9yaW5nX2ZsdXNoKHN0cnVjdCBpOTE1X3JlcXVlc3QgKnJxLCB1MzIgbW9kZSkKIAlyZXR1cm4g MDsKIH0KIAotc3RhdGljIHZvaWQgcmluZ19zZXR1cF9waHlzX3N0YXR1c19wYWdlKHN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKmVuZ2luZSkKK3N0YXRpYyB2b2lkIHNldF9od3N0YW0oc3RydWN0IGlu dGVsX2VuZ2luZV9jcyAqZW5naW5lLCB1MzIgbWFzaykKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSBlbmdpbmUtPmk5MTU7CisJaTkxNV9yZWdfdCBod3N0YW0gPSBSSU5H X0hXU1RBTShlbmdpbmUtPm1taW9fYmFzZSk7CisKKwkvKgorCSAqIEtlZXAgdGhlIHJlbmRlciBp bnRlcnJ1cHQgdW5tYXNrZWQgYXMgdGhpcyBwYXBlcnMgb3ZlcgorCSAqIGxvc3QgaW50ZXJydXB0 cyBmb2xsb3dpbmcgYSByZXNldC4KKwkgKi8KKwlpZiAoZW5naW5lLT5pZCA9PSBSQ1MpIHsKKwkJ aWYgKElOVEVMX0dFTihlbmdpbmUtPmk5MTUpID49IDYpCisJCQltYXNrICY9IH5CSVQoMCk7CisJ CWVsc2UKKwkJCW1hc2sgJj0gfkk5MTVfVVNFUl9JTlRFUlJVUFQ7CisJfQorCisJaWYgKElOVEVM X0dFTihkZXZfcHJpdikgPj0gMykKKwkJSTkxNV9XUklURShod3N0YW0sIG1hc2spOworCWVsc2UK KwkJSTkxNV9XUklURTE2KGh3c3RhbSwgbWFzayk7Cit9CisKK3N0YXRpYyB2b2lkIHNldF9od3Nf cGdhKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSwgcGh5c19hZGRyX3QgcGh5cykKIHsK IAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSBlbmdpbmUtPmk5MTU7Ci0Jc3Ry dWN0IHBhZ2UgKnBhZ2UgPSB2aXJ0X3RvX3BhZ2UoZW5naW5lLT5zdGF0dXNfcGFnZS5wYWdlX2Fk ZHIpOwotCXBoeXNfYWRkcl90IHBoeXMgPSBQRk5fUEhZUyhwYWdlX3RvX3BmbihwYWdlKSk7CiAJ dTMyIGFkZHI7CiAKIAlhZGRyID0gbG93ZXJfMzJfYml0cyhwaHlzKTsKQEAgLTM5MywxMiArNDEz LDIyIEBAIHN0YXRpYyB2b2lkIHJpbmdfc2V0dXBfcGh5c19zdGF0dXNfcGFnZShzdHJ1Y3QgaW50 ZWxfZW5naW5lX2NzICplbmdpbmUpCiAJSTkxNV9XUklURShIV1NfUEdBLCBhZGRyKTsKIH0KIAot c3RhdGljIHZvaWQgaW50ZWxfcmluZ19zZXR1cF9zdGF0dXNfcGFnZShzdHJ1Y3QgaW50ZWxfZW5n aW5lX2NzICplbmdpbmUpCitzdGF0aWMgdm9pZCByaW5nX3NldHVwX3BoeXNfc3RhdHVzX3BhZ2Uo c3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQoreworCXN0cnVjdCBwYWdlICpwYWdlID0g dmlydF90b19wYWdlKGVuZ2luZS0+c3RhdHVzX3BhZ2UucGFnZV9hZGRyKTsKKwlwaHlzX2FkZHJf dCBwaHlzID0gUEZOX1BIWVMocGFnZV90b19wZm4ocGFnZSkpOworCisJc2V0X2h3c19wZ2EoZW5n aW5lLCBwaHlzKTsKKwlzZXRfaHdzdGFtKGVuZ2luZSwgfjB1KTsKK30KKworc3RhdGljIHZvaWQg c2V0X2h3c3Aoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lLCB1MzIgb2Zmc2V0KQogewog CXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGVuZ2luZS0+aTkxNTsKLQlpOTE1 X3JlZ190IG1taW87CisJaTkxNV9yZWdfdCBod3NwOwogCi0JLyogVGhlIHJpbmcgc3RhdHVzIHBh Z2UgYWRkcmVzc2VzIGFyZSBubyBsb25nZXIgbmV4dCB0byB0aGUgcmVzdCBvZgorCS8qCisJICog VGhlIHJpbmcgc3RhdHVzIHBhZ2UgYWRkcmVzc2VzIGFyZSBubyBsb25nZXIgbmV4dCB0byB0aGUg cmVzdCBvZgogCSAqIHRoZSByaW5nIHJlZ2lzdGVycyBhcyBvZiBnZW43LgogCSAqLwogCWlmIChJ U19HRU4oZGV2X3ByaXYsIDcpKSB7CkBAIC00MTAsNTYgKzQ0MCw1NSBAQCBzdGF0aWMgdm9pZCBp bnRlbF9yaW5nX3NldHVwX3N0YXR1c19wYWdlKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2lu ZSkKIAkJZGVmYXVsdDoKIAkJCUdFTV9CVUdfT04oZW5naW5lLT5pZCk7CiAJCWNhc2UgUkNTOgot CQkJbW1pbyA9IFJFTkRFUl9IV1NfUEdBX0dFTjc7CisJCQlod3NwID0gUkVOREVSX0hXU19QR0Ff R0VONzsKIAkJCWJyZWFrOwogCQljYXNlIEJDUzoKLQkJCW1taW8gPSBCTFRfSFdTX1BHQV9HRU43 OworCQkJaHdzcCA9IEJMVF9IV1NfUEdBX0dFTjc7CiAJCQlicmVhazsKIAkJY2FzZSBWQ1M6Ci0J CQltbWlvID0gQlNEX0hXU19QR0FfR0VONzsKKwkJCWh3c3AgPSBCU0RfSFdTX1BHQV9HRU43Owog CQkJYnJlYWs7CiAJCWNhc2UgVkVDUzoKLQkJCW1taW8gPSBWRUJPWF9IV1NfUEdBX0dFTjc7CisJ CQlod3NwID0gVkVCT1hfSFdTX1BHQV9HRU43OwogCQkJYnJlYWs7CiAJCX0KIAl9IGVsc2UgaWYg KElTX0dFTihkZXZfcHJpdiwgNikpIHsKLQkJbW1pbyA9IFJJTkdfSFdTX1BHQV9HRU42KGVuZ2lu ZS0+bW1pb19iYXNlKTsKKwkJaHdzcCA9IFJJTkdfSFdTX1BHQV9HRU42KGVuZ2luZS0+bW1pb19i YXNlKTsKIAl9IGVsc2UgewotCQltbWlvID0gUklOR19IV1NfUEdBKGVuZ2luZS0+bW1pb19iYXNl KTsKKwkJaHdzcCA9IFJJTkdfSFdTX1BHQShlbmdpbmUtPm1taW9fYmFzZSk7CiAJfQogCi0JaWYg KElOVEVMX0dFTihkZXZfcHJpdikgPj0gNikgewotCQl1MzIgbWFzayA9IH4wdTsKKwlJOTE1X1dS SVRFKGh3c3AsIG9mZnNldCk7CisJUE9TVElOR19SRUFEKGh3c3ApOworfQogCi0JCS8qCi0JCSAq IEtlZXAgdGhlIHJlbmRlciBpbnRlcnJ1cHQgdW5tYXNrZWQgYXMgdGhpcyBwYXBlcnMgb3Zlcgot CQkgKiBsb3N0IGludGVycnVwdHMgZm9sbG93aW5nIGEgcmVzZXQuCi0JCSAqLwotCQlpZiAoZW5n aW5lLT5pZCA9PSBSQ1MpCi0JCQltYXNrICY9IH5CSVQoMCk7CitzdGF0aWMgdm9pZCBmbHVzaF9j c190bGIoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKQoreworCXN0cnVjdCBkcm1faTkx NV9wcml2YXRlICpkZXZfcHJpdiA9IGVuZ2luZS0+aTkxNTsKKwlpOTE1X3JlZ190IGluc3RwbSA9 IFJJTkdfSU5TVFBNKGVuZ2luZS0+bW1pb19iYXNlKTsKIAotCQlJOTE1X1dSSVRFKFJJTkdfSFdT VEFNKGVuZ2luZS0+bW1pb19iYXNlKSwgbWFzayk7Ci0JfQorCWlmICghSVNfR0VOX1JBTkdFKGRl dl9wcml2LCA2LCA3KSkKKwkJcmV0dXJuOwogCi0JSTkxNV9XUklURShtbWlvLCBlbmdpbmUtPnN0 YXR1c19wYWdlLmdndHRfb2Zmc2V0KTsKLQlQT1NUSU5HX1JFQUQobW1pbyk7CisJLyogcmluZyBz aG91bGQgYmUgaWRsZSBiZWZvcmUgaXNzdWluZyBhIHN5bmMgZmx1c2gqLworCVdBUk5fT04oKEk5 MTVfUkVBRF9NT0RFKGVuZ2luZSkgJiBNT0RFX0lETEUpID09IDApOwogCi0JLyogRmx1c2ggdGhl IFRMQiBmb3IgdGhpcyBwYWdlICovCi0JaWYgKElTX0dFTl9SQU5HRShkZXZfcHJpdiwgNiwgNykp IHsKLQkJaTkxNV9yZWdfdCByZWcgPSBSSU5HX0lOU1RQTShlbmdpbmUtPm1taW9fYmFzZSk7CisJ STkxNV9XUklURShpbnN0cG0sCisJCSAgIF9NQVNLRURfQklUX0VOQUJMRShJTlNUUE1fVExCX0lO VkFMSURBVEUgfAorCQkJCSAgICAgIElOU1RQTV9TWU5DX0ZMVVNIKSk7CisJaWYgKGludGVsX3dh aXRfZm9yX3JlZ2lzdGVyKGRldl9wcml2LAorCQkJCSAgICBpbnN0cG0sIElOU1RQTV9TWU5DX0ZM VVNILCAwLAorCQkJCSAgICAxMDAwKSkKKwkJRFJNX0VSUk9SKCIlczogd2FpdCBmb3IgU3luY0Zs dXNoIHRvIGNvbXBsZXRlIGZvciBUTEIgaW52YWxpZGF0aW9uIHRpbWVkIG91dFxuIiwKKwkJCSAg ZW5naW5lLT5uYW1lKTsKK30KIAotCQkvKiByaW5nIHNob3VsZCBiZSBpZGxlIGJlZm9yZSBpc3N1 aW5nIGEgc3luYyBmbHVzaCovCi0JCVdBUk5fT04oKEk5MTVfUkVBRF9NT0RFKGVuZ2luZSkgJiBN T0RFX0lETEUpID09IDApOworc3RhdGljIHZvaWQgcmluZ19zZXR1cF9zdGF0dXNfcGFnZShzdHJ1 Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCit7CisJc2V0X2h3c3AoZW5naW5lLCBlbmdpbmUt PnN0YXR1c19wYWdlLmdndHRfb2Zmc2V0KTsKKwlzZXRfaHdzdGFtKGVuZ2luZSwgfjB1KTsKIAot CQlJOTE1X1dSSVRFKHJlZywKLQkJCSAgIF9NQVNLRURfQklUX0VOQUJMRShJTlNUUE1fVExCX0lO VkFMSURBVEUgfAotCQkJCQkgICAgICBJTlNUUE1fU1lOQ19GTFVTSCkpOwotCQlpZiAoaW50ZWxf d2FpdF9mb3JfcmVnaXN0ZXIoZGV2X3ByaXYsCi0JCQkJCSAgICByZWcsIElOU1RQTV9TWU5DX0ZM VVNILCAwLAotCQkJCQkgICAgMTAwMCkpCi0JCQlEUk1fRVJST1IoIiVzOiB3YWl0IGZvciBTeW5j Rmx1c2ggdG8gY29tcGxldGUgZm9yIFRMQiBpbnZhbGlkYXRpb24gdGltZWQgb3V0XG4iLAotCQkJ CSAgZW5naW5lLT5uYW1lKTsKLQl9CisJZmx1c2hfY3NfdGxiKGVuZ2luZSk7CiB9CiAKIHN0YXRp YyBib29sIHN0b3BfcmluZyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUpCkBAIC01Mjks NyArNTU4LDcgQEAgc3RhdGljIGludCBpbml0X3JpbmdfY29tbW9uKHN0cnVjdCBpbnRlbF9lbmdp bmVfY3MgKmVuZ2luZSkKIAlpZiAoSFdTX05FRURTX1BIWVNJQ0FMKGRldl9wcml2KSkKIAkJcmlu Z19zZXR1cF9waHlzX3N0YXR1c19wYWdlKGVuZ2luZSk7CiAJZWxzZQotCQlpbnRlbF9yaW5nX3Nl dHVwX3N0YXR1c19wYWdlKGVuZ2luZSk7CisJCXJpbmdfc2V0dXBfc3RhdHVzX3BhZ2UoZW5naW5l KTsKIAogCWludGVsX2VuZ2luZV9yZXNldF9icmVhZGNydW1icyhlbmdpbmUpOwogCi0tIAoyLjIw LjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVs LWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=