From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH 18/23] drm/i915: Keep all partially allocated HWSP on a freelist Date: Fri, 18 Jan 2019 12:25:40 +0000 Message-ID: References: <20190117143519.16086-1-chris@chris-wilson.co.uk> <20190117143519.16086-19-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTPS id D53DD6F75D for ; Fri, 18 Jan 2019 12:25:39 +0000 (UTC) In-Reply-To: <20190117143519.16086-19-chris@chris-wilson.co.uk> Content-Language: en-US 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 Ck9uIDE3LzAxLzIwMTkgMTQ6MzQsIENocmlzIFdpbHNvbiB3cm90ZToKPiBLZWVwIHRyYWNrIG9m IHBhcnRpYWxseSBhbGxvY2F0ZWQgcGFnZXMgZm9yIHVzZSBpbiBhbGxvY2F0aW5nIGZ1dHVyZQo+ IHRpbWVsaW5lIEhXU1AuIFRoaXMgaXMgc3RpbGwgd2l0aG91dCBtaWdyYXRpb24sIHNvIGl0IGlz IHBvc3NpYmxlIGZvcgo+IHRoZSBzeXN0ZW0gdG8gZW5kIHVwIHdpdGggZWFjaCB0aW1lbGluZSBp biBpdHMgb3duIHBhZ2UsIGJ1dCB3ZSBlbnN1cmUKPiB0aGF0IG5vIG5ldyBhbGxvY2F0aW9uIHdv dWxkIG5lZWRsZXNzIGFsbG9jYXRlIGEgZnJlc2ggcGFnZSEKPiAKPiBTaWduZWQtb2ZmLWJ5OiBD aHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KPiBDYzogSm9obiBIYXJyaXNv biA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KPiAtLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZHJ2LmggICAgICB8ICAzICstCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X3RpbWVsaW5lLmMgfCA4MSArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCj4gICAyIGZpbGVz IGNoYW5nZWQsIDUwIGluc2VydGlvbnMoKyksIDM0IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9kcnYuaAo+IGluZGV4IGQ1OTIyOGRhYmI2ZS4uMGJlYmVmNDI4ZjFlIDEwMDY0NAo+ IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2Rydi5oCj4gQEAgLTE5ODEsOCArMTk4MSw3IEBAIHN0cnVjdCBkcm1f aTkxNV9wcml2YXRlIHsKPiAgIAo+ICAgCQkJLyogUGFjayBtdWx0aXBsZSB0aW1lbGluZXMnIHNl cW5vcyBpbnRvIHRoZSBzYW1lIHBhZ2UgKi8KPiAgIAkJCXNwaW5sb2NrX3QgaHdzcF9sb2NrOwo+ IC0JCQlzdHJ1Y3QgaTkxNV92bWEgKmh3c3A7Cj4gLQkJCXU2NCBiaXRtYXA7Cj4gKwkJCXN0cnVj dCBsaXN0X2hlYWQgaHdzcDsKCmh3c3BfbGlzdCB0byB1c2Ugb3VyIGVzdGFibGlzaGVkIGNvbnZl bnRpb24/IEFjdHVhbGx5LCBod3NwX2ZyZWVfbGlzdCAKd291bGQgYmUgZXZlbiBtb3JlIHNlbGYt ZG9jdW1lbnRpbmcuCgo+ICAgCQl9IHRpbWVsaW5lczsKPiAgIAo+ICAgCQlzdHJ1Y3QgbGlzdF9o ZWFkIGFjdGl2ZV9yaW5nczsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV90aW1lbGluZS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV90aW1lbGluZS5jCj4gaW5k ZXggZTkzOWE5ZTFhNGFiLi42NGJiMWNlMjQzMTggMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV90aW1lbGluZS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV90aW1lbGluZS5jCj4gQEAgLTksNzQgKzksOTQgQEAKPiAgICNpbmNsdWRlICJpOTE1X3RpbWVs aW5lLmgiCj4gICAjaW5jbHVkZSAiaTkxNV9zeW5jbWFwLmgiCj4gICAKPiArc3RydWN0IGk5MTVf dGltZWxpbmVfaHdzcCB7Cj4gKwlzdHJ1Y3QgbGlzdF9oZWFkIGxpbms7Cj4gKwlzdHJ1Y3QgaTkx NV92bWEgKnZtYTsKPiArCXU2NCBiaXRtYXA7Cj4gK307Cj4gKwo+ICAgc3RhdGljIGludCBod3Nw X2FsbG9jKHN0cnVjdCBpOTE1X3RpbWVsaW5lICp0aW1lbGluZSkKPiAgIHsKPiAtI2RlZmluZSBO QklUUyBCSVRTX1BFUl9UWVBFKHR5cGVvZihndC0+Yml0bWFwKSkKPiAgIAlzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqaTkxNSA9IHRpbWVsaW5lLT5pOTE1Owo+ICAgCXN0cnVjdCBpOTE1X2d0X3Rp bWVsaW5lcyAqZ3QgPSAmaTkxNS0+Z3QudGltZWxpbmVzOwo+IC0Jc3RydWN0IGk5MTVfdm1hICp2 bWE7Cj4gKwlzdHJ1Y3QgaTkxNV90aW1lbGluZV9od3NwICpod3NwOwo+ICAgCWludCBvZmZzZXQ7 Cj4gICAKPiAgIAlzcGluX2xvY2soJmd0LT5od3NwX2xvY2spOwo+ICAgCj4gLXJlc3RhcnQ6Cj4g LQlvZmZzZXQgPSBmaW5kX2ZpcnN0X2JpdCgodW5zaWduZWQgbG9uZyAqKSZndC0+Yml0bWFwLCBO QklUUyk7Cj4gLQlpZiAob2Zmc2V0ID09IE5CSVRTICYmIGd0LT5od3NwKSB7Cj4gLQkJaTkxNV92 bWFfcHV0KGd0LT5od3NwKTsKPiAtCQlndC0+aHdzcCA9IE5VTEw7Cj4gLQl9Cj4gLQo+IC0Jdm1h ID0gZ3QtPmh3c3A7Cj4gLQlpZiAoIXZtYSkgewo+ICsJaHdzcCA9IGxpc3RfZmlyc3RfZW50cnlf b3JfbnVsbCgmZ3QtPmh3c3AsIHR5cGVvZigqaHdzcCksIGxpbmspOwo+ICsJaWYgKCFod3NwKSB7 Cj4gICAJCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpibzsKPiArCQlzdHJ1Y3QgaTkxNV92 bWEgKnZtYTsKPiAgIAo+ICAgCQlzcGluX3VubG9jaygmZ3QtPmh3c3BfbG9jayk7Cj4gICAKPiAt CQlCVUlMRF9CVUdfT04oTkJJVFMgKiBDQUNIRUxJTkVfQllURVMgPiBQQUdFX1NJWkUpOwo+ICsJ CWh3c3AgPSBrbWFsbG9jKHNpemVvZigqaHdzcCksIEdGUF9LRVJORUwpOwo+ICsJCWlmICghaHdz cCkKPiArCQkJcmV0dXJuIC1FTk9NRU07Cj4gKwo+ICsJCUJVSUxEX0JVR19PTihCSVRTX1BFUl9U WVBFKGh3c3AtPmJpdG1hcCkgKiBDQUNIRUxJTkVfQllURVMgPiBQQUdFX1NJWkUpOwo+ICAgCQli byA9IGk5MTVfZ2VtX29iamVjdF9jcmVhdGVfaW50ZXJuYWwoaTkxNSwgUEFHRV9TSVpFKTsKPiAt CQlpZiAoSVNfRVJSKGJvKSkKPiArCQlpZiAoSVNfRVJSKGJvKSkgewo+ICsJCQlrZnJlZShod3Nw KTsKPiAgIAkJCXJldHVybiBQVFJfRVJSKGJvKTsKPiArCQl9Cj4gICAKPiAgIAkJaTkxNV9nZW1f b2JqZWN0X3NldF9jYWNoZV9sZXZlbChibywgSTkxNV9DQUNIRV9MTEMpOwo+ICAgCj4gICAJCXZt YSA9IGk5MTVfdm1hX2luc3RhbmNlKGJvLCAmaTkxNS0+Z2d0dC52bSwgTlVMTCk7Cj4gICAJCWlm IChJU19FUlIodm1hKSkgewo+ICAgCQkJaTkxNV9nZW1fb2JqZWN0X3B1dChibyk7Cj4gKwkJCWtm cmVlKGh3c3ApOwo+ICAgCQkJcmV0dXJuIFBUUl9FUlIodm1hKTsKPiAgIAkJfQo+ICAgCj4gLQkJ c3Bpbl9sb2NrKCZndC0+aHdzcF9sb2NrKTsKPiAtCQlpZiAoZ3QtPmh3c3ApIHsKPiAtCQkJaTkx NV9nZW1fb2JqZWN0X3B1dChibyk7Cj4gLQkJCWdvdG8gcmVzdGFydDsKPiAtCQl9Cj4gKwkJdm1h LT5wcml2YXRlID0gaHdzcDsKPiArCQlod3NwLT52bWEgPSB2bWE7Cj4gKwkJaHdzcC0+Yml0bWFw ID0gfjB1bGw7Cj4gICAKPiAtCQlndC0+aHdzcCA9IHZtYTsKPiAtCQlndC0+Yml0bWFwID0gfjB1 bGw7Cj4gLQkJb2Zmc2V0ID0gMDsKPiArCQlzcGluX2xvY2soJmd0LT5od3NwX2xvY2spOwo+ICsJ CWxpc3RfYWRkKCZod3NwLT5saW5rLCAmZ3QtPmh3c3ApOwo+ICAgCX0KPiAgIAo+IC0JZ3QtPmJp dG1hcCAmPSB+QklUX1VMTChvZmZzZXQpOwo+ICsJR0VNX0JVR19PTighaHdzcC0+Yml0bWFwKTsK PiArCW9mZnNldCA9IF9fZmZzNjQoaHdzcC0+Yml0bWFwKTsKCkkgbmV2ZXIgY2FuIHJlbWVtYmVy IGZyb20gd2hpY2ggc2lkZSBpcyBmaXJzdC4gV2l0aCBmaW5kX2ZpcnN0X2JpdCBJIApkaWRuJ3Qg aGF2ZSB0aGlzIHByb2JsZW0uIDopCgo+ICsJaHdzcC0+Yml0bWFwICY9IH5CSVRfVUxMKG9mZnNl dCk7Cj4gKwlpZiAoIWh3c3AtPmJpdG1hcCkKPiArCQlsaXN0X2RlbCgmaHdzcC0+bGluayk7Cj4g ICAKPiAgIAlzcGluX3VubG9jaygmZ3QtPmh3c3BfbG9jayk7Cj4gICAKPiAtCXRpbWVsaW5lLT5o d3NwX2dndHQgPSBpOTE1X3ZtYV9nZXQodm1hKTsKPiArCXRpbWVsaW5lLT5od3NwX2dndHQgPSBp OTE1X3ZtYV9nZXQoaHdzcC0+dm1hKTsKPiAgIAl0aW1lbGluZS0+aHdzcF9vZmZzZXQgPSBvZmZz ZXQgKiBDQUNIRUxJTkVfQllURVM7Cj4gICAKPiArCUdFTV9CVUdfT04odGltZWxpbmUtPmh3c3Bf Z2d0dC0+cHJpdmF0ZSAhPSBod3NwKTsKPiArCj4gICAJcmV0dXJuIDA7Cj4gLSN1bmRlZiBOQklU Uwo+ICAgfQo+ICAgCj4gICBzdGF0aWMgdm9pZCBod3NwX2ZyZWUoc3RydWN0IGk5MTVfdGltZWxp bmUgKnRpbWVsaW5lKQo+ICAgewo+ICAgCXN0cnVjdCBpOTE1X2d0X3RpbWVsaW5lcyAqZ3QgPSAm dGltZWxpbmUtPmk5MTUtPmd0LnRpbWVsaW5lczsKPiArCXN0cnVjdCBpOTE1X3RpbWVsaW5lX2h3 c3AgKmh3c3A7Cj4gICAKPiAtCWlmICh0aW1lbGluZS0+aHdzcF9nZ3R0ICE9IGd0LT5od3NwKQo+ ICsJaHdzcCA9IHRpbWVsaW5lLT5od3NwX2dndHQtPnByaXZhdGU7Cj4gKwlpZiAoIWh3c3ApCj4g ICAJCXJldHVybjsKCkhtIGlzIHRoZXJlIGEgcGF0aCB0byB0aGlzIHJldHVybiBub3c/Cgo+ICAg Cj4gICAJc3Bpbl9sb2NrKCZndC0+aHdzcF9sb2NrKTsKPiAtCWlmICh0aW1lbGluZS0+aHdzcF9n Z3R0ID09IGd0LT5od3NwKQo+IC0JCWd0LT5iaXRtYXAgfD0gQklUX1VMTCh0aW1lbGluZS0+aHdz cF9vZmZzZXQgLyBDQUNIRUxJTkVfQllURVMpOwo+ICsKPiArCWlmICghaHdzcC0+Yml0bWFwKQo+ ICsJCWxpc3RfYWRkX3RhaWwoJmh3c3AtPmxpbmssICZndC0+aHdzcCk7CgpJIGdvdCBzbyBkZWVw IGludG8gdGhlIGNvZGUgdGhhdCBJIGZvcmdvdCB0byByZW1pbmQgdG8gYWRkIHNvbWUgbW9yZSAK Y29tbWVudHMuIDopIFRoaXMgc2VlbXMgbGlrZSBhIGdvb2QgcGxhY2UgLSBvaCB3ZWxsLi4gd2hv IHdvdWxkIGNvbWUgdXAgCndpdGggZ29vZCBjb21tZW50cyBhbnl3YXkuCgo+ICsKPiArCWh3c3At PmJpdG1hcCB8PSBCSVRfVUxMKHRpbWVsaW5lLT5od3NwX29mZnNldCAvIENBQ0hFTElORV9CWVRF Uyk7Cj4gKwo+ICsJaWYgKGh3c3AtPmJpdG1hcCA9PSB+MHVsbCkgewo+ICsJCWk5MTVfdm1hX3B1 dChod3NwLT52bWEpOwo+ICsJCWxpc3RfZGVsKCZod3NwLT5saW5rKTsKPiArCQlrZnJlZShod3Nw KTsKPiArCX0KPiArCj4gICAJc3Bpbl91bmxvY2soJmd0LT5od3NwX2xvY2spOwo+ICAgfQo+ICAg Cj4gQEAgLTE0OCw2ICsxNjgsNyBAQCB2b2lkIGk5MTVfdGltZWxpbmVzX2luaXQoc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgKmk5MTUpCj4gICAJSU5JVF9MSVNUX0hFQUQoJmd0LT5saXN0KTsKPiAg IAo+ICAgCXNwaW5fbG9ja19pbml0KCZndC0+aHdzcF9sb2NrKTsKPiArCUlOSVRfTElTVF9IRUFE KCZndC0+aHdzcCk7Cj4gICAKPiAgIAkvKiB2aWEgaTkxNV9nZW1fd2FpdF9mb3JfaWRsZSgpICov Cj4gICAJaTkxNV9nZW1fc2hyaW5rZXJfdGFpbnRzX211dGV4KGk5MTUsICZndC0+bXV0ZXgpOwo+ IEBAIC0yNjQsMTMgKzI4NSw5IEBAIHZvaWQgX19pOTE1X3RpbWVsaW5lX2ZyZWUoc3RydWN0IGty ZWYgKmtyZWYpCj4gICB2b2lkIGk5MTVfdGltZWxpbmVzX2Zpbmkoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmk5MTUpCj4gICB7Cj4gICAJc3RydWN0IGk5MTVfZ3RfdGltZWxpbmVzICpndCA9ICZp OTE1LT5ndC50aW1lbGluZXM7Cj4gLQlzdHJ1Y3QgaTkxNV92bWEgKnZtYTsKPiAgIAo+ICAgCUdF TV9CVUdfT04oIWxpc3RfZW1wdHkoJmd0LT5saXN0KSk7Cj4gLQo+IC0Jdm1hID0gZmV0Y2hfYW5k X3plcm8oJmk5MTUtPmd0LnRpbWVsaW5lcy5od3NwKTsKPiAtCWlmICh2bWEpCj4gLQkJaTkxNV92 bWFfcHV0KHZtYSk7Cj4gKwlHRU1fQlVHX09OKCFsaXN0X2VtcHR5KCZndC0+aHdzcCkpOwo+ICAg Cj4gICAJbXV0ZXhfZGVzdHJveSgmZ3QtPm11dGV4KTsKPiAgIH0KPiAKClRoZSBvbmx5IHRoaW5n IG1pc3NpbmcgaXMgYSBzZWxmdGVzdCB3aGljaCB3aWxsIGV4ZXJjaXNlIHNvbWUgImNodW5reSIg CnRpbWVsaW5lIGFsbG9jYXRpb25zIGFuZCBmcmVlcy4gSnVzdCB0byBleGVyY2lzZSB0aGlzIGxv Z2ljIGEgYml0Li4gCnNvbWV0aGluZyBsaWtlIG1heWJlIChpbiB2ZXJ5IGNydWRlIHBzZXVkby1j b2RlKToKCglibG9ja3MgPSB7IDEsIDY0IC8gMiwgNjQgLSAxLCA2NCwgNjQgKyAxLCA2NCAqIDMg LyAyIH07CgoJZm9yX2VhY2hfYmxvY2sgewoJCWZvciAwLi5ibG9jawoJCQl0bF9lbWl0X3JxKGJs b2NrKTsKCQlzeW5jCgkJaWYgKGZsYWdzICYgTElORUFSKQoJCQlmb3IgMC4uYmxvY2sKCQkJCXRs X2ZyZWUKCQllbHNlIGlmIChmbGFncyAmIFJBTkRPTV9GUkVFKQoJCQkuLi4KCX0KCkl0J3MgYSB2 ZXJ5IHRlcnNlIGFuZCBzbG9wcHkgc2tldGNoIGJ1dCBJIHRoaW5rIHlvdSdsbCBrbm93IHdoYXQg SSBhbSAKdHJ5aW5nIHRvIHNheS4KClJlZ2FyZHMsCgpUdnJ0a28KX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRl bC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3Jn L21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==