From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Auld Subject: [PATCH 2/2] drm/i915/selftests: test descending addresses Date: Thu, 23 Nov 2017 13:22:58 +0000 Message-ID: <20171123132258.3615-2-matthew.auld@intel.com> References: <20171123132258.3615-1-matthew.auld@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTPS id 81ED26E7AF for ; Thu, 23 Nov 2017 13:23:01 +0000 (UTC) In-Reply-To: <20171123132258.3615-1-matthew.auld@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 Rm9yIGlndF93cml0ZV9odWdlIG1ha2Ugc3VyZSB0aGUgaGlnaGVyIGd0dCBvZmZzZXRzIGRvbid0 IGZlZWwgbGVmdCBvdXQsCndoaWNoIGlzIGVzcGVjaWFsbHkgdHJ1ZSB3aGVuIGRlYWxpbmcgd2l0 aCB0aGUgNDhiIFBQR1RULCB3aGVyZSB3ZQp0aW1lb3V0IGxvbmcgYmVmb3JlIHdlIGFyZSBhYmxl IGV4aGF1c3QgdGhlIGFkZHJlc3Mgc3BhY2UuCgpTdWdnZXN0ZWQtYnk6IENocmlzIFdpbHNvbiA8 Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpTaWduZWQtb2ZmLWJ5OiBNYXR0aGV3IEF1bGQgPG1h dHRoZXcuYXVsZEBpbnRlbC5jb20+CkNjOiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNv bi5jby51az4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaHVnZV9wYWdlcy5j IHwgMTI1ICsrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA3MSBp bnNlcnRpb25zKCspLCA1NCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9zZWxmdGVzdHMvaHVnZV9wYWdlcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2Vs ZnRlc3RzL2h1Z2VfcGFnZXMuYwppbmRleCA4M2IzYTI3MzcwYTQuLjQ1MjJjZTcwOTE1NyAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL2h1Z2VfcGFnZXMuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaHVnZV9wYWdlcy5jCkBAIC0xMDQwLDYg KzEwNDAsNjIgQEAgc3RhdGljIGludCBjcHVfY2hlY2soc3RydWN0IGRybV9pOTE1X2dlbV9vYmpl Y3QgKm9iaiwgdTMyIGR3b3JkLCB1MzIgdmFsKQogCXJldHVybiBlcnI7CiB9CiAKK3N0YXRpYyBp bnQgX19pZ3Rfd3JpdGVfaHVnZShzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dCAqY3R4LAorCQkJICAg IHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSwKKwkJCSAgICBzdHJ1Y3QgZHJtX2k5MTVf Z2VtX29iamVjdCAqb2JqLAorCQkJICAgIHU2NCBzaXplLCB1NjQgb2Zmc2V0LAorCQkJICAgIHUz MiBkd29yZCwgdTMyIHZhbCkKK3sKKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSA9IHRv X2k5MTUob2JqLT5iYXNlLmRldik7CisJc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0gPSBj dHgtPnBwZ3R0ID8gJmN0eC0+cHBndHQtPmJhc2UgOiAmaTkxNS0+Z2d0dC5iYXNlOworCXVuc2ln bmVkIGludCBmbGFncyA9IFBJTl9VU0VSIHwgUElOX09GRlNFVF9GSVhFRDsKKwlzdHJ1Y3QgaTkx NV92bWEgKnZtYTsKKwlpbnQgZXJyOworCisJdm1hID0gaTkxNV92bWFfaW5zdGFuY2Uob2JqLCB2 bSwgTlVMTCk7CisJaWYgKElTX0VSUih2bWEpKQorCQlyZXR1cm4gUFRSX0VSUih2bWEpOworCisJ ZXJyID0gaTkxNV92bWFfdW5iaW5kKHZtYSk7CisJaWYgKGVycikKKwkJZ290byBvdXRfdm1hX2Ns b3NlOworCisJZXJyID0gaTkxNV92bWFfcGluKHZtYSwgc2l6ZSwgMCwgZmxhZ3MgfCBvZmZzZXQp OworCWlmIChlcnIpIHsKKwkJLyoKKwkJICogVGhlIGdndHQgbWF5IGhhdmUgc29tZSBwYWdlcyBy ZXNlcnZlZCBzbworCQkgKiByZWZyYWluIGZyb20gZXJyb3Jpbmcgb3V0LgorCQkgKi8KKwkJaWYg KGVyciA9PSAtRU5PU1BDICYmIGk5MTVfaXNfZ2d0dCh2bSkpCisJCQllcnIgPSAwOworCisJCWdv dG8gb3V0X3ZtYV9jbG9zZTsKKwl9CisKKwllcnIgPSBpZ3RfY2hlY2tfcGFnZV9zaXplcyh2bWEp OworCWlmIChlcnIpCisJCWdvdG8gb3V0X3ZtYV91bnBpbjsKKworCWVyciA9IGdwdV93cml0ZSh2 bWEsIGN0eCwgZW5naW5lLCBkd29yZCwgdmFsKTsKKwlpZiAoZXJyKSB7CisJCXByX2VycigiZ3B1 LXdyaXRlIGZhaWxlZCBhdCBvZmZzZXQ9JWxseFxuIiwgb2Zmc2V0KTsKKwkJZ290byBvdXRfdm1h X3VucGluOworCX0KKworCWVyciA9IGNwdV9jaGVjayhvYmosIGR3b3JkLCB2YWwpOworCWlmIChl cnIpIHsKKwkJcHJfZXJyKCJjcHUtY2hlY2sgZmFpbGVkIGF0IG9mZnNldD0lbGx4XG4iLCBvZmZz ZXQpOworCQlnb3RvIG91dF92bWFfdW5waW47CisJfQorCitvdXRfdm1hX3VucGluOgorCWk5MTVf dm1hX3VucGluKHZtYSk7CitvdXRfdm1hX2Nsb3NlOgorCWk5MTVfdm1hX2Nsb3NlKHZtYSk7CisK KwlyZXR1cm4gZXJyOworfQorCiBzdGF0aWMgaW50IGlndF93cml0ZV9odWdlKHN0cnVjdCBpOTE1 X2dlbV9jb250ZXh0ICpjdHgsCiAJCQkgIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmop CiB7CkBAIC0xMDQ4LDkgKzExMDQsNyBAQCBzdGF0aWMgaW50IGlndF93cml0ZV9odWdlKHN0cnVj dCBpOTE1X2dlbV9jb250ZXh0ICpjdHgsCiAJc3RhdGljIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3Mg KmVuZ2luZXNbSTkxNV9OVU1fRU5HSU5FU107CiAJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5n aW5lOwogCUk5MTVfUk5EX1NUQVRFKHBybmcpOwotCUlHVF9USU1FT1VUKGVuZF90aW1lKTsKLQlz dHJ1Y3QgaTkxNV92bWEgKnZtYTsKLQl1bnNpZ25lZCBpbnQgZmxhZ3MgPSBQSU5fVVNFUiB8IFBJ Tl9PRkZTRVRfRklYRUQ7CisJdW5zaWduZWQgbG9uZyBlbmRfdGltZSA9IGppZmZpZXMgKyBpOTE1 X3NlbGZ0ZXN0LnRpbWVvdXRfamlmZmllcyAqIDI7CiAJdW5zaWduZWQgaW50IG1heF9wYWdlX3Np emU7CiAJdW5zaWduZWQgaW50IGlkOwogCXU2NCBtYXg7CkBAIC0xMDY5LDEwICsxMTIzLDYgQEAg c3RhdGljIGludCBpZ3Rfd3JpdGVfaHVnZShzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dCAqY3R4LAog CW1heF9wYWdlX3NpemUgPSByb3VuZGRvd25fcG93X29mX3R3byhvYmotPm1tLnBhZ2Vfc2l6ZXMu c2cpOwogCW1heCA9IGRpdl91NjQoKHZtLT50b3RhbCAtIHNpemUpLCBtYXhfcGFnZV9zaXplKTsK IAotCXZtYSA9IGk5MTVfdm1hX2luc3RhbmNlKG9iaiwgdm0sIE5VTEwpOwotCWlmIChJU19FUlIo dm1hKSkKLQkJcmV0dXJuIFBUUl9FUlIodm1hKTsKLQogCW4gPSAwOwogCWZvcl9lYWNoX2VuZ2lu ZShlbmdpbmUsIGk5MTUsIGlkKSB7CiAJCWlmICghaW50ZWxfZW5naW5lX2Nhbl9zdG9yZV9kd29y ZChlbmdpbmUpKSB7CkBAIC0xMDk1LDY2ICsxMTQ1LDMzIEBAIHN0YXRpYyBpbnQgaWd0X3dyaXRl X2h1Z2Uoc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCwKIAkJcmV0dXJuIC1FTk9NRU07CiAK IAkvKgotCSAqIFRyeSB2YXJpb3VzIG9mZnNldHMgdW50aWwgd2UgdGltZW91dCAtLSB3ZSB3YW50 IHRvIGF2b2lkCi0JICogaXNzdWVzIGhpZGRlbiBieSBlZmZlY3RpdmVseSBhbHdheXMgdXNpbmcg b2Zmc2V0ID0gMC4KKwkgKiBUcnkgdmFyaW91cyBvZmZzZXRzIGluIGFuIGFzY2VuZGluZy9kZXNj ZW5kaW5nIGZhc2hpb24gdW50aWwgd2UKKwkgKiB0aW1lb3V0IC0tIHdlIHdhbnQgdG8gYXZvaWQg aXNzdWVzIGhpZGRlbiBieSBlZmZlY3RpdmVseSBhbHdheXMgdXNpbmcKKwkgKiBvZmZzZXQgPSAw LgogCSAqLwogCWkgPSAwOwogCWZvcl9lYWNoX3ByaW1lX251bWJlcl9mcm9tKG51bSwgMCwgbWF4 KSB7Ci0JCXU2NCBvZmZzZXQgPSBudW0gKiBtYXhfcGFnZV9zaXplOwotCQl1MzIgZHdvcmQ7Ci0K LQkJZXJyID0gaTkxNV92bWFfdW5iaW5kKHZtYSk7Ci0JCWlmIChlcnIpCi0JCQlnb3RvIG91dF92 bWFfY2xvc2U7Ci0KLQkJZXJyID0gaTkxNV92bWFfcGluKHZtYSwgc2l6ZSwgbWF4X3BhZ2Vfc2l6 ZSwgZmxhZ3MgfCBvZmZzZXQpOwotCQlpZiAoZXJyKSB7Ci0JCQkvKgotCQkJICogVGhlIGdndHQg bWF5IGhhdmUgc29tZSBwYWdlcyByZXNlcnZlZCBzbwotCQkJICogcmVmcmFpbiBmcm9tIGVycm9y aW5nIG91dC4KLQkJCSAqLwotCQkJaWYgKGVyciA9PSAtRU5PU1BDICYmIGk5MTVfaXNfZ2d0dCh2 bSkpIHsKLQkJCQllcnIgPSAwOwotCQkJCWNvbnRpbnVlOwotCQkJfQotCi0JCQlnb3RvIG91dF92 bWFfY2xvc2U7Ci0JCX0KLQotCQllcnIgPSBpZ3RfY2hlY2tfcGFnZV9zaXplcyh2bWEpOwotCQlp ZiAoZXJyKQotCQkJZ290byBvdXRfdm1hX3VucGluOwotCi0JCWR3b3JkID0gb2Zmc2V0X2luX3Bh Z2UobnVtKSAvIDQ7CisJCXU2NCBvZmZzZXRfbG93ID0gbnVtICogbWF4X3BhZ2Vfc2l6ZTsKKwkJ dTY0IG9mZnNldF9oaWdoID0gKG1heCAtIG51bSkgKiBtYXhfcGFnZV9zaXplOworCQl1MzIgZHdv cmQgPSBvZmZzZXRfaW5fcGFnZShudW0pIC8gNDsKIAogCQllbmdpbmUgPSBlbmdpbmVzW29yZGVy W2ldICUgbl07CiAJCWkgPSAoaSArIDEpICUgKG4gKiBJOTE1X05VTV9FTkdJTkVTKTsKIAotCQll cnIgPSBncHVfd3JpdGUodm1hLCBjdHgsIGVuZ2luZSwgZHdvcmQsIG51bSArIDEpOwotCQlpZiAo ZXJyKSB7Ci0JCQlwcl9lcnIoImdwdS13cml0ZSBmYWlsZWQgYXQgb2Zmc2V0PSVsbHgiLCBvZmZz ZXQpOwotCQkJZ290byBvdXRfdm1hX3VucGluOwotCQl9Ci0KLQkJZXJyID0gY3B1X2NoZWNrKG9i aiwgZHdvcmQsIG51bSArIDEpOwotCQlpZiAoZXJyKSB7Ci0JCQlwcl9lcnIoImNwdS1jaGVjayBm YWlsZWQgYXQgb2Zmc2V0PSVsbHgiLCBvZmZzZXQpOwotCQkJZ290byBvdXRfdm1hX3VucGluOwot CQl9CisJCWVyciA9IF9faWd0X3dyaXRlX2h1Z2UoY3R4LCBlbmdpbmUsIG9iaiwgc2l6ZSwgb2Zm c2V0X2xvdywgZHdvcmQsIG51bSArIDEpOworCQlpZiAoZXJyKQorCQkJYnJlYWs7CiAKLQkJaTkx NV92bWFfdW5waW4odm1hKTsKKwkJZXJyID0gX19pZ3Rfd3JpdGVfaHVnZShjdHgsIGVuZ2luZSwg b2JqLCBzaXplLCBvZmZzZXRfaGlnaCwgZHdvcmQsIG51bSArIDEpOworCQlpZiAoZXJyKQorCQkJ YnJlYWs7CiAKIAkJaWYgKGlndF90aW1lb3V0KGVuZF90aW1lLAotCQkJCSIlcyB0aW1lZCBvdXQg b24gZW5naW5lPSV1IGF0IG9mZnNldD0lbGx4LCBtYXhfcGFnZV9zaXplPSV4XG4iLAotCQkJCV9f ZnVuY19fLCBlbmdpbmUtPmlkLCBvZmZzZXQsIG1heF9wYWdlX3NpemUpKQorCQkJCSIlcyB0aW1l ZCBvdXQgb24gZW5naW5lPSV1LCBvZmZzZXRfbG93PSVsbHggb2Zmc2V0X2hpZ2g9JWxseCwgbWF4 X3BhZ2Vfc2l6ZT0leFxuIiwKKwkJCQlfX2Z1bmNfXywgZW5naW5lLT5pZCwgb2Zmc2V0X2xvdywg b2Zmc2V0X2hpZ2gsIG1heF9wYWdlX3NpemUpKQogCQkJYnJlYWs7CiAJfQogCi1vdXRfdm1hX3Vu cGluOgotCWlmIChpOTE1X3ZtYV9pc19waW5uZWQodm1hKSkKLQkJaTkxNV92bWFfdW5waW4odm1h KTsKLW91dF92bWFfY2xvc2U6Ci0JaTkxNV92bWFfY2xvc2Uodm1hKTsKIAlrZnJlZShvcmRlcik7 CiAKIAlyZXR1cm4gZXJyOwotLSAKMi4xNC4zCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0 cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9pbnRlbC1nZngK