From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lionel Landwerlin Subject: Re: [PATCH] i915/oa: Simplify updating contexts Date: Wed, 12 Sep 2018 16:46:30 +0100 Message-ID: References: <20180912152930.28237-1-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by gabe.freedesktop.org (Postfix) with ESMTPS id 5F9D3899B3 for ; Wed, 12 Sep 2018 15:47:00 +0000 (UTC) In-Reply-To: <20180912152930.28237-1-tvrtko.ursulin@linux.intel.com> 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: Tvrtko Ursulin , Intel-gfx@lists.freedesktop.org Cc: Matthew Auld List-Id: intel-gfx@lists.freedesktop.org T24gMTIvMDkvMjAxOCAxNjoyOSwgVHZydGtvIFVyc3VsaW4gd3JvdGU6Cj4gRnJvbTogVHZydGtv IFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KPgo+IFdlIGNhbiByZW1vdmUgdGhl IHVwZGF0ZS12aWEtYmF0Y2gtYnVmZmVyIGNvZGUgcGF0aCwgd2hpY2ggaXMgYmFzaWNhbGx5IGFu Cj4gZWZmZWN0aXZlIGR1cGxpY2F0ZSBvZiB1cGRhdGUtdmlhLWNvbnRleHQtaW1hZ2UgcGF0aCwg aWYgd2Ugbm90aWNlIHRoYXQKPiBhZnRlciB3ZSBoYXZlIGlkbGVkIHRoZSBHUFUsIHdlIGNhbiB1 cGRhdGUgdGhlIGNvbnRleHQgaW1hZ2UgZXZlbiBvZiB0aGUKPiBrZXJuZWwgY29udGV4dCBkaXJl Y3RseS4gKFVwZGF0ZS12aWEtYmF0Y2gtYnVmZmVyIHBhdGggZXhpc3RlZCBvbmx5IHRvCj4gc29s dmUgdGhlIHByb2JsZW0gb2YgaG93IHRvIHVwZGF0ZSB0aGUga2VybmVsIGNvbnRleHQgaW1hZ2Uu KQo+Cj4gT25seSBhZGRpdGlvbmFsIHRoaW5nIG5lZWRlZCBpcyB0byBhY3RpdmF0ZSB0aGUgZWRp dGVkIGNvbmZpZ3VyYXRpb24gYnkKPiBzZW5kaW5nIG9uZSBlbXB0eSByZXF1ZXN0IGRvd24gdGhl IHBpcGUuIFRoaXMgYWNjb21wbGlzaGVzIGNvbnRleHQgcmVzdG9yZQo+IG9mIHRoZSB1cGRhdGVk IGtlcm5lbCBjb250ZXh0IGFuZCBzbyB0aGUgT0EgY29uZmlndXJhdGlvbiBnZXRzIHdyaXR0ZW4g b3V0Cj4gdG8gaXQncyBjb250cm9sIHJlZ2lzdGVycy4KPgo+IFNpZ25lZC1vZmYtYnk6IFR2cnRr byBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Cj4gQ2M6IExpb25lbCBMYW5kd2Vy bGluIDxsaW9uZWwuZy5sYW5kd2VybGluQGludGVsLmNvbT4KPiBDYzogTWF0dGhldyBBdWxkIDxt YXR0aGV3LmF1bGRAaW50ZWwuY29tPgo+IENjOiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdp bHNvbi5jby51az4KCgpBZnRlciB0aGUgZGlzY3Vzc2lvbiB3ZSBoYWQgb24gSVJDIGFib3V0IGNv bnRleHQgc2F2ZS9yZXN0b3JlIHRpbWluZ3MsIAp0aGlzIGxvb2tzIGdvb2QgdG8gbWUgOgoKClJl dmlld2VkLWJ5OiBMaW9uZWwgTGFuZHdlcmxpbiA8bGlvbmVsLmcubGFuZHdlcmxpbkBpbnRlbC5j b20+CgoKPiAtLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGVyZi5jIHwgMTIyICsr KystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAgIDEgZmlsZSBjaGFuZ2VkLCAxMyBpbnNl cnRpb25zKCspLCAxMDkgZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9wZXJmLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3BlcmYuYwo+ IGluZGV4IGNjYjIwMjMwZGYyYy4uM2Q3YTA1MmI0Y2NhIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfcGVyZi5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9wZXJmLmMKPiBAQCAtMTY3OSwxMDcgKzE2NzksNiBAQCBzdGF0aWMgdm9pZCBnZW44X3VwZGF0 ZV9yZWdfc3RhdGVfdW5sb2NrZWQoc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCwKPiAgIAl9 Cj4gICB9Cj4gICAKPiAtLyoKPiAtICogU2FtZSBhcyBnZW44X3VwZGF0ZV9yZWdfc3RhdGVfdW5s b2NrZWQgb25seSB0aHJvdWdoIHRoZSBiYXRjaGJ1ZmZlci4gVGhpcwo+IC0gKiBpcyBvbmx5IHVz ZWQgYnkgdGhlIGtlcm5lbCBjb250ZXh0Lgo+IC0gKi8KPiAtc3RhdGljIGludCBnZW44X2VtaXRf b2FfY29uZmlnKHN0cnVjdCBpOTE1X3JlcXVlc3QgKnJxLAo+IC0JCQkgICAgICAgY29uc3Qgc3Ry dWN0IGk5MTVfb2FfY29uZmlnICpvYV9jb25maWcpCj4gLXsKPiAtCXN0cnVjdCBkcm1faTkxNV9w cml2YXRlICpkZXZfcHJpdiA9IHJxLT5pOTE1Owo+IC0JLyogVGhlIE1NSU8gb2Zmc2V0cyBmb3Ig RmxleCBFVSByZWdpc3RlcnMgYXJlbid0IGNvbnRpZ3VvdXMgKi8KPiAtCXUzMiBmbGV4X21taW9b XSA9IHsKPiAtCQlpOTE1X21taW9fcmVnX29mZnNldChFVV9QRVJGX0NOVEwwKSwKPiAtCQlpOTE1 X21taW9fcmVnX29mZnNldChFVV9QRVJGX0NOVEwxKSwKPiAtCQlpOTE1X21taW9fcmVnX29mZnNl dChFVV9QRVJGX0NOVEwyKSwKPiAtCQlpOTE1X21taW9fcmVnX29mZnNldChFVV9QRVJGX0NOVEwz KSwKPiAtCQlpOTE1X21taW9fcmVnX29mZnNldChFVV9QRVJGX0NOVEw0KSwKPiAtCQlpOTE1X21t aW9fcmVnX29mZnNldChFVV9QRVJGX0NOVEw1KSwKPiAtCQlpOTE1X21taW9fcmVnX29mZnNldChF VV9QRVJGX0NOVEw2KSwKPiAtCX07Cj4gLQl1MzIgKmNzOwo+IC0JaW50IGk7Cj4gLQo+IC0JY3Mg PSBpbnRlbF9yaW5nX2JlZ2luKHJxLCBBUlJBWV9TSVpFKGZsZXhfbW1pbykgKiAyICsgNCk7Cj4g LQlpZiAoSVNfRVJSKGNzKSkKPiAtCQlyZXR1cm4gUFRSX0VSUihjcyk7Cj4gLQo+IC0JKmNzKysg PSBNSV9MT0FEX1JFR0lTVEVSX0lNTShBUlJBWV9TSVpFKGZsZXhfbW1pbykgKyAxKTsKPiAtCj4g LQkqY3MrKyA9IGk5MTVfbW1pb19yZWdfb2Zmc2V0KEdFTjhfT0FDVFhDT05UUk9MKTsKPiAtCSpj cysrID0gKGRldl9wcml2LT5wZXJmLm9hLnBlcmlvZF9leHBvbmVudCA8PCBHRU44X09BX1RJTUVS X1BFUklPRF9TSElGVCkgfAo+IC0JCShkZXZfcHJpdi0+cGVyZi5vYS5wZXJpb2RpYyA/IEdFTjhf T0FfVElNRVJfRU5BQkxFIDogMCkgfAo+IC0JCUdFTjhfT0FfQ09VTlRFUl9SRVNVTUU7Cj4gLQo+ IC0JZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUoZmxleF9tbWlvKTsgaSsrKSB7Cj4gLQkJdTMy IG1taW8gPSBmbGV4X21taW9baV07Cj4gLQo+IC0JCS8qCj4gLQkJICogVGhpcyBhcmJpdHJhcnkg ZGVmYXVsdCB3aWxsIHNlbGVjdCB0aGUgJ0VVIEZQVTAgUGlwZWxpbmUKPiAtCQkgKiBBY3RpdmUn IGV2ZW50LiBJbiB0aGUgZnV0dXJlIGl0J3MgYW50aWNpcGF0ZWQgdGhhdCB0aGVyZQo+IC0JCSAq IHdpbGwgYmUgYW4gZXhwbGljaXQgJ05vIEV2ZW50JyB3ZSBjYW4gc2VsZWN0LCBidXQgbm90Cj4g LQkJICogeWV0Li4uCj4gLQkJICovCj4gLQkJdTMyIHZhbHVlID0gMDsKPiAtCj4gLQkJaWYgKG9h X2NvbmZpZykgewo+IC0JCQl1MzIgajsKPiAtCj4gLQkJCWZvciAoaiA9IDA7IGogPCBvYV9jb25m aWctPmZsZXhfcmVnc19sZW47IGorKykgewo+IC0JCQkJaWYgKGk5MTVfbW1pb19yZWdfb2Zmc2V0 KG9hX2NvbmZpZy0+ZmxleF9yZWdzW2pdLmFkZHIpID09IG1taW8pIHsKPiAtCQkJCQl2YWx1ZSA9 IG9hX2NvbmZpZy0+ZmxleF9yZWdzW2pdLnZhbHVlOwo+IC0JCQkJCWJyZWFrOwo+IC0JCQkJfQo+ IC0JCQl9Cj4gLQkJfQo+IC0KPiAtCQkqY3MrKyA9IG1taW87Cj4gLQkJKmNzKysgPSB2YWx1ZTsK PiAtCX0KPiAtCj4gLQkqY3MrKyA9IE1JX05PT1A7Cj4gLQlpbnRlbF9yaW5nX2FkdmFuY2UocnEs IGNzKTsKPiAtCj4gLQlyZXR1cm4gMDsKPiAtfQo+IC0KPiAtc3RhdGljIGludCBnZW44X3N3aXRj aF90b191cGRhdGVkX2tlcm5lbF9jb250ZXh0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiwKPiAtCQkJCQkJIGNvbnN0IHN0cnVjdCBpOTE1X29hX2NvbmZpZyAqb2FfY29uZmlnKQo+ IC17Cj4gLQlzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUgPSBkZXZfcHJpdi0+ZW5naW5l W1JDU107Cj4gLQlzdHJ1Y3QgaTkxNV90aW1lbGluZSAqdGltZWxpbmU7Cj4gLQlzdHJ1Y3QgaTkx NV9yZXF1ZXN0ICpycTsKPiAtCWludCByZXQ7Cj4gLQo+IC0JbG9ja2RlcF9hc3NlcnRfaGVsZCgm ZGV2X3ByaXYtPmRybS5zdHJ1Y3RfbXV0ZXgpOwo+IC0KPiAtCWk5MTVfcmV0aXJlX3JlcXVlc3Rz KGRldl9wcml2KTsKPiAtCj4gLQlycSA9IGk5MTVfcmVxdWVzdF9hbGxvYyhlbmdpbmUsIGRldl9w cml2LT5rZXJuZWxfY29udGV4dCk7Cj4gLQlpZiAoSVNfRVJSKHJxKSkKPiAtCQlyZXR1cm4gUFRS X0VSUihycSk7Cj4gLQo+IC0JcmV0ID0gZ2VuOF9lbWl0X29hX2NvbmZpZyhycSwgb2FfY29uZmln KTsKPiAtCWlmIChyZXQpIHsKPiAtCQlpOTE1X3JlcXVlc3RfYWRkKHJxKTsKPiAtCQlyZXR1cm4g cmV0Owo+IC0JfQo+IC0KPiAtCS8qIFF1ZXVlIHRoaXMgc3dpdGNoIGFmdGVyIGFsbCBvdGhlciBh Y3Rpdml0eSAqLwo+IC0JbGlzdF9mb3JfZWFjaF9lbnRyeSh0aW1lbGluZSwgJmRldl9wcml2LT5n dC50aW1lbGluZXMsIGxpbmspIHsKPiAtCQlzdHJ1Y3QgaTkxNV9yZXF1ZXN0ICpwcmV2Owo+IC0K PiAtCQlwcmV2ID0gaTkxNV9nZW1fYWN0aXZlX3JhdygmdGltZWxpbmUtPmxhc3RfcmVxdWVzdCwK PiAtCQkJCQkgICAmZGV2X3ByaXYtPmRybS5zdHJ1Y3RfbXV0ZXgpOwo+IC0JCWlmIChwcmV2KQo+ IC0JCQlpOTE1X3JlcXVlc3RfYXdhaXRfZG1hX2ZlbmNlKHJxLCAmcHJldi0+ZmVuY2UpOwo+IC0J fQo+IC0KPiAtCWk5MTVfcmVxdWVzdF9hZGQocnEpOwo+IC0KPiAtCXJldHVybiAwOwo+IC19Cj4g LQo+ICAgLyoKPiAgICAqIE1hbmFnZXMgdXBkYXRpbmcgdGhlIHBlci1jb250ZXh0IGFzcGVjdHMg b2YgdGhlIE9BIHN0cmVhbQo+ICAgICogY29uZmlndXJhdGlvbiBhY3Jvc3MgYWxsIGNvbnRleHRz Lgo+IEBAIC0xODA5LDE2ICsxNzA4LDExIEBAIHN0YXRpYyBpbnQgZ2VuOF9jb25maWd1cmVfYWxs X2NvbnRleHRzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiAgIHsKPiAgIAlz dHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUgPSBkZXZfcHJpdi0+ZW5naW5lW1JDU107Cj4g ICAJc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eDsKPiArCXN0cnVjdCBpOTE1X3JlcXVlc3Qg KnJxOwo+ICAgCWludCByZXQ7Cj4gLQl1bnNpZ25lZCBpbnQgd2FpdF9mbGFncyA9IEk5MTVfV0FJ VF9MT0NLRUQ7Cj4gICAKPiAgIAlsb2NrZGVwX2Fzc2VydF9oZWxkKCZkZXZfcHJpdi0+ZHJtLnN0 cnVjdF9tdXRleCk7Cj4gICAKPiAtCS8qIFN3aXRjaCBhd2F5IGZyb20gYW55IHVzZXIgY29udGV4 dC4gKi8KPiAtCXJldCA9IGdlbjhfc3dpdGNoX3RvX3VwZGF0ZWRfa2VybmVsX2NvbnRleHQoZGV2 X3ByaXYsIG9hX2NvbmZpZyk7Cj4gLQlpZiAocmV0KQo+IC0JCXJldHVybiByZXQ7Cj4gLQo+ICAg CS8qCj4gICAJICogVGhlIE9BIHJlZ2lzdGVyIGNvbmZpZyBpcyBzZXR1cCB0aHJvdWdoIHRoZSBj b250ZXh0IGltYWdlLiBUaGlzIGltYWdlCj4gICAJICogbWlnaHQgYmUgd3JpdHRlbiB0byBieSB0 aGUgR1BVIG9uIGNvbnRleHQgc3dpdGNoIChpbiBwYXJ0aWN1bGFyIG9uCj4gQEAgLTE4MzMsNyAr MTcyNyw3IEBAIHN0YXRpYyBpbnQgZ2VuOF9jb25maWd1cmVfYWxsX2NvbnRleHRzKHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKPiAgIAkgKiB0aGUgR1BVIGZyb20gYW55IHN1Ym1p dHRlZCB3b3JrLgo+ICAgCSAqLwo+ICAgCXJldCA9IGk5MTVfZ2VtX3dhaXRfZm9yX2lkbGUoZGV2 X3ByaXYsCj4gLQkJCQkgICAgIHdhaXRfZmxhZ3MsCj4gKwkJCQkgICAgIEk5MTVfV0FJVF9MT0NL RUQsCj4gICAJCQkJICAgICBNQVhfU0NIRURVTEVfVElNRU9VVCk7Cj4gICAJaWYgKHJldCkKPiAg IAkJcmV0dXJuIHJldDsKPiBAQCAtMTg1OSw3ICsxNzUzLDE3IEBAIHN0YXRpYyBpbnQgZ2VuOF9j b25maWd1cmVfYWxsX2NvbnRleHRzKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwK PiAgIAkJaTkxNV9nZW1fb2JqZWN0X3VucGluX21hcChjZS0+c3RhdGUtPm9iaik7Cj4gICAJfQo+ ICAgCj4gLQlyZXR1cm4gcmV0Owo+ICsJLyoKPiArCSAqIEFwcGx5IHRoZSBjb25maWd1cmF0aW9u IGJ5IGRvaW5nIG9uZSBjb250ZXh0IHJlc3RvcmUgb2YgdGhlIGVkaXRlZAo+ICsJICogY29udGV4 dCBpbWFnZS4KPiArCSAqLwo+ICsJcnEgPSBpOTE1X3JlcXVlc3RfYWxsb2MoZW5naW5lLCBkZXZf cHJpdi0+a2VybmVsX2NvbnRleHQpOwo+ICsJaWYgKElTX0VSUihycSkpCj4gKwkJcmV0dXJuIFBU Ul9FUlIocnEpOwo+ICsKPiArCWk5MTVfcmVxdWVzdF9hZGQocnEpOwo+ICsKPiArCXJldHVybiAw Owo+ICAgfQo+ICAgCj4gICBzdGF0aWMgaW50IGdlbjhfZW5hYmxlX21ldHJpY19zZXQoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2ludGVsLWdmeAo=