From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Auld Subject: [PATCH v2 14/37] drm/i915/selftest: extend coverage to include LMEM huge-pages Date: Thu, 27 Jun 2019 21:56:10 +0100 Message-ID: <20190627205633.1143-15-matthew.auld@intel.com> References: <20190627205633.1143-1-matthew.auld@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id 32C106E841 for ; Thu, 27 Jun 2019 20:56:52 +0000 (UTC) In-Reply-To: <20190627205633.1143-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 U2lnbmVkLW9mZi1ieTogTWF0dGhldyBBdWxkIDxtYXR0aGV3LmF1bGRAaW50ZWwuY29tPgotLS0K IC4uLi9ncHUvZHJtL2k5MTUvZ2VtL3NlbGZ0ZXN0cy9odWdlX3BhZ2VzLmMgICB8IDEyMiArKysr KysrKysrKysrKysrKy0KIDEgZmlsZSBjaGFuZ2VkLCAxMjEgaW5zZXJ0aW9ucygrKSwgMSBkZWxl dGlvbigtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2dlbS9zZWxmdGVzdHMv aHVnZV9wYWdlcy5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL3NlbGZ0ZXN0cy9odWdlX3Bh Z2VzLmMKaW5kZXggMTg2MmJmMDZhMjBmLi5jODFlYTljZTI4OWIgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2dlbS9zZWxmdGVzdHMvaHVnZV9wYWdlcy5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2dlbS9zZWxmdGVzdHMvaHVnZV9wYWdlcy5jCkBAIC05ODEsNyArOTgxLDcg QEAgc3RhdGljIGludCBncHVfd3JpdGUoc3RydWN0IGk5MTVfdm1hICp2bWEsCiAJCQkgICAgICAg dm1hLT5zaXplID4+IFBBR0VfU0hJRlQsIHZhbCk7CiB9CiAKLXN0YXRpYyBpbnQgY3B1X2NoZWNr KHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosIHUzMiBkd29yZCwgdTMyIHZhbCkKK3N0 YXRpYyBpbnQgX19jcHVfY2hlY2tfc2htZW0oc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9i aiwgdTMyIGR3b3JkLCB1MzIgdmFsKQogewogCXVuc2lnbmVkIGludCBuZWVkc19mbHVzaDsKIAl1 bnNpZ25lZCBsb25nIG47CkBAIC0xMDEzLDYgKzEwMTMsNTMgQEAgc3RhdGljIGludCBjcHVfY2hl Y2soc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwgdTMyIGR3b3JkLCB1MzIgdmFsKQog CXJldHVybiBlcnI7CiB9CiAKK3N0YXRpYyBpbnQgX19jcHVfY2hlY2tfbG1lbShzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdCAqb2JqLCB1MzIgZHdvcmQsIHUzMiB2YWwpCit7CisJdW5zaWduZWQg bG9uZyBuOworCWludCBlcnI7CisKKwlpOTE1X2dlbV9vYmplY3RfbG9jayhvYmopOworCWVyciA9 IGk5MTVfZ2VtX29iamVjdF9zZXRfdG9fd2NfZG9tYWluKG9iaiwgZmFsc2UpOworCWk5MTVfZ2Vt X29iamVjdF91bmxvY2sob2JqKTsKKwlpZiAoZXJyKQorCQlyZXR1cm4gZXJyOworCisJZXJyID0g aTkxNV9nZW1fb2JqZWN0X3Bpbl9wYWdlcyhvYmopOworCWlmIChlcnIpCisJCXJldHVybiBlcnI7 CisKKwlmb3IgKG4gPSAwOyBuIDwgb2JqLT5iYXNlLnNpemUgPj4gUEFHRV9TSElGVDsgKytuKSB7 CisJCXUzMiBfX2lvbWVtICpiYXNlOworCQl1MzIgcmVhZF92YWw7CisKKwkJYmFzZSA9IGk5MTVf Z2VtX29iamVjdF9sbWVtX2lvX21hcF9wYWdlKG9iaiwgbik7CisKKwkJcmVhZF92YWwgPSBpb3Jl YWQzMihiYXNlICsgZHdvcmQpOworCQlpb19tYXBwaW5nX3VubWFwX2F0b21pYyhiYXNlKTsKKwkJ aWYgKHJlYWRfdmFsICE9IHZhbCkgeworCQkJcHJfZXJyKCJuPSVsdSBiYXNlWyV1XT0ldSwgdmFs PSV1XG4iLAorCQkJICAgICAgIG4sIGR3b3JkLCByZWFkX3ZhbCwgdmFsKTsKKwkJCWVyciA9IC1F SU5WQUw7CisJCQlicmVhazsKKwkJfQorCX0KKworCWk5MTVfZ2VtX29iamVjdF91bnBpbl9wYWdl cyhvYmopOworCXJldHVybiBlcnI7Cit9CisKK3N0YXRpYyBpbnQgY3B1X2NoZWNrKHN0cnVjdCBk cm1faTkxNV9nZW1fb2JqZWN0ICpvYmosIHUzMiBkd29yZCwgdTMyIHZhbCkKK3sKKwlzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSA9IHRvX2k5MTUob2JqLT5iYXNlLmRldik7CisKKwlpZiAo aTkxNV9nZW1fb2JqZWN0X2hhc19zdHJ1Y3RfcGFnZShvYmopKQorCQlyZXR1cm4gX19jcHVfY2hl Y2tfc2htZW0ob2JqLCBkd29yZCwgdmFsKTsKKwllbHNlIGlmIChIQVNfTE1FTShpOTE1KSAmJiBv YmotPm1lbW9yeV9yZWdpb24pCisJCXJldHVybiBfX2NwdV9jaGVja19sbWVtKG9iaiwgZHdvcmQs IHZhbCk7CisKKwlyZXR1cm4gLUVOT0RFVjsKK30KKwogc3RhdGljIGludCBfX2lndF93cml0ZV9o dWdlKHN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHgsCiAJCQkgICAgc3RydWN0IGludGVsX2Vu Z2luZV9jcyAqZW5naW5lLAogCQkJICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmos CkBAIC0xMzkzLDYgKzE0NDAsNzggQEAgc3RhdGljIGludCBpZ3RfcHBndHRfZ2VtZnNfaHVnZSh2 b2lkICphcmcpCiAJcmV0dXJuIGVycjsKIH0KIAorc3RhdGljIGludCBpZ3RfcHBndHRfbG1lbV9o dWdlKHZvaWQgKmFyZykKK3sKKwlzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dCAqY3R4ID0gYXJnOwor CXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1ID0gY3R4LT5pOTE1OworCXN0cnVjdCBkcm1f aTkxNV9nZW1fb2JqZWN0ICpvYmo7CisJc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBzaXplc1td ID0geworCQlTWl82NEssCisJCVNaXzUxMkssCisJCVNaXzFNLAorCQlTWl8yTSwKKwl9OworCWlu dCBpOworCWludCBlcnI7CisKKwlpZiAoIUhBU19MTUVNKGk5MTUpKSB7CisJCXByX2luZm8oImRl dmljZSBsYWNrcyBMTUVNIHN1cHBvcnQsIHNraXBwaW5nXG4iKTsKKwkJcmV0dXJuIDA7CisJfQor CisJLyoKKwkgKiBTYW5pdHkgY2hlY2sgdGhhdCB0aGUgSFcgdXNlcyBodWdlIHBhZ2VzIGNvcnJl Y3RseSB0aHJvdWdoIExNRU0KKwkgKiAtLSBlbnN1cmUgdGhhdCBvdXIgd3JpdGVzIGxhbmQgaW4g dGhlIHJpZ2h0IHBsYWNlLgorCSAqLworCisJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUoc2l6 ZXMpOyArK2kpIHsKKwkJdW5zaWduZWQgaW50IHNpemUgPSBzaXplc1tpXTsKKworCQlvYmogPSBp OTE1X2dlbV9vYmplY3RfY3JlYXRlX2xtZW0oaTkxNSwgc2l6ZSwgSTkxNV9CT19BTExPQ19DT05U SUdVT1VTKTsKKwkJaWYgKElTX0VSUihvYmopKSB7CisJCQllcnIgPSBQVFJfRVJSKG9iaik7CisJ CQlpZiAoZXJyID09IC1FMkJJRykgeworCQkJCXByX2luZm8oIm9iamVjdCB0b28gYmlnIGZvciBy ZWdpb24hXG4iKTsKKwkJCQlyZXR1cm4gMDsKKwkJCX0KKworCQkJcmV0dXJuIGVycjsKKwkJfQor CisJCWVyciA9IGk5MTVfZ2VtX29iamVjdF9waW5fcGFnZXMob2JqKTsKKwkJaWYgKGVycikKKwkJ CWdvdG8gb3V0X3B1dDsKKworCQlpZiAob2JqLT5tbS5wYWdlX3NpemVzLnBoeXMgPCBJOTE1X0dU VF9QQUdFX1NJWkVfNjRLKSB7CisJCQlwcl9pbmZvKCJMTUVNIHVuYWJsZSB0byBhbGxvY2F0ZSBo dWdlLXBhZ2Uocykgd2l0aCBzaXplPSV1XG4iLAorCQkJCXNpemUpOworCQkJZ290byBvdXRfdW5w aW47CisJCX0KKworCQllcnIgPSBpZ3Rfd3JpdGVfaHVnZShjdHgsIG9iaik7CisJCWlmIChlcnIp IHsKKwkJCXByX2VycigiTE1FTSB3cml0ZS1odWdlIGZhaWxlZCB3aXRoIHNpemU9JXVcbiIsIHNp emUpOworCQkJZ290byBvdXRfdW5waW47CisJCX0KKworCQlpOTE1X2dlbV9vYmplY3RfdW5waW5f cGFnZXMob2JqKTsKKwkJX19pOTE1X2dlbV9vYmplY3RfcHV0X3BhZ2VzKG9iaiwgSTkxNV9NTV9O T1JNQUwpOworCQlpOTE1X2dlbV9vYmplY3RfcHV0KG9iaik7CisJfQorCisJcmV0dXJuIDA7CisK K291dF91bnBpbjoKKwlpOTE1X2dlbV9vYmplY3RfdW5waW5fcGFnZXMob2JqKTsKK291dF9wdXQ6 CisJaTkxNV9nZW1fb2JqZWN0X3B1dChvYmopOworCisJaWYgKGVyciA9PSAtRU5PTUVNKQorCQll cnIgPSAwOworCisJcmV0dXJuIGVycjsKK30KKwogc3RhdGljIGludCBpZ3RfcHBndHRfcGluX3Vw ZGF0ZSh2b2lkICphcmcpCiB7CiAJc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCA9IGFyZzsK QEAgLTE3MTcsNiArMTgzNiw3IEBAIGludCBpOTE1X2dlbV9odWdlX3BhZ2VfbGl2ZV9zZWxmdGVz dHMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCQlTVUJURVNUKGlndF9wcGd0 dF9leGhhdXN0X2h1Z2UpLAogCQlTVUJURVNUKGlndF9wcGd0dF9nZW1mc19odWdlKSwKIAkJU1VC VEVTVChpZ3RfcHBndHRfaW50ZXJuYWxfaHVnZSksCisJCVNVQlRFU1QoaWd0X3BwZ3R0X2xtZW1f aHVnZSksCiAJfTsKIAlzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGU7CiAJc3RydWN0IGk5MTVfZ2VtX2Nv bnRleHQgKmN0eDsKLS0gCjIuMjAuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGlu Zm8vaW50ZWwtZ2Z4