From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: [PATCH 04/12] drm/fb-helper: Push locking in fb_is_bound Date: Wed, 21 Jun 2017 20:28:07 +0200 Message-ID: <20170621182815.14602-5-daniel.vetter@ffwll.ch> References: <20170621182815.14602-1-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wr0-x243.google.com (mail-wr0-x243.google.com [IPv6:2a00:1450:400c:c0c::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id CAC4A8992E for ; Wed, 21 Jun 2017 18:28:27 +0000 (UTC) Received: by mail-wr0-x243.google.com with SMTP id 77so28695537wrb.3 for ; Wed, 21 Jun 2017 11:28:27 -0700 (PDT) In-Reply-To: <20170621182815.14602-1-daniel.vetter@ffwll.ch> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: DRI Development Cc: Daniel Vetter , Intel Graphics Development , Thierry Reding , Daniel Vetter List-Id: dri-devel@lists.freedesktop.org VGhhdCBmdW5jdGlvbiBvbmx5IG5lZWRzIHRvIHRha2UgdGhlIGluZGl2aWR1YWwgY3J0YyBsb2Nr cywgbm90IGFsbAp0aGUga21zIGxvY2tzLiBQdXNoIGRvd24gdGhlIGxvY2tpbmcgYW5kIHRoZW4g bWluaW1pemUgaXQuCgpDYzogSm9obiBTdHVsdHogPGpvaG4uc3R1bHR6QGxpbmFyby5vcmc+CkNj OiBUaGllcnJ5IFJlZGluZyA8dHJlZGluZ0BudmlkaWEuY29tPgpTaWduZWQtb2ZmLWJ5OiBEYW5p ZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0v ZHJtX2ZiX2hlbHBlci5jIHwgMjQgKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hh bmdlZCwgOSBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9mYl9oZWxw ZXIuYwppbmRleCBhMGQ0NjAzODU3ZDguLjE0YjNmODg1YTAxZiAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2RybV9mYl9oZWxwZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hl bHBlci5jCkBAIC01NTcsMTAgKzU1NywxMiBAQCBzdGF0aWMgYm9vbCBkcm1fZmJfaGVscGVyX2lz X2JvdW5kKHN0cnVjdCBkcm1fZmJfaGVscGVyICpmYl9oZWxwZXIpCiAJCXJldHVybiBmYWxzZTsK IAogCWRybV9mb3JfZWFjaF9jcnRjKGNydGMsIGRldikgeworCQlkcm1fbW9kZXNldF9sb2NrKCZj cnRjLT5tdXRleCwgTlVMTCk7CiAJCWlmIChjcnRjLT5wcmltYXJ5LT5mYikKIAkJCWNydGNzX2Jv dW5kKys7CiAJCWlmIChjcnRjLT5wcmltYXJ5LT5mYiA9PSBmYl9oZWxwZXItPmZiKQogCQkJYm91 bmQrKzsKKwkJZHJtX21vZGVzZXRfdW5sb2NrKCZjcnRjLT5tdXRleCk7CiAJfQogCiAJaWYgKGJv dW5kIDwgY3J0Y3NfYm91bmQpCkBAIC02MzUsMTMgKzYzNywxMiBAQCBzdGF0aWMgdm9pZCBkcm1f ZmJfaGVscGVyX2RwbXMoc3RydWN0IGZiX2luZm8gKmluZm8sIGludCBkcG1zX21vZGUpCiAJICog Rm9yIGVhY2ggQ1JUQyBpbiB0aGlzIGZiLCB0dXJuIHRoZSBjb25uZWN0b3JzIG9uL29mZi4KIAkg Ki8KIAltdXRleF9sb2NrKCZmYl9oZWxwZXItPmxvY2spOwotCWRybV9tb2Rlc2V0X2xvY2tfYWxs KGRldik7CiAJaWYgKCFkcm1fZmJfaGVscGVyX2lzX2JvdW5kKGZiX2hlbHBlcikpIHsKLQkJZHJt X21vZGVzZXRfdW5sb2NrX2FsbChkZXYpOwogCQltdXRleF91bmxvY2soJmZiX2hlbHBlci0+bG9j ayk7CiAJCXJldHVybjsKIAl9CiAKKwlkcm1fbW9kZXNldF9sb2NrX2FsbChkZXYpOwogCWZvciAo aSA9IDA7IGkgPCBmYl9oZWxwZXItPmNydGNfY291bnQ7IGkrKykgewogCQljcnRjID0gZmJfaGVs cGVyLT5jcnRjX2luZm9baV0ubW9kZV9zZXQuY3J0YzsKIApAQCAtMTI3NywxMyArMTI3OCwxMiBA QCBpbnQgZHJtX2ZiX2hlbHBlcl9zZXRjbWFwKHN0cnVjdCBmYl9jbWFwICpjbWFwLCBzdHJ1Y3Qg ZmJfaW5mbyAqaW5mbykKIAkJcmV0dXJuIC1FQlVTWTsKIAogCW11dGV4X2xvY2soJmZiX2hlbHBl ci0+bG9jayk7Ci0JZHJtX21vZGVzZXRfbG9ja19hbGwoZGV2KTsKIAlpZiAoIWRybV9mYl9oZWxw ZXJfaXNfYm91bmQoZmJfaGVscGVyKSkgewotCQlkcm1fbW9kZXNldF91bmxvY2tfYWxsKGRldik7 CiAJCW11dGV4X3VubG9jaygmZmJfaGVscGVyLT5sb2NrKTsKIAkJcmV0dXJuIC1FQlVTWTsKIAl9 CiAKKwlkcm1fbW9kZXNldF9sb2NrX2FsbChkZXYpOwogCWZvciAoaSA9IDA7IGkgPCBmYl9oZWxw ZXItPmNydGNfY291bnQ7IGkrKykgewogCQljcnRjID0gZmJfaGVscGVyLT5jcnRjX2luZm9baV0u bW9kZV9zZXQuY3J0YzsKIAkJY3J0Y19mdW5jcyA9IGNydGMtPmhlbHBlcl9wcml2YXRlOwpAQCAt MTMzNywxMiArMTMzNywxMiBAQCBpbnQgZHJtX2ZiX2hlbHBlcl9pb2N0bChzdHJ1Y3QgZmJfaW5m byAqaW5mbywgdW5zaWduZWQgaW50IGNtZCwKIAlpbnQgcmV0ID0gMDsKIAogCW11dGV4X2xvY2so JmZiX2hlbHBlci0+bG9jayk7Ci0JbXV0ZXhfbG9jaygmZGV2LT5tb2RlX2NvbmZpZy5tdXRleCk7 CiAJaWYgKCFkcm1fZmJfaGVscGVyX2lzX2JvdW5kKGZiX2hlbHBlcikpIHsKIAkJcmV0ID0gLUVC VVNZOwogCQlnb3RvIHVubG9jazsKIAl9CiAKKwltdXRleF9sb2NrKCZkZXYtPm1vZGVfY29uZmln Lm11dGV4KTsKIAlzd2l0Y2ggKGNtZCkgewogCWNhc2UgRkJJT19XQUlURk9SVlNZTkM6CiAJCS8q CkBAIC0xNjE0LDEzICsxNjE0LDEyIEBAIGludCBkcm1fZmJfaGVscGVyX3Bhbl9kaXNwbGF5KHN0 cnVjdCBmYl92YXJfc2NyZWVuaW5mbyAqdmFyLAogCQlyZXR1cm4gLUVCVVNZOwogCiAJbXV0ZXhf bG9jaygmZmJfaGVscGVyLT5sb2NrKTsKLQlkcm1fbW9kZXNldF9sb2NrX2FsbChkZXYpOwogCWlm ICghZHJtX2ZiX2hlbHBlcl9pc19ib3VuZChmYl9oZWxwZXIpKSB7Ci0JCWRybV9tb2Rlc2V0X3Vu bG9ja19hbGwoZGV2KTsKIAkJbXV0ZXhfdW5sb2NrKCZmYl9oZWxwZXItPmxvY2spOwogCQlyZXR1 cm4gLUVCVVNZOwogCX0KIAorCWRybV9tb2Rlc2V0X2xvY2tfYWxsKGRldik7CiAJaWYgKGRybV9k cnZfdXNlc19hdG9taWNfbW9kZXNldChkZXYpKQogCQlyZXQgPSBwYW5fZGlzcGxheV9hdG9taWMo dmFyLCBpbmZvKTsKIAllbHNlCkBAIC0yNDgxLDE2ICsyNDgwLDE1IEBAIGludCBkcm1fZmJfaGVs cGVyX2hvdHBsdWdfZXZlbnQoc3RydWN0IGRybV9mYl9oZWxwZXIgKmZiX2hlbHBlcikKIAkJcmV0 dXJuIDA7CiAKIAltdXRleF9sb2NrKCZmYl9oZWxwZXItPmxvY2spOwotCW11dGV4X2xvY2soJmRl di0+bW9kZV9jb25maWcubXV0ZXgpOwotCiAJaWYgKCFmYl9oZWxwZXItPmZiIHx8ICFkcm1fZmJf aGVscGVyX2lzX2JvdW5kKGZiX2hlbHBlcikpIHsKIAkJZmJfaGVscGVyLT5kZWxheWVkX2hvdHBs dWcgPSB0cnVlOwotCQltdXRleF91bmxvY2soJmRldi0+bW9kZV9jb25maWcubXV0ZXgpOwotCQln b3RvIHVubG9jazsKKwkJbXV0ZXhfdW5sb2NrKCZmYl9oZWxwZXItPmxvY2spOworCQlyZXR1cm4g ZXJyOwogCX0KIAogCURSTV9ERUJVR19LTVMoIlxuIik7CiAKKwltdXRleF9sb2NrKCZkZXYtPm1v ZGVfY29uZmlnLm11dGV4KTsKIAlkcm1fc2V0dXBfY3J0Y3MoZmJfaGVscGVyLCBmYl9oZWxwZXIt PmZiLT53aWR0aCwgZmJfaGVscGVyLT5mYi0+aGVpZ2h0KTsKIAogCW11dGV4X3VubG9jaygmZGV2 LT5tb2RlX2NvbmZpZy5tdXRleCk7CkBAIC0yNDk5LDEwICsyNDk3LDYgQEAgaW50IGRybV9mYl9o ZWxwZXJfaG90cGx1Z19ldmVudChzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqZmJfaGVscGVyKQogCWRy bV9mYl9oZWxwZXJfc2V0X3BhcihmYl9oZWxwZXItPmZiZGV2KTsKIAogCXJldHVybiAwOwotCi11 bmxvY2s6Ci0JbXV0ZXhfdW5sb2NrKCZmYl9oZWxwZXItPmxvY2spOwotCXJldHVybiBlcnI7CiB9 CiBFWFBPUlRfU1lNQk9MKGRybV9mYl9oZWxwZXJfaG90cGx1Z19ldmVudCk7CiAKLS0gCjIuMTEu MAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRl dmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8v bGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==