From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 1/2] drm/i915: Trim struct_mutex usage for kms Date: Thu, 8 Jun 2017 16:47:27 +0300 Message-ID: <20170608134727.GP12629@intel.com> References: <20170608095135.21825-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 mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id D4BA36E3BA for ; Thu, 8 Jun 2017 13:47:30 +0000 (UTC) Content-Disposition: inline In-Reply-To: <20170608095135.21825-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: Chris Wilson Cc: intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCBKdW4gMDgsIDIwMTcgYXQgMTA6NTE6MzRBTSArMDEwMCwgQ2hyaXMgV2lsc29uIHdy b3RlOgo+IFJlZHVjZSBhY3F1aXNpdGlvbiBvZiBzdHJ1Y3RfbXV0ZXggdG8gdGhlIGNyaXRpY2Fs IHJlZ2lvbnMgdGhhdCBtdXN0Cj4gaG9sZCBpdDsgZm9yIEtNUywgd2UgbmVlZCBzdHJ1Y3RfbXV0 ZXggY3VycmVudGx5IG9ubHkgZm9yIHRoZSBwdXJwb3NlIG9mCj4gcGlubmluZy91bnBpbm5pbmcg dGhlIGZyYW1lYnVmZmVyJ3MgVk1BIGludG8gdGhlIGdsb2JhbCBHVFQuIFRoaXMgYWxsb3dzCj4g dXMgdG8gYXZvaWQgdGFraW5nIHRoZSBzdHJ1Y3RfbXV0ZXggd2hlbiBkaXNhYmxpbmcgdGhlIENS VEMgKGkuZS4gTlVMTAo+IGZyYW1lYnVmZmVyIG9iamVjdHMpIGJlZm9yZSBhIHJlc2V0LiAoTm90 IHlldCBhY2hpZXZpbmcgdGhlIGZ1bGwgZ29hbCBvZgo+IGF2b2lkaW5nIHRoZSBzdHJ1dF9tdXRl eCBuZXN0aW5nLCBidXQgZ29vZCBlbm91Z2ggdG8gYnJlYWsgdGhlIGZpcnN0Cj4gaGFsZiBvZiB0 aGUgcmVzZXQgZGVhZGxvY2suKQo+IAo+IFNpZ25lZC1vZmYtYnk6IENocmlzIFdpbHNvbiA8Y2hy aXNAY2hyaXMtd2lsc29uLmNvLnVrPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kaXNwbGF5LmMgfCA4NSArKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KPiAg MSBmaWxlIGNoYW5nZWQsIDQxIGluc2VydGlvbnMoKyksIDQ0IGRlbGV0aW9ucygtKQo+IAo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBpbmRleCAyNTM5MGRkOGUwOGUuLjEyMWZk ZDI3OGZjZCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5 LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKPiBAQCAtMTI3 NzEsMTQgKzEyNzcxLDcgQEAgc3RhdGljIGludCBpbnRlbF9hdG9taWNfcHJlcGFyZV9jb21taXQo c3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgCQkJZmx1c2hfd29ya3F1ZXVlKGRldl9wcml2LT53 cSk7Cj4gIAl9Cj4gIAo+IC0JcmV0ID0gbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKCZkZXYtPnN0 cnVjdF9tdXRleCk7Cj4gLQlpZiAocmV0KQo+IC0JCXJldHVybiByZXQ7Cj4gLQo+IC0JcmV0ID0g ZHJtX2F0b21pY19oZWxwZXJfcHJlcGFyZV9wbGFuZXMoZGV2LCBzdGF0ZSk7Cj4gLQltdXRleF91 bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKPiAtCj4gLQlyZXR1cm4gcmV0Owo+ICsJcmV0dXJu IGRybV9hdG9taWNfaGVscGVyX3ByZXBhcmVfcGxhbmVzKGRldiwgc3RhdGUpOwo+ICB9Cj4gIAo+ ICB1MzIgaW50ZWxfY3J0Y19nZXRfdmJsYW5rX2NvdW50ZXIoc3RydWN0IGludGVsX2NydGMgKmNy dGMpCj4gQEAgLTEzMTQxLDkgKzEzMTM0LDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfYXRvbWljX2Nv bW1pdF90YWlsKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKPiAgCQlpbnRlbF9kaXNw bGF5X3Bvd2VyX3B1dChkZXZfcHJpdiwgUE9XRVJfRE9NQUlOX01PREVTRVQpOwo+ICAJfQo+ICAK PiAtCW11dGV4X2xvY2soJmRldi0+c3RydWN0X211dGV4KTsKPiAgCWRybV9hdG9taWNfaGVscGVy X2NsZWFudXBfcGxhbmVzKGRldiwgc3RhdGUpOwo+IC0JbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVj dF9tdXRleCk7Cj4gIAo+ICAJZHJtX2F0b21pY19oZWxwZXJfY29tbWl0X2NsZWFudXBfZG9uZShz dGF0ZSk7Cj4gIAo+IEBAIC0xMzMxNywzMiArMTMzMDgsNiBAQCBpbnRlbF9wcmVwYXJlX3BsYW5l X2ZiKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAo+ICAJc3RydWN0IGRybV9pOTE1X2dlbV9vYmpl Y3QgKm9sZF9vYmogPSBpbnRlbF9mYl9vYmoocGxhbmUtPnN0YXRlLT5mYik7Cj4gIAlpbnQgcmV0 Owo+ICAKPiAtCWlmIChvYmopIHsKPiAtCQlpZiAocGxhbmUtPnR5cGUgPT0gRFJNX1BMQU5FX1RZ UEVfQ1VSU09SICYmCj4gLQkJICAgIElOVEVMX0lORk8oZGV2X3ByaXYpLT5jdXJzb3JfbmVlZHNf cGh5c2ljYWwpIHsKPiAtCQkJY29uc3QgaW50IGFsaWduID0gaW50ZWxfY3Vyc29yX2FsaWdubWVu dChkZXZfcHJpdik7Cj4gLQo+IC0JCQlyZXQgPSBpOTE1X2dlbV9vYmplY3RfYXR0YWNoX3BoeXMo b2JqLCBhbGlnbik7Cj4gLQkJCWlmIChyZXQpIHsKPiAtCQkJCURSTV9ERUJVR19LTVMoImZhaWxl ZCB0byBhdHRhY2ggcGh5cyBvYmplY3RcbiIpOwo+IC0JCQkJcmV0dXJuIHJldDsKPiAtCQkJfQo+ IC0JCX0gZWxzZSB7Cj4gLQkJCXN0cnVjdCBpOTE1X3ZtYSAqdm1hOwo+IC0KPiAtCQkJdm1hID0g aW50ZWxfcGluX2FuZF9mZW5jZV9mYl9vYmooZmIsIG5ld19zdGF0ZS0+cm90YXRpb24pOwo+IC0J CQlpZiAoSVNfRVJSKHZtYSkpIHsKPiAtCQkJCURSTV9ERUJVR19LTVMoImZhaWxlZCB0byBwaW4g b2JqZWN0XG4iKTsKPiAtCQkJCXJldHVybiBQVFJfRVJSKHZtYSk7Cj4gLQkJCX0KPiAtCj4gLQkJ CXRvX2ludGVsX3BsYW5lX3N0YXRlKG5ld19zdGF0ZSktPnZtYSA9IHZtYTsKPiAtCQl9Cj4gLQl9 Cj4gLQo+IC0JaWYgKCFvYmogJiYgIW9sZF9vYmopCj4gLQkJcmV0dXJuIDA7Cj4gLQo+ICAJaWYg KG9sZF9vYmopIHsKPiAgCQlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGUgPQo+ICAJ CQlkcm1fYXRvbWljX2dldF9leGlzdGluZ19jcnRjX3N0YXRlKG5ld19zdGF0ZS0+c3RhdGUsCj4g QEAgLTEzMzgxLDYgKzEzMzQ2LDM4IEBAIGludGVsX3ByZXBhcmVfcGxhbmVfZmIoc3RydWN0IGRy bV9wbGFuZSAqcGxhbmUsCj4gIAlpZiAoIW9iaikKPiAgCQlyZXR1cm4gMDsKPiAgCj4gKwlyZXQg PSBpOTE1X2dlbV9vYmplY3RfcGluX3BhZ2VzKG9iaik7Cj4gKwlpZiAocmV0KQo+ICsJCXJldHVy biByZXQ7Cj4gKwo+ICsJcmV0ID0gbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKCZkZXZfcHJpdi0+ ZHJtLnN0cnVjdF9tdXRleCk7Cj4gKwlpZiAocmV0KSB7Cj4gKwkJaTkxNV9nZW1fb2JqZWN0X3Vu cGluX3BhZ2VzKG9iaik7Cj4gKwkJcmV0dXJuIHJldDsKPiArCX0KPiArCj4gKwlpOTE1X2dlbV9v YmplY3Rfd2FpdF9wcmlvcml0eShvYmosIDAsIEk5MTVfUFJJT1JJVFlfRElTUExBWSk7CgpEb2Vz IHRoaXMgZ3V5IG5lZWQgc3RydWN0IG11dGV4PyBNYXliZSBpdCBjb3VsZCB1c2UgYSBsb2NrZGVw IGFzc2VydCBpZgpzby4KCj4gKwo+ICsJaWYgKHBsYW5lLT50eXBlID09IERSTV9QTEFORV9UWVBF X0NVUlNPUiAmJgo+ICsJICAgIElOVEVMX0lORk8oZGV2X3ByaXYpLT5jdXJzb3JfbmVlZHNfcGh5 c2ljYWwpIHsKPiArCQljb25zdCBpbnQgYWxpZ24gPSBpbnRlbF9jdXJzb3JfYWxpZ25tZW50KGRl dl9wcml2KTsKPiArCj4gKwkJcmV0ID0gaTkxNV9nZW1fb2JqZWN0X2F0dGFjaF9waHlzKG9iaiwg YWxpZ24pOwoKSXNuJ3QgdGhpcyBnb2luZyB0byBmYWlsIGR1ZSB0byB0aGUgaTkxNV9nZW1fb2Jq ZWN0X3Bpbl9wYWdlcygpIGFib3ZlPwoKPiArCX0gZWxzZSB7Cj4gKwkJc3RydWN0IGk5MTVfdm1h ICp2bWE7Cj4gKwo+ICsJCXZtYSA9IGludGVsX3Bpbl9hbmRfZmVuY2VfZmJfb2JqKGZiLCBuZXdf c3RhdGUtPnJvdGF0aW9uKTsKPiArCQlpZiAoIUlTX0VSUih2bWEpKQo+ICsJCQl0b19pbnRlbF9w bGFuZV9zdGF0ZShuZXdfc3RhdGUpLT52bWEgPSB2bWE7Cj4gKwkJZWxzZQo+ICsJCQlyZXQgPSAg UFRSX0VSUih2bWEpOwo+ICsJfQo+ICsKPiArCW11dGV4X3VubG9jaygmZGV2X3ByaXYtPmRybS5z dHJ1Y3RfbXV0ZXgpOwo+ICsJaTkxNV9nZW1fb2JqZWN0X3VucGluX3BhZ2VzKG9iaik7Cj4gKwlp ZiAocmV0KQo+ICsJCXJldHVybiByZXQ7Cj4gKwo+ICAJaWYgKCFuZXdfc3RhdGUtPmZlbmNlKSB7 IC8qIGltcGxpY2l0IGZlbmNpbmcgKi8KPiAgCQlyZXQgPSBpOTE1X3N3X2ZlbmNlX2F3YWl0X3Jl c2VydmF0aW9uKCZpbnRlbF9zdGF0ZS0+Y29tbWl0X3JlYWR5LAo+ICAJCQkJCQkgICAgICBvYmot PnJlc3YsIE5VTEwsCj4gQEAgLTEzMzg4LDggKzEzMzg1LDYgQEAgaW50ZWxfcHJlcGFyZV9wbGFu ZV9mYihzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKPiAgCQkJCQkJICAgICAgR0ZQX0tFUk5FTCk7 Cj4gIAkJaWYgKHJldCA8IDApCj4gIAkJCXJldHVybiByZXQ7Cj4gLQo+IC0JCWk5MTVfZ2VtX29i amVjdF93YWl0X3ByaW9yaXR5KG9iaiwgMCwgSTkxNV9QUklPUklUWV9ESVNQTEFZKTsKPiAgCX0K PiAgCj4gIAlyZXR1cm4gMDsKPiBAQCAtMTM0MTIsOCArMTM0MDcsMTEgQEAgaW50ZWxfY2xlYW51 cF9wbGFuZV9mYihzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKPiAgCj4gIAkvKiBTaG91bGQgb25s eSBiZSBjYWxsZWQgYWZ0ZXIgYSBzdWNjZXNzZnVsIGludGVsX3ByZXBhcmVfcGxhbmVfZmIoKSEg Ki8KPiAgCXZtYSA9IGZldGNoX2FuZF96ZXJvKCZ0b19pbnRlbF9wbGFuZV9zdGF0ZShvbGRfc3Rh dGUpLT52bWEpOwo+IC0JaWYgKHZtYSkKPiArCWlmICh2bWEpIHsKPiArCQltdXRleF9sb2NrKCZw bGFuZS0+ZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+ICAJCWludGVsX3VucGluX2ZiX3ZtYSh2bWEpOwo+ ICsJCW11dGV4X3VubG9jaygmcGxhbmUtPmRldi0+c3RydWN0X211dGV4KTsKPiArCX0KPiAgfQo+ ICAKPiAgaW50Cj4gQEAgLTEzNTgzLDcgKzEzNTgxLDcgQEAgaW50ZWxfbGVnYWN5X2N1cnNvcl91 cGRhdGUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCj4gIAlzdHJ1Y3QgaW50ZWxfcGxhbmUgKmlu dGVsX3BsYW5lID0gdG9faW50ZWxfcGxhbmUocGxhbmUpOwo+ICAJc3RydWN0IGRybV9mcmFtZWJ1 ZmZlciAqb2xkX2ZiOwo+ICAJc3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlID0gY3J0 Yy0+c3RhdGU7Cj4gLQlzdHJ1Y3QgaTkxNV92bWEgKm9sZF92bWE7Cj4gKwlzdHJ1Y3QgaTkxNV92 bWEgKm9sZF92bWEsICp2bWE7Cj4gIAo+ICAJLyoKPiAgCSAqIFdoZW4gY3J0YyBpcyBpbmFjdGl2 ZSBvciB0aGVyZSBpcyBhIG1vZGVzZXQgcGVuZGluZywKPiBAQCAtMTM2NDEsOCArMTM2MzksNiBA QCBpbnRlbF9sZWdhY3lfY3Vyc29yX3VwZGF0ZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKPiAg CQkJZ290byBvdXRfdW5sb2NrOwo+ICAJCX0KPiAgCX0gZWxzZSB7Cj4gLQkJc3RydWN0IGk5MTVf dm1hICp2bWE7Cj4gLQo+ICAJCXZtYSA9IGludGVsX3Bpbl9hbmRfZmVuY2VfZmJfb2JqKGZiLCBu ZXdfcGxhbmVfc3RhdGUtPnJvdGF0aW9uKTsKPiAgCQlpZiAoSVNfRVJSKHZtYSkpIHsKPiAgCQkJ RFJNX0RFQlVHX0tNUygiZmFpbGVkIHRvIHBpbiBvYmplY3RcbiIpOwo+IEBAIC0xMzY2NSw3ICsx MzY2MSw3IEBAIGludGVsX2xlZ2FjeV9jdXJzb3JfdXBkYXRlKHN0cnVjdCBkcm1fcGxhbmUgKnBs YW5lLAo+ICAJKnRvX2ludGVsX3BsYW5lX3N0YXRlKG9sZF9wbGFuZV9zdGF0ZSkgPSAqdG9faW50 ZWxfcGxhbmVfc3RhdGUobmV3X3BsYW5lX3N0YXRlKTsKPiAgCW5ld19wbGFuZV9zdGF0ZS0+ZmVu Y2UgPSBOVUxMOwo+ICAJbmV3X3BsYW5lX3N0YXRlLT5mYiA9IG9sZF9mYjsKPiAtCXRvX2ludGVs X3BsYW5lX3N0YXRlKG5ld19wbGFuZV9zdGF0ZSktPnZtYSA9IG9sZF92bWE7Cj4gKwl0b19pbnRl bF9wbGFuZV9zdGF0ZShuZXdfcGxhbmVfc3RhdGUpLT52bWEgPSBOVUxMOwo+ICAKPiAgCWlmIChw bGFuZS0+c3RhdGUtPnZpc2libGUpIHsKPiAgCQl0cmFjZV9pbnRlbF91cGRhdGVfcGxhbmUocGxh bmUsIHRvX2ludGVsX2NydGMoY3J0YykpOwo+IEBAIC0xMzY3Nyw3ICsxMzY3Myw4IEBAIGludGVs X2xlZ2FjeV9jdXJzb3JfdXBkYXRlKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAo+ICAJCWludGVs X3BsYW5lLT5kaXNhYmxlX3BsYW5lKGludGVsX3BsYW5lLCB0b19pbnRlbF9jcnRjKGNydGMpKTsK PiAgCX0KPiAgCj4gLQlpbnRlbF9jbGVhbnVwX3BsYW5lX2ZiKHBsYW5lLCBuZXdfcGxhbmVfc3Rh dGUpOwo+ICsJaWYgKG9sZF92bWEpCj4gKwkJaW50ZWxfdW5waW5fZmJfdm1hKG9sZF92bWEpOwo+ ICAKPiAgb3V0X3VubG9jazoKPiAgCW11dGV4X3VubG9jaygmZGV2X3ByaXYtPmRybS5zdHJ1Y3Rf bXV0ZXgpOwo+IC0tIAo+IDIuMTEuMAo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2ludGVsLWdmeAoKLS0gClZpbGxlIFN5cmrDpGzDpApJbnRlbCBPVEMKX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1h aWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMu ZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==