From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH] drm/i915: Use fault-injection to force the shrinker to run in live GTT tests Date: Wed, 8 Feb 2017 11:40:38 +0000 Message-ID: <20170208114038.12835-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 mail-wm0-x242.google.com (mail-wm0-x242.google.com [IPv6:2a00:1450:400c:c09::242]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5DFAE6E844 for ; Wed, 8 Feb 2017 11:40:44 +0000 (UTC) Received: by mail-wm0-x242.google.com with SMTP id v77so32672822wmv.0 for ; Wed, 08 Feb 2017 03:40:44 -0800 (PST) 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 SXQgaXMgcG9zc2libGUgd2hpbHN0IGFsbG9jYXRpbmcgdGhlIHBhZ2UtZGlyZWN0b3J5IHRyZWUg Zm9yIGEgcHBndHQKYmluZCB0aGF0IHRoZSBzaHJpbmtlciBtYXkgcnVuIGFuZCByZWFwIHVudXNl ZCBwYXJ0cyBvZiB0aGUgdHJlZS4gSWYgdGhlCnNocmlua2VyIGhhcHBlbnMgdG8gcmVtb3ZlIGEg Y2h1bmsgb2YgdGhlIHRyZWUgdGhhdCB0aGUKYWxsb2NhdGVfdmFfcmFuZ2UgaGFzIGFscmVhZHkg cHJvY2Vzc2VkLCB3ZSBtYXkgdGhlbiB0cnkgdG8gaW5zZXJ0IGludG8KdGhlIGRhbmdsaW5nIHRy ZWUuIFRoaXMgdGVzdCB1c2VzIHRoZSBmYXVsdC1pbmplY3Rpb24gZnJhbWV3b3JrIHRvIGZvcmNl CnRoZSBzaHJpbmtlciB0byBiZSBpbnZva2VkIGJlZm9yZSB3ZSBhbGxvY2F0ZSBuZXcgcGFnZXMs IGkuZS4gbmV3IGNodW5rcwpvZiB0aGUgUEQgdHJlZS4KClJlZmVyZW5jZXM6IGh0dHBzOi8vYnVn cy5mcmVlZGVza3RvcC5vcmcvc2hvd19idWcuY2dpP2lkPTk5Mjk1ClNpZ25lZC1vZmYtYnk6IENo cmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgotLS0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L0tjb25maWcuZGVidWcgICAgICAgICAgICB8ICAxICsKIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmggICAgICAgICAgICAgICB8ICAyICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtX2d0dC5jICAgICAgICAgICB8ICA2ICsrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X3NlbGZ0ZXN0LmggICAgICAgICAgfCAgMiArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxm dGVzdHMvaTkxNV9nZW1fZ3R0LmMgfCA5OCArKysrKysrKysrKysrKysrKysrKysrKysrKysKIDUg ZmlsZXMgY2hhbmdlZCwgMTA5IGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9LY29uZmlnLmRlYnVnIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvS2NvbmZpZy5k ZWJ1ZwppbmRleCBhNGQ4Y2ZkNzdjM2MuLjY4ZmYwNzJmOGI3NiAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvS2NvbmZpZy5kZWJ1ZworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9L Y29uZmlnLmRlYnVnCkBAIC02NSw2ICs2NSw3IEBAIGNvbmZpZyBEUk1fSTkxNV9TRUxGVEVTVAog CWJvb2wgIkVuYWJsZSBzZWxmdGVzdHMgdXBvbiBkcml2ZXIgbG9hZCIKIAlkZXBlbmRzIG9uIERS TV9JOTE1CiAJZGVmYXVsdCBuCisJc2VsZWN0IEZBVUxUX0lOSkVDVElPTgogCXNlbGVjdCBQUklN RV9OVU1CRVJTCiAJaGVscAogCSAgQ2hvb3NlIHRoaXMgb3B0aW9uIHRvIGFsbG93IHRoZSBkcml2 ZXIgdG8gcGVyZm9ybSBzZWxmdGVzdHMgdXBvbgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXgg NTZhM2RlOTRlY2Y0Li5mMjk4ZGE5ZWFlYmMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAt MjQ2OCw2ICsyNDY4LDggQEAgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgewogCQlpbnQJaXJxOwog CX0gbHBlX2F1ZGlvOwogCisJSTkxNV9TRUxGVEVTVF9ERUNMQVJFKHN0cnVjdCBmYXVsdF9hdHRy IHZtX2ZhdWx0KTsKKwogCS8qCiAJICogTk9URTogVGhpcyBpcyB0aGUgZHJpMS91bXMgZHVuZ2Vv biwgZG9uJ3QgYWRkIHN0dWZmIGhlcmUuIFlvdXIgcGF0Y2gKIAkgKiB3aWxsIGJlIHJlamVjdGVk LiBJbnN0ZWFkIGxvb2sgZm9yIGEgYmV0dGVyIHBsYWNlLgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9ndHQuYwppbmRleCAzNjE0MmQzZDk5ZDIuLjAyNDdiMjYyNjVkZCAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW1fZ3R0LmMKQEAgLTIzLDYgKzIzLDkgQEAKICAqCiAgKi8KIAorI2luY2x1ZGUg PGxpbnV4L3NsYWIuaD4gLyogZmF1bHQtaW5qZWN0LmggaXMgbm90IHN0YW5kYWxvbmUhICovCisK KyNpbmNsdWRlIDxsaW51eC9mYXVsdC1pbmplY3QuaD4KICNpbmNsdWRlIDxsaW51eC9sb2cyLmg+ CiAjaW5jbHVkZSA8bGludXgvcmFuZG9tLmg+CiAjaW5jbHVkZSA8bGludXgvc2VxX2ZpbGUuaD4K QEAgLTM0NSw2ICszNDgsOSBAQCBzdGF0aWMgaW50IF9fc2V0dXBfcGFnZV9kbWEoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAogewogCXN0cnVjdCBkZXZpY2UgKmtkZXYgPSAmZGV2 X3ByaXYtPmRybS5wZGV2LT5kZXY7CiAKKwlpZiAoSTkxNV9TRUxGVEVTVF9PTkxZKHNob3VsZF9m YWlsKCZkZXZfcHJpdi0+dm1fZmF1bHQsIDEpKSkKKwkJaTkxNV9nZW1fc2hyaW5rX2FsbChkZXZf cHJpdik7CisKIAlwLT5wYWdlID0gYWxsb2NfcGFnZShmbGFncyk7CiAJaWYgKCFwLT5wYWdlKQog CQlyZXR1cm4gLUVOT01FTTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf c2VsZnRlc3QuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfc2VsZnRlc3QuaAppbmRleCBl NDM3NzdiNzIyMTEuLjlkN2Q4NmYxNzMzZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9zZWxmdGVzdC5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfc2VsZnRl c3QuaApAQCAtMzYsNiArMzYsOCBAQCBzdHJ1Y3QgaTkxNV9zZWxmdGVzdCB7CiB9OwogCiAjaWYg SVNfRU5BQkxFRChDT05GSUdfRFJNX0k5MTVfU0VMRlRFU1QpCisjaW5jbHVkZSA8bGludXgvZmF1 bHQtaW5qZWN0Lmg+CisKIGV4dGVybiBzdHJ1Y3QgaTkxNV9zZWxmdGVzdCBpOTE1X3NlbGZ0ZXN0 OwogCiBpbnQgaTkxNV9tb2NrX3NlbGZ0ZXN0cyh2b2lkKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9pOTE1X2dlbV9ndHQuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L3NlbGZ0ZXN0cy9pOTE1X2dlbV9ndHQuYwppbmRleCAzOTE2N2Y1YTU2NmEuLmNhMzU4NWU3 NzM0OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvc2VsZnRlc3RzL2k5MTVfZ2Vt X2d0dC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9pOTE1X2dlbV9ndHQu YwpAQCAtMjU4LDExICsyNTgsMTQgQEAgc3RhdGljIHZvaWQgY2xvc2Vfb2JqZWN0X2xpc3Qoc3Ry dWN0IGxpc3RfaGVhZCAqb2JqZWN0cywKIAkJCSAgICAgIHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3Bh Y2UgKnZtKQogewogCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosICpvbjsKKwlpbnQg aWdub3JlZDsKIAogCWxpc3RfZm9yX2VhY2hfZW50cnlfc2FmZShvYmosIG9uLCBvYmplY3RzLCBi YXRjaF9wb29sX2xpbmspIHsKIAkJc3RydWN0IGk5MTVfdm1hICp2bWE7CiAKIAkJdm1hID0gaTkx NV92bWFfaW5zdGFuY2Uob2JqLCB2bSwgTlVMTCk7CisJCWlmICghSVNfRVJSKHZtYSkpCisJCQlp Z25vcmVkID0gaTkxNV92bWFfdW5iaW5kKHZtYSk7CiAJCS8qIE9ubHkgcHBndHQgdm1hIG1heSBi ZSBjbG9zZWQgYmVmb3JlIHRoZSBvYmplY3QgaXMgZnJlZWQgKi8KIAkJaWYgKCFJU19FUlIodm1h KSAmJiAhaTkxNV92bWFfaXNfZ2d0dCh2bWEpKQogCQkJaTkxNV92bWFfY2xvc2Uodm1hKTsKQEAg LTY2Nyw2ICs2NzAsOTUgQEAgc3RhdGljIGludCBkcnVua19ob2xlKHN0cnVjdCBkcm1faTkxNV9w cml2YXRlICppOTE1LAogCXJldHVybiAwOwogfQogCitzdGF0aWMgaW50IF9fc2hyaW5rX2hvbGUo c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUsCisJCQkgc3RydWN0IGk5MTVfYWRkcmVzc19z cGFjZSAqdm0sCisJCQkgdTY0IGhvbGVfc3RhcnQsIHU2NCBob2xlX2VuZCwKKwkJCSB1bnNpZ25l ZCBsb25nIGVuZF90aW1lKQoreworCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7CisJ dW5zaWduZWQgbG9uZyBmbGFncyA9IFBJTl9PRkZTRVRfRklYRUQgfCBQSU5fVVNFUjsKKwl1bnNp Z25lZCBpbnQgb3JkZXIgPSAxMjsKKwlMSVNUX0hFQUQob2JqZWN0cyk7CisJdTY0IGFkZHI7CisJ aW50IGVycjsKKworCS8qIEtlZXAgY3JlYXRpbmcgbGFyZ2VyIG9iamVjdHMgdW50aWwgb25lIGNh bm5vdCBmaXQgaW50byB0aGUgaG9sZSAqLworCWZvciAoYWRkciA9IGhvbGVfc3RhcnQ7IGFkZHIg PCBob2xlX2VuZDsgKSB7CisJCXN0cnVjdCBpOTE1X3ZtYSAqdm1hOworCQl1NjQgc2l6ZSA9IEJJ VF9VTEwob3JkZXIrKyk7CisKKwkJc2l6ZSA9IG1pbihzaXplLCBob2xlX2VuZCAtIGFkZHIpOwor CQlvYmogPSBmYWtlX2RtYV9vYmplY3QoaTkxNSwgc2l6ZSk7CisJCWlmIChJU19FUlIob2JqKSkg eworCQkJZXJyID0gUFRSX0VSUihvYmopOworCQkJYnJlYWs7CisJCX0KKworCQlsaXN0X2FkZCgm b2JqLT5iYXRjaF9wb29sX2xpbmssICZvYmplY3RzKTsKKworCQl2bWEgPSBpOTE1X3ZtYV9pbnN0 YW5jZShvYmosIHZtLCBOVUxMKTsKKwkJaWYgKElTX0VSUih2bWEpKSB7CisJCQllcnIgPSBQVFJf RVJSKHZtYSk7CisJCQlicmVhazsKKwkJfQorCisJCUdFTV9CVUdfT04odm1hLT5zaXplICE9IHNp emUpOworCisJCWVyciA9IGk5MTVfdm1hX3Bpbih2bWEsIDAsIDAsIGFkZHIgfCBmbGFncyk7CisJ CWlmIChlcnIpIHsKKwkJCXByX2VycigiJXMgZmFpbGVkIHRvIHBpbiBvYmplY3QgYXQgJWxseCAr ICVsbHggaW4gaG9sZSBbJWxseCAtICVsbHhdLCB3aXRoIGVycj0lZFxuIiwKKwkJCSAgICAgICBf X2Z1bmNfXywgYWRkciwgc2l6ZSwgaG9sZV9zdGFydCwgaG9sZV9lbmQsIGVycik7CisJCQlicmVh azsKKwkJfQorCisJCWlmICghZHJtX21tX25vZGVfYWxsb2NhdGVkKCZ2bWEtPm5vZGUpIHx8CisJ CSAgICBpOTE1X3ZtYV9taXNwbGFjZWQodm1hLCAwLCAwLCBhZGRyIHwgZmxhZ3MpKSB7CisJCQlw cl9lcnIoIiVzIGluY29ycmVjdCBhdCAlbGx4ICsgJWxseFxuIiwKKwkJCSAgICAgICBfX2Z1bmNf XywgYWRkciwgc2l6ZSk7CisJCQlpOTE1X3ZtYV91bnBpbih2bWEpOworCQkJZXJyID0gaTkxNV92 bWFfdW5iaW5kKHZtYSk7CisJCQllcnIgPSAtRUlOVkFMOworCQkJYnJlYWs7CisJCX0KKworCQlp OTE1X3ZtYV91bnBpbih2bWEpOworCQlhZGRyICs9IHNpemU7CisKKwkJaWYgKGlndF90aW1lb3V0 KGVuZF90aW1lLAorCQkJCSIlcyB0aW1lZCBvdXQgYXQgb2ZzZXQgJWxseCBbJWxseCAtICVsbHhd XG4iLAorCQkJCV9fZnVuY19fLCBhZGRyLCBob2xlX3N0YXJ0LCBob2xlX2VuZCkpIHsKKwkJCWVy ciA9IC1FSU5UUjsKKwkJCWJyZWFrOworCQl9CisJfQorCisJY2xvc2Vfb2JqZWN0X2xpc3QoJm9i amVjdHMsIHZtKTsKKwlyZXR1cm4gZXJyOworfQorCitzdGF0aWMgaW50IHNocmlua19ob2xlKHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LAorCQkgICAgICAgc3RydWN0IGk5MTVfYWRkcmVz c19zcGFjZSAqdm0sCisJCSAgICAgICB1NjQgaG9sZV9zdGFydCwgdTY0IGhvbGVfZW5kLAorCQkg ICAgICAgdW5zaWduZWQgbG9uZyBlbmRfdGltZSkKK3sKKwl1bnNpZ25lZCBsb25nIHByaW1lOwor CWludCBlcnI7CisKKwlpOTE1LT52bV9mYXVsdC5wcm9iYWJpbGl0eSA9IDk5OTsKKwlhdG9taWNf c2V0KCZpOTE1LT52bV9mYXVsdC50aW1lcywgLTEpOworCisJZm9yX2VhY2hfcHJpbWVfbnVtYmVy X2Zyb20ocHJpbWUsIDAsIFVMT05HX01BWCAtIDEpIHsKKwkJaTkxNS0+dm1fZmF1bHQuaW50ZXJ2 YWwgPSBwcmltZTsKKwkJZXJyID0gX19zaHJpbmtfaG9sZShpOTE1LCB2bSwgaG9sZV9zdGFydCwg aG9sZV9lbmQsIGVuZF90aW1lKTsKKwkJaWYgKGVycikKKwkJCWJyZWFrOworCX0KKworCW1lbXNl dCgmaTkxNS0+dm1fZmF1bHQsIDAsIHNpemVvZihpOTE1LT52bV9mYXVsdCkpOworCisJcmV0dXJu IGVycjsKK30KKwogc3RhdGljIGludCBleGVyY2lzZV9wcGd0dChzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYsCiAJCQkgIGludCAoKmZ1bmMpKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICppOTE1LAogCQkJCSAgICAgIHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLApAQCAtNzI1 LDYgKzgxNywxMSBAQCBzdGF0aWMgaW50IGlndF9wcGd0dF9sb3dsZXZlbCh2b2lkICphcmcpCiAJ cmV0dXJuIGV4ZXJjaXNlX3BwZ3R0KGFyZywgbG93bGV2ZWxfaG9sZSk7CiB9CiAKK3N0YXRpYyBp bnQgaWd0X3BwZ3R0X3Nocmluayh2b2lkICphcmcpCit7CisJcmV0dXJuIGV4ZXJjaXNlX3BwZ3R0 KGFyZywgc2hyaW5rX2hvbGUpOworfQorCiBzdGF0aWMgaW50IHNvcnRfaG9sZXModm9pZCAqcHJp diwgc3RydWN0IGxpc3RfaGVhZCAqQSwgc3RydWN0IGxpc3RfaGVhZCAqQikKIHsKIAlzdHJ1Y3Qg ZHJtX21tX25vZGUgKmEgPSBsaXN0X2VudHJ5KEEsIHR5cGVvZigqYSksIGhvbGVfc3RhY2spOwpA QCAtODAyLDYgKzg5OSw3IEBAIGludCBpOTE1X2dlbV9ndHRfbGl2ZV9zZWxmdGVzdHMoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmk5MTUpCiAJCVNVQlRFU1QoaWd0X3BwZ3R0X2RydW5rKSwKIAkJ U1VCVEVTVChpZ3RfcHBndHRfd2FsayksCiAJCVNVQlRFU1QoaWd0X3BwZ3R0X2ZpbGwpLAorCQlT VUJURVNUKGlndF9wcGd0dF9zaHJpbmspLAogCQlTVUJURVNUKGlndF9nZ3R0X2xvd2xldmVsKSwK IAkJU1VCVEVTVChpZ3RfZ2d0dF9kcnVuayksCiAJCVNVQlRFU1QoaWd0X2dndHRfd2FsayksCi0t IAoyLjExLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=