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:54:21 +0000 Message-ID: <20171123135421.17967-2-matthew.auld@intel.com> References: <20171123135421.17967-1-matthew.auld@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5174C6E7AB for ; Thu, 23 Nov 2017 13:54:24 +0000 (UTC) In-Reply-To: <20171123135421.17967-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 IGV4aGF1c3QgdGhlIGFkZHJlc3Mgc3BhY2UuCgp2MjoganVzdCB1c2UgSUdUX1RJTUVPVVQKClN1 Z2dlc3RlZC1ieTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+ClNpZ25l ZC1vZmYtYnk6IE1hdHRoZXcgQXVsZCA8bWF0dGhldy5hdWxkQGludGVsLmNvbT4KQ2M6IENocmlz IFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgpSZXZpZXdlZC1ieTogQ2hyaXMgV2ls c29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUv c2VsZnRlc3RzL2h1Z2VfcGFnZXMuYyB8IDEyMyArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0t CiAxIGZpbGUgY2hhbmdlZCwgNzAgaW5zZXJ0aW9ucygrKSwgNTMgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL2h1Z2VfcGFnZXMuYyBiL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9odWdlX3BhZ2VzLmMKaW5kZXggODNiM2EyNzM3 MGE0Li5kZjFiZWZlMmM3OTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0 ZXN0cy9odWdlX3BhZ2VzLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL2h1 Z2VfcGFnZXMuYwpAQCAtMTA0MCw2ICsxMDQwLDYyIEBAIHN0YXRpYyBpbnQgY3B1X2NoZWNrKHN0 cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosIHUzMiBkd29yZCwgdTMyIHZhbCkKIAlyZXR1 cm4gZXJyOwogfQogCitzdGF0aWMgaW50IF9faWd0X3dyaXRlX2h1Z2Uoc3RydWN0IGk5MTVfZ2Vt X2NvbnRleHQgKmN0eCwKKwkJCSAgICBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUsCisJ CQkgICAgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKKwkJCSAgICB1NjQgc2l6ZSwg dTY0IG9mZnNldCwKKwkJCSAgICB1MzIgZHdvcmQsIHUzMiB2YWwpCit7CisJc3RydWN0IGRybV9p OTE1X3ByaXZhdGUgKmk5MTUgPSB0b19pOTE1KG9iai0+YmFzZS5kZXYpOworCXN0cnVjdCBpOTE1 X2FkZHJlc3Nfc3BhY2UgKnZtID0gY3R4LT5wcGd0dCA/ICZjdHgtPnBwZ3R0LT5iYXNlIDogJmk5 MTUtPmdndHQuYmFzZTsKKwl1bnNpZ25lZCBpbnQgZmxhZ3MgPSBQSU5fVVNFUiB8IFBJTl9PRkZT RVRfRklYRUQ7CisJc3RydWN0IGk5MTVfdm1hICp2bWE7CisJaW50IGVycjsKKworCXZtYSA9IGk5 MTVfdm1hX2luc3RhbmNlKG9iaiwgdm0sIE5VTEwpOworCWlmIChJU19FUlIodm1hKSkKKwkJcmV0 dXJuIFBUUl9FUlIodm1hKTsKKworCWVyciA9IGk5MTVfdm1hX3VuYmluZCh2bWEpOworCWlmIChl cnIpCisJCWdvdG8gb3V0X3ZtYV9jbG9zZTsKKworCWVyciA9IGk5MTVfdm1hX3Bpbih2bWEsIHNp emUsIDAsIGZsYWdzIHwgb2Zmc2V0KTsKKwlpZiAoZXJyKSB7CisJCS8qCisJCSAqIFRoZSBnZ3R0 IG1heSBoYXZlIHNvbWUgcGFnZXMgcmVzZXJ2ZWQgc28KKwkJICogcmVmcmFpbiBmcm9tIGVycm9y aW5nIG91dC4KKwkJICovCisJCWlmIChlcnIgPT0gLUVOT1NQQyAmJiBpOTE1X2lzX2dndHQodm0p KQorCQkJZXJyID0gMDsKKworCQlnb3RvIG91dF92bWFfY2xvc2U7CisJfQorCisJZXJyID0gaWd0 X2NoZWNrX3BhZ2Vfc2l6ZXModm1hKTsKKwlpZiAoZXJyKQorCQlnb3RvIG91dF92bWFfdW5waW47 CisKKwllcnIgPSBncHVfd3JpdGUodm1hLCBjdHgsIGVuZ2luZSwgZHdvcmQsIHZhbCk7CisJaWYg KGVycikgeworCQlwcl9lcnIoImdwdS13cml0ZSBmYWlsZWQgYXQgb2Zmc2V0PSVsbHhcbiIsIG9m ZnNldCk7CisJCWdvdG8gb3V0X3ZtYV91bnBpbjsKKwl9CisKKwllcnIgPSBjcHVfY2hlY2sob2Jq LCBkd29yZCwgdmFsKTsKKwlpZiAoZXJyKSB7CisJCXByX2VycigiY3B1LWNoZWNrIGZhaWxlZCBh dCBvZmZzZXQ9JWxseFxuIiwgb2Zmc2V0KTsKKwkJZ290byBvdXRfdm1hX3VucGluOworCX0KKwor b3V0X3ZtYV91bnBpbjoKKwlpOTE1X3ZtYV91bnBpbih2bWEpOworb3V0X3ZtYV9jbG9zZToKKwlp OTE1X3ZtYV9jbG9zZSh2bWEpOworCisJcmV0dXJuIGVycjsKK30KKwogc3RhdGljIGludCBpZ3Rf d3JpdGVfaHVnZShzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dCAqY3R4LAogCQkJICBzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdCAqb2JqKQogewpAQCAtMTA0OSw4ICsxMTA1LDYgQEAgc3RhdGljIGlu dCBpZ3Rfd3JpdGVfaHVnZShzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dCAqY3R4LAogCXN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKmVuZ2luZTsKIAlJOTE1X1JORF9TVEFURShwcm5nKTsKIAlJR1RfVElN RU9VVChlbmRfdGltZSk7Ci0Jc3RydWN0IGk5MTVfdm1hICp2bWE7Ci0JdW5zaWduZWQgaW50IGZs YWdzID0gUElOX1VTRVIgfCBQSU5fT0ZGU0VUX0ZJWEVEOwogCXVuc2lnbmVkIGludCBtYXhfcGFn ZV9zaXplOwogCXVuc2lnbmVkIGludCBpZDsKIAl1NjQgbWF4OwpAQCAtMTA2OSwxMCArMTEyMyw2 IEBAIHN0YXRpYyBpbnQgaWd0X3dyaXRlX2h1Z2Uoc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0 eCwKIAltYXhfcGFnZV9zaXplID0gcm91bmRkb3duX3Bvd19vZl90d28ob2JqLT5tbS5wYWdlX3Np emVzLnNnKTsKIAltYXggPSBkaXZfdTY0KCh2bS0+dG90YWwgLSBzaXplKSwgbWF4X3BhZ2Vfc2l6 ZSk7CiAKLQl2bWEgPSBpOTE1X3ZtYV9pbnN0YW5jZShvYmosIHZtLCBOVUxMKTsKLQlpZiAoSVNf RVJSKHZtYSkpCi0JCXJldHVybiBQVFJfRVJSKHZtYSk7Ci0KIAluID0gMDsKIAlmb3JfZWFjaF9l bmdpbmUoZW5naW5lLCBpOTE1LCBpZCkgewogCQlpZiAoIWludGVsX2VuZ2luZV9jYW5fc3RvcmVf ZHdvcmQoZW5naW5lKSkgewpAQCAtMTA5NSw2NiArMTE0NSwzMyBAQCBzdGF0aWMgaW50IGlndF93 cml0ZV9odWdlKHN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHgsCiAJCXJldHVybiAtRU5PTUVN OwogCiAJLyoKLQkgKiBUcnkgdmFyaW91cyBvZmZzZXRzIHVudGlsIHdlIHRpbWVvdXQgLS0gd2Ug d2FudCB0byBhdm9pZAotCSAqIGlzc3VlcyBoaWRkZW4gYnkgZWZmZWN0aXZlbHkgYWx3YXlzIHVz aW5nIG9mZnNldCA9IDAuCisJICogVHJ5IHZhcmlvdXMgb2Zmc2V0cyBpbiBhbiBhc2NlbmRpbmcv ZGVzY2VuZGluZyBmYXNoaW9uIHVudGlsIHdlCisJICogdGltZW91dCAtLSB3ZSB3YW50IHRvIGF2 b2lkIGlzc3VlcyBoaWRkZW4gYnkgZWZmZWN0aXZlbHkgYWx3YXlzIHVzaW5nCisJICogb2Zmc2V0 ID0gMC4KIAkgKi8KIAlpID0gMDsKIAlmb3JfZWFjaF9wcmltZV9udW1iZXJfZnJvbShudW0sIDAs IG1heCkgewotCQl1NjQgb2Zmc2V0ID0gbnVtICogbWF4X3BhZ2Vfc2l6ZTsKLQkJdTMyIGR3b3Jk OwotCi0JCWVyciA9IGk5MTVfdm1hX3VuYmluZCh2bWEpOwotCQlpZiAoZXJyKQotCQkJZ290byBv dXRfdm1hX2Nsb3NlOwotCi0JCWVyciA9IGk5MTVfdm1hX3Bpbih2bWEsIHNpemUsIG1heF9wYWdl X3NpemUsIGZsYWdzIHwgb2Zmc2V0KTsKLQkJaWYgKGVycikgewotCQkJLyoKLQkJCSAqIFRoZSBn Z3R0IG1heSBoYXZlIHNvbWUgcGFnZXMgcmVzZXJ2ZWQgc28KLQkJCSAqIHJlZnJhaW4gZnJvbSBl cnJvcmluZyBvdXQuCi0JCQkgKi8KLQkJCWlmIChlcnIgPT0gLUVOT1NQQyAmJiBpOTE1X2lzX2dn dHQodm0pKSB7Ci0JCQkJZXJyID0gMDsKLQkJCQljb250aW51ZTsKLQkJCX0KLQotCQkJZ290byBv dXRfdm1hX2Nsb3NlOwotCQl9Ci0KLQkJZXJyID0gaWd0X2NoZWNrX3BhZ2Vfc2l6ZXModm1hKTsK LQkJaWYgKGVycikKLQkJCWdvdG8gb3V0X3ZtYV91bnBpbjsKLQotCQlkd29yZCA9IG9mZnNldF9p bl9wYWdlKG51bSkgLyA0OworCQl1NjQgb2Zmc2V0X2xvdyA9IG51bSAqIG1heF9wYWdlX3NpemU7 CisJCXU2NCBvZmZzZXRfaGlnaCA9IChtYXggLSBudW0pICogbWF4X3BhZ2Vfc2l6ZTsKKwkJdTMy IGR3b3JkID0gb2Zmc2V0X2luX3BhZ2UobnVtKSAvIDQ7CiAKIAkJZW5naW5lID0gZW5naW5lc1tv cmRlcltpXSAlIG5dOwogCQlpID0gKGkgKyAxKSAlIChuICogSTkxNV9OVU1fRU5HSU5FUyk7CiAK LQkJZXJyID0gZ3B1X3dyaXRlKHZtYSwgY3R4LCBlbmdpbmUsIGR3b3JkLCBudW0gKyAxKTsKLQkJ aWYgKGVycikgewotCQkJcHJfZXJyKCJncHUtd3JpdGUgZmFpbGVkIGF0IG9mZnNldD0lbGx4Iiwg b2Zmc2V0KTsKLQkJCWdvdG8gb3V0X3ZtYV91bnBpbjsKLQkJfQotCi0JCWVyciA9IGNwdV9jaGVj ayhvYmosIGR3b3JkLCBudW0gKyAxKTsKLQkJaWYgKGVycikgewotCQkJcHJfZXJyKCJjcHUtY2hl Y2sgZmFpbGVkIGF0IG9mZnNldD0lbGx4Iiwgb2Zmc2V0KTsKLQkJCWdvdG8gb3V0X3ZtYV91bnBp bjsKLQkJfQorCQllcnIgPSBfX2lndF93cml0ZV9odWdlKGN0eCwgZW5naW5lLCBvYmosIHNpemUs IG9mZnNldF9sb3csIGR3b3JkLCBudW0gKyAxKTsKKwkJaWYgKGVycikKKwkJCWJyZWFrOwogCi0J CWk5MTVfdm1hX3VucGluKHZtYSk7CisJCWVyciA9IF9faWd0X3dyaXRlX2h1Z2UoY3R4LCBlbmdp bmUsIG9iaiwgc2l6ZSwgb2Zmc2V0X2hpZ2gsIGR3b3JkLCBudW0gKyAxKTsKKwkJaWYgKGVycikK KwkJCWJyZWFrOwogCiAJCWlmIChpZ3RfdGltZW91dChlbmRfdGltZSwKLQkJCQkiJXMgdGltZWQg b3V0IG9uIGVuZ2luZT0ldSBhdCBvZmZzZXQ9JWxseCwgbWF4X3BhZ2Vfc2l6ZT0leFxuIiwKLQkJ CQlfX2Z1bmNfXywgZW5naW5lLT5pZCwgb2Zmc2V0LCBtYXhfcGFnZV9zaXplKSkKKwkJCQkiJXMg dGltZWQgb3V0IG9uIGVuZ2luZT0ldSwgb2Zmc2V0X2xvdz0lbGx4IG9mZnNldF9oaWdoPSVsbHgs IG1heF9wYWdlX3NpemU9JXhcbiIsCisJCQkJX19mdW5jX18sIGVuZ2luZS0+aWQsIG9mZnNldF9s b3csIG9mZnNldF9oaWdoLCBtYXhfcGFnZV9zaXplKSkKIAkJCWJyZWFrOwogCX0KIAotb3V0X3Zt YV91bnBpbjoKLQlpZiAoaTkxNV92bWFfaXNfcGlubmVkKHZtYSkpCi0JCWk5MTVfdm1hX3VucGlu KHZtYSk7Ci1vdXRfdm1hX2Nsb3NlOgotCWk5MTVfdm1hX2Nsb3NlKHZtYSk7CiAJa2ZyZWUob3Jk ZXIpOwogCiAJcmV0dXJuIGVycjsKLS0gCjIuMTQuMwoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==