From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH v4] drm/i915: Optimistically spin for the request completion Date: Fri, 20 Mar 2015 16:01:52 +0000 Message-ID: <550C4470.8070506@linux.intel.com> References: <1426158677-26261-1-git-send-email-chris@chris-wilson.co.uk> <1426862206-14441-1-git-send-email-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 mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id D1B086EC71 for ; Fri, 20 Mar 2015 09:01:55 -0700 (PDT) In-Reply-To: <1426862206-14441-1-git-send-email-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 Cc: Daniel Vetter , Eero Tamminen , "Rantala, Valtteri" List-Id: intel-gfx@lists.freedesktop.org Ck9uIDAzLzIwLzIwMTUgMDI6MzYgUE0sIENocmlzIFdpbHNvbiB3cm90ZToKPiBUaGlzIHByb3Zp ZGVzIGEgbmljZSBib29zdCB0byBtZXNhIGluIHN3YXAgYm91bmQgc2NlbmFyaW9zIChhcyBtZXNh Cj4gdGhyb3R0bGVzIGl0c2VsZiB0byB0aGUgcHJldmlvdXMgZnJhbWUgYW5kIGdpdmVuIHRoZSBz Y2VuYXJpbyB0aGF0IHdpbGwKPiBjb21wbGV0ZSBzaG9ydGx5KS4gSXQgd2lsbCBhbHNvIHByb3Zp ZGUgYSBnb29kIGJvb3N0IHRvIHN5c3RlbXMgcnVubmluZwo+IHdpdGggc2VtYXBob3JlcyBkaXNh YmxlZCBhbmQgc28gZnJlcXVlbnRseSB3YWl0aW5nIG9uIHRoZSBHUFUgYXMgaXQKPiBzd2l0Y2hl cyByaW5ncy4gSW4gdGhlIG1vc3QgZmF2b3VyYWJsZSBvZiBtaWNyb2JlbmNobWFya3MsIHRoaXMg Y2FuCj4gaW5jcmVhc2UgcGVyZm9ybWFuY2UgYnkgYXJvdW5kIDE1JSAtIHRob3VnaCBpbiBwcmFj dGljZSBpbXByb3ZlbWVudHMKPiB3aWxsIGJlIG1hcmdpbmFsIGFuZCByYXJlbHkgbm90aWNlYWJs ZS4KPgo+IHYyOiBBY2NvdW50IGZvciB1c2VyIHRpbWVvdXRzCj4gdjM6IExpbWl0IHRoZSBzcGlu bmluZyB0byBhIHNpbmdsZSBqaWZmaWUgKH4xdXMpIGF0IG1vc3QuIE9uIGFuCj4gb3RoZXJ3aXNl IGlkbGUgc3lzdGVtLCB0aGVyZSBpcyBubyBzY2hlZHVsZXIgY29udGVudGlvbiBhbmQgc28gd2l0 aG91dCBhCj4gbGltaXQgd2Ugd291bGQgc3BpbiB1bnRpbCB0aGUgR1BVIGlzIHJlYWR5Lgo+IHY0 OiBEcm9wIGZvcmNld2FrZSAtIHRoZSBsYXp5IGNvaGVyZW50IGFjY2VzcyBkb2Vzbid0IHJlcXVp cmUgaXQsIGFuZCB3ZQo+IGhhdmUgbm8gcmVhc29uIHRvIGJlbGlldmUgdGhhdCB0aGUgZm9yY2V3 YWtlIGl0c2VsZiBpbXByb3ZlcyBzZXFubwo+IGNvaGVyZW5jeSAtIGl0IG9ubHkgYWRkcyBkZWxh eS4KPgo+IFNpZ25lZC1vZmYtYnk6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNv LnVrPgo+IENjOiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgo+IENjOiBU dnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AbGludXguaW50ZWwuY29tPgo+IENjOiBFZXJv IFRhbW1pbmVuIDxlZXJvLnQudGFtbWluZW5AaW50ZWwuY29tPgo+IENjOiAiUmFudGFsYSwgVmFs dHRlcmkiIDx2YWx0dGVyaS5yYW50YWxhQGludGVsLmNvbT4KClN0aWxsIGFnYWluc3QgYSB0b2dn bGUgc3dpdGNoIGxpa2UgYSBzaW1wbGUgbW9kdWxlIHBhcmFtZXRlcj8KCj4gLS0tCj4gICBkcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIHwgNDQgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKystLS0tLS0KPiAgIDEgZmlsZSBjaGFuZ2VkLCAzOCBpbnNlcnRpb25zKCspLCA2 IGRlbGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCj4gaW5kZXggMmUxN2EyNTRh YWMxLi45OTg4ZTY1YzE0NDAgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9nZW0uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKPiBAQCAtMTE4 MSw2ICsxMTgxLDI5IEBAIHN0YXRpYyBib29sIG1pc3NlZF9pcnEoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2LAo+ICAgCXJldHVybiB0ZXN0X2JpdChyaW5nLT5pZCwgJmRldl9wcml2 LT5ncHVfZXJyb3IubWlzc2VkX2lycV9yaW5ncyk7Cj4gICB9Cj4KPiArc3RhdGljIGludCBfX2k5 MTVfc3Bpbl9yZXF1ZXN0KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcnEpCj4gK3sKPiAr CXVuc2lnbmVkIGxvbmcgdGltZW91dDsKPiArCj4gKwlpZiAoaTkxNV9nZW1fcmVxdWVzdF9nZXRf cmluZyhycSktPmlycV9yZWZjb3VudCkKPiArCQlyZXR1cm4gLUVCVVNZOwoKU28gaWYgc29tZW9u ZSBlbHNlIGlzIGFscmVhZHkgd2FpdGluZyBvbiB0aGlzIHJpbmcgc2tpcCB0aGUgc3BpbiBhbmQg ZG8gCnRoZSBzbGVlcC13YWl0LgoKVGhhdCB3b3VsZCBtZWFuIGVhcmxpZXIgd2FpdGVyIGRpZG4n dCBtYW5hZ2UgdG8gc3BpbiB0byBjb21wbGV0aW9uIHNvIApmb3Igc3Vic2VxdWVudCBvbmVzIGRv ZXMgaXQgbWFrZSBzZW5zZSB0byB0cnkgdG8gc3Bpbj8gSWYgd2UgYXNzdW1lIAp3YWl0ZXJzIGFy ZSBhcnJpdmluZyBoZXJlIGluIHN1Ym1pc3Npb24gb3JkZXIgdGhlbiBubywgdGhleSBzaG91bGQg CnByb2NlZWQgdG8gc2xlZXAtd2FpdC4gQnV0IGlmIHdhaXRlcnMgYXJlIGFycml2aW5nIGhlcmUg aW4gcmFuZG9tIG9yZGVyLCAKYW5kIHRoYXQgaXMgcHVyZWx5IHVwIHRvIHVzZXJzcGFjZSBJIHRo aW5rLCB0aGVuIEkgYW0gbm90IHN1cmU/CgpPbiB0aGUgb3RoZXIgaGFuZCBpZiB3ZSBhbGxvd2Vk IHRoaXMgIm91dC1vZi1vcmRlciB3YWl0ZXJzIiB0aGF0IHdvdWxkIApwb3RlbnRpYWxseSBiZSB0 b28gbXVjaCBzcGlubmluZyBzbyBtYXliZSBpdCBpcyBiZXR0ZXIgbGlrZSBpdCBpcy4KCj4gKwl0 aW1lb3V0ID0gamlmZmllcyArIDE7Cj4gKwl3aGlsZSAoIW5lZWRfcmVzY2hlZCgpKSB7Cj4gKwkJ aWYgKGk5MTVfZ2VtX3JlcXVlc3RfY29tcGxldGVkKHJxLCB0cnVlKSkKPiArCQkJcmV0dXJuIDA7 Cj4gKwo+ICsJCWlmICh0aW1lX2FmdGVyX2VxKGppZmZpZXMsIHRpbWVvdXQpKQo+ICsJCQlicmVh azsKPiArCj4gKwkJY3B1X3JlbGF4X2xvd2xhdGVuY3koKTsKPiArCX0KPiArCWlmIChpOTE1X2dl bV9yZXF1ZXN0X2NvbXBsZXRlZChycSwgZmFsc2UpKQo+ICsJCXJldHVybiAwOwogPiArCj4gKwly ZXR1cm4gLUVBR0FJTjsKPiArfQo+ICsKPiAgIC8qKgo+ICAgICogX19pOTE1X3dhaXRfcmVxdWVz dCAtIHdhaXQgdW50aWwgZXhlY3V0aW9uIG9mIHJlcXVlc3QgaGFzIGZpbmlzaGVkCj4gICAgKiBA cmVxOiBkdWghCj4gQEAgLTEyMjUsMTIgKzEyNDgsMjAgQEAgaW50IF9faTkxNV93YWl0X3JlcXVl c3Qoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEsCj4gICAJaWYgKHJpbmctPmlkID09 IFJDUyAmJiBJTlRFTF9JTkZPKGRldiktPmdlbiA+PSA2KQo+ICAgCQlnZW42X3Jwc19ib29zdChk ZXZfcHJpdiwgZmlsZV9wcml2KTsKPgo+IC0JaWYgKCFpcnFfdGVzdF9pbl9wcm9ncmVzcyAmJiBX QVJOX09OKCFyaW5nLT5pcnFfZ2V0KHJpbmcpKSkKPiAtCQlyZXR1cm4gLUVOT0RFVjsKPiAtCj4g ICAJLyogUmVjb3JkIGN1cnJlbnQgdGltZSBpbiBjYXNlIGludGVycnVwdGVkIGJ5IHNpZ25hbCwg b3Igd2VkZ2VkICovCj4gICAJdHJhY2VfaTkxNV9nZW1fcmVxdWVzdF93YWl0X2JlZ2luKHJlcSk7 Cj4gICAJYmVmb3JlID0ga3RpbWVfZ2V0X3Jhd19ucygpOwo+ICsKPiArCS8qIE9wdGltaXN0aWMg c3BpbiBmb3IgdGhlIG5leHQgamlmZmllIGJlZm9yZSB0b3VjaGluZyBJUlFzICovCj4gKwlyZXQg PSBfX2k5MTVfc3Bpbl9yZXF1ZXN0KHJlcSk7Cj4gKwlpZiAocmV0ID09IDApCj4gKwkJZ290byBv dXQ7Cj4gKwo+ICsJaWYgKCFpcnFfdGVzdF9pbl9wcm9ncmVzcyAmJiBXQVJOX09OKCFyaW5nLT5p cnFfZ2V0KHJpbmcpKSkgewo+ICsJCXJldCA9IC1FTk9ERVY7Cj4gKwkJZ290byBvdXQ7Cj4gKwl9 Cj4gKwo+ICAgCWZvciAoOzspIHsKPiAgIAkJc3RydWN0IHRpbWVyX2xpc3QgdGltZXI7Cj4KPiBA QCAtMTI3OSwxNCArMTMxMCwxNSBAQCBpbnQgX19pOTE1X3dhaXRfcmVxdWVzdChzdHJ1Y3QgZHJt X2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSwKPiAgIAkJCWRlc3Ryb3lfdGltZXJfb25fc3RhY2soJnRp bWVyKTsKPiAgIAkJfQo+ICAgCX0KPiAtCW5vdyA9IGt0aW1lX2dldF9yYXdfbnMoKTsKPiAtCXRy YWNlX2k5MTVfZ2VtX3JlcXVlc3Rfd2FpdF9lbmQocmVxKTsKPiAtCj4gICAJaWYgKCFpcnFfdGVz dF9pbl9wcm9ncmVzcykKPiAgIAkJcmluZy0+aXJxX3B1dChyaW5nKTsKPgo+ICAgCWZpbmlzaF93 YWl0KCZyaW5nLT5pcnFfcXVldWUsICZ3YWl0KTsKPgo+ICtvdXQ6Cj4gKwlub3cgPSBrdGltZV9n ZXRfcmF3X25zKCk7Cj4gKwl0cmFjZV9pOTE1X2dlbV9yZXF1ZXN0X3dhaXRfZW5kKHJlcSk7Cj4g Kwo+ICAgCWlmICh0aW1lb3V0KSB7Cj4gICAJCXM2NCB0cmVzID0gKnRpbWVvdXQgLSAobm93IC0g YmVmb3JlKTsKPgo+CgpSZXZpZXdlZC1ieTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGlu QGludGVsLmNvbT4KClJlZ2FyZHMsCgpUdnJ0a28KX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9pbnRlbC1nZngK