From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Stone Subject: [PATCH] drm/i915: Fix locking around GuC firmware load Date: Tue, 3 Nov 2015 21:42:31 +0000 Message-ID: <1446586951-4683-1-git-send-email-daniels@collabora.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [93.93.135.160]) by gabe.freedesktop.org (Postfix) with ESMTPS id 98607720E5 for ; Tue, 3 Nov 2015 13:42:37 -0800 (PST) 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 Cc: ville.syrjala@intel.com List-Id: intel-gfx@lists.freedesktop.org VGhlIEd1QyBmaXJtd2FyZSBsb2FkIHJlcXVpcmVzIHN0cnVjdF9tdXRleCB0byBjcmVhdGUgYSBH RU0gb2JqZWN0LApidXQgdGhpcyBjb2xsaWRlcyBiYWRseSB3aXRoIHJlcXVlc3RfZmlybXdhcmUu IE1vdmUgc3RydWN0X211dGV4CmxvY2tpbmcgZG93biBpbnRvIHRoZSBsb2FkZXIgaXRzZWxmLCBz byB3ZSBkb24ndCBob2xkIGl0IGFjcm9zcyB0aGUKZW50aXJlIGxvYWQgcHJvY2VzcywgaW5jbHVk aW5nIHJlcXVlc3RfZmlybXdhcmUuCgpTaWduZWQtb2ZmLWJ5OiBEYW5pZWwgU3RvbmUgPGRhbmll bHNAY29sbGFib3JhLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jICAg ICAgICAgfCA3ICstLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1Y19sb2FkZXIu YyB8IDYgKysrKy0tCiAyIGZpbGVzIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kbWEuYwppbmRleCBlZGRjYmZkLi5iNGMzNDBkIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2RtYS5jCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZG1hLmMKQEAgLTQwOCwxMCArNDA4LDcgQEAgc3RhdGljIGludCBpOTE1 X2xvYWRfbW9kZXNldF9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpCiAJICogd29ya2luZyBp cnFzIGZvciBlLmcuIGdtYnVzIGFuZCBkcCBhdXggdHJhbnNmZXJzLiAqLwogCWludGVsX21vZGVz ZXRfaW5pdChkZXYpOwogCi0JLyogaW50ZWxfZ3VjX3Vjb2RlX2luaXQoKSBuZWVkcyB0aGUgbXV0 ZXggdG8gYWxsb2NhdGUgR0VNIG9iamVjdHMgKi8KLQltdXRleF9sb2NrKCZkZXYtPnN0cnVjdF9t dXRleCk7CiAJaW50ZWxfZ3VjX3Vjb2RlX2luaXQoZGV2KTsKLQltdXRleF91bmxvY2soJmRldi0+ c3RydWN0X211dGV4KTsKIAogCXJldCA9IGk5MTVfZ2VtX2luaXQoZGV2KTsKIAlpZiAocmV0KQpA QCAtNDU0LDkgKzQ1MSw3IEBAIGNsZWFudXBfZ2VtOgogCWk5MTVfZ2VtX2NvbnRleHRfZmluaShk ZXYpOwogCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwogY2xlYW51cF9pcnE6Ci0J bXV0ZXhfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwogCWludGVsX2d1Y191Y29kZV9maW5pKGRl dik7Ci0JbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7CiAJZHJtX2lycV91bmluc3Rh bGwoZGV2KTsKIGNsZWFudXBfZ2VtX3N0b2xlbjoKIAlpOTE1X2dlbV9jbGVhbnVwX3N0b2xlbihk ZXYpOwpAQCAtMTE5MSw4ICsxMTg2LDggQEAgaW50IGk5MTVfZHJpdmVyX3VubG9hZChzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2KQogCS8qIEZsdXNoIGFueSBvdXRzdGFuZGluZyB1bnBpbl93b3JrLiAq LwogCWZsdXNoX3dvcmtxdWV1ZShkZXZfcHJpdi0+d3EpOwogCi0JbXV0ZXhfbG9jaygmZGV2LT5z dHJ1Y3RfbXV0ZXgpOwogCWludGVsX2d1Y191Y29kZV9maW5pKGRldik7CisJbXV0ZXhfbG9jaygm ZGV2LT5zdHJ1Y3RfbXV0ZXgpOwogCWk5MTVfZ2VtX2NsZWFudXBfcmluZ2J1ZmZlcihkZXYpOwog CWk5MTVfZ2VtX2NvbnRleHRfZmluaShkZXYpOwogCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3Rf bXV0ZXgpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjX2xvYWRl ci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjX2xvYWRlci5jCmluZGV4IGFjMzE2 OTYuLmU1NmQxOWQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2d1Y19s b2FkZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWNfbG9hZGVyLmMKQEAg LTUwNCw3ICs1MDQsOSBAQCBzdGF0aWMgdm9pZCBndWNfZndfZmV0Y2goc3RydWN0IGRybV9kZXZp Y2UgKmRldiwgc3RydWN0IGludGVsX2d1Y19mdyAqZ3VjX2Z3KQogCQkJZ3VjX2Z3LT5ndWNfZndf bWFqb3JfZm91bmQsIGd1Y19mdy0+Z3VjX2Z3X21pbm9yX2ZvdW5kLAogCQkJZ3VjX2Z3LT5ndWNf ZndfbWFqb3Jfd2FudGVkLCBndWNfZnctPmd1Y19md19taW5vcl93YW50ZWQpOwogCisJbXV0ZXhf bG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwogCW9iaiA9IGk5MTVfZ2VtX29iamVjdF9jcmVhdGVf ZnJvbV9kYXRhKGRldiwgZnctPmRhdGEsIGZ3LT5zaXplKTsKKwltdXRleF91bmxvY2soJmRldi0+ c3RydWN0X211dGV4KTsKIAlpZiAoSVNfRVJSX09SX05VTEwob2JqKSkgewogCQllcnIgPSBvYmog PyBQVFJfRVJSKG9iaikgOiAtRU5PTUVNOwogCQlnb3RvIGZhaWw7CkBAIC01NDAsOCArNTQyLDYg QEAgZmFpbDoKICAqIEBkZXY6CWRybSBkZXZpY2UKICAqCiAgKiBDYWxsZWQgZWFybHkgZHVyaW5n IGRyaXZlciBsb2FkLCBidXQgYWZ0ZXIgR0VNIGlzIGluaXRpYWxpc2VkLgotICogVGhlIGRldmlj ZSBzdHJ1Y3RfbXV0ZXggbXVzdCBiZSBoZWxkIGJ5IHRoZSBjYWxsZXIsIGFzIHdlJ3JlCi0gKiBn b2luZyB0byBhbGxvY2F0ZSBhIEdFTSBvYmplY3QgdG8gaG9sZCB0aGUgZmlybXdhcmUgaW1hZ2Uu CiAgKgogICogVGhlIGZpcm13YXJlIHdpbGwgYmUgdHJhbnNmZXJyZWQgdG8gdGhlIEd1QydzIG1l bW9yeSBsYXRlciwKICAqIHdoZW4gaW50ZWxfZ3VjX3Vjb2RlX2xvYWQoKSBpcyBjYWxsZWQuCkBA IC01OTgsOSArNTk4LDExIEBAIHZvaWQgaW50ZWxfZ3VjX3Vjb2RlX2Zpbmkoc3RydWN0IGRybV9k ZXZpY2UgKmRldikKIAlkaXJlY3RfaW50ZXJydXB0c190b19ob3N0KGRldl9wcml2KTsKIAlpOTE1 X2d1Y19zdWJtaXNzaW9uX2ZpbmkoZGV2KTsKIAorCW11dGV4X2xvY2soJmRldi0+c3RydWN0X211 dGV4KTsKIAlpZiAoZ3VjX2Z3LT5ndWNfZndfb2JqKQogCQlkcm1fZ2VtX29iamVjdF91bnJlZmVy ZW5jZSgmZ3VjX2Z3LT5ndWNfZndfb2JqLT5iYXNlKTsKIAlndWNfZnctPmd1Y19md19vYmogPSBO VUxMOworCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwogCiAJZ3VjX2Z3LT5ndWNf ZndfZmV0Y2hfc3RhdHVzID0gR1VDX0ZJUk1XQVJFX05PTkU7CiB9Ci0tIAoyLjUuMAoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxp bmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK