From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH v3 5/6] drm/i915/guc: rework guc_add_workqueue_item() Date: Tue, 10 May 2016 16:00:11 +0100 Message-ID: <5731F77B.50907@linux.intel.com> References: <1462563095-13233-1-git-send-email-david.s.gordon@intel.com> <1462563095-13233-5-git-send-email-david.s.gordon@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id 8582489709 for ; Tue, 10 May 2016 15:00:13 +0000 (UTC) In-Reply-To: <1462563095-13233-5-git-send-email-david.s.gordon@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Dave Gordon , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Ck9uIDA2LzA1LzE2IDIwOjMxLCBEYXZlIEdvcmRvbiB3cm90ZToKPiBNb3N0bHkgbGl0dGxlIG9w dGltaXNhdGlvbnMgYW5kIGZ1dHVyZS1wcm9vZmluZyBhZ2FpbnN0IGNvZGUgYnJlYWthZ2UuCj4g Rm9yIGluc3RhbmNlLCBpZiB0aGUgZHJpdmVyIGlzIGNvcnJlY3RseSBmb2xsb3dpbmcgdGhlIHN1 Ym1pc3Npb24KPiBwcm90b2NvbCwgdGhlICJvdXQgb2Ygc3BhY2UiIGNvbmRpdGlvbiBpcyBpbXBv c3NpYmxlLCBzbyB0aGUgcHJldmlvdXMKPiBydW50aW1lIFdBUk5fT04oKSBpcyBwcm9tb3RlZCB0 byBhIEdFTV9CVUdfT04oKSBmb3IgYSBtb3JlIGRyYW1hdGljCj4gZWZmZWN0IGluIGRldmVsb3Bt ZW50IGFuZCBsZXNzIGltcGFjdCBpbiBlbmQtdXNlciBzeXN0ZW1zLgo+Cj4gU2ltaWxhcmx5IHdl IGNhbiBtYWtlIGFsaWdubWVudCBjaGVja2luZyBtb3JlIHN0cmluZ2VudCBhbmQgcmVwbGFjZQo+ IG90aGVyIFdBUk5fT04oKSBjb25kaXRpb25zIHRoYXQgZG9uJ3QgcmVsYXRlIHRvIHRoZSBydW50 aW1lIGhhcmR3YXJlCj4gc3RhdGUgd2l0aCBlaXRoZXIgQlVJTERfQlVHX09OKCkgZm9yIGNvbXBp bGUtdGltZS1kZXRlY3RhYmxlIGlzc3Vlcywgb3IKPiBHRU1fQlVHX09OKCkgZm9yIGxvZ2ljYWwg ImNhbid0IGhhcHBlbiIgZXJyb3JzLgo+Cj4gV2l0aCB0aG9zZSBjaGFuZ2VzLCB3ZSBjYW4gY29u dmVydCBpdCB0byB2b2lkLCBhcyBzdWdnZXN0ZWQgYnkgQ2hyaXMKPiBXaWxzb24sIGFuZCB1cGRh dGUgdGhlIGNhbGxpbmcgY29kZSBhcHByb3ByaWF0ZWx5Lgo+Cj4gdjM6Cj4gICAgTm90ZSB0aGF0 IHdlJ3JlIG5vdyBwdXR0aW5nIHRoZSByZXF1ZXN0IHNlcW5vIGluIHRoZSAiZmVuY2VfaWQiIGZp ZWxkCj4gICAgb2YgZWFjaCBHdUMtd29yay1pdGVtLCBpbiBjYXNlIGl0IHR1cm5zIHVwIHNvbWV3 aGVyZSB1c2VmdWwgKFR2cnRrbykuCj4KPiBTaWduZWQtb2ZmLWJ5OiBEYXZlIEdvcmRvbiA8ZGF2 aWQucy5nb3Jkb25AaW50ZWwuY29tPgo+IC0tLQo+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9ndWNfc3VibWlzc2lvbi5jIHwgNzEgKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCj4g ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWMuaCAgICAgICAgICAgfCAgMiArLQo+ICAg ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjX2Z3aWYuaCAgICAgIHwgIDMgKy0KPiAgIDMg ZmlsZXMgY2hhbmdlZCwgMzggaW5zZXJ0aW9ucygrKSwgMzggZGVsZXRpb25zKC0pCj4KPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ndWNfc3VibWlzc2lvbi5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9ndWNfc3VibWlzc2lvbi5jCj4gaW5kZXggMjFkMzYwMy4u Nzk4OTdiMCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2d1Y19zdWJt aXNzaW9uLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2d1Y19zdWJtaXNzaW9u LmMKPiBAQCAtNDg3LDIzICs0ODcsMjggQEAgaW50IGk5MTVfZ3VjX3dxX2NoZWNrX3NwYWNlKHN0 cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxdWVzdCkKPiAgIAlyZXR1cm4gLUVBR0FJTjsK PiAgIH0KPgo+IC1zdGF0aWMgaW50IGd1Y19hZGRfd29ya3F1ZXVlX2l0ZW0oc3RydWN0IGk5MTVf Z3VjX2NsaWVudCAqZ2MsCj4gLQkJCQkgIHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcnEp Cj4gK3N0YXRpYyB2b2lkIGd1Y19hZGRfd29ya3F1ZXVlX2l0ZW0oc3RydWN0IGk5MTVfZ3VjX2Ns aWVudCAqZ2MsCj4gKwkJCQkgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJxKQo+ICAg ewo+ICsJLyogd3FpX2xlbiBpcyBpbiBEV29yZHMsIGFuZCBkb2VzIG5vdCBpbmNsdWRlIHRoZSBv bmUtd29yZCBoZWFkZXIgKi8KPiArCWNvbnN0IHNpemVfdCB3cWlfc2l6ZSA9IHNpemVvZihzdHJ1 Y3QgZ3VjX3dxX2l0ZW0pOwo+ICsJY29uc3QgdTMyIHdxaV9sZW4gPSB3cWlfc2l6ZS9zaXplb2Yo dTMyKSAtIDE7Cj4gICAJc3RydWN0IGd1Y19wcm9jZXNzX2Rlc2MgKmRlc2M7Cj4gICAJc3RydWN0 IGd1Y193cV9pdGVtICp3cWk7Cj4gICAJdm9pZCAqYmFzZTsKPiAtCXUzMiB0YWlsLCB3cV9sZW4s IHdxX29mZiwgc3BhY2U7Cj4gKwl1MzIgZnJlZXNwYWNlLCB0YWlsLCB3cV9vZmYsIHdxX3BhZ2U7 Cj4KPiAgIAlkZXNjID0gZ2MtPmNsaWVudF9iYXNlICsgZ2MtPnByb2NfZGVzY19vZmZzZXQ7Cj4g LQlzcGFjZSA9IENJUkNfU1BBQ0UoZ2MtPndxX3RhaWwsIGRlc2MtPmhlYWQsIGdjLT53cV9zaXpl KTsKPiAtCWlmIChXQVJOX09OKHNwYWNlIDwgc2l6ZW9mKHN0cnVjdCBndWNfd3FfaXRlbSkpKQo+ IC0JCXJldHVybiAtRU5PU1BDOyAvKiBzaG91bGRuJ3QgaGFwcGVuICovCj4KPiAtCS8qIHBvc3Rp bmNyZW1lbnQgV1EgdGFpbCBmb3IgbmV4dCB0aW1lICovCj4gLQl3cV9vZmYgPSBnYy0+d3FfdGFp bDsKPiAtCWdjLT53cV90YWlsICs9IHNpemVvZihzdHJ1Y3QgZ3VjX3dxX2l0ZW0pOwo+IC0JZ2Mt PndxX3RhaWwgJj0gZ2MtPndxX3NpemUgLSAxOwo+ICsJLyogRnJlZSBzcGFjZSBpcyBndWFyYW50 ZWVkLCBzZWUgaTkxNV9ndWNfd3FfY2hlY2tfc3BhY2UoKSBhYm92ZSAqLwo+ICsJZnJlZXNwYWNl ID0gQ0lSQ19TUEFDRShnYy0+d3FfdGFpbCwgZGVzYy0+aGVhZCwgZ2MtPndxX3NpemUpOwo+ICsJ R0VNX0JVR19PTihmcmVlc3BhY2UgPCB3cWlfc2l6ZSk7Cj4gKwo+ICsJLyogVGhlIEd1QyBmaXJt d2FyZSB3YW50cyB0aGUgdGFpbCBpbmRleCBpbiBRV29yZHMsIG5vdCBieXRlcyAqLwo+ICsJdGFp bCA9IHJxLT50YWlsOwo+ICsJR0VNX0JVR19PTih0YWlsICYgNyk7Cj4gKwl0YWlsID4+PSAzOwo+ ICsJR0VNX0JVR19PTih0YWlsID4gV1FfUklOR19UQUlMX01BWCk7Cj4KPiAgIAkvKiBGb3Igbm93 IHdvcmtxdWV1ZSBpdGVtIGlzIDQgRFdzOyB3b3JrcXVldWUgYnVmZmVyIGlzIDIgcGFnZXMuIFNv IHdlCj4gICAJICogc2hvdWxkIG5vdCBoYXZlIHRoZSBjYXNlIHdoZXJlIHN0cnVjdHVyZSB3cWkg aXMgYWNyb3NzIHBhZ2UsIG5laXRoZXIKPiBAQCAtNTEyLDE5ICs1MTcsMjMgQEAgc3RhdGljIGlu dCBndWNfYWRkX3dvcmtxdWV1ZV9pdGVtKHN0cnVjdCBpOTE1X2d1Y19jbGllbnQgKmdjLAo+ICAg CSAqIFhYWDogaWYgbm90IHRoZSBjYXNlLCB3ZSBuZWVkIHNhdmUgZGF0YSB0byBhIHRlbXAgd3Fp IGFuZCBjb3B5IGl0IHRvCj4gICAJICogd29ya3F1ZXVlIGJ1ZmZlciBkdyBieSBkdy4KPiAgIAkg Ki8KPiAtCVdBUk5fT04oc2l6ZW9mKHN0cnVjdCBndWNfd3FfaXRlbSkgIT0gMTYpOwo+IC0JV0FS Tl9PTih3cV9vZmYgJiAzKTsKPiArCUJVSUxEX0JVR19PTih3cWlfc2l6ZSAhPSAxNik7Cj4gKwo+ ICsJLyogcG9zdGluY3JlbWVudCBXUSB0YWlsIGZvciBuZXh0IHRpbWUgKi8KPiArCXdxX29mZiA9 IGdjLT53cV90YWlsOwo+ICsJZ2MtPndxX3RhaWwgKz0gd3FpX3NpemU7Cj4gKwlnYy0+d3FfdGFp bCAmPSBnYy0+d3Ffc2l6ZSAtIDE7Cj4gKwlHRU1fQlVHX09OKHdxX29mZiAmICh3cWlfc2l6ZSAt IDEpKTsKPgo+IC0JLyogd3Egc3RhcnRzIGZyb20gdGhlIHBhZ2UgYWZ0ZXIgZG9vcmJlbGwgLyBw cm9jZXNzX2Rlc2MgKi8KPiAtCWJhc2UgPSBrbWFwX2F0b21pYyhpOTE1X2dlbV9vYmplY3RfZ2V0 X3BhZ2UoZ2MtPmNsaWVudF9vYmosCj4gLQkJCSh3cV9vZmYgKyBHVUNfREJfU0laRSkgPj4gUEFH RV9TSElGVCkpOwo+ICsJLyogV1Egc3RhcnRzIGZyb20gdGhlIHBhZ2UgYWZ0ZXIgZG9vcmJlbGwg LyBwcm9jZXNzX2Rlc2MgKi8KPiArCXdxX3BhZ2UgPSAod3Ffb2ZmICsgR1VDX0RCX1NJWkUpID4+ IFBBR0VfU0hJRlQ7Cj4gICAJd3Ffb2ZmICY9IFBBR0VfU0laRSAtIDE7Cj4gKwliYXNlID0ga21h cF9hdG9taWMoaTkxNV9nZW1fb2JqZWN0X2dldF9wYWdlKGdjLT5jbGllbnRfb2JqLCB3cV9wYWdl KSk7Cj4gICAJd3FpID0gKHN0cnVjdCBndWNfd3FfaXRlbSAqKSgoY2hhciAqKWJhc2UgKyB3cV9v ZmYpOwo+Cj4gLQkvKiBsZW4gZG9lcyBub3QgaW5jbHVkZSB0aGUgaGVhZGVyICovCj4gLQl3cV9s ZW4gPSBzaXplb2Yoc3RydWN0IGd1Y193cV9pdGVtKSAvIHNpemVvZih1MzIpIC0gMTsKPiArCS8q IE5vdyBmaWxsIGluIHRoZSA0LXdvcmQgd29yayBxdWV1ZSBpdGVtICovCj4gICAJd3FpLT5oZWFk ZXIgPSBXUV9UWVBFX0lOT1JERVIgfAo+IC0JCQkod3FfbGVuIDw8IFdRX0xFTl9TSElGVCkgfAo+ ICsJCQkod3FpX2xlbiA8PCBXUV9MRU5fU0hJRlQpIHwKPiAgIAkJCShycS0+ZW5naW5lLT5ndWNf aWQgPDwgV1FfVEFSR0VUX1NISUZUKSB8Cj4gICAJCQlXUV9OT19XQ0ZMVVNIX1dBSVQ7Cj4KPiBA QCAtNTMyLDE0ICs1NDEsMTAgQEAgc3RhdGljIGludCBndWNfYWRkX3dvcmtxdWV1ZV9pdGVtKHN0 cnVjdCBpOTE1X2d1Y19jbGllbnQgKmdjLAo+ICAgCXdxaS0+Y29udGV4dF9kZXNjID0gKHUzMilp bnRlbF9scl9jb250ZXh0X2Rlc2NyaXB0b3IocnEtPmN0eCwKPiAgIAkJCQkJCQkgICAgIHJxLT5l bmdpbmUpOwo+Cj4gLQkvKiBUaGUgR3VDIGZpcm13YXJlIHdhbnRzIHRoZSB0YWlsIGluZGV4IGlu IFFXb3Jkcywgbm90IGJ5dGVzICovCj4gLQl0YWlsID0gcnEtPnJpbmdidWYtPnRhaWwgPj4gMzsK PiAgIAl3cWktPnJpbmdfdGFpbCA9IHRhaWwgPDwgV1FfUklOR19UQUlMX1NISUZUOwo+IC0Jd3Fp LT5mZW5jZV9pZCA9IDA7IC8qWFhYOiB3aGF0IGZlbmNlIHRvIGJlIGhlcmUgKi8KPiArCXdxaS0+ ZmVuY2VfaWQgPSBycS0+c2Vxbm87Cj4KPiAgIAlrdW5tYXBfYXRvbWljKGJhc2UpOwo+IC0KPiAt CXJldHVybiAwOwo+ICAgfQo+Cj4gICAvKioKPiBAQCAtNTY2LDI2ICs1NzEsMjAgQEAgaW50IGk5 MTVfZ3VjX3N1Ym1pdChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJxKQo+ICAgCXVuc2ln bmVkIGludCBlbmdpbmVfaWQgPSBycS0+ZW5naW5lLT5ndWNfaWQ7Cj4gICAJc3RydWN0IGludGVs X2d1YyAqZ3VjID0gJnJxLT5pOTE1LT5ndWM7Cj4gICAJc3RydWN0IGk5MTVfZ3VjX2NsaWVudCAq Y2xpZW50ID0gZ3VjLT5leGVjYnVmX2NsaWVudDsKPiAtCWludCBxX3JldCwgYl9yZXQ7Cj4gKwlp bnQgYl9yZXQ7Cj4KPiAtCXFfcmV0ID0gZ3VjX2FkZF93b3JrcXVldWVfaXRlbShjbGllbnQsIHJx KTsKPiAtCWlmIChxX3JldCA9PSAwKQo+IC0JCWJfcmV0ID0gZ3VjX3JpbmdfZG9vcmJlbGwoY2xp ZW50KTsKPiArCWd1Y19hZGRfd29ya3F1ZXVlX2l0ZW0oY2xpZW50LCBycSk7Cj4gKwliX3JldCA9 IGd1Y19yaW5nX2Rvb3JiZWxsKGNsaWVudCk7Cj4KPiAgIAljbGllbnQtPnN1Ym1pc3Npb25zW2Vu Z2luZV9pZF0gKz0gMTsKPiAtCWlmIChxX3JldCkgewo+IC0JCWNsaWVudC0+cV9mYWlsICs9IDE7 Cj4gLQkJY2xpZW50LT5yZXRjb2RlID0gcV9yZXQ7Cj4gLQl9IGVsc2UgaWYgKGJfcmV0KSB7Cj4g KwljbGllbnQtPnJldGNvZGUgPSBiX3JldDsKPiArCWlmIChiX3JldCkKPiAgIAkJY2xpZW50LT5i X2ZhaWwgKz0gMTsKPiAtCQljbGllbnQtPnJldGNvZGUgPSBxX3JldCA9IGJfcmV0Owo+IC0JfSBl bHNlIHsKPiAtCQljbGllbnQtPnJldGNvZGUgPSAwOwo+IC0JfQo+ICsKPiAgIAlndWMtPnN1Ym1p c3Npb25zW2VuZ2luZV9pZF0gKz0gMTsKPiAgIAlndWMtPmxhc3Rfc2Vxbm9bZW5naW5lX2lkXSA9 IHJxLT5zZXFubzsKPgo+IC0JcmV0dXJuIHFfcmV0Owo+ICsJcmV0dXJuIGJfcmV0Owo+ICAgfQo+ Cj4gICAvKgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWMuaCBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1Yy5oCj4gaW5kZXggNDM2ZjJkNi4uMTBlMWQ1 ZSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWMuaAo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1Yy5oCj4gQEAgLTc0LDcgKzc0LDcgQEAgc3Ry dWN0IGk5MTVfZ3VjX2NsaWVudCB7Cj4gICAJLyogR3VDIHN1Ym1pc3Npb24gc3RhdGlzdGljcyAm IHN0YXR1cyAqLwo+ICAgCXVpbnQ2NF90IHN1Ym1pc3Npb25zW0dVQ19NQVhfRU5HSU5FU19OVU1d Owo+ICAgCXVpbnQzMl90IG5vX3dxX3NwYWNlOwkJLyogU3BhY2UgcHJlLWNoZWNrIGZhaWxlZAkq Lwo+IC0JdWludDMyX3QgcV9mYWlsOwkJLyogRmFpbGVkIHRvIHF1ZXVlIChNQlopCSovCj4gKwl1 aW50MzJfdCBxX2ZhaWw7CQkvKiBObyBsb25nZXIgdXNlZAkJKi8KPiAgIAl1aW50MzJfdCBiX2Zh aWw7CQkvKiBEb29yYmVsbCBmYWlsdXJlIChNQlopCSovCj4gICAJaW50IHJldGNvZGU7CQkJLyog UmVzdWx0IG9mIGxhc3QgZ3VjX3N1Ym1pdCgpCSovCj4gICB9Owo+IGRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWNfZndpZi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZ3VjX2Z3aWYuaAo+IGluZGV4IDJkZTU3ZmYuLjk0NDc4NmQgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjX2Z3aWYuaAo+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2ludGVsX2d1Y19md2lmLmgKPiBAQCAtNzEsNyArNzEsOCBAQAo+ICAgI2RlZmlu ZSAgIFdRX1dPUktMT0FEX1RPVUNICQkoMiA8PCBXUV9XT1JLTE9BRF9TSElGVCkKPgo+ICAgI2Rl ZmluZSBXUV9SSU5HX1RBSUxfU0hJRlQJCTIwCj4gLSNkZWZpbmUgV1FfUklOR19UQUlMX01BU0sJ CSgweDdGRiA8PCBXUV9SSU5HX1RBSUxfU0hJRlQpCj4gKyNkZWZpbmUgV1FfUklOR19UQUlMX01B WAkJMHg3RkYJLyogMl4xMSBRV29yZHMgKi8KPiArI2RlZmluZSBXUV9SSU5HX1RBSUxfTUFTSwkJ KFdRX1JJTkdfVEFJTF9NQVggPDwgV1FfUklOR19UQUlMX1NISUZUKQo+Cj4gICAjZGVmaW5lIEdV Q19ET09SQkVMTF9FTkFCTEVECQkxCj4gICAjZGVmaW5lIEdVQ19ET09SQkVMTF9ESVNBQkxFRAkJ MAo+CgpSZXZpZXdlZC1ieTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNv bT4KClJlZ2FyZHMsCgpUdnJ0a28KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4Cg==