From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 16/25] drm/i915/selftests: Mock the engine sorting for easy validation Date: Sun, 10 Nov 2019 18:57:57 +0000 Message-ID: <20191110185806.17413-16-chris@chris-wilson.co.uk> References: <20191110185806.17413-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 E0A066E79F for ; Sun, 10 Nov 2019 18:58:27 +0000 (UTC) In-Reply-To: <20191110185806.17413-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 VG8gbWFrZSBleHBsb3JhdGlvbiBvZiBkaWZmZXJlbnQgc29ydGluZyBvcmRlcnMgYW5kIHByZXNl bnRhdGlvbiBvZiB0aGUKZW5naW5lcyB2aWEgdGhlIHVhYmkgZWFzaWVyLCB3cmFwIHRoZSBiYXNp YyBlbmdpbmUgcmVnaXN0cmF0aW9uIGludG8gYQptb2NrIChha2Egc3RhbmRhbG9uZSkgc2VsZnRl c3QuCgpTaWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51 az4KQ2M6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Ci0tLQogZHJp dmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZW5naW5lX3VzZXIuYyAgIHwgIDQgKwogLi4uL2dw dS9kcm0vaTkxNS9ndC9zZWxmdGVzdF9lbmdpbmVfdXNlci5jICAgIHwgODYgKysrKysrKysrKysr KysrKysrKwogLi4uL2RybS9pOTE1L3NlbGZ0ZXN0cy9pOTE1X21vY2tfc2VsZnRlc3RzLmggIHwg IDMgKy0KIDMgZmlsZXMgY2hhbmdlZCwgOTIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQog Y3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L3NlbGZ0ZXN0X2VuZ2lu ZV91c2VyLmMKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9lbmdp bmVfdXNlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZW5naW5lX3VzZXIuYwpp bmRleCA3ZjcxNTBhNzMzZjQuLjE1YmIwNWFhMTk4NiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZ3QvaW50ZWxfZW5naW5lX3VzZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9ndC9pbnRlbF9lbmdpbmVfdXNlci5jCkBAIC0yOTMsMyArMjkzLDcgQEAgdW5zaWduZWQgaW50 IGludGVsX2VuZ2luZXNfaGFzX2NvbnRleHRfaXNvbGF0aW9uKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICppOTE1KQogCiAJcmV0dXJuIHdoaWNoOwogfQorCisjaWYgSVNfRU5BQkxFRChDT05GSUdf RFJNX0k5MTVfU0VMRlRFU1QpCisjaW5jbHVkZSAic2VsZnRlc3RfZW5naW5lX3VzZXIuYyIKKyNl bmRpZgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Qvc2VsZnRlc3RfZW5naW5l X3VzZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L3NlbGZ0ZXN0X2VuZ2luZV91c2VyLmMK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5kMTFjYzZhNGFmMDkKLS0t IC9kZXYvbnVsbAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9zZWxmdGVzdF9lbmdpbmVf dXNlci5jCkBAIC0wLDAgKzEsODYgQEAKKy8qCisgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjog TUlUCisgKgorICogQ29weXJpZ2h0IMKpIDIwMTkgSW50ZWwgQ29ycG9yYXRpb24KKyAqLworCisj aW5jbHVkZSAiaTkxNV9kcnYuaCIKKworc3RhdGljIHZvaWQgZGVzdHJveV9lbmdpbmVzKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICppOTE1KQoreworCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVu Z2luZSwgKm5leHQ7CisKKwlyYnRyZWVfcG9zdG9yZGVyX2Zvcl9lYWNoX2VudHJ5X3NhZmUoZW5n aW5lLCBuZXh0LAorCQkJCQkgICAgICZpOTE1LT51YWJpX2VuZ2luZXMsIHVhYmlfbm9kZSkKKwkJ a2ZyZWUoZW5naW5lKTsKK30KKworc3RhdGljIGludCBtb2NrX3VhYmlfZW5naW5lcyh2b2lkICph cmcpCit7CisJc3RhdGljIGNvbnN0IHU4IGxpbWl0c1tdID0geworCQlbUkVOREVSX0NMQVNTXSA9 IDEsCisJCVtDT1BZX0VOR0lORV9DTEFTU10gPSAxLAorCQlbVklERU9fREVDT0RFX0NMQVNTXSA9 IEk5MTVfTUFYX1ZDUywKKwkJW1ZJREVPX0VOSEFOQ0VNRU5UX0NMQVNTXSA9IEk5MTVfTUFYX1ZF Q1MsCisJfTsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmU7CisJc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmk5MTU7CisJdW5zaWduZWQgbG9uZyBudW1fZW5naW5lczsKKwl1bnNpZ25l ZCBsb25nIGZvdW5kOworCWludCBjLCBpOworCWludCBlcnIgPSAwOworCisJaTkxNSA9IGt6YWxs b2Moc2l6ZW9mKCppOTE1KSwgR0ZQX0tFUk5FTCk7CisJaWYgKCFpOTE1KQorCQlyZXR1cm4gLUVO T01FTTsKKworCW51bV9lbmdpbmVzID0gMDsKKwlmb3IgKGMgPSAwOyBjIDwgQVJSQVlfU0laRShs aW1pdHMpOyBjKyspIHsKKwkJZm9yIChpID0gMDsgaSA8IGxpbWl0c1tjXTsgaSsrKSB7CisJCQll bmdpbmUgPSBremFsbG9jKHNpemVvZigqZW5naW5lKSwgR0ZQX0tFUk5FTCk7CisJCQlpZiAoIWVu Z2luZSkKKwkJCQlnb3RvIGVycjsKKworCQkJZW5naW5lLT5pOTE1ID0gaTkxNTsKKworCQkJZW5n aW5lLT5jbGFzcyA9IGM7CisJCQllbmdpbmUtPmluc3RhbmNlID0gaTsKKworCQkJaW50ZWxfZW5n aW5lX2FkZF91c2VyKGVuZ2luZSk7CisJCQludW1fZW5naW5lcysrOworCQl9CisJfQorCitlcnI6 CisJLyogQ2hlY2sgYXMgZmFyIGFzIHdlIGdvdCB1cCB0byAtLSB3aWxsIGV4cGxvZGUgaWYgbm90 IHF1aXRlIHJpZ2h0ICovCisJaW50ZWxfZW5naW5lc19kcml2ZXJfcmVnaXN0ZXIoaTkxNSk7CisK Kwlmb3VuZCA9IDA7CisJZm9yX2VhY2hfdWFiaV9lbmdpbmUoZW5naW5lLCBpOTE1KSB7CisJCXBy X2luZm8oIiVzICglZCwgJWQpIC0+IFslZCwgJWRdXG4iLAorCQkJZW5naW5lLT5uYW1lLAorCQkJ ZW5naW5lLT51YWJpX2NsYXNzLAorCQkJZW5naW5lLT51YWJpX2luc3RhbmNlLAorCQkJZW5naW5l LT5jbGFzcywKKwkJCWVuZ2luZS0+aW5zdGFuY2UpOworCQlmb3VuZCsrOworCX0KKwlpZiAoZm91 bmQgIT0gbnVtX2VuZ2luZXMpIHsKKwkJcHJfZXJyKCJSZWdpc3RlcmVkICVsdSBlbmdpbmVzOyBv bmx5IGZvdW5kICVsdSB1QUJJIGVuZ2luZXNcbiIsCisJCSAgICAgICBudW1fZW5naW5lcywgZm91 bmQpOworCQllcnIgPSAtRUlOVkFMOworCX0KKworCWRlc3Ryb3lfZW5naW5lcyhpOTE1KTsKKwlr ZnJlZShpOTE1KTsKKwlyZXR1cm4gZXJyOworfQorCitpbnQgaW50ZWxfZW5naW5lX3VzZXJfbW9j a19zZWxmdGVzdHModm9pZCkKK3sKKwlzdGF0aWMgY29uc3Qgc3RydWN0IGk5MTVfc3VidGVzdCB0 ZXN0c1tdID0geworCQlTVUJURVNUKG1vY2tfdWFiaV9lbmdpbmVzKSwKKwl9OworCisJcmV0dXJu IGk5MTVfc3VidGVzdHModGVzdHMsIE5VTEwpOworfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvc2VsZnRlc3RzL2k5MTVfbW9ja19zZWxmdGVzdHMuaCBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L3NlbGZ0ZXN0cy9pOTE1X21vY2tfc2VsZnRlc3RzLmgKaW5kZXggYWE1YTBlN2Y1ZDll Li45YTJkZDgzNTA2NTAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0 cy9pOTE1X21vY2tfc2VsZnRlc3RzLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRl c3RzL2k5MTVfbW9ja19zZWxmdGVzdHMuaApAQCAtMTQsNyArMTQsOCBAQCBzZWxmdGVzdChmZW5j ZSwgaTkxNV9zd19mZW5jZV9tb2NrX3NlbGZ0ZXN0cykKIHNlbGZ0ZXN0KHNjYXR0ZXJsaXN0LCBz Y2F0dGVybGlzdF9tb2NrX3NlbGZ0ZXN0cykKIHNlbGZ0ZXN0KHN5bmNtYXAsIGk5MTVfc3luY21h cF9tb2NrX3NlbGZ0ZXN0cykKIHNlbGZ0ZXN0KHVuY29yZSwgaW50ZWxfdW5jb3JlX21vY2tfc2Vs ZnRlc3RzKQotc2VsZnRlc3QoZW5naW5lLCBpbnRlbF9lbmdpbmVfY3NfbW9ja19zZWxmdGVzdHMp CitzZWxmdGVzdChlbmdpbmVfY3MsIGludGVsX2VuZ2luZV9jc19tb2NrX3NlbGZ0ZXN0cykKK3Nl bGZ0ZXN0KGVuZ2luZV91c2VyLCBpbnRlbF9lbmdpbmVfdXNlcl9tb2NrX3NlbGZ0ZXN0cykKIHNl bGZ0ZXN0KHRpbWVsaW5lcywgaW50ZWxfdGltZWxpbmVfbW9ja19zZWxmdGVzdHMpCiBzZWxmdGVz dChyZXF1ZXN0cywgaTkxNV9yZXF1ZXN0X21vY2tfc2VsZnRlc3RzKQogc2VsZnRlc3Qob2JqZWN0 cywgaTkxNV9nZW1fb2JqZWN0X21vY2tfc2VsZnRlc3RzKQotLSAKMi4yNC4wCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBs aXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng= From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8BEA5C43331 for ; Sun, 10 Nov 2019 18:58:45 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 6FACA20842 for ; Sun, 10 Nov 2019 18:58:45 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6FACA20842 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=chris-wilson.co.uk Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 447C56E7BD; Sun, 10 Nov 2019 18:58:36 +0000 (UTC) Received: from fireflyinternet.com (mail.fireflyinternet.com [109.228.58.192]) by gabe.freedesktop.org (Postfix) with ESMTPS id E0A066E79F for ; Sun, 10 Nov 2019 18:58:27 +0000 (UTC) X-Default-Received-SPF: pass (skip=forwardok (res=PASS)) x-ip-name=78.156.65.138; Received: from haswell.alporthouse.com (unverified [78.156.65.138]) by fireflyinternet.com (Firefly Internet (M1)) with ESMTP id 19151896-1500050 for multiple; Sun, 10 Nov 2019 18:58:12 +0000 From: Chris Wilson To: intel-gfx@lists.freedesktop.org Date: Sun, 10 Nov 2019 18:57:57 +0000 Message-Id: <20191110185806.17413-16-chris@chris-wilson.co.uk> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191110185806.17413-1-chris@chris-wilson.co.uk> References: <20191110185806.17413-1-chris@chris-wilson.co.uk> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH 16/25] drm/i915/selftests: Mock the engine sorting for easy validation X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Message-ID: <20191110185757.1X_osMQd5OxjUoEBPmIN9g0OyLTiee96QxT10tPHFSI@z> VG8gbWFrZSBleHBsb3JhdGlvbiBvZiBkaWZmZXJlbnQgc29ydGluZyBvcmRlcnMgYW5kIHByZXNl bnRhdGlvbiBvZiB0aGUKZW5naW5lcyB2aWEgdGhlIHVhYmkgZWFzaWVyLCB3cmFwIHRoZSBiYXNp YyBlbmdpbmUgcmVnaXN0cmF0aW9uIGludG8gYQptb2NrIChha2Egc3RhbmRhbG9uZSkgc2VsZnRl c3QuCgpTaWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51 az4KQ2M6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Ci0tLQogZHJp dmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZW5naW5lX3VzZXIuYyAgIHwgIDQgKwogLi4uL2dw dS9kcm0vaTkxNS9ndC9zZWxmdGVzdF9lbmdpbmVfdXNlci5jICAgIHwgODYgKysrKysrKysrKysr KysrKysrKwogLi4uL2RybS9pOTE1L3NlbGZ0ZXN0cy9pOTE1X21vY2tfc2VsZnRlc3RzLmggIHwg IDMgKy0KIDMgZmlsZXMgY2hhbmdlZCwgOTIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQog Y3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L3NlbGZ0ZXN0X2VuZ2lu ZV91c2VyLmMKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9lbmdp bmVfdXNlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3QvaW50ZWxfZW5naW5lX3VzZXIuYwpp bmRleCA3ZjcxNTBhNzMzZjQuLjE1YmIwNWFhMTk4NiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZ3QvaW50ZWxfZW5naW5lX3VzZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9ndC9pbnRlbF9lbmdpbmVfdXNlci5jCkBAIC0yOTMsMyArMjkzLDcgQEAgdW5zaWduZWQgaW50 IGludGVsX2VuZ2luZXNfaGFzX2NvbnRleHRfaXNvbGF0aW9uKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICppOTE1KQogCiAJcmV0dXJuIHdoaWNoOwogfQorCisjaWYgSVNfRU5BQkxFRChDT05GSUdf RFJNX0k5MTVfU0VMRlRFU1QpCisjaW5jbHVkZSAic2VsZnRlc3RfZW5naW5lX3VzZXIuYyIKKyNl bmRpZgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Qvc2VsZnRlc3RfZW5naW5l X3VzZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L3NlbGZ0ZXN0X2VuZ2luZV91c2VyLmMK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5kMTFjYzZhNGFmMDkKLS0t IC9kZXYvbnVsbAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9zZWxmdGVzdF9lbmdpbmVf dXNlci5jCkBAIC0wLDAgKzEsODYgQEAKKy8qCisgKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjog TUlUCisgKgorICogQ29weXJpZ2h0IMKpIDIwMTkgSW50ZWwgQ29ycG9yYXRpb24KKyAqLworCisj aW5jbHVkZSAiaTkxNV9kcnYuaCIKKworc3RhdGljIHZvaWQgZGVzdHJveV9lbmdpbmVzKHN0cnVj dCBkcm1faTkxNV9wcml2YXRlICppOTE1KQoreworCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVu Z2luZSwgKm5leHQ7CisKKwlyYnRyZWVfcG9zdG9yZGVyX2Zvcl9lYWNoX2VudHJ5X3NhZmUoZW5n aW5lLCBuZXh0LAorCQkJCQkgICAgICZpOTE1LT51YWJpX2VuZ2luZXMsIHVhYmlfbm9kZSkKKwkJ a2ZyZWUoZW5naW5lKTsKK30KKworc3RhdGljIGludCBtb2NrX3VhYmlfZW5naW5lcyh2b2lkICph cmcpCit7CisJc3RhdGljIGNvbnN0IHU4IGxpbWl0c1tdID0geworCQlbUkVOREVSX0NMQVNTXSA9 IDEsCisJCVtDT1BZX0VOR0lORV9DTEFTU10gPSAxLAorCQlbVklERU9fREVDT0RFX0NMQVNTXSA9 IEk5MTVfTUFYX1ZDUywKKwkJW1ZJREVPX0VOSEFOQ0VNRU5UX0NMQVNTXSA9IEk5MTVfTUFYX1ZF Q1MsCisJfTsKKwlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmU7CisJc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmk5MTU7CisJdW5zaWduZWQgbG9uZyBudW1fZW5naW5lczsKKwl1bnNpZ25l ZCBsb25nIGZvdW5kOworCWludCBjLCBpOworCWludCBlcnIgPSAwOworCisJaTkxNSA9IGt6YWxs b2Moc2l6ZW9mKCppOTE1KSwgR0ZQX0tFUk5FTCk7CisJaWYgKCFpOTE1KQorCQlyZXR1cm4gLUVO T01FTTsKKworCW51bV9lbmdpbmVzID0gMDsKKwlmb3IgKGMgPSAwOyBjIDwgQVJSQVlfU0laRShs aW1pdHMpOyBjKyspIHsKKwkJZm9yIChpID0gMDsgaSA8IGxpbWl0c1tjXTsgaSsrKSB7CisJCQll bmdpbmUgPSBremFsbG9jKHNpemVvZigqZW5naW5lKSwgR0ZQX0tFUk5FTCk7CisJCQlpZiAoIWVu Z2luZSkKKwkJCQlnb3RvIGVycjsKKworCQkJZW5naW5lLT5pOTE1ID0gaTkxNTsKKworCQkJZW5n aW5lLT5jbGFzcyA9IGM7CisJCQllbmdpbmUtPmluc3RhbmNlID0gaTsKKworCQkJaW50ZWxfZW5n aW5lX2FkZF91c2VyKGVuZ2luZSk7CisJCQludW1fZW5naW5lcysrOworCQl9CisJfQorCitlcnI6 CisJLyogQ2hlY2sgYXMgZmFyIGFzIHdlIGdvdCB1cCB0byAtLSB3aWxsIGV4cGxvZGUgaWYgbm90 IHF1aXRlIHJpZ2h0ICovCisJaW50ZWxfZW5naW5lc19kcml2ZXJfcmVnaXN0ZXIoaTkxNSk7CisK Kwlmb3VuZCA9IDA7CisJZm9yX2VhY2hfdWFiaV9lbmdpbmUoZW5naW5lLCBpOTE1KSB7CisJCXBy X2luZm8oIiVzICglZCwgJWQpIC0+IFslZCwgJWRdXG4iLAorCQkJZW5naW5lLT5uYW1lLAorCQkJ ZW5naW5lLT51YWJpX2NsYXNzLAorCQkJZW5naW5lLT51YWJpX2luc3RhbmNlLAorCQkJZW5naW5l LT5jbGFzcywKKwkJCWVuZ2luZS0+aW5zdGFuY2UpOworCQlmb3VuZCsrOworCX0KKwlpZiAoZm91 bmQgIT0gbnVtX2VuZ2luZXMpIHsKKwkJcHJfZXJyKCJSZWdpc3RlcmVkICVsdSBlbmdpbmVzOyBv bmx5IGZvdW5kICVsdSB1QUJJIGVuZ2luZXNcbiIsCisJCSAgICAgICBudW1fZW5naW5lcywgZm91 bmQpOworCQllcnIgPSAtRUlOVkFMOworCX0KKworCWRlc3Ryb3lfZW5naW5lcyhpOTE1KTsKKwlr ZnJlZShpOTE1KTsKKwlyZXR1cm4gZXJyOworfQorCitpbnQgaW50ZWxfZW5naW5lX3VzZXJfbW9j a19zZWxmdGVzdHModm9pZCkKK3sKKwlzdGF0aWMgY29uc3Qgc3RydWN0IGk5MTVfc3VidGVzdCB0 ZXN0c1tdID0geworCQlTVUJURVNUKG1vY2tfdWFiaV9lbmdpbmVzKSwKKwl9OworCisJcmV0dXJu IGk5MTVfc3VidGVzdHModGVzdHMsIE5VTEwpOworfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvc2VsZnRlc3RzL2k5MTVfbW9ja19zZWxmdGVzdHMuaCBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L3NlbGZ0ZXN0cy9pOTE1X21vY2tfc2VsZnRlc3RzLmgKaW5kZXggYWE1YTBlN2Y1ZDll Li45YTJkZDgzNTA2NTAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0 cy9pOTE1X21vY2tfc2VsZnRlc3RzLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRl c3RzL2k5MTVfbW9ja19zZWxmdGVzdHMuaApAQCAtMTQsNyArMTQsOCBAQCBzZWxmdGVzdChmZW5j ZSwgaTkxNV9zd19mZW5jZV9tb2NrX3NlbGZ0ZXN0cykKIHNlbGZ0ZXN0KHNjYXR0ZXJsaXN0LCBz Y2F0dGVybGlzdF9tb2NrX3NlbGZ0ZXN0cykKIHNlbGZ0ZXN0KHN5bmNtYXAsIGk5MTVfc3luY21h cF9tb2NrX3NlbGZ0ZXN0cykKIHNlbGZ0ZXN0KHVuY29yZSwgaW50ZWxfdW5jb3JlX21vY2tfc2Vs ZnRlc3RzKQotc2VsZnRlc3QoZW5naW5lLCBpbnRlbF9lbmdpbmVfY3NfbW9ja19zZWxmdGVzdHMp CitzZWxmdGVzdChlbmdpbmVfY3MsIGludGVsX2VuZ2luZV9jc19tb2NrX3NlbGZ0ZXN0cykKK3Nl bGZ0ZXN0KGVuZ2luZV91c2VyLCBpbnRlbF9lbmdpbmVfdXNlcl9tb2NrX3NlbGZ0ZXN0cykKIHNl bGZ0ZXN0KHRpbWVsaW5lcywgaW50ZWxfdGltZWxpbmVfbW9ja19zZWxmdGVzdHMpCiBzZWxmdGVz dChyZXF1ZXN0cywgaTkxNV9yZXF1ZXN0X21vY2tfc2VsZnRlc3RzKQogc2VsZnRlc3Qob2JqZWN0 cywgaTkxNV9nZW1fb2JqZWN0X21vY2tfc2VsZnRlc3RzKQotLSAKMi4yNC4wCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBs aXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=