From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Wilson Subject: [CI 2/4] drm/i915: Introduce a mutex for file_priv->context_idr Date: Thu, 21 Mar 2019 14:07:09 +0000 Message-ID: <20190321140711.11190-2-chris@chris-wilson.co.uk> References: <20190321140711.11190-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 498676E0D8 for ; Thu, 21 Mar 2019 14:07:17 +0000 (UTC) Received: from haswell.alporthouse.com (unverified [78.156.65.138]) by fireflyinternet.com (Firefly Internet (M1)) with ESMTP id 15965870-1500050 for ; Thu, 21 Mar 2019 14:07:13 +0000 In-Reply-To: <20190321140711.11190-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 RGVmaW5lIGEgbXV0ZXggZm9yIHRoZSBleGNsdXNpdmUgdXNlIG9mIGludGVyYWN0aW5nIHdpdGgg dGhlIHBlci1maWxlCmNvbnRleHQtaWRyLCB0aGF0IHdhcyBwcmV2aW91c2x5IGd1YXJkZWQgYnkg c3RydWN0X211dGV4LiBUaGlzIGFsbG93cyB1cwp0byByZWR1Y2UgdGhlIGNvdmVyYWdlIG9mIHN0 cnVjdF9tdXRleCwgd2l0aCBhIHZpZXcgdG8gcmVtb3ZpbmcgdGhlIGxhc3QKYml0cyBjb29yZGlu YXRpbmcgR0VNIGNvbnRleHQgbGF0ZXIuIChJbiB0aGUgc2hvcnQgdGVybSwgd2UgYXZvaWQgdGFr aW5nCnN0cnVjdF9tdXRleCB3aGlsZSB1c2luZyB0aGUgZXh0ZW5kZWQgY29uc3RydWN0b3IgZnVu Y3Rpb25zLCBwcmV2ZW50aW5nCnNvbWUgbmFzdHkgcmVjdXJzaW9uLikKCnYyOiBzL2NvbnRleHRf bG9jay9jb250ZXh0X2lkcl9sb2NrLwoKU2lnbmVkLW9mZi1ieTogQ2hyaXMgV2lsc29uIDxjaHJp c0BjaHJpcy13aWxzb24uY28udWs+CkNjOiBUdnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5A aW50ZWwuY29tPgpSZXZpZXdlZC1ieTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGlu dGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAgICAgfCAg MiArKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jIHwgNDcgKysrKysr KysrKystLS0tLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAyMyBpbnNlcnRpb25zKCspLCAy NiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Ry di5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaAppbmRleCBiMzVkMmNiMjYwZGEu LmI2ZDY3NGFhMjc4NiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oCkBAIC0yMTYsNyArMjE2LDkg QEAgc3RydWN0IGRybV9pOTE1X2ZpbGVfcHJpdmF0ZSB7CiAgKi8KICNkZWZpbmUgRFJNX0k5MTVf VEhST1RUTEVfSklGRklFUyBtc2Vjc190b19qaWZmaWVzKDIwKQogCX0gbW07CisKIAlzdHJ1Y3Qg aWRyIGNvbnRleHRfaWRyOworCXN0cnVjdCBtdXRleCBjb250ZXh0X2lkcl9sb2NrOyAvKiBndWFy ZHMgY29udGV4dF9pZHIgKi8KIAogCXVuc2lnbmVkIGludCBic2RfZW5naW5lOwogCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMKaW5kZXggYzdjYmM2Njk0NWYwLi45YzY5ODdl ZTI3ZTUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQu YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMKQEAgLTU3OSw5 ICs1NzksNyBAQCB2b2lkIGk5MTVfZ2VtX2NvbnRleHRzX2Zpbmkoc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmk5MTUpCiAKIHN0YXRpYyBpbnQgY29udGV4dF9pZHJfY2xlYW51cChpbnQgaWQsIHZv aWQgKnAsIHZvaWQgKmRhdGEpCiB7Ci0Jc3RydWN0IGk5MTVfZ2VtX2NvbnRleHQgKmN0eCA9IHA7 Ci0KLQljb250ZXh0X2Nsb3NlKGN0eCk7CisJY29udGV4dF9jbG9zZShwKTsKIAlyZXR1cm4gMDsK IH0KIApAQCAtNjAzLDEzICs2MDEsMTUgQEAgc3RhdGljIGludCBnZW1fY29udGV4dF9yZWdpc3Rl cihzdHJ1Y3QgaTkxNV9nZW1fY29udGV4dCAqY3R4LAogCX0KIAogCS8qIEFuZCBmaW5hbGx5IGV4 cG9zZSBvdXJzZWx2ZXMgdG8gdXNlcnNwYWNlIHZpYSB0aGUgaWRyICovCisJbXV0ZXhfbG9jaygm ZnByaXYtPmNvbnRleHRfaWRyX2xvY2spOwogCXJldCA9IGlkcl9hbGxvYygmZnByaXYtPmNvbnRl eHRfaWRyLCBjdHgsCiAJCQlERUZBVUxUX0NPTlRFWFRfSEFORExFLCAwLCBHRlBfS0VSTkVMKTsK KwlpZiAocmV0ID49IDApCisJCWN0eC0+dXNlcl9oYW5kbGUgPSByZXQ7CisJbXV0ZXhfdW5sb2Nr KCZmcHJpdi0+Y29udGV4dF9pZHJfbG9jayk7CiAJaWYgKHJldCA8IDApCiAJCWdvdG8gZXJyX25h bWU7CiAKLQljdHgtPnVzZXJfaGFuZGxlID0gcmV0OwotCiAJcmV0dXJuIDA7CiAKIGVycl9uYW1l OgpAQCAtNjI3LDEwICs2MjcsMTEgQEAgaW50IGk5MTVfZ2VtX2NvbnRleHRfb3BlbihzdHJ1Y3Qg ZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwKIAlpbnQgZXJyOwogCiAJaWRyX2luaXQoJmZpbGVfcHJp di0+Y29udGV4dF9pZHIpOworCW11dGV4X2luaXQoJmZpbGVfcHJpdi0+Y29udGV4dF9pZHJfbG9j ayk7CiAKIAltdXRleF9sb2NrKCZpOTE1LT5kcm0uc3RydWN0X211dGV4KTsKLQogCWN0eCA9IGk5 MTVfZ2VtX2NyZWF0ZV9jb250ZXh0KGk5MTUpOworCW11dGV4X3VubG9jaygmaTkxNS0+ZHJtLnN0 cnVjdF9tdXRleCk7CiAJaWYgKElTX0VSUihjdHgpKSB7CiAJCWVyciA9IFBUUl9FUlIoY3R4KTsK IAkJZ290byBlcnI7CkBAIC02NDMsMTQgKzY0NCwxNCBAQCBpbnQgaTkxNV9nZW1fY29udGV4dF9v cGVuKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LAogCUdFTV9CVUdfT04oY3R4LT51c2Vy X2hhbmRsZSAhPSBERUZBVUxUX0NPTlRFWFRfSEFORExFKTsKIAlHRU1fQlVHX09OKGk5MTVfZ2Vt X2NvbnRleHRfaXNfa2VybmVsKGN0eCkpOwogCi0JbXV0ZXhfdW5sb2NrKCZpOTE1LT5kcm0uc3Ry dWN0X211dGV4KTsKLQogCXJldHVybiAwOwogCiBlcnJfY3R4OgorCW11dGV4X2xvY2soJmk5MTUt PmRybS5zdHJ1Y3RfbXV0ZXgpOwogCWNvbnRleHRfY2xvc2UoY3R4KTsKLWVycjoKIAltdXRleF91 bmxvY2soJmk5MTUtPmRybS5zdHJ1Y3RfbXV0ZXgpOworZXJyOgorCW11dGV4X2Rlc3Ryb3koJmZp bGVfcHJpdi0+Y29udGV4dF9pZHJfbG9jayk7CiAJaWRyX2Rlc3Ryb3koJmZpbGVfcHJpdi0+Y29u dGV4dF9pZHIpOwogCXJldHVybiBQVFJfRVJSKGN0eCk7CiB9CkBAIC02NjMsNiArNjY0LDcgQEAg dm9pZCBpOTE1X2dlbV9jb250ZXh0X2Nsb3NlKHN0cnVjdCBkcm1fZmlsZSAqZmlsZSkKIAogCWlk cl9mb3JfZWFjaCgmZmlsZV9wcml2LT5jb250ZXh0X2lkciwgY29udGV4dF9pZHJfY2xlYW51cCwg TlVMTCk7CiAJaWRyX2Rlc3Ryb3koJmZpbGVfcHJpdi0+Y29udGV4dF9pZHIpOworCW11dGV4X2Rl c3Ryb3koJmZpbGVfcHJpdi0+Y29udGV4dF9pZHJfbG9jayk7CiB9CiAKIHN0YXRpYyBzdHJ1Y3Qg aTkxNV9yZXF1ZXN0ICoKQEAgLTg0NSwyNSArODQ3LDIyIEBAIGludCBpOTE1X2dlbV9jb250ZXh0 X2NyZWF0ZV9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAogCQlyZXR1 cm4gcmV0OwogCiAJY3R4ID0gaTkxNV9nZW1fY3JlYXRlX2NvbnRleHQoaTkxNSk7Ci0JaWYgKElT X0VSUihjdHgpKSB7Ci0JCXJldCA9IFBUUl9FUlIoY3R4KTsKLQkJZ290byBlcnJfdW5sb2NrOwot CX0KKwltdXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKKwlpZiAoSVNfRVJSKGN0eCkp CisJCXJldHVybiBQVFJfRVJSKGN0eCk7CiAKIAlyZXQgPSBnZW1fY29udGV4dF9yZWdpc3Rlcihj dHgsIGZpbGVfcHJpdik7CiAJaWYgKHJldCkKIAkJZ290byBlcnJfY3R4OwogCi0JbXV0ZXhfdW5s b2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7Ci0KIAlhcmdzLT5jdHhfaWQgPSBjdHgtPnVzZXJfaGFu ZGxlOwogCURSTV9ERUJVRygiSFcgY29udGV4dCAlZCBjcmVhdGVkXG4iLCBhcmdzLT5jdHhfaWQp OwogCiAJcmV0dXJuIDA7CiAKIGVycl9jdHg6CisJbXV0ZXhfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0 ZXgpOwogCWNvbnRleHRfY2xvc2UoY3R4KTsKLWVycl91bmxvY2s6CiAJbXV0ZXhfdW5sb2NrKCZk ZXYtPnN0cnVjdF9tdXRleCk7CiAJcmV0dXJuIHJldDsKIH0KQEAgLTg3NCw3ICs4NzMsNiBAQCBp bnQgaTkxNV9nZW1fY29udGV4dF9kZXN0cm95X2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYs IHZvaWQgKmRhdGEsCiAJc3RydWN0IGRybV9pOTE1X2dlbV9jb250ZXh0X2Rlc3Ryb3kgKmFyZ3Mg PSBkYXRhOwogCXN0cnVjdCBkcm1faTkxNV9maWxlX3ByaXZhdGUgKmZpbGVfcHJpdiA9IGZpbGUt PmRyaXZlcl9wcml2OwogCXN0cnVjdCBpOTE1X2dlbV9jb250ZXh0ICpjdHg7Ci0JaW50IHJldDsK IAogCWlmIChhcmdzLT5wYWQgIT0gMCkKIAkJcmV0dXJuIC1FSU5WQUw7CkBAIC04ODIsMjEgKzg4 MCwxOCBAQCBpbnQgaTkxNV9nZW1fY29udGV4dF9kZXN0cm95X2lvY3RsKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsIHZvaWQgKmRhdGEsCiAJaWYgKGFyZ3MtPmN0eF9pZCA9PSBERUZBVUxUX0NPTlRF WFRfSEFORExFKQogCQlyZXR1cm4gLUVOT0VOVDsKIAotCWN0eCA9IGk5MTVfZ2VtX2NvbnRleHRf bG9va3VwKGZpbGVfcHJpdiwgYXJncy0+Y3R4X2lkKTsKKwlpZiAobXV0ZXhfbG9ja19pbnRlcnJ1 cHRpYmxlKCZmaWxlX3ByaXYtPmNvbnRleHRfaWRyX2xvY2spKQorCQlyZXR1cm4gLUVJTlRSOwor CisJY3R4ID0gaWRyX3JlbW92ZSgmZmlsZV9wcml2LT5jb250ZXh0X2lkciwgYXJncy0+Y3R4X2lk KTsKKwltdXRleF91bmxvY2soJmZpbGVfcHJpdi0+Y29udGV4dF9pZHJfbG9jayk7CiAJaWYgKCFj dHgpCiAJCXJldHVybiAtRU5PRU5UOwogCi0JcmV0ID0gbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxl KCZkZXYtPnN0cnVjdF9tdXRleCk7Ci0JaWYgKHJldCkKLQkJZ290byBvdXQ7Ci0KLQlpZHJfcmVt b3ZlKCZmaWxlX3ByaXYtPmNvbnRleHRfaWRyLCBjdHgtPnVzZXJfaGFuZGxlKTsKKwltdXRleF9s b2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7CiAJY29udGV4dF9jbG9zZShjdHgpOwotCiAJbXV0ZXhf dW5sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7CiAKLW91dDoKLQlpOTE1X2dlbV9jb250ZXh0X3B1 dChjdHgpOwogCXJldHVybiAwOwogfQogCi0tIAoyLjIwLjEKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwt Z2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeA==