From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joonas Lahtinen Subject: Re: [PATCH] drm/i915/shrinker: Refactor common uninterruptible locking Date: Tue, 05 Apr 2016 13:02:14 +0300 Message-ID: <1459850534.5564.16.camel@linux.intel.com> References: <1459844378.5564.12.camel@linux.intel.com> <1459848145-24042-1-git-send-email-chris@chris-wilson.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by gabe.freedesktop.org (Postfix) with ESMTP id 1CE216E222 for ; Tue, 5 Apr 2016 10:01:39 +0000 (UTC) In-Reply-To: <1459848145-24042-1-git-send-email-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 , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gdGksIDIwMTYtMDQtMDUgYXQgMTA6MjIgKzAxMDAsIENocmlzIFdpbHNvbiB3cm90ZToKPiBC b3RoIHRoZSBvb20gYW5kIHZtYXAgbm90aWZpZXIgY2FsbGJhY2tzIGhhdmUgYSBsb29wIHRvIGFj cXVpcmUgdGhlCj4gc3RydWN0X211dGV4IGFuZCBzZXQgdGhlIGRldmljZSBhcyB1bmludGVycnVw dGlibGUsIHdpdGhpbiBhIGNlcnRhaW4KPiB0aW1lLiBSZWZhY3RvciB0aGUgY29tbW9uIGNvZGUg aW50byBhIHBhaXIgb2YgZnVuY3Rpb25zLgo+IAo+IFN1Z2dlc3RlZC1ieTogSm9vbmFzIExhaHRp bmVuIDxqb29uYXMubGFodGluZW5AbGludXguaW50ZWwuY29tPgo+IFNpZ25lZC1vZmYtYnk6IENo cmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgo+IENjOiBKb29uYXMgTGFodGlu ZW4gPGpvb25hcy5sYWh0aW5lbkBsaW51eC5pbnRlbC5jb20+CgpMb29rcyBnb29kLgoKUmV2aWV3 ZWQtYnk6IEpvb25hcyBMYWh0aW5lbiA8am9vbmFzLmxhaHRpbmVuQGxpbnV4LmludGVsLmNvbT4K Cj4gQ2M6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Cj4gLS0tCj4g wqBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zaHJpbmtlci5jIHwgNzkgKysrKysrKysr KysrKysrKystLS0tLS0tLS0tLS0tLS0KPiDCoDEgZmlsZSBjaGFuZ2VkLCA0MiBpbnNlcnRpb25z KCspLCAzNyBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW1fc2hyaW5rZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX3No cmlua2VyLmMKPiBpbmRleCBiZTc1MDFhZmI1OWUuLjM5OTQzNzkzZWRjYyAxMDA2NDQKPiAtLS0g YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9zaHJpbmtlci5jCj4gKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fc2hyaW5rZXIuYwo+IEBAIC0yODksMzUgKzI4OSw1NiBA QCBpOTE1X2dlbV9zaHJpbmtlcl9zY2FuKHN0cnVjdCBzaHJpbmtlciAqc2hyaW5rZXIsIHN0cnVj dCBzaHJpbmtfY29udHJvbCAqc2MpCj4gwqAJcmV0dXJuIGZyZWVkOwo+IMKgfQo+IMKgCj4gK3N0 cnVjdCBzaHJpbmtlcl9sb2NrX3VuaW50ZXJydXB0aWJsZSB7Cj4gKwlib29sIHdhc19pbnRlcnJ1 cHRpYmxlOwo+ICsJYm9vbCB1bmxvY2s7Cj4gK307Cj4gKwo+ICtzdGF0aWMgYm9vbAo+ICtpOTE1 X2dlbV9zaHJpbmtlcl9sb2NrX3VuaW50ZXJydXB0aWJsZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYsCj4gKwkJCQnCoMKgwqDCoMKgwqDCoHN0cnVjdCBzaHJpbmtlcl9sb2NrX3Vu aW50ZXJydXB0aWJsZSAqc2x1LAo+ICsJCQkJwqDCoMKgwqDCoMKgwqBpbnQgdGltZW91dF9tcykK PiArewo+ICsJdW5zaWduZWQgbG9uZyB0aW1lb3V0ID0gbXNlY3NfdG9famlmZmllcyh0aW1lb3V0 X21zKSArIDE7Cj4gKwo+ICsJd2hpbGUgKCFpOTE1X2dlbV9zaHJpbmtlcl9sb2NrKGRldl9wcml2 LT5kZXYsICZzbHUtPnVubG9jaykpIHsKPiArCQlzY2hlZHVsZV90aW1lb3V0X2tpbGxhYmxlKDEp Owo+ICsJCWlmIChmYXRhbF9zaWduYWxfcGVuZGluZyhjdXJyZW50KSkKPiArCQkJcmV0dXJuIGZh bHNlOwo+ICsJCWlmICgtLXRpbWVvdXQgPT0gMCkgewo+ICsJCQlwcl9lcnIoIlVuYWJsZSB0byBs b2NrIEdQVSB0byBwdXJnZSBtZW1vcnkuXG4iKTsKPiArCQkJcmV0dXJuIGZhbHNlOwo+ICsJCX0K PiArCX0KPiArCj4gKwlzbHUtPndhc19pbnRlcnJ1cHRpYmxlID0gZGV2X3ByaXYtPm1tLmludGVy cnVwdGlibGU7Cj4gKwlkZXZfcHJpdi0+bW0uaW50ZXJydXB0aWJsZSA9IGZhbHNlOwo+ICsJcmV0 dXJuIHRydWU7Cj4gK30KPiArCj4gK3N0YXRpYyB2b2lkCj4gK2k5MTVfZ2VtX3Nocmlua2VyX3Vu bG9ja191bmludGVycnVwdGlibGUoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LAo+ ICsJCQkJCcKgc3RydWN0IHNocmlua2VyX2xvY2tfdW5pbnRlcnJ1cHRpYmxlICpzbHUpCj4gK3sK PiArCWRldl9wcml2LT5tbS5pbnRlcnJ1cHRpYmxlID0gc2x1LT53YXNfaW50ZXJydXB0aWJsZTsK PiArCWlmIChzbHUtPnVubG9jaykKPiArCQltdXRleF91bmxvY2soJmRldl9wcml2LT5kZXYtPnN0 cnVjdF9tdXRleCk7Cj4gK30KPiArCj4gwqBzdGF0aWMgaW50Cj4gwqBpOTE1X2dlbV9zaHJpbmtl cl9vb20oc3RydWN0IG5vdGlmaWVyX2Jsb2NrICpuYiwgdW5zaWduZWQgbG9uZyBldmVudCwgdm9p ZCAqcHRyKQo+IMKgewo+IMKgCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9Cj4g wqAJCWNvbnRhaW5lcl9vZihuYiwgc3RydWN0IGRybV9pOTE1X3ByaXZhdGUsIG1tLm9vbV9ub3Rp Zmllcik7Cj4gLQlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gZGV2X3ByaXYtPmRldjsKPiArCXN0 cnVjdCBzaHJpbmtlcl9sb2NrX3VuaW50ZXJydXB0aWJsZSBzbHU7Cj4gwqAJc3RydWN0IGRybV9p OTE1X2dlbV9vYmplY3QgKm9iajsKPiAtCXVuc2lnbmVkIGxvbmcgdGltZW91dCA9IG1zZWNzX3Rv X2ppZmZpZXMoNTAwMCkgKyAxOwo+IMKgCXVuc2lnbmVkIGxvbmcgcGlubmVkLCBib3VuZCwgdW5i b3VuZCwgZnJlZWRfcGFnZXM7Cj4gLQlib29sIHdhc19pbnRlcnJ1cHRpYmxlOwo+IC0JYm9vbCB1 bmxvY2s7Cj4gwqAKPiAtCXdoaWxlICghaTkxNV9nZW1fc2hyaW5rZXJfbG9jayhkZXYsICZ1bmxv Y2spICYmIC0tdGltZW91dCkgewo+IC0JCXNjaGVkdWxlX3RpbWVvdXRfa2lsbGFibGUoMSk7Cj4g LQkJaWYgKGZhdGFsX3NpZ25hbF9wZW5kaW5nKGN1cnJlbnQpKQo+IC0JCQlyZXR1cm4gTk9USUZZ X0RPTkU7Cj4gLQl9Cj4gLQlpZiAodGltZW91dCA9PSAwKSB7Cj4gLQkJcHJfZXJyKCJVbmFibGUg dG8gcHVyZ2UgR1BVIG1lbW9yeSBkdWUgbG9jayBjb250ZW50aW9uLlxuIik7Cj4gKwlpZiAoIWk5 MTVfZ2VtX3Nocmlua2VyX2xvY2tfdW5pbnRlcnJ1cHRpYmxlKGRldl9wcml2LCAmc2x1LCA1MDAw KSkKPiDCoAkJcmV0dXJuIE5PVElGWV9ET05FOwo+IC0JfQo+IC0KPiAtCXdhc19pbnRlcnJ1cHRp YmxlID0gZGV2X3ByaXYtPm1tLmludGVycnVwdGlibGU7Cj4gLQlkZXZfcHJpdi0+bW0uaW50ZXJy dXB0aWJsZSA9IGZhbHNlOwo+IMKgCj4gwqAJZnJlZWRfcGFnZXMgPSBpOTE1X2dlbV9zaHJpbmtf YWxsKGRldl9wcml2KTsKPiDCoAo+IC0JZGV2X3ByaXYtPm1tLmludGVycnVwdGlibGUgPSB3YXNf aW50ZXJydXB0aWJsZTsKPiAtCj4gwqAJLyogQmVjYXVzZSB3ZSBtYXkgYmUgYWxsb2NhdGluZyBp bnNpZGUgb3VyIG93biBkcml2ZXIsIHdlIGNhbm5vdAo+IMKgCcKgKiBhc3NlcnQgdGhhdCB0aGVy ZSBhcmUgbm8gb2JqZWN0cyB3aXRoIHBpbm5lZCBwYWdlcyB0aGF0IGFyZSBub3QKPiDCoAnCoCog YmVpbmcgcG9pbnRlZCB0byBieSBoYXJkd2FyZS4KPiBAQCAtMzQyLDggKzM2Myw3IEBAIGk5MTVf Z2VtX3Nocmlua2VyX29vbShzdHJ1Y3Qgbm90aWZpZXJfYmxvY2sgKm5iLCB1bnNpZ25lZCBsb25n IGV2ZW50LCB2b2lkICpwdHIpCj4gwqAJCQlib3VuZCArPSBvYmotPmJhc2Uuc2l6ZTsKPiDCoAl9 Cj4gwqAKPiAtCWlmICh1bmxvY2spCj4gLQkJbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVjdF9tdXRl eCk7Cj4gKwlpOTE1X2dlbV9zaHJpbmtlcl91bmxvY2tfdW5pbnRlcnJ1cHRpYmxlKGRldl9wcml2 LCAmc2x1KTsKPiDCoAo+IMKgCWlmIChmcmVlZF9wYWdlcyB8fCB1bmJvdW5kIHx8IGJvdW5kKQo+ IMKgCQlwcl9pbmZvKCJQdXJnaW5nIEdQVSBtZW1vcnksICVsdSBieXRlcyBmcmVlZCwgJWx1IGJ5 dGVzIHN0aWxsIHBpbm5lZC5cbiIsCj4gQEAgLTM2MiwzMCArMzgyLDE1IEBAIGk5MTVfZ2VtX3No cmlua2VyX3ZtYXAoc3RydWN0IG5vdGlmaWVyX2Jsb2NrICpuYiwgdW5zaWduZWQgbG9uZyBldmVu dCwgdm9pZCAqcHRyCj4gwqB7Cj4gwqAJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 ID0KPiDCoAkJY29udGFpbmVyX29mKG5iLCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSwgbW0udm1h cF9ub3RpZmllcik7Cj4gLQlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gZGV2X3ByaXYtPmRldjsK PiAtCXVuc2lnbmVkIGxvbmcgdGltZW91dCA9IG1zZWNzX3RvX2ppZmZpZXMoNTAwMCkgKyAxOwo+ ICsJc3RydWN0IHNocmlua2VyX2xvY2tfdW5pbnRlcnJ1cHRpYmxlIHNsdTsKPiDCoAl1bnNpZ25l ZCBsb25nIGZyZWVkX3BhZ2VzOwo+IC0JYm9vbCB3YXNfaW50ZXJydXB0aWJsZTsKPiAtCWJvb2wg dW5sb2NrOwo+IMKgCj4gLQl3aGlsZSAoIWk5MTVfZ2VtX3Nocmlua2VyX2xvY2soZGV2LCAmdW5s b2NrKSAmJiAtLXRpbWVvdXQpIHsKPiAtCQlzY2hlZHVsZV90aW1lb3V0X2tpbGxhYmxlKDEpOwo+ IC0JCWlmIChmYXRhbF9zaWduYWxfcGVuZGluZyhjdXJyZW50KSkKPiAtCQkJcmV0dXJuIE5PVElG WV9ET05FOwo+IC0JfQo+IC0JaWYgKHRpbWVvdXQgPT0gMCkgewo+IC0JCXByX2VycigiVW5hYmxl IHRvIHB1cmdlIEdQVSB2bWFwcyBkdWUgdG8gbG9jayBjb250ZW50aW9uLlxuIik7Cj4gKwlpZiAo IWk5MTVfZ2VtX3Nocmlua2VyX2xvY2tfdW5pbnRlcnJ1cHRpYmxlKGRldl9wcml2LCAmc2x1LCA1 MDAwKSkKPiDCoAkJcmV0dXJuIE5PVElGWV9ET05FOwo+IC0JfQo+IC0KPiAtCXdhc19pbnRlcnJ1 cHRpYmxlID0gZGV2X3ByaXYtPm1tLmludGVycnVwdGlibGU7Cj4gLQlkZXZfcHJpdi0+bW0uaW50 ZXJydXB0aWJsZSA9IGZhbHNlOwo+IMKgCj4gwqAJZnJlZWRfcGFnZXMgPSBpOTE1X2dlbV9zaHJp bmtfYWxsKGRldl9wcml2KTsKPiDCoAo+IC0JZGV2X3ByaXYtPm1tLmludGVycnVwdGlibGUgPSB3 YXNfaW50ZXJydXB0aWJsZTsKPiAtCWlmICh1bmxvY2spCj4gLQkJbXV0ZXhfdW5sb2NrKCZkZXYt PnN0cnVjdF9tdXRleCk7Cj4gKwlpOTE1X2dlbV9zaHJpbmtlcl91bmxvY2tfdW5pbnRlcnJ1cHRp YmxlKGRldl9wcml2LCAmc2x1KTsKPiDCoAo+IMKgCSoodW5zaWduZWQgbG9uZyAqKXB0ciArPSBm cmVlZF9wYWdlczsKPiDCoAlyZXR1cm4gTk9USUZZX0RPTkU7Ci0tIApKb29uYXMgTGFodGluZW4K T3BlbiBTb3VyY2UgVGVjaG5vbG9neSBDZW50ZXIKSW50ZWwgQ29ycG9yYXRpb24KX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcg bGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRl c2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==