From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH i-g-t v2] tests/gem_eio: Never re-use contexts which were in the middle of GPU reset Date: Thu, 29 Mar 2018 10:34:40 +0100 Message-ID: <20180329093440.312-1-tvrtko.ursulin@linux.intel.com> References: <152218018504.10679.17153519565017698305@mail.alporthouse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wr0-x241.google.com (mail-wr0-x241.google.com [IPv6:2a00:1450:400c:c0c::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id 170236E12E for ; Thu, 29 Mar 2018 09:34:50 +0000 (UTC) Received: by mail-wr0-x241.google.com with SMTP id o8so4790346wra.1 for ; Thu, 29 Mar 2018 02:34:50 -0700 (PDT) In-Reply-To: <152218018504.10679.17153519565017698305@mail.alporthouse.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: igt-dev@lists.freedesktop.org Cc: Intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkNvbnRleHRz IGV4ZWN1dGluZyB3aGVuIHJlc2V0IHRyaWdnZXJzIGFyZSBwb3RlbnRpYWx5IGNvcnJ1cHQgc28g dHJ5aW5nIHRvCnVzZSB0aGVtIGZyb20gYSBzdWJzZXF1ZW50IHRlc3QgKGxpa2UgdGhlIGRlZmF1 bHQgY29udGV4dCkgY2FuIGhhbmcgdGhlCkdQVSBvciBldmVuIHRoZSBkcml2ZXIuCgpXb3JrYXJv dW5kIHRoYXQgYnkgYWx3YXlzIGNyZWF0aW5nIGEgZGVkaWNhdGVkIGNvbnRleHQgd2hpY2ggd2ls bCBiZQpydW5uaW5nIHdoZW4gR1BVIHJlc2V0IGhhcHBlbnMuCgp2MjoKICogRXhwb3J0IGFuZCB1 c2UgZ2VtX3Jlb3Blbl9kZXZpY2Ugc28gdGhlIHRlc3Qgd29ya3Mgb24gb2xkIGdlbnMgYXMgd2Vs bC4KICAgKENocmlzIFdpbHNvbikKClNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0 a28udXJzdWxpbkBpbnRlbC5jb20+Ci0tLQogbGliL2k5MTUvZ2VtX3N1Ym1pc3Npb24uYyB8IDEx ICsrKysrLS0KIGxpYi9pOTE1L2dlbV9zdWJtaXNzaW9uLmggfCAgMiArKwogdGVzdHMvZ2VtX2Vp by5jICAgICAgICAgICB8IDc3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0t LS0tLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDY0IGluc2VydGlvbnMoKyksIDI2IGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL2xpYi9pOTE1L2dlbV9zdWJtaXNzaW9uLmMgYi9saWIvaTkxNS9n ZW1fc3VibWlzc2lvbi5jCmluZGV4IDdkM2NiZGJmOGU3Ny4uMmZkNDYwZDVlZDJiIDEwMDY0NAot LS0gYS9saWIvaTkxNS9nZW1fc3VibWlzc2lvbi5jCisrKyBiL2xpYi9pOTE1L2dlbV9zdWJtaXNz aW9uLmMKQEAgLTE2NSw3ICsxNjUsMTQgQEAgYm9vbCBnZW1faGFzX2d1Y19zdWJtaXNzaW9uKGlu dCBmZCkKIAlyZXR1cm4gZ2VtX3N1Ym1pc3Npb25fbWV0aG9kKGZkKSAmIEdFTV9TVUJNSVNTSU9O X0dVQzsKIH0KIAotc3RhdGljIGludCByZW9wZW5fZHJpdmVyKGludCBmZCkKKy8qKgorICogZ2Vt X3Jlb3Blbl9kcml2ZXI6CisgKiBAZmQ6IHJlLW9wZW4gdGhlIGk5MTUgZHJtIGZpbGUgZGVzY3Jp cHRvcgorICoKKyAqIFJlLW9wZW5zIHRoZSBkcm0gZmQgd2hpY2ggaXMgdXNlZnVsIGluIGluc3Rh bmNlcyB3aGVyZSBhIGNsZWFuIGRlZmF1bHQKKyAqIGNvbnRleHQgaXMgbmVlZGVkLgorICovCitp bnQgZ2VtX3Jlb3Blbl9kcml2ZXIoaW50IGZkKQogewogCWNoYXIgcGF0aFsyNTZdOwogCkBAIC0y MDEsNyArMjA4LDcgQEAgdm9pZCBnZW1fdGVzdF9lbmdpbmUoaW50IGk5MTUsIHVuc2lnbmVkIGlu dCBlbmdpbmUpCiAJCS5idWZmZXJfY291bnQgPSAxLAogCX07CiAKLQlpOTE1ID0gcmVvcGVuX2Ry aXZlcihpOTE1KTsKKwlpOTE1ID0gZ2VtX3Jlb3Blbl9kcml2ZXIoaTkxNSk7CiAJaWd0X2Fzc2Vy dCghaXNfd2VkZ2VkKGk5MTUpKTsKIAogCW9iai5oYW5kbGUgPSBnZW1fY3JlYXRlKGk5MTUsIDQw OTYpOwpkaWZmIC0tZ2l0IGEvbGliL2k5MTUvZ2VtX3N1Ym1pc3Npb24uaCBiL2xpYi9pOTE1L2dl bV9zdWJtaXNzaW9uLmgKaW5kZXggNmIzOWEwNTMyMjk1Li5mOTRlYWJiMjAxYjQgMTAwNjQ0Ci0t LSBhL2xpYi9pOTE1L2dlbV9zdWJtaXNzaW9uLmgKKysrIGIvbGliL2k5MTUvZ2VtX3N1Ym1pc3Np b24uaApAQCAtMzUsNCArMzUsNiBAQCBib29sIGdlbV9oYXNfZ3VjX3N1Ym1pc3Npb24oaW50IGZk KTsKIAogdm9pZCBnZW1fdGVzdF9lbmdpbmUoaW50IGZkLCB1bnNpZ25lZCBpbnQgZW5naW5lKTsK IAoraW50IGdlbV9yZW9wZW5fZHJpdmVyKGludCBmZCk7CisKICNlbmRpZiAvKiBHRU1fU1VCTUlT U0lPTl9IICovCmRpZmYgLS1naXQgYS90ZXN0cy9nZW1fZWlvLmMgYi90ZXN0cy9nZW1fZWlvLmMK aW5kZXggYjgyNGQ5ZDRjOWMwLi5iN2M1MDQ3ZjA4MTYgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2dlbV9l aW8uYworKysgYi90ZXN0cy9nZW1fZWlvLmMKQEAgLTI1NSw2ICsyNTUsNyBAQCBzdGF0aWMgdm9p ZCB0ZXN0X3dhaXQoaW50IGZkLCB1bnNpZ25lZCBpbnQgZmxhZ3MsIHVuc2lnbmVkIGludCB3YWl0 KQogewogCWlndF9zcGluX3QgKmhhbmc7CiAKKwlmZCA9IGdlbV9yZW9wZW5fZHJpdmVyKGZkKTsK IAlpZ3RfcmVxdWlyZV9nZW0oZmQpOwogCiAJLyoKQEAgLTI3NiwxMCArMjc3LDE0IEBAIHN0YXRp YyB2b2lkIHRlc3Rfd2FpdChpbnQgZmQsIHVuc2lnbmVkIGludCBmbGFncywgdW5zaWduZWQgaW50 IHdhaXQpCiAJaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKHRydWUpKTsKIAogCXRyaWdn ZXJfcmVzZXQoZmQpOworCWNsb3NlKGZkKTsKIH0KIAogc3RhdGljIHZvaWQgdGVzdF9zdXNwZW5k KGludCBmZCwgaW50IHN0YXRlKQogeworCWZkID0gZ2VtX3Jlb3Blbl9kcml2ZXIoZmQpOworCWln dF9yZXF1aXJlX2dlbShmZCk7CisKIAkvKiBEbyBhIHN1c3BlbmQgZmlyc3Qgc28gdGhhdCB3ZSBk b24ndCBza2lwIGluc2lkZSB0aGUgdGVzdCAqLwogCWlndF9zeXN0ZW1fc3VzcGVuZF9hdXRvcmVz dW1lKHN0YXRlLCBTVVNQRU5EX1RFU1RfREVWSUNFUyk7CiAKQEAgLTI5MSwyNyArMjk2LDMyIEBA IHN0YXRpYyB2b2lkIHRlc3Rfc3VzcGVuZChpbnQgZmQsIGludCBzdGF0ZSkKIAogCWlndF9yZXF1 aXJlKGk5MTVfcmVzZXRfY29udHJvbCh0cnVlKSk7CiAJdHJpZ2dlcl9yZXNldChmZCk7CisJY2xv c2UoZmQpOwogfQogCiBzdGF0aWMgdm9pZCB0ZXN0X2luZmxpZ2h0KGludCBmZCwgdW5zaWduZWQg aW50IHdhaXQpCiB7Ci0JY29uc3QgdWludDMyX3QgYmJlID0gTUlfQkFUQ0hfQlVGRkVSX0VORDsK LQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNfb2JqZWN0MiBvYmpbMl07CisJaW50IHBhcmVudF9m ZCA9IGZkOwogCXVuc2lnbmVkIGludCBlbmdpbmU7CiAKIAlpZ3RfcmVxdWlyZV9nZW0oZmQpOwog CWlndF9yZXF1aXJlKGdlbV9oYXNfZXhlY19mZW5jZShmZCkpOwogCi0JbWVtc2V0KG9iaiwgMCwg c2l6ZW9mKG9iaikpOwotCW9ialswXS5mbGFncyA9IEVYRUNfT0JKRUNUX1dSSVRFOwotCW9ialsx XS5oYW5kbGUgPSBnZW1fY3JlYXRlKGZkLCA0MDk2KTsKLQlnZW1fd3JpdGUoZmQsIG9ialsxXS5o YW5kbGUsIDAsICZiYmUsIHNpemVvZihiYmUpKTsKLQotCWZvcl9lYWNoX2VuZ2luZShmZCwgZW5n aW5lKSB7CisJZm9yX2VhY2hfZW5naW5lKHBhcmVudF9mZCwgZW5naW5lKSB7CisJCWNvbnN0IHVp bnQzMl90IGJiZSA9IE1JX0JBVENIX0JVRkZFUl9FTkQ7CisJCXN0cnVjdCBkcm1faTkxNV9nZW1f ZXhlY19vYmplY3QyIG9ialsyXTsKIAkJc3RydWN0IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyMiBl eGVjYnVmOwogCQlpZ3Rfc3Bpbl90ICpoYW5nOwogCQlpbnQgZmVuY2VbNjRdOyAvKiBjb25zZXJ2 YXRpdmUgZXN0aW1hdGUgb2YgcmluZyBzaXplICovCiAKKwkJZmQgPSBnZW1fcmVvcGVuX2RyaXZl cihwYXJlbnRfZmQpOworCQlpZ3RfcmVxdWlyZV9nZW0oZmQpOworCisJCW1lbXNldChvYmosIDAs IHNpemVvZihvYmopKTsKKwkJb2JqWzBdLmZsYWdzID0gRVhFQ19PQkpFQ1RfV1JJVEU7CisJCW9i alsxXS5oYW5kbGUgPSBnZW1fY3JlYXRlKGZkLCA0MDk2KTsKKwkJZ2VtX3dyaXRlKGZkLCBvYmpb MV0uaGFuZGxlLCAwLCAmYmJlLCBzaXplb2YoYmJlKSk7CisKIAkJZ2VtX3F1aWVzY2VudF9ncHUo ZmQpOwogCQlpZ3RfZGVidWcoIlN0YXJ0aW5nICVzIG9uIGVuZ2luZSAnJXMnXG4iLCBfX2Z1bmNf XywgZV9fLT5uYW1lKTsKIAkJaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKGZhbHNlKSk7 CkBAIC0zNDAsNiArMzUwLDkgQEAgc3RhdGljIHZvaWQgdGVzdF9pbmZsaWdodChpbnQgZmQsIHVu c2lnbmVkIGludCB3YWl0KQogCQlpZ3Rfc3Bpbl9iYXRjaF9mcmVlKGZkLCBoYW5nKTsKIAkJaWd0 X2Fzc2VydChpOTE1X3Jlc2V0X2NvbnRyb2wodHJ1ZSkpOwogCQl0cmlnZ2VyX3Jlc2V0KGZkKTsK KworCQlnZW1fY2xvc2UoZmQsIG9ialsxXS5oYW5kbGUpOworCQljbG9zZShmZCk7CiAJfQogfQog CkBAIC0zNTEsNiArMzY0LDcgQEAgc3RhdGljIHZvaWQgdGVzdF9pbmZsaWdodF9zdXNwZW5kKGlu dCBmZCkKIAlpbnQgZmVuY2VbNjRdOyAvKiBjb25zZXJ2YXRpdmUgZXN0aW1hdGUgb2YgcmluZyBz aXplICovCiAJaWd0X3NwaW5fdCAqaGFuZzsKIAorCWZkID0gZ2VtX3Jlb3Blbl9kcml2ZXIoZmQp OwogCWlndF9yZXF1aXJlX2dlbShmZCk7CiAJaWd0X3JlcXVpcmUoZ2VtX2hhc19leGVjX2ZlbmNl KGZkKSk7CiAJaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKGZhbHNlKSk7CkBAIC0zODcs NiArNDAxLDcgQEAgc3RhdGljIHZvaWQgdGVzdF9pbmZsaWdodF9zdXNwZW5kKGludCBmZCkKIAlp Z3Rfc3Bpbl9iYXRjaF9mcmVlKGZkLCBoYW5nKTsKIAlpZ3RfYXNzZXJ0KGk5MTVfcmVzZXRfY29u dHJvbCh0cnVlKSk7CiAJdHJpZ2dlcl9yZXNldChmZCk7CisJY2xvc2UoZmQpOwogfQogCiBzdGF0 aWMgdWludDMyX3QgY29udGV4dF9jcmVhdGVfc2FmZShpbnQgaTkxNSkKQEAgLTQwOCwzMyArNDIz LDM3IEBAIHN0YXRpYyB1aW50MzJfdCBjb250ZXh0X2NyZWF0ZV9zYWZlKGludCBpOTE1KQogCiBz dGF0aWMgdm9pZCB0ZXN0X2luZmxpZ2h0X2NvbnRleHRzKGludCBmZCwgdW5zaWduZWQgaW50IHdh aXQpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdDIgb2JqWzJdOwotCWNvbnN0 IHVpbnQzMl90IGJiZSA9IE1JX0JBVENIX0JVRkZFUl9FTkQ7CisJaW50IHBhcmVudF9mZCA9IGZk OwogCXVuc2lnbmVkIGludCBlbmdpbmU7Ci0JdWludDMyX3QgY3R4WzY0XTsKIAogCWlndF9yZXF1 aXJlX2dlbShmZCk7CiAJaWd0X3JlcXVpcmUoZ2VtX2hhc19leGVjX2ZlbmNlKGZkKSk7CiAJZ2Vt X3JlcXVpcmVfY29udGV4dHMoZmQpOwogCi0JZm9yICh1bnNpZ25lZCBpbnQgbiA9IDA7IG4gPCBB UlJBWV9TSVpFKGN0eCk7IG4rKykKLQkJY3R4W25dID0gY29udGV4dF9jcmVhdGVfc2FmZShmZCk7 Ci0KLQltZW1zZXQob2JqLCAwLCBzaXplb2Yob2JqKSk7Ci0Jb2JqWzBdLmZsYWdzID0gRVhFQ19P QkpFQ1RfV1JJVEU7Ci0Jb2JqWzFdLmhhbmRsZSA9IGdlbV9jcmVhdGUoZmQsIDQwOTYpOwotCWdl bV93cml0ZShmZCwgb2JqWzFdLmhhbmRsZSwgMCwgJmJiZSwgc2l6ZW9mKGJiZSkpOwotCi0JZm9y X2VhY2hfZW5naW5lKGZkLCBlbmdpbmUpIHsKKwlmb3JfZWFjaF9lbmdpbmUocGFyZW50X2ZkLCBl bmdpbmUpIHsKKwkJY29uc3QgdWludDMyX3QgYmJlID0gTUlfQkFUQ0hfQlVGRkVSX0VORDsKKwkJ c3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdDIgb2JqWzJdOwogCQlzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX2V4ZWNidWZmZXIyIGV4ZWNidWY7CiAJCWlndF9zcGluX3QgKmhhbmc7CisJCXVpbnQz Ml90IGN0eFs2NF07CiAJCWludCBmZW5jZVs2NF07CiAKKwkJZmQgPSBnZW1fcmVvcGVuX2RyaXZl cihwYXJlbnRfZmQpOworCQlpZ3RfcmVxdWlyZV9nZW0oZmQpOworCisJCWZvciAodW5zaWduZWQg aW50IG4gPSAwOyBuIDwgQVJSQVlfU0laRShjdHgpOyBuKyspCisJCQljdHhbbl0gPSBjb250ZXh0 X2NyZWF0ZV9zYWZlKGZkKTsKKwogCQlnZW1fcXVpZXNjZW50X2dwdShmZCk7CiAKIAkJaWd0X2Rl YnVnKCJTdGFydGluZyAlcyBvbiBlbmdpbmUgJyVzJ1xuIiwgX19mdW5jX18sIGVfXy0+bmFtZSk7 CiAJCWlndF9yZXF1aXJlKGk5MTVfcmVzZXRfY29udHJvbChmYWxzZSkpOwogCisJCW1lbXNldChv YmosIDAsIHNpemVvZihvYmopKTsKKwkJb2JqWzBdLmZsYWdzID0gRVhFQ19PQkpFQ1RfV1JJVEU7 CisJCW9ialsxXS5oYW5kbGUgPSBnZW1fY3JlYXRlKGZkLCA0MDk2KTsKKwkJZ2VtX3dyaXRlKGZk LCBvYmpbMV0uaGFuZGxlLCAwLCAmYmJlLCBzaXplb2YoYmJlKSk7CisKIAkJaGFuZyA9IHNwaW5f c3luYyhmZCwgMCwgZW5naW5lKTsKIAkJb2JqWzBdLmhhbmRsZSA9IGhhbmctPmhhbmRsZTsKIApA QCAtNDU4LDEyICs0NzcsMTUgQEAgc3RhdGljIHZvaWQgdGVzdF9pbmZsaWdodF9jb250ZXh0cyhp bnQgZmQsIHVuc2lnbmVkIGludCB3YWl0KQogCQl9CiAKIAkJaWd0X3NwaW5fYmF0Y2hfZnJlZShm ZCwgaGFuZyk7CisJCWdlbV9jbG9zZShmZCwgb2JqWzFdLmhhbmRsZSk7CiAJCWlndF9hc3NlcnQo aTkxNV9yZXNldF9jb250cm9sKHRydWUpKTsKIAkJdHJpZ2dlcl9yZXNldChmZCk7Ci0JfQogCi0J Zm9yICh1bnNpZ25lZCBpbnQgbiA9IDA7IG4gPCBBUlJBWV9TSVpFKGN0eCk7IG4rKykKLQkJZ2Vt X2NvbnRleHRfZGVzdHJveShmZCwgY3R4W25dKTsKKwkJZm9yICh1bnNpZ25lZCBpbnQgbiA9IDA7 IG4gPCBBUlJBWV9TSVpFKGN0eCk7IG4rKykKKwkJCWdlbV9jb250ZXh0X2Rlc3Ryb3koZmQsIGN0 eFtuXSk7CisKKwkJY2xvc2UoZmQpOworCX0KIH0KIAogc3RhdGljIHZvaWQgdGVzdF9pbmZsaWdo dF9leHRlcm5hbChpbnQgZmQpCkBAIC00NzgsNiArNTAwLDkgQEAgc3RhdGljIHZvaWQgdGVzdF9p bmZsaWdodF9leHRlcm5hbChpbnQgZmQpCiAJaWd0X3JlcXVpcmVfc3dfc3luYygpOwogCWlndF9y ZXF1aXJlKGdlbV9oYXNfZXhlY19mZW5jZShmZCkpOwogCisJZmQgPSBnZW1fcmVvcGVuX2RyaXZl cihmZCk7CisJaWd0X3JlcXVpcmVfZ2VtKGZkKTsKKwogCWZlbmNlID0gaWd0X2NvcmtfcGx1Zygm Y29yaywgZmQpOwogCiAJaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKGZhbHNlKSk7CkBA IC01MTQsNiArNTM5LDcgQEAgc3RhdGljIHZvaWQgdGVzdF9pbmZsaWdodF9leHRlcm5hbChpbnQg ZmQpCiAJaWd0X3NwaW5fYmF0Y2hfZnJlZShmZCwgaGFuZyk7CiAJaWd0X2Fzc2VydChpOTE1X3Jl c2V0X2NvbnRyb2wodHJ1ZSkpOwogCXRyaWdnZXJfcmVzZXQoZmQpOworCWNsb3NlKGZkKTsKIH0K IAogc3RhdGljIHZvaWQgdGVzdF9pbmZsaWdodF9pbnRlcm5hbChpbnQgZmQsIHVuc2lnbmVkIGlu dCB3YWl0KQpAQCAtNTI1LDkgKzU1MSwxMSBAQCBzdGF0aWMgdm9pZCB0ZXN0X2luZmxpZ2h0X2lu dGVybmFsKGludCBmZCwgdW5zaWduZWQgaW50IHdhaXQpCiAJaW50IGZlbmNlc1sxNl07CiAJaWd0 X3NwaW5fdCAqaGFuZzsKIAotCWlndF9yZXF1aXJlX2dlbShmZCk7CiAJaWd0X3JlcXVpcmUoZ2Vt X2hhc19leGVjX2ZlbmNlKGZkKSk7CiAKKwlmZCA9IGdlbV9yZW9wZW5fZHJpdmVyKGZkKTsKKwlp Z3RfcmVxdWlyZV9nZW0oZmQpOworCiAJaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKGZh bHNlKSk7CiAJaGFuZyA9IHNwaW5fc3luYyhmZCwgMCwgMCk7CiAKQEAgLTU2MCw2ICs1ODgsNyBA QCBzdGF0aWMgdm9pZCB0ZXN0X2luZmxpZ2h0X2ludGVybmFsKGludCBmZCwgdW5zaWduZWQgaW50 IHdhaXQpCiAJaWd0X3NwaW5fYmF0Y2hfZnJlZShmZCwgaGFuZyk7CiAJaWd0X2Fzc2VydChpOTE1 X3Jlc2V0X2NvbnRyb2wodHJ1ZSkpOwogCXRyaWdnZXJfcmVzZXQoZmQpOworCWNsb3NlKGZkKTsK IH0KIAogc3RhdGljIGludCBmZCA9IC0xOwotLSAKMi4xNC4xCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVs LWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr0-x244.google.com (mail-wr0-x244.google.com [IPv6:2a00:1450:400c:c0c::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id 492336E156 for ; Thu, 29 Mar 2018 09:34:51 +0000 (UTC) Received: by mail-wr0-x244.google.com with SMTP id p53so4757227wrc.10 for ; Thu, 29 Mar 2018 02:34:51 -0700 (PDT) From: Tvrtko Ursulin Date: Thu, 29 Mar 2018 10:34:40 +0100 Message-Id: <20180329093440.312-1-tvrtko.ursulin@linux.intel.com> In-Reply-To: <152218018504.10679.17153519565017698305@mail.alporthouse.com> References: <152218018504.10679.17153519565017698305@mail.alporthouse.com> Subject: [igt-dev] [PATCH i-g-t v2] tests/gem_eio: Never re-use contexts which were in the middle of GPU reset List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org Cc: Intel-gfx@lists.freedesktop.org, Tvrtko Ursulin List-ID: RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkNvbnRleHRz IGV4ZWN1dGluZyB3aGVuIHJlc2V0IHRyaWdnZXJzIGFyZSBwb3RlbnRpYWx5IGNvcnJ1cHQgc28g dHJ5aW5nIHRvCnVzZSB0aGVtIGZyb20gYSBzdWJzZXF1ZW50IHRlc3QgKGxpa2UgdGhlIGRlZmF1 bHQgY29udGV4dCkgY2FuIGhhbmcgdGhlCkdQVSBvciBldmVuIHRoZSBkcml2ZXIuCgpXb3JrYXJv dW5kIHRoYXQgYnkgYWx3YXlzIGNyZWF0aW5nIGEgZGVkaWNhdGVkIGNvbnRleHQgd2hpY2ggd2ls bCBiZQpydW5uaW5nIHdoZW4gR1BVIHJlc2V0IGhhcHBlbnMuCgp2MjoKICogRXhwb3J0IGFuZCB1 c2UgZ2VtX3Jlb3Blbl9kZXZpY2Ugc28gdGhlIHRlc3Qgd29ya3Mgb24gb2xkIGdlbnMgYXMgd2Vs bC4KICAgKENocmlzIFdpbHNvbikKClNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0 a28udXJzdWxpbkBpbnRlbC5jb20+Ci0tLQogbGliL2k5MTUvZ2VtX3N1Ym1pc3Npb24uYyB8IDEx ICsrKysrLS0KIGxpYi9pOTE1L2dlbV9zdWJtaXNzaW9uLmggfCAgMiArKwogdGVzdHMvZ2VtX2Vp by5jICAgICAgICAgICB8IDc3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0t LS0tLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDY0IGluc2VydGlvbnMoKyksIDI2IGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL2xpYi9pOTE1L2dlbV9zdWJtaXNzaW9uLmMgYi9saWIvaTkxNS9n ZW1fc3VibWlzc2lvbi5jCmluZGV4IDdkM2NiZGJmOGU3Ny4uMmZkNDYwZDVlZDJiIDEwMDY0NAot LS0gYS9saWIvaTkxNS9nZW1fc3VibWlzc2lvbi5jCisrKyBiL2xpYi9pOTE1L2dlbV9zdWJtaXNz aW9uLmMKQEAgLTE2NSw3ICsxNjUsMTQgQEAgYm9vbCBnZW1faGFzX2d1Y19zdWJtaXNzaW9uKGlu dCBmZCkKIAlyZXR1cm4gZ2VtX3N1Ym1pc3Npb25fbWV0aG9kKGZkKSAmIEdFTV9TVUJNSVNTSU9O X0dVQzsKIH0KIAotc3RhdGljIGludCByZW9wZW5fZHJpdmVyKGludCBmZCkKKy8qKgorICogZ2Vt X3Jlb3Blbl9kcml2ZXI6CisgKiBAZmQ6IHJlLW9wZW4gdGhlIGk5MTUgZHJtIGZpbGUgZGVzY3Jp cHRvcgorICoKKyAqIFJlLW9wZW5zIHRoZSBkcm0gZmQgd2hpY2ggaXMgdXNlZnVsIGluIGluc3Rh bmNlcyB3aGVyZSBhIGNsZWFuIGRlZmF1bHQKKyAqIGNvbnRleHQgaXMgbmVlZGVkLgorICovCitp bnQgZ2VtX3Jlb3Blbl9kcml2ZXIoaW50IGZkKQogewogCWNoYXIgcGF0aFsyNTZdOwogCkBAIC0y MDEsNyArMjA4LDcgQEAgdm9pZCBnZW1fdGVzdF9lbmdpbmUoaW50IGk5MTUsIHVuc2lnbmVkIGlu dCBlbmdpbmUpCiAJCS5idWZmZXJfY291bnQgPSAxLAogCX07CiAKLQlpOTE1ID0gcmVvcGVuX2Ry aXZlcihpOTE1KTsKKwlpOTE1ID0gZ2VtX3Jlb3Blbl9kcml2ZXIoaTkxNSk7CiAJaWd0X2Fzc2Vy dCghaXNfd2VkZ2VkKGk5MTUpKTsKIAogCW9iai5oYW5kbGUgPSBnZW1fY3JlYXRlKGk5MTUsIDQw OTYpOwpkaWZmIC0tZ2l0IGEvbGliL2k5MTUvZ2VtX3N1Ym1pc3Npb24uaCBiL2xpYi9pOTE1L2dl bV9zdWJtaXNzaW9uLmgKaW5kZXggNmIzOWEwNTMyMjk1Li5mOTRlYWJiMjAxYjQgMTAwNjQ0Ci0t LSBhL2xpYi9pOTE1L2dlbV9zdWJtaXNzaW9uLmgKKysrIGIvbGliL2k5MTUvZ2VtX3N1Ym1pc3Np b24uaApAQCAtMzUsNCArMzUsNiBAQCBib29sIGdlbV9oYXNfZ3VjX3N1Ym1pc3Npb24oaW50IGZk KTsKIAogdm9pZCBnZW1fdGVzdF9lbmdpbmUoaW50IGZkLCB1bnNpZ25lZCBpbnQgZW5naW5lKTsK IAoraW50IGdlbV9yZW9wZW5fZHJpdmVyKGludCBmZCk7CisKICNlbmRpZiAvKiBHRU1fU1VCTUlT U0lPTl9IICovCmRpZmYgLS1naXQgYS90ZXN0cy9nZW1fZWlvLmMgYi90ZXN0cy9nZW1fZWlvLmMK aW5kZXggYjgyNGQ5ZDRjOWMwLi5iN2M1MDQ3ZjA4MTYgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2dlbV9l aW8uYworKysgYi90ZXN0cy9nZW1fZWlvLmMKQEAgLTI1NSw2ICsyNTUsNyBAQCBzdGF0aWMgdm9p ZCB0ZXN0X3dhaXQoaW50IGZkLCB1bnNpZ25lZCBpbnQgZmxhZ3MsIHVuc2lnbmVkIGludCB3YWl0 KQogewogCWlndF9zcGluX3QgKmhhbmc7CiAKKwlmZCA9IGdlbV9yZW9wZW5fZHJpdmVyKGZkKTsK IAlpZ3RfcmVxdWlyZV9nZW0oZmQpOwogCiAJLyoKQEAgLTI3NiwxMCArMjc3LDE0IEBAIHN0YXRp YyB2b2lkIHRlc3Rfd2FpdChpbnQgZmQsIHVuc2lnbmVkIGludCBmbGFncywgdW5zaWduZWQgaW50 IHdhaXQpCiAJaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKHRydWUpKTsKIAogCXRyaWdn ZXJfcmVzZXQoZmQpOworCWNsb3NlKGZkKTsKIH0KIAogc3RhdGljIHZvaWQgdGVzdF9zdXNwZW5k KGludCBmZCwgaW50IHN0YXRlKQogeworCWZkID0gZ2VtX3Jlb3Blbl9kcml2ZXIoZmQpOworCWln dF9yZXF1aXJlX2dlbShmZCk7CisKIAkvKiBEbyBhIHN1c3BlbmQgZmlyc3Qgc28gdGhhdCB3ZSBk b24ndCBza2lwIGluc2lkZSB0aGUgdGVzdCAqLwogCWlndF9zeXN0ZW1fc3VzcGVuZF9hdXRvcmVz dW1lKHN0YXRlLCBTVVNQRU5EX1RFU1RfREVWSUNFUyk7CiAKQEAgLTI5MSwyNyArMjk2LDMyIEBA IHN0YXRpYyB2b2lkIHRlc3Rfc3VzcGVuZChpbnQgZmQsIGludCBzdGF0ZSkKIAogCWlndF9yZXF1 aXJlKGk5MTVfcmVzZXRfY29udHJvbCh0cnVlKSk7CiAJdHJpZ2dlcl9yZXNldChmZCk7CisJY2xv c2UoZmQpOwogfQogCiBzdGF0aWMgdm9pZCB0ZXN0X2luZmxpZ2h0KGludCBmZCwgdW5zaWduZWQg aW50IHdhaXQpCiB7Ci0JY29uc3QgdWludDMyX3QgYmJlID0gTUlfQkFUQ0hfQlVGRkVSX0VORDsK LQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX2V4ZWNfb2JqZWN0MiBvYmpbMl07CisJaW50IHBhcmVudF9m ZCA9IGZkOwogCXVuc2lnbmVkIGludCBlbmdpbmU7CiAKIAlpZ3RfcmVxdWlyZV9nZW0oZmQpOwog CWlndF9yZXF1aXJlKGdlbV9oYXNfZXhlY19mZW5jZShmZCkpOwogCi0JbWVtc2V0KG9iaiwgMCwg c2l6ZW9mKG9iaikpOwotCW9ialswXS5mbGFncyA9IEVYRUNfT0JKRUNUX1dSSVRFOwotCW9ialsx XS5oYW5kbGUgPSBnZW1fY3JlYXRlKGZkLCA0MDk2KTsKLQlnZW1fd3JpdGUoZmQsIG9ialsxXS5o YW5kbGUsIDAsICZiYmUsIHNpemVvZihiYmUpKTsKLQotCWZvcl9lYWNoX2VuZ2luZShmZCwgZW5n aW5lKSB7CisJZm9yX2VhY2hfZW5naW5lKHBhcmVudF9mZCwgZW5naW5lKSB7CisJCWNvbnN0IHVp bnQzMl90IGJiZSA9IE1JX0JBVENIX0JVRkZFUl9FTkQ7CisJCXN0cnVjdCBkcm1faTkxNV9nZW1f ZXhlY19vYmplY3QyIG9ialsyXTsKIAkJc3RydWN0IGRybV9pOTE1X2dlbV9leGVjYnVmZmVyMiBl eGVjYnVmOwogCQlpZ3Rfc3Bpbl90ICpoYW5nOwogCQlpbnQgZmVuY2VbNjRdOyAvKiBjb25zZXJ2 YXRpdmUgZXN0aW1hdGUgb2YgcmluZyBzaXplICovCiAKKwkJZmQgPSBnZW1fcmVvcGVuX2RyaXZl cihwYXJlbnRfZmQpOworCQlpZ3RfcmVxdWlyZV9nZW0oZmQpOworCisJCW1lbXNldChvYmosIDAs IHNpemVvZihvYmopKTsKKwkJb2JqWzBdLmZsYWdzID0gRVhFQ19PQkpFQ1RfV1JJVEU7CisJCW9i alsxXS5oYW5kbGUgPSBnZW1fY3JlYXRlKGZkLCA0MDk2KTsKKwkJZ2VtX3dyaXRlKGZkLCBvYmpb MV0uaGFuZGxlLCAwLCAmYmJlLCBzaXplb2YoYmJlKSk7CisKIAkJZ2VtX3F1aWVzY2VudF9ncHUo ZmQpOwogCQlpZ3RfZGVidWcoIlN0YXJ0aW5nICVzIG9uIGVuZ2luZSAnJXMnXG4iLCBfX2Z1bmNf XywgZV9fLT5uYW1lKTsKIAkJaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKGZhbHNlKSk7 CkBAIC0zNDAsNiArMzUwLDkgQEAgc3RhdGljIHZvaWQgdGVzdF9pbmZsaWdodChpbnQgZmQsIHVu c2lnbmVkIGludCB3YWl0KQogCQlpZ3Rfc3Bpbl9iYXRjaF9mcmVlKGZkLCBoYW5nKTsKIAkJaWd0 X2Fzc2VydChpOTE1X3Jlc2V0X2NvbnRyb2wodHJ1ZSkpOwogCQl0cmlnZ2VyX3Jlc2V0KGZkKTsK KworCQlnZW1fY2xvc2UoZmQsIG9ialsxXS5oYW5kbGUpOworCQljbG9zZShmZCk7CiAJfQogfQog CkBAIC0zNTEsNiArMzY0LDcgQEAgc3RhdGljIHZvaWQgdGVzdF9pbmZsaWdodF9zdXNwZW5kKGlu dCBmZCkKIAlpbnQgZmVuY2VbNjRdOyAvKiBjb25zZXJ2YXRpdmUgZXN0aW1hdGUgb2YgcmluZyBz aXplICovCiAJaWd0X3NwaW5fdCAqaGFuZzsKIAorCWZkID0gZ2VtX3Jlb3Blbl9kcml2ZXIoZmQp OwogCWlndF9yZXF1aXJlX2dlbShmZCk7CiAJaWd0X3JlcXVpcmUoZ2VtX2hhc19leGVjX2ZlbmNl KGZkKSk7CiAJaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKGZhbHNlKSk7CkBAIC0zODcs NiArNDAxLDcgQEAgc3RhdGljIHZvaWQgdGVzdF9pbmZsaWdodF9zdXNwZW5kKGludCBmZCkKIAlp Z3Rfc3Bpbl9iYXRjaF9mcmVlKGZkLCBoYW5nKTsKIAlpZ3RfYXNzZXJ0KGk5MTVfcmVzZXRfY29u dHJvbCh0cnVlKSk7CiAJdHJpZ2dlcl9yZXNldChmZCk7CisJY2xvc2UoZmQpOwogfQogCiBzdGF0 aWMgdWludDMyX3QgY29udGV4dF9jcmVhdGVfc2FmZShpbnQgaTkxNSkKQEAgLTQwOCwzMyArNDIz LDM3IEBAIHN0YXRpYyB1aW50MzJfdCBjb250ZXh0X2NyZWF0ZV9zYWZlKGludCBpOTE1KQogCiBz dGF0aWMgdm9pZCB0ZXN0X2luZmxpZ2h0X2NvbnRleHRzKGludCBmZCwgdW5zaWduZWQgaW50IHdh aXQpCiB7Ci0Jc3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdDIgb2JqWzJdOwotCWNvbnN0 IHVpbnQzMl90IGJiZSA9IE1JX0JBVENIX0JVRkZFUl9FTkQ7CisJaW50IHBhcmVudF9mZCA9IGZk OwogCXVuc2lnbmVkIGludCBlbmdpbmU7Ci0JdWludDMyX3QgY3R4WzY0XTsKIAogCWlndF9yZXF1 aXJlX2dlbShmZCk7CiAJaWd0X3JlcXVpcmUoZ2VtX2hhc19leGVjX2ZlbmNlKGZkKSk7CiAJZ2Vt X3JlcXVpcmVfY29udGV4dHMoZmQpOwogCi0JZm9yICh1bnNpZ25lZCBpbnQgbiA9IDA7IG4gPCBB UlJBWV9TSVpFKGN0eCk7IG4rKykKLQkJY3R4W25dID0gY29udGV4dF9jcmVhdGVfc2FmZShmZCk7 Ci0KLQltZW1zZXQob2JqLCAwLCBzaXplb2Yob2JqKSk7Ci0Jb2JqWzBdLmZsYWdzID0gRVhFQ19P QkpFQ1RfV1JJVEU7Ci0Jb2JqWzFdLmhhbmRsZSA9IGdlbV9jcmVhdGUoZmQsIDQwOTYpOwotCWdl bV93cml0ZShmZCwgb2JqWzFdLmhhbmRsZSwgMCwgJmJiZSwgc2l6ZW9mKGJiZSkpOwotCi0JZm9y X2VhY2hfZW5naW5lKGZkLCBlbmdpbmUpIHsKKwlmb3JfZWFjaF9lbmdpbmUocGFyZW50X2ZkLCBl bmdpbmUpIHsKKwkJY29uc3QgdWludDMyX3QgYmJlID0gTUlfQkFUQ0hfQlVGRkVSX0VORDsKKwkJ c3RydWN0IGRybV9pOTE1X2dlbV9leGVjX29iamVjdDIgb2JqWzJdOwogCQlzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX2V4ZWNidWZmZXIyIGV4ZWNidWY7CiAJCWlndF9zcGluX3QgKmhhbmc7CisJCXVpbnQz Ml90IGN0eFs2NF07CiAJCWludCBmZW5jZVs2NF07CiAKKwkJZmQgPSBnZW1fcmVvcGVuX2RyaXZl cihwYXJlbnRfZmQpOworCQlpZ3RfcmVxdWlyZV9nZW0oZmQpOworCisJCWZvciAodW5zaWduZWQg aW50IG4gPSAwOyBuIDwgQVJSQVlfU0laRShjdHgpOyBuKyspCisJCQljdHhbbl0gPSBjb250ZXh0 X2NyZWF0ZV9zYWZlKGZkKTsKKwogCQlnZW1fcXVpZXNjZW50X2dwdShmZCk7CiAKIAkJaWd0X2Rl YnVnKCJTdGFydGluZyAlcyBvbiBlbmdpbmUgJyVzJ1xuIiwgX19mdW5jX18sIGVfXy0+bmFtZSk7 CiAJCWlndF9yZXF1aXJlKGk5MTVfcmVzZXRfY29udHJvbChmYWxzZSkpOwogCisJCW1lbXNldChv YmosIDAsIHNpemVvZihvYmopKTsKKwkJb2JqWzBdLmZsYWdzID0gRVhFQ19PQkpFQ1RfV1JJVEU7 CisJCW9ialsxXS5oYW5kbGUgPSBnZW1fY3JlYXRlKGZkLCA0MDk2KTsKKwkJZ2VtX3dyaXRlKGZk LCBvYmpbMV0uaGFuZGxlLCAwLCAmYmJlLCBzaXplb2YoYmJlKSk7CisKIAkJaGFuZyA9IHNwaW5f c3luYyhmZCwgMCwgZW5naW5lKTsKIAkJb2JqWzBdLmhhbmRsZSA9IGhhbmctPmhhbmRsZTsKIApA QCAtNDU4LDEyICs0NzcsMTUgQEAgc3RhdGljIHZvaWQgdGVzdF9pbmZsaWdodF9jb250ZXh0cyhp bnQgZmQsIHVuc2lnbmVkIGludCB3YWl0KQogCQl9CiAKIAkJaWd0X3NwaW5fYmF0Y2hfZnJlZShm ZCwgaGFuZyk7CisJCWdlbV9jbG9zZShmZCwgb2JqWzFdLmhhbmRsZSk7CiAJCWlndF9hc3NlcnQo aTkxNV9yZXNldF9jb250cm9sKHRydWUpKTsKIAkJdHJpZ2dlcl9yZXNldChmZCk7Ci0JfQogCi0J Zm9yICh1bnNpZ25lZCBpbnQgbiA9IDA7IG4gPCBBUlJBWV9TSVpFKGN0eCk7IG4rKykKLQkJZ2Vt X2NvbnRleHRfZGVzdHJveShmZCwgY3R4W25dKTsKKwkJZm9yICh1bnNpZ25lZCBpbnQgbiA9IDA7 IG4gPCBBUlJBWV9TSVpFKGN0eCk7IG4rKykKKwkJCWdlbV9jb250ZXh0X2Rlc3Ryb3koZmQsIGN0 eFtuXSk7CisKKwkJY2xvc2UoZmQpOworCX0KIH0KIAogc3RhdGljIHZvaWQgdGVzdF9pbmZsaWdo dF9leHRlcm5hbChpbnQgZmQpCkBAIC00NzgsNiArNTAwLDkgQEAgc3RhdGljIHZvaWQgdGVzdF9p bmZsaWdodF9leHRlcm5hbChpbnQgZmQpCiAJaWd0X3JlcXVpcmVfc3dfc3luYygpOwogCWlndF9y ZXF1aXJlKGdlbV9oYXNfZXhlY19mZW5jZShmZCkpOwogCisJZmQgPSBnZW1fcmVvcGVuX2RyaXZl cihmZCk7CisJaWd0X3JlcXVpcmVfZ2VtKGZkKTsKKwogCWZlbmNlID0gaWd0X2NvcmtfcGx1Zygm Y29yaywgZmQpOwogCiAJaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKGZhbHNlKSk7CkBA IC01MTQsNiArNTM5LDcgQEAgc3RhdGljIHZvaWQgdGVzdF9pbmZsaWdodF9leHRlcm5hbChpbnQg ZmQpCiAJaWd0X3NwaW5fYmF0Y2hfZnJlZShmZCwgaGFuZyk7CiAJaWd0X2Fzc2VydChpOTE1X3Jl c2V0X2NvbnRyb2wodHJ1ZSkpOwogCXRyaWdnZXJfcmVzZXQoZmQpOworCWNsb3NlKGZkKTsKIH0K IAogc3RhdGljIHZvaWQgdGVzdF9pbmZsaWdodF9pbnRlcm5hbChpbnQgZmQsIHVuc2lnbmVkIGlu dCB3YWl0KQpAQCAtNTI1LDkgKzU1MSwxMSBAQCBzdGF0aWMgdm9pZCB0ZXN0X2luZmxpZ2h0X2lu dGVybmFsKGludCBmZCwgdW5zaWduZWQgaW50IHdhaXQpCiAJaW50IGZlbmNlc1sxNl07CiAJaWd0 X3NwaW5fdCAqaGFuZzsKIAotCWlndF9yZXF1aXJlX2dlbShmZCk7CiAJaWd0X3JlcXVpcmUoZ2Vt X2hhc19leGVjX2ZlbmNlKGZkKSk7CiAKKwlmZCA9IGdlbV9yZW9wZW5fZHJpdmVyKGZkKTsKKwlp Z3RfcmVxdWlyZV9nZW0oZmQpOworCiAJaWd0X3JlcXVpcmUoaTkxNV9yZXNldF9jb250cm9sKGZh bHNlKSk7CiAJaGFuZyA9IHNwaW5fc3luYyhmZCwgMCwgMCk7CiAKQEAgLTU2MCw2ICs1ODgsNyBA QCBzdGF0aWMgdm9pZCB0ZXN0X2luZmxpZ2h0X2ludGVybmFsKGludCBmZCwgdW5zaWduZWQgaW50 IHdhaXQpCiAJaWd0X3NwaW5fYmF0Y2hfZnJlZShmZCwgaGFuZyk7CiAJaWd0X2Fzc2VydChpOTE1 X3Jlc2V0X2NvbnRyb2wodHJ1ZSkpOwogCXRyaWdnZXJfcmVzZXQoZmQpOworCWNsb3NlKGZkKTsK IH0KIAogc3RhdGljIGludCBmZCA9IC0xOwotLSAKMi4xNC4xCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwppZ3QtZGV2IG1haWxpbmcgbGlzdAppZ3QtZGV2 QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2lndC1kZXYK