From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mika Kuoppala Subject: Re: [PATCH 10/40] drm/i915/selftests: Basic stress test for rapid context switching Date: Thu, 20 Sep 2018 13:38:08 +0300 Message-ID: <87muscv4hb.fsf@gaia.fi.intel.com> References: <20180919195544.1511-1-chris@chris-wilson.co.uk> <20180919195544.1511-10-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id 37F7E6E59E for ; Thu, 20 Sep 2018 10:38:33 +0000 (UTC) In-Reply-To: <20180919195544.1511-10-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Q2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+IHdyaXRlczoKCj4gV2UgbmVl ZCB0byBleGVyY2lzZSB0aGUgSFcgYW5kIHN1Ym1pc3Npb24gcGF0aHMgZm9yIHN3aXRjaGluZyBj b250ZXh0cwo+IHJhcGlkbHkgdG8gY2hlY2sgdGhhdCBmZWF0dXJlcyBzdWNoIGFzIGV4ZWNsaXN0 cycgd2FfdGFpbCBhcmUgYWRlcXVhdGUuCj4gUGx1cyBpdCdzIGFuIGludGVyZXN0aW5nIGJhc2Vs aW5lIGxhdGVuY3kgbWV0cmljLgo+Cj4gdjI6IENoZWNrIHRoZSBpbml0aWFsIHJlcXVlc3QgZm9y IGFsbG9jYXRpb24gZXJyb3JzCj4KPiBTaWduZWQtb2ZmLWJ5OiBDaHJpcyBXaWxzb24gPGNocmlz QGNocmlzLXdpbHNvbi5jby51az4KPiAtLS0KPiAgLi4uL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMv aTkxNV9nZW1fY29udGV4dC5jIHwgMTg4ICsrKysrKysrKysrKysrKysrKwo+ICAxIGZpbGUgY2hh bmdlZCwgMTg4IGluc2VydGlvbnMoKykKPgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9zZWxmdGVzdHMvaTkxNV9nZW1fY29udGV4dC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv c2VsZnRlc3RzL2k5MTVfZ2VtX2NvbnRleHQuYwo+IGluZGV4IGE4OWQzMTA3NWM3YS4uZjFhNTdl M2MzODIwIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L3NlbGZ0ZXN0cy9pOTE1 X2dlbV9jb250ZXh0LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9zZWxmdGVzdHMvaTkx NV9nZW1fY29udGV4dC5jCj4gQEAgLTIyLDYgKzIyLDggQEAKPiAgICoKPiAgICovCj4gIAo+ICsj aW5jbHVkZSA8bGludXgvcHJpbWVfbnVtYmVycy5oPgo+ICsKPiAgI2luY2x1ZGUgIi4uL2k5MTVf c2VsZnRlc3QuaCIKPiAgI2luY2x1ZGUgImk5MTVfcmFuZG9tLmgiCj4gICNpbmNsdWRlICJpZ3Rf Zmx1c2hfdGVzdC5oIgo+IEBAIC0zMiw2ICszNCwxOTEgQEAKPiAgCj4gICNkZWZpbmUgRFdfUEVS X1BBR0UgKFBBR0VfU0laRSAvIHNpemVvZih1MzIpKQo+ICAKPiArc3RydWN0IGxpdmVfdGVzdCB7 Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNTsKPiArCWNvbnN0IGNoYXIgKmZ1bmM7 Cj4gKwljb25zdCBjaGFyICpuYW1lOwo+ICsKPiArCXVuc2lnbmVkIGludCByZXNldF9jb3VudDsK PiArfTsKPiArCj4gK3N0YXRpYyBpbnQgYmVnaW5fbGl2ZV90ZXN0KHN0cnVjdCBsaXZlX3Rlc3Qg KnQsCj4gKwkJCSAgIHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LAo+ICsJCQkgICBjb25z dCBjaGFyICpmdW5jLAo+ICsJCQkgICBjb25zdCBjaGFyICpuYW1lKQo+ICt7Cj4gKwlpbnQgZXJy Owo+ICsKPiArCXQtPmk5MTUgPSBpOTE1Owo+ICsJdC0+ZnVuYyA9IGZ1bmM7Cj4gKwl0LT5uYW1l ID0gbmFtZTsKPiArCj4gKwllcnIgPSBpOTE1X2dlbV93YWl0X2Zvcl9pZGxlKGk5MTUsCj4gKwkJ CQkgICAgIEk5MTVfV0FJVF9MT0NLRUQsCj4gKwkJCQkgICAgIE1BWF9TQ0hFRFVMRV9USU1FT1VU KTsKPiArCWlmIChlcnIpIHsKPiArCQlwcl9lcnIoIiVzKCVzKTogZmFpbGVkIHRvIGlkbGUgYmVm b3JlLCB3aXRoIGVycj0lZCEiLAo+ICsJCSAgICAgICBmdW5jLCBuYW1lLCBlcnIpOwo+ICsJCXJl dHVybiBlcnI7Cj4gKwl9Cj4gKwo+ICsJaTkxNS0+Z3B1X2Vycm9yLm1pc3NlZF9pcnFfcmluZ3Mg PSAwOwoKQmx1bnQgYnV0IHNob3VsZCB3b3JrIGFzIHdlIGNoZWNrIHRoaXMgZm9yIHRlc3RzCnRo YXQgbWF0dGVyIGFuZCB0aHVzIGxlZnRvdmVycyBzaG91bGQgbm90IG1hdHRlci4KCj4gKwl0LT5y ZXNldF9jb3VudCA9IGk5MTVfcmVzZXRfY291bnQoJmk5MTUtPmdwdV9lcnJvcik7Cj4gKwo+ICsJ cmV0dXJuIDA7Cj4gK30KPiArCj4gK3N0YXRpYyBpbnQgZW5kX2xpdmVfdGVzdChzdHJ1Y3QgbGl2 ZV90ZXN0ICp0KQo+ICt7Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSA9IHQtPmk5 MTU7Cj4gKwo+ICsJaTkxNV9yZXRpcmVfcmVxdWVzdHMoaTkxNSk7Cj4gKwo+ICsJaWYgKHdhaXRf Zm9yKGludGVsX2VuZ2luZXNfYXJlX2lkbGUoaTkxNSksIDEwKSkgewo+ICsJCXByX2VycigiJXMo JXMpOiBHUFUgbm90IGlkbGVcbiIsIHQtPmZ1bmMsIHQtPm5hbWUpOwo+ICsJCXJldHVybiAtRUlP Owo+ICsJfQo+ICsKPiArCWlmICh0LT5yZXNldF9jb3VudCAhPSBpOTE1X3Jlc2V0X2NvdW50KCZp OTE1LT5ncHVfZXJyb3IpKSB7Cj4gKwkJcHJfZXJyKCIlcyglcyk6IEdQVSB3YXMgcmVzZXQgJWQg dGltZXMhXG4iLAo+ICsJCSAgICAgICB0LT5mdW5jLCB0LT5uYW1lLAo+ICsJCSAgICAgICBpOTE1 X3Jlc2V0X2NvdW50KCZpOTE1LT5ncHVfZXJyb3IpIC0gdC0+cmVzZXRfY291bnQpOwo+ICsJCXJl dHVybiAtRUlPOwo+ICsJfQo+ICsKPiArCWlmIChpOTE1LT5ncHVfZXJyb3IubWlzc2VkX2lycV9y aW5ncykgewo+ICsJCXByX2VycigiJXMoJXMpOiBNaXNzZWQgaW50ZXJydXB0cyBvbiBlbmdpbmVz ICVseFxuIiwKPiArCQkgICAgICAgdC0+ZnVuYywgdC0+bmFtZSwgaTkxNS0+Z3B1X2Vycm9yLm1p c3NlZF9pcnFfcmluZ3MpOwo+ICsJCXJldHVybiAtRUlPOwo+ICsJfQo+ICsKPiArCXJldHVybiAw Owo+ICt9Cj4gKwo+ICtzdGF0aWMgaW50IGxpdmVfbm9wX3N3aXRjaCh2b2lkICphcmcpCj4gK3sK PiArCWNvbnN0IHVuc2lnbmVkIGludCBuY3R4ID0gMTAyNDsKPiArCXN0cnVjdCBkcm1faTkxNV9w cml2YXRlICppOTE1ID0gYXJnOwo+ICsJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lOwo+ ICsJc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKipjdHg7Cj4gKwllbnVtIGludGVsX2VuZ2luZV9p ZCBpZDsKPiArCXN0cnVjdCBkcm1fZmlsZSAqZmlsZTsKPiArCXN0cnVjdCBsaXZlX3Rlc3QgdDsK PiArCXVuc2lnbmVkIGxvbmcgbjsKPiArCWludCBlcnIgPSAtRU5PREVWOwo+ICsKPiArCS8qCj4g KwkgKiBDcmVhdGUgYXMgbWFueSBjb250ZXh0cyBhcyB3ZSBjYW4gZmVhc2libHkgZ2V0IGF3YXkg d2l0aAo+ICsJICogYW5kIGNoZWNrIHdlIGNhbiBzd2l0Y2ggYmV0d2VlbiB0aGVtIHJhcGlkbHku Cj4gKwkgKgo+ICsJICogU2VydmVzIGFzIHZlcnkgc2ltcGxlIHN0cmVzcyB0ZXN0IGZvciBzdWJt aXNzaW9uIGFuZCBIVyBzd2l0Y2hpbmcKPiArCSAqIGJldHdlZW4gY29udGV4dHMuCj4gKwkgKi8K PiArCj4gKwlpZiAoIURSSVZFUl9DQVBTKGk5MTUpLT5oYXNfbG9naWNhbF9jb250ZXh0cykKPiAr CQlyZXR1cm4gMDsKPiArCj4gKwlmaWxlID0gbW9ja19maWxlKGk5MTUpOwo+ICsJaWYgKElTX0VS UihmaWxlKSkKPiArCQlyZXR1cm4gUFRSX0VSUihmaWxlKTsKPiArCj4gKwltdXRleF9sb2NrKCZp OTE1LT5kcm0uc3RydWN0X211dGV4KTsKPiArCj4gKwljdHggPSBrY2FsbG9jKG5jdHgsIHNpemVv ZigqY3R4KSwgR0ZQX0tFUk5FTCk7Cj4gKwlpZiAoIWN0eCkgewo+ICsJCWVyciA9IC1FTk9NRU07 Cj4gKwkJZ290byBvdXRfdW5sb2NrOwo+ICsJfQo+ICsKPiArCWZvciAobiA9IDA7IG4gPCBuY3R4 OyBuKyspIHsKPiArCQljdHhbbl0gPSBpOTE1X2dlbV9jcmVhdGVfY29udGV4dChpOTE1LCBmaWxl LT5kcml2ZXJfcHJpdik7Cj4gKwkJaWYgKElTX0VSUihjdHhbbl0pKSB7Cj4gKwkJCWVyciA9IFBU Ul9FUlIoY3R4W25dKTsKPiArCQkJZ290byBvdXRfdW5sb2NrOwo+ICsJCX0KPiArCX0KPiArCj4g Kwlmb3JfZWFjaF9lbmdpbmUoZW5naW5lLCBpOTE1LCBpZCkgewo+ICsJCXN0cnVjdCBpOTE1X3Jl cXVlc3QgKnJxOwo+ICsJCXVuc2lnbmVkIGxvbmcgZW5kX3RpbWUsIHByaW1lOwo+ICsJCWt0aW1l X3QgdGltZXNbMl0gPSB7fTsKPiArCj4gKwkJdGltZXNbMF0gPSBrdGltZV9nZXRfcmF3KCk7Cj4g KwkJZm9yIChuID0gMDsgbiA8IG5jdHg7IG4rKykgewo+ICsJCQlycSA9IGk5MTVfcmVxdWVzdF9h bGxvYyhlbmdpbmUsIGN0eFtuXSk7Cj4gKwkJCWlmIChJU19FUlIocnEpKSB7Cj4gKwkJCQllcnIg PSBQVFJfRVJSKHJxKTsKPiArCQkJCWdvdG8gb3V0X3VubG9jazsKPiArCQkJfQo+ICsJCQlpOTE1 X3JlcXVlc3RfYWRkKHJxKTsKPiArCQl9Cj4gKwkJaTkxNV9yZXF1ZXN0X3dhaXQocnEsCj4gKwkJ CQkgIEk5MTVfV0FJVF9MT0NLRUQsCj4gKwkJCQkgIE1BWF9TQ0hFRFVMRV9USU1FT1VUKTsKPiAr CQl0aW1lc1sxXSA9IGt0aW1lX2dldF9yYXcoKTsKPiArCj4gKwkJcHJfaW5mbygiUG9wdWxhdGVk ICVkIGNvbnRleHRzIG9uICVzIGluICVsbHVuc1xuIiwKPiArCQkJbmN0eCwgZW5naW5lLT5uYW1l LCBrdGltZV90b19ucyh0aW1lc1sxXSAtIHRpbWVzWzBdKSk7Cj4gKwo+ICsJCWVyciA9IGJlZ2lu X2xpdmVfdGVzdCgmdCwgaTkxNSwgX19mdW5jX18sIGVuZ2luZS0+bmFtZSk7Cj4gKwkJaWYgKGVy cikKPiArCQkJZ290byBvdXRfdW5sb2NrOwo+ICsKPiArCQllbmRfdGltZSA9IGppZmZpZXMgKyBp OTE1X3NlbGZ0ZXN0LnRpbWVvdXRfamlmZmllczsKPiArCQlmb3JfZWFjaF9wcmltZV9udW1iZXJf ZnJvbShwcmltZSwgMiwgODE5Mikgewo+ICsJCQl0aW1lc1sxXSA9IGt0aW1lX2dldF9yYXcoKTsK PiArCj4gKwkJCWZvciAobiA9IDA7IG4gPCBwcmltZTsgbisrKSB7Cj4gKwkJCQlycSA9IGk5MTVf cmVxdWVzdF9hbGxvYyhlbmdpbmUsIGN0eFtuICUgbmN0eF0pOwo+ICsJCQkJaWYgKElTX0VSUihy cSkpIHsKPiArCQkJCQllcnIgPSBQVFJfRVJSKHJxKTsKPiArCQkJCQlnb3RvIG91dF91bmxvY2s7 Cj4gKwkJCQl9Cj4gKwo+ICsJCQkJLyoKPiArCQkJCSAqIFRoaXMgc3BhY2UgaXMgbGVmdCBpbnRl bnRpb25hbGx5IGJsYW5rLgo+ICsJCQkJICoKPiArCQkJCSAqIFdlIGRvIG5vdCBhY3R1YWxseSB3 YW50IHRvIHBlcmZvcm0gYW55Cj4gKwkJCQkgKiBhY3Rpb24gd2l0aCB0aGlzIHJlcXVlc3QsIHdl IGp1c3Qgd2FudAo+ICsJCQkJICogdG8gbWVhc3VyZSB0aGUgbGF0ZW5jeSBpbiBhbGxvY2F0aW9u Cj4gKwkJCQkgKiBhbmQgc3VibWlzc2lvbiBvZiBvdXIgYnJlYWRjcnVtYnMgLQo+ICsJCQkJICog ZW5zdXJpbmcgdGhhdCB0aGUgYmFyZSByZXF1ZXN0IGlzIHN1ZmZpY2llbnQKPiArCQkJCSAqIGZv ciB0aGUgc3lzdGVtIHRvIHdvcmsgKGkuZS4gcHJvcGVyIEhFQUQKPiArCQkJCSAqIHRyYWNraW5n IG9mIHRoZSByaW5ncywgaW50ZXJydXB0IGhhbmRsaW5nLAo+ICsJCQkJICogZXRjKS4gSXQgYWxz byBnaXZlcyB1cyB0aGUgbG93ZXN0IGJvdW5kcwo+ICsJCQkJICogZm9yIGxhdGVuY3kuCj4gKwkJ CQkgKi8KPiArCj4gKwkJCQlpOTE1X3JlcXVlc3RfYWRkKHJxKTsKCldlIGdldCB0aGUgYnJlYWRj cnVtYnMgaW4gcGxhY2UsIHdpdGggdGhlIHdhX3RhaWxzIGFuZCBzbyBvbiBzbyB0aGlzCnNob3Vs ZCB3b3JrIHdpdGhvdXQgYW55IG5vcHMgbm9yIGJiIGVuZHMuCgo+ICsJCQl9Cj4gKwkJCWk5MTVf cmVxdWVzdF93YWl0KHJxLAo+ICsJCQkJCSAgSTkxNV9XQUlUX0xPQ0tFRCwKPiArCQkJCQkgIE1B WF9TQ0hFRFVMRV9USU1FT1VUKTsKPiArCj4gKwkJCXRpbWVzWzFdID0ga3RpbWVfc3ViKGt0aW1l X2dldF9yYXcoKSwgdGltZXNbMV0pOwo+ICsJCQlpZiAocHJpbWUgPT0gMikKPiArCQkJCXRpbWVz WzBdID0gdGltZXNbMV07Cj4gKwo+ICsJCQlpZiAoX19pZ3RfdGltZW91dChlbmRfdGltZSwgTlVM TCkpCj4gKwkJCQlicmVhazsKPiArCQl9Cj4gKwo+ICsJCWVyciA9IGVuZF9saXZlX3Rlc3QoJnQp Owo+ICsJCWlmIChlcnIpCj4gKwkJCWdvdG8gb3V0X3VubG9jazsKPiArCj4gKwkJcHJfaW5mbygi U3dpdGNoIGxhdGVuY2llcyBvbiAlczogMSA9ICVsbHVucywgJWx1ID0gJWxsdW5zXG4iLAo+ICsJ CQllbmdpbmUtPm5hbWUsCj4gKwkJCWt0aW1lX3RvX25zKHRpbWVzWzBdKSwKPiArCQkJcHJpbWUg LSAxLCBkaXY2NF91NjQoa3RpbWVfdG9fbnModGltZXNbMV0pLCBwcmltZSAtIDEpKTsKPiArCX0K PiArCj4gK291dF91bmxvY2s6Cj4gKwltdXRleF91bmxvY2soJmk5MTUtPmRybS5zdHJ1Y3RfbXV0 ZXgpOwo+ICsJbW9ja19maWxlX2ZyZWUoaTkxNSwgZmlsZSk7Cj4gKwlyZXR1cm4gZXJyOwo+ICt9 Cj4gKwo+ICBzdGF0aWMgc3RydWN0IGk5MTVfdm1hICoKPiAgZ3B1X2ZpbGxfZHcoc3RydWN0IGk5 MTVfdm1hICp2bWEsIHU2NCBvZmZzZXQsIHVuc2lnbmVkIGxvbmcgY291bnQsIHUzMiB2YWx1ZSkK PiAgewo+IEBAIC03MTgsNiArOTA1LDcgQEAgaW50IGk5MTVfZ2VtX2NvbnRleHRfbGl2ZV9zZWxm dGVzdHMoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQo+ICB7Cj4gIAlzdGF0aWMg Y29uc3Qgc3RydWN0IGk5MTVfc3VidGVzdCB0ZXN0c1tdID0gewo+ICAJCVNVQlRFU1QoaWd0X3N3 aXRjaF90b19rZXJuZWxfY29udGV4dCksCj4gKwkJU1VCVEVTVChsaXZlX25vcF9zd2l0Y2gpLAoK RHVlIHRvIHRoZSBuYXR1cmUgb2YgdGhlIHRlc3QsIHRoZSBub3AgaGFzIGEgbWlub3IgdHdpc3Qg dG8KdGhpbmsgdGhlcmUgaXMgYSBub3AgaW4gcmluZy4gVGhpcyBpcyBtb3JlIG9mIGEgbm9wIHJl cXVlc3QsCm9yIGVtcHR5IHJlcXVlc3QuIAoKJ2xpdmVfYmFyZXxlbXB0eV9zd2l0Y2gnID8KCkNh bid0IHRoaW5rIG9mIGJldHRlciBzbyBJIGRvbnQgaW5zaXN0LCBzbyByZWdhcmRsZXNzCgpSZXZp ZXdlZC1ieTogTWlrYSBLdW9wcGFsYSA8bWlrYS5rdW9wcGFsYUBsaW51eC5pbnRlbC5jb20+Cgo+ ICAJCVNVQlRFU1QoaWd0X2N0eF9leGVjKSwKPiAgCQlTVUJURVNUKGlndF9jdHhfcmVhZG9ubHkp LAo+ICAJfTsKPiAtLSAKPiAyLjE5LjAKPgo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2ludGVsLWdmeApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9pbnRlbC1nZngK