From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [PATCH 23/32] drm/i915: Allow multiple user handles to the same VM Date: Wed, 17 Apr 2019 08:56:48 +0100 Message-ID: <20190417075657.19456-23-chris@chris-wilson.co.uk> References: <20190417075657.19456-1-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from fireflyinternet.com (mail.fireflyinternet.com [109.228.58.192]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2C37589FF9 for ; Wed, 17 Apr 2019 07:57:16 +0000 (UTC) In-Reply-To: <20190417075657.19456-1-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: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org SXQgd2FzIG5vdGVkIHRoYXQgd2UgbWFkZSB0aGUgc2FtZSBtaXN0YWtlIGZvciBWTV9JRCBhcyBm b3Igb2JqZWN0CmhhbmRsZXMsIHdoZXJlYnkgd2UgZW5zdXJlZCB0aGF0IHdlIG9ubHkgYWxsb2Nh dGVkIGEgc2luZ2xlIGhhbmRsZSBmb3IKb25lIHBwZ3R0LiBUaGlzIGhhcyB0aGUgdW5mb3J0dW5h dGUgY29uc2VxdWVuY2UgZm9yIHVzZXJzcGFjZSB0aGF0IHRoZXkKbmVlZCB0byByZWZlcmVuY2Ug Y291bnQgdGhlIGhhbmRsZXMgdG8gYXZvaWQgZGVzdHJveWluZyBhbiBhY3RpdmUgSUQuIElmCndl IGFsbG93IG11bHRpcGxlIGhhbmRsZXMgdG8gdGhlIHNhbWUgcHBndHQsIHVzZXJzcGFjZSBjYW4g ZnJlZWx5CnVucmVmZXJlbmNlIGFueSBoYW5kbGUgdGhleSBvd24gd2l0aG91dCBmZWFyIG9mIGRl c3Ryb3lpbmcgdGhlIHNhbWUKaGFuZGxlIGluIHVzZSBlbHNld2hlcmUuCgpTaWduZWQtb2ZmLWJ5 OiBDaHJpcyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4KUmV2aWV3ZWQtYnk6IFR2 cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jIHwgMjYgKysrKysrKystLS0tLS0tLS0tLS0tLS0t LQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmggICAgIHwgIDIgLS0KIDIgZmls ZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMKaW5kZXggNWI5ZmVlYjhkMDA2Li4wZDlkNDM1YWUz OTggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMKQEAgLTgzNCw4ICs4 MzQsNyBAQCBpbnQgaTkxNV9nZW1fdm1fY3JlYXRlX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsIHZvaWQgKmRhdGEsCiAJaWYgKGVyciA8IDApCiAJCWdvdG8gZXJyX3VubG9jazsKIAotCUdF TV9CVUdfT04oZXJyID09IDApOyAvKiByZXNlcnZlZCBmb3IgZGVmYXVsdC91bmFzc2lnbmVkIHBw Z3R0ICovCi0JcHBndHQtPnVzZXJfaGFuZGxlID0gZXJyOworCUdFTV9CVUdfT04oZXJyID09IDAp OyAvKiByZXNlcnZlZCBmb3IgaW52YWxpZC91bmFzc2lnbmVkIHBwZ3R0ICovCiAKIAltdXRleF91 bmxvY2soJmZpbGVfcHJpdi0+dm1faWRyX2xvY2spOwogCkBAIC04NzMsMTAgKzg3Miw2IEBAIGlu dCBpOTE1X2dlbV92bV9kZXN0cm95X2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQg KmRhdGEsCiAJCXJldHVybiBlcnI7CiAKIAlwcGd0dCA9IGlkcl9yZW1vdmUoJmZpbGVfcHJpdi0+ dm1faWRyLCBpZCk7Ci0JaWYgKHBwZ3R0KSB7Ci0JCUdFTV9CVUdfT04ocHBndHQtPnVzZXJfaGFu ZGxlICE9IGlkKTsKLQkJcHBndHQtPnVzZXJfaGFuZGxlID0gMDsKLQl9CiAKIAltdXRleF91bmxv Y2soJmZpbGVfcHJpdi0+dm1faWRyX2xvY2spOwogCWlmICghcHBndHQpCkBAIC05OTEsMTggKzk4 NiwxNSBAQCBzdGF0aWMgaW50IGdldF9wcGd0dChzdHJ1Y3QgZHJtX2k5MTVfZmlsZV9wcml2YXRl ICpmaWxlX3ByaXYsCiAJaWYgKHJldCkKIAkJZ290byBlcnJfcHV0OwogCi0JaWYgKCFwcGd0dC0+ dXNlcl9oYW5kbGUpIHsKLQkJcmV0ID0gaWRyX2FsbG9jKCZmaWxlX3ByaXYtPnZtX2lkciwgcHBn dHQsIDAsIDAsIEdGUF9LRVJORUwpOwotCQlHRU1fQlVHX09OKCFyZXQpOwotCQlpZiAocmV0IDwg MCkKLQkJCWdvdG8gZXJyX3VubG9jazsKKwlyZXQgPSBpZHJfYWxsb2MoJmZpbGVfcHJpdi0+dm1f aWRyLCBwcGd0dCwgMCwgMCwgR0ZQX0tFUk5FTCk7CisJR0VNX0JVR19PTighcmV0KTsKKwlpZiAo cmV0IDwgMCkKKwkJZ290byBlcnJfdW5sb2NrOwogCi0JCXBwZ3R0LT51c2VyX2hhbmRsZSA9IHJl dDsKLQkJaTkxNV9wcGd0dF9nZXQocHBndHQpOwotCX0KKwlpOTE1X3BwZ3R0X2dldChwcGd0dCk7 CiAKIAlhcmdzLT5zaXplID0gMDsKLQlhcmdzLT52YWx1ZSA9IHBwZ3R0LT51c2VyX2hhbmRsZTsK KwlhcmdzLT52YWx1ZSA9IHJldDsKIAogCXJldCA9IDA7CiBlcnJfdW5sb2NrOgpAQCAtMTA5Mywx MCArMTA4NSw4IEBAIHN0YXRpYyBpbnQgc2V0X3BwZ3R0KHN0cnVjdCBkcm1faTkxNV9maWxlX3By aXZhdGUgKmZpbGVfcHJpdiwKIAkJcmV0dXJuIGVycjsKIAogCXBwZ3R0ID0gaWRyX2ZpbmQoJmZp bGVfcHJpdi0+dm1faWRyLCBhcmdzLT52YWx1ZSk7Ci0JaWYgKHBwZ3R0KSB7Ci0JCUdFTV9CVUdf T04ocHBndHQtPnVzZXJfaGFuZGxlICE9IGFyZ3MtPnZhbHVlKTsKKwlpZiAocHBndHQpCiAJCWk5 MTVfcHBndHRfZ2V0KHBwZ3R0KTsKLQl9CiAJbXV0ZXhfdW5sb2NrKCZmaWxlX3ByaXYtPnZtX2lk cl9sb2NrKTsKIAlpZiAoIXBwZ3R0KQogCQlyZXR1cm4gLUVOT0VOVDsKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW1fZ3R0LmgKaW5kZXggYzhkOTZlOTFmM2RjLi40ODMyYmI1YzVmYzAgMTAwNjQ0Ci0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCkBAIC0zOTYsOCArMzk2LDYgQEAgc3RydWN0IGk5MTVf aHdfcHBndHQgewogCQlzdHJ1Y3QgaTkxNV9wYWdlX2RpcmVjdG9yeV9wb2ludGVyIHBkcDsJLyog R0VOOCsgKi8KIAkJc3RydWN0IGk5MTVfcGFnZV9kaXJlY3RvcnkgcGQ7CQkvKiBHRU42LTcgKi8K IAl9OwotCi0JdTMyIHVzZXJfaGFuZGxlOwogfTsKIAogc3RydWN0IGdlbjZfaHdfcHBndHQgewot LSAKMi4yMC4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcK aHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZng=