From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH 07/13] drm/i915: Allow userspace to clone contexts on creation Date: Fri, 8 Mar 2019 16:13:56 +0000 Message-ID: References: <20190308141244.16837-1-chris@chris-wilson.co.uk> <20190308141244.16837-8-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 mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 7E7A36E3D9 for ; Fri, 8 Mar 2019 16:13:58 +0000 (UTC) In-Reply-To: <20190308141244.16837-8-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 Ck9uIDA4LzAzLzIwMTkgMTQ6MTIsIENocmlzIFdpbHNvbiB3cm90ZToKPiBBIHVzZWNhc2UgYXJv c2Ugb3V0IG9mIGhhbmRsaW5nIGNvbnRleHQgcmVjb3ZlcnkgaW4gbWVzYSwgd2hlcmVieSB0aGV5 Cj4gd2lzaCB0byByZWNyZWF0ZSBhIGNvbnRleHQgd2l0aCBmcmVzaCBsb2dpY2FsIHN0YXRlIGJ1 dCBwcmVzZXJ2aW5nIGFsbAo+IG90aGVyIGRldGFpbHMgb2YgdGhlIG9yaWdpbmFsLiBDdXJyZW50 bHksIHRoZXkgY3JlYXRlIGEgbmV3IGNvbnRleHQgYW5kCj4gaXRlcmF0ZSBvdmVyIHdoaWNoIGJp dHMgdGhleSB3YW50IHRvIGNvcHkgYWNyb3NzLCBidXQgaXQgd291bGQgbXVjaCBtb3JlCj4gY29u dmVuaWVudCBpZiB0aGV5IHdlcmUgYWJsZSB0byBqdXN0IHBhc3MgaW4gYSB0YXJnZXQgY29udGV4 dCB0byBjbG9uZQo+IGR1cmluZyBjcmVhdGlvbi4gVGhpcyBlc3NlbnRpYWxseSBleHRlbmRzIHRo ZSBzZXRwYXJhbSBkdXJpbmcgY3JlYXRpb24KPiB0byBwdWxsIHRoZSBkZXRhaWxzIGZyb20gYSB0 YXJnZXQgY29udGV4dCBpbnN0ZWFkIG9mIHRoZSB1c2VyIHN1cHBsaWVkCj4gcGFyYW1ldGVycy4K ClRoaXMgb25lIGlzIG5vdCB1c2VkIGJ5IG1lZGlhIHNvIGl0IHdpbGwgbGlrZWx5IGhhdmUgdG8g ZmluZCBhIHNlcGFyYXRlIApyb3V0ZSB1cHN0cmVhbS4KCj4gU2lnbmVkLW9mZi1ieTogQ2hyaXMg V2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Cj4gLS0tCj4gICBkcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMgfCA5MCArKysrKysrKysrKysrKysrKysrKysrKysr Cj4gICBpbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmggICAgICAgICAgICAgfCAxNCArKysrCj4g ICAyIGZpbGVzIGNoYW5nZWQsIDEwNCBpbnNlcnRpb25zKCspCj4gCj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtX2NvbnRleHQuYwo+IGluZGV4IDMxMDg5MmI0MmI2OC4uMmNmYzY4YjY2OTQ0 IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYwo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYwo+IEBAIC0xNDI4 LDggKzE0MjgsOTggQEAgc3RhdGljIGludCBjcmVhdGVfc2V0cGFyYW0oc3RydWN0IGk5MTVfdXNl cl9leHRlbnNpb24gX191c2VyICpleHQsIHZvaWQgKmRhdGEpCj4gICAJcmV0dXJuIGN0eF9zZXRw YXJhbShkYXRhLCAmbG9jYWwuc2V0cGFyYW0pOwo+ICAgfQo+ICAgCj4gK3N0YXRpYyBpbnQgY2xv bmVfc3NldShzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dCAqZHN0LAo+ICsJCSAgICAgIHN0cnVjdCBp OTE1X2dlbV9jb250ZXh0ICpzcmMpCj4gK3sKPiArCWNvbnN0IHN0cnVjdCBpbnRlbF9zc2V1IGRl ZmF1bHRfc3NldSA9Cj4gKwkJaW50ZWxfZGV2aWNlX2RlZmF1bHRfc3NldShkc3QtPmk5MTUpOwo+ ICsJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lOwo+ICsJZW51bSBpbnRlbF9lbmdpbmVf aWQgaWQ7Cj4gKwo+ICsJZm9yX2VhY2hfZW5naW5lKGVuZ2luZSwgZHN0LT5pOTE1LCBpZCkgewo+ ICsJCXN0cnVjdCBpbnRlbF9jb250ZXh0ICpjZTsKPiArCQlzdHJ1Y3QgaW50ZWxfc3NldSBzc2V1 Owo+ICsKPiArCQljZSA9IGludGVsX2NvbnRleHRfbG9va3VwKHNyYywgZW5naW5lKTsKPiArCQlp ZiAoIWNlKQo+ICsJCQljb250aW51ZTsKPiArCj4gKwkJc3NldSA9IGNlLT5zc2V1Owo+ICsJCWlm ICghbWVtY21wKCZzc2V1LCAmZGVmYXVsdF9zc2V1LCBzaXplb2Yoc3NldSkpKQo+ICsJCQljb250 aW51ZTsKPiArCj4gKwkJY2UgPSBpbnRlbF9jb250ZXh0X3Bpbl9sb2NrKGRzdCwgZW5naW5lKTsK PiArCQlpZiAoSVNfRVJSKGNlKSkKPiArCQkJcmV0dXJuIFBUUl9FUlIoY2UpOwo+ICsKPiArCQlj ZS0+c3NldSA9IHNzZXU7Cj4gKwkJaW50ZWxfY29udGV4dF9waW5fdW5sb2NrKGNlKTsKPiArCX0K PiArCj4gKwlyZXR1cm4gMDsKPiArfQo+ICsKPiArc3RhdGljIGludCBjcmVhdGVfY2xvbmUoc3Ry dWN0IGk5MTVfdXNlcl9leHRlbnNpb24gX191c2VyICpleHQsIHZvaWQgKmRhdGEpCj4gK3sKPiAr CXN0cnVjdCBkcm1faTkxNV9nZW1fY29udGV4dF9jcmVhdGVfZXh0X2Nsb25lIGxvY2FsOwo+ICsJ c3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmRzdCA9IGRhdGE7Cj4gKwlzdHJ1Y3QgaTkxNV9nZW1f Y29udGV4dCAqc3JjOwo+ICsJaW50IGVycjsKPiArCj4gKwlpZiAoY29weV9mcm9tX3VzZXIoJmxv Y2FsLCBleHQsIHNpemVvZihsb2NhbCkpKQo+ICsJCXJldHVybiAtRUZBVUxUOwo+ICsKPiArCWlm IChsb2NhbC5mbGFncyAmIEk5MTVfQ09OVEVYVF9DTE9ORV9VTktOT1dOKQo+ICsJCXJldHVybiAt RUlOVkFMOwo+ICsKPiArCWlmIChsb2NhbC5yc3ZkKQo+ICsJCXJldHVybiAtRUlOVkFMOwo+ICsK PiArCWlmIChsb2NhbC5jbG9uZSA9PSBkc3QtPnVzZXJfaGFuZGxlKSAvKiBnb29kIGd1ZXNzISBk ZW5pZWQuICovCj4gKwkJcmV0dXJuIC1FTk9FTlQ7Cgo6KSBHb29kIG9uZSwgYnV0IHB1dCBhIG1v cmUgb2J2aW91cyBjb21tZW50IGxpa2UgIkNhbm5vdCBjbG9uZSBpdHNlbGYhIi4KCj4gKwo+ICsJ cmN1X3JlYWRfbG9jaygpOwo+ICsJc3JjID0gX19pOTE1X2dlbV9jb250ZXh0X2xvb2t1cF9yY3Uo ZHN0LT5maWxlX3ByaXYsIGxvY2FsLmNsb25lKTsKPiArCXJjdV9yZWFkX3VubG9jaygpOwo+ICsJ aWYgKCFzcmMpCj4gKwkJcmV0dXJuIC1FTk9FTlQ7Cj4gKwo+ICsJR0VNX0JVR19PTihzcmMgPT0g ZHN0KTsKPiArCj4gKwlpZiAobG9jYWwuZmxhZ3MgJiBJOTE1X0NPTlRFWFRfQ0xPTkVfRkxBR1Mp Cj4gKwkJZHN0LT51c2VyX2ZsYWdzID0gc3JjLT51c2VyX2ZsYWdzOwo+ICsKPiArCWlmIChsb2Nh bC5mbGFncyAmIEk5MTVfQ09OVEVYVF9DTE9ORV9TQ0hFRCkKPiArCQlkc3QtPnNjaGVkID0gc3Jj LT5zY2hlZDsKPiArCj4gKwlpZiAobG9jYWwuZmxhZ3MgJiBJOTE1X0NPTlRFWFRfQ0xPTkVfU1NF VSkgewo+ICsJCWVyciA9IGNsb25lX3NzZXUoZHN0LCBzcmMpOwo+ICsJCWlmIChlcnIpCj4gKwkJ CXJldHVybiBlcnI7Cj4gKwl9Cj4gKwo+ICsJaWYgKGxvY2FsLmZsYWdzICYgSTkxNV9DT05URVhU X0NMT05FX1RJTUVMSU5FICYmIHNyYy0+dGltZWxpbmUpIHsKCkRvIHdlIHdhbnQgdG8gZXJyb3Ig b3V0IGlmIG5vIHRpbWVsaW5lIGFuZCBjbG9uaW5nIHdhcyByZXF1ZXN0ZWQ/Cgo+ICsJCWlmIChk c3QtPnRpbWVsaW5lKQo+ICsJCQlpOTE1X3RpbWVsaW5lX3B1dChkc3QtPnRpbWVsaW5lKTsKPiAr CQlkc3QtPnRpbWVsaW5lID0gaTkxNV90aW1lbGluZV9nZXQoc3JjLT50aW1lbGluZSk7CgpXaGF0 IHByZXZlbnRzIGEgZGlmZmVyZW50IHRocmVhZCBmcm9tIGNoYW5naW5nIGVpdGhlciBjb250ZXh0 IGluIApwYXJhbGxlbCBhbmQgbWFraW5nIHJlZmVyZW5jZSBjb3VudGluZyBnbyBiYWQ/Cgo+ICsJ fQo+ICsKPiArCWlmIChsb2NhbC5mbGFncyAmIEk5MTVfQ09OVEVYVF9DTE9ORV9WTSAmJiBzcmMt PnBwZ3R0KSB7CgpBbHNvIGZhaWwgaWYgaW1wb3NzaWJsZSB3YXMgcmVxdWVzdGVkPwoKPiArCQlH RU1fQlVHX09OKGRzdC0+cHBndHQgPT0gc3JjLT5wcGd0dCk7CgpIbS4uLiB3aGF0IHByZXZlbnRz IHRoaXM/IFNldF92bSBleHRlbnNpb24gZm9sbG93ZWQgYnkgY2xvbmUgY291bGQgCnRyaWdnZXIg aXQgSSB0aGluay4KCj4gKwo+ICsJCWlmIChkc3QtPnBwZ3R0KQo+ICsJCQlpOTE1X3BwZ3R0X3B1 dChkc3QtPnBwZ3R0KTsKPiArCj4gKwkJZHN0LT5wcGd0dCA9IGk5MTVfcHBndHRfZ2V0KHNyYy0+ cHBndHQpOwo+ICsJCWk5MTVfcHBndHRfb3Blbihkc3QtPnBwZ3R0KTsKCkFsc28gc29tZSBsb2Nr aW5nIGlzIG5lZWRlZCBJIHRoaW5rIHRvIG1ha2UgdGhlIGV4Y2hhbmdlIGF0b21pYy4KCkNvdWxk IHVzZSBfX2Fzc2lnbl9wcGd0dD8KCj4gKwl9Cj4gKwo+ICsJcmV0dXJuIDA7Cj4gK30KPiArCj4g ICBzdGF0aWMgY29uc3QgaTkxNV91c2VyX2V4dGVuc2lvbl9mbiBjcmVhdGVfZXh0ZW5zaW9uc1td ID0gewo+ICAgCVtJOTE1X0NPTlRFWFRfQ1JFQVRFX0VYVF9TRVRQQVJBTV0gPSBjcmVhdGVfc2V0 cGFyYW0sCj4gKwlbSTkxNV9DT05URVhUX0NSRUFURV9FWFRfQ0xPTkVdID0gY3JlYXRlX2Nsb25l LAo+ICAgfTsKPiAgIAo+ICAgc3RhdGljIGJvb2wgY2xpZW50X2lzX2Jhbm5lZChzdHJ1Y3QgZHJt X2k5MTVfZmlsZV9wcml2YXRlICpmaWxlX3ByaXYpCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFw aS9kcm0vaTkxNV9kcm0uaCBiL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaAo+IGluZGV4IDAw N2Q3N2ZmNzI5NS4uNTBkMTU0OTU0ZDVmIDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvdWFwaS9kcm0v aTkxNV9kcm0uaAo+ICsrKyBiL2luY2x1ZGUvdWFwaS9kcm0vaTkxNV9kcm0uaAo+IEBAIC0xNTc5 LDYgKzE1NzksMjAgQEAgc3RydWN0IGRybV9pOTE1X2dlbV9jb250ZXh0X2NyZWF0ZV9leHRfc2V0 cGFyYW0gewo+ICAgCXN0cnVjdCBkcm1faTkxNV9nZW1fY29udGV4dF9wYXJhbSBzZXRwYXJhbTsK PiAgIH07Cj4gICAKPiArc3RydWN0IGRybV9pOTE1X2dlbV9jb250ZXh0X2NyZWF0ZV9leHRfY2xv bmUgewo+ICsjZGVmaW5lIEk5MTVfQ09OVEVYVF9DUkVBVEVfRVhUX0NMT05FIDEKPiArCXN0cnVj dCBpOTE1X3VzZXJfZXh0ZW5zaW9uIGJhc2U7Cj4gKwlfX3UzMiBjbG9uZTsKCmlkLCBjbG9uZV9p ZCwgc291cmNlX2lkPwoKPiArCV9fdTMyIGZsYWdzOwo+ICsjZGVmaW5lIEk5MTVfQ09OVEVYVF9D TE9ORV9GTEFHUwkoMXUgPDwgMCkKPiArI2RlZmluZSBJOTE1X0NPTlRFWFRfQ0xPTkVfU0NIRUQJ KDF1IDw8IDEpCj4gKyNkZWZpbmUgSTkxNV9DT05URVhUX0NMT05FX1NTRVUJCSgxdSA8PCAyKQo+ ICsjZGVmaW5lIEk5MTVfQ09OVEVYVF9DTE9ORV9USU1FTElORQkoMXUgPDwgMykKPiArI2RlZmlu ZSBJOTE1X0NPTlRFWFRfQ0xPTkVfVk0JCSgxdSA8PCA0KQo+ICsjZGVmaW5lIEk5MTVfQ09OVEVY VF9DTE9ORV9VTktOT1dOIC0oSTkxNV9DT05URVhUX0NMT05FX1ZNIDw8IDEpCj4gKwlfX3U2NCBy c3ZkOwo+ICt9Owo+ICsKPiAgIHN0cnVjdCBkcm1faTkxNV9nZW1fY29udGV4dF9kZXN0cm95IHsK PiAgIAlfX3UzMiBjdHhfaWQ7Cj4gICAJX191MzIgcGFkOwo+IAoKUmVnYXJkcywKClR2cnRrbwpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZngg bWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=