From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= Subject: [PATCH v2 01/11] drm: Use srcu to protect drm_device.unplugged Date: Fri, 8 Sep 2017 17:07:20 +0200 Message-ID: <1504883250-43487-2-git-send-email-noralf@tronnes.org> References: <1504883250-43487-1-git-send-email-noralf@tronnes.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from smtp.domeneshop.no (smtp.domeneshop.no [IPv6:2a01:5b40:0:3005::1]) by gabe.freedesktop.org (Postfix) with ESMTPS id BDD4F6EBAF for ; Fri, 8 Sep 2017 15:07:48 +0000 (UTC) In-Reply-To: <1504883250-43487-1-git-send-email-noralf@tronnes.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: daniel.vetter@ffwll.ch, laurent.pinchart@ideasonboard.com, david@lechnology.com List-Id: dri-devel@lists.freedesktop.org VXNlIHNyY3UgdG8gcHJvdGVjdCBkcm1fZGV2aWNlLnVucGx1Z2dlZCBpbiBhIHJhY2UgZnJlZSBt YW5uZXIuCkRyaXZlcnMgY2FuIHVzZSBkcm1fZGV2X2VudGVyKCkvZHJtX2Rldl9leGl0KCkgdG8g cHJvdGVjdCBhbmQgbWFyawpzZWN0aW9ucyBwcmV2ZW50aW5nIGFjY2VzcyB0byBkZXZpY2UgcmVz b3VyY2VzIHRoYXQgYXJlIG5vdCBhdmFpbGFibGUKYWZ0ZXIgdGhlIGRldmljZSBpcyBnb25lLgoK U3VnZ2VzdGVkLWJ5OiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwudmV0dGVyQGZmd2xsLmNoPgpTaWdu ZWQtb2ZmLWJ5OiBOb3JhbGYgVHLDuG5uZXMgPG5vcmFsZkB0cm9ubmVzLm9yZz4KLS0tCiBkcml2 ZXJzL2dwdS9kcm0vZHJtX2Rydi5jIHwgNTQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrLS0tLS0KIGluY2x1ZGUvZHJtL2RybV9kZXZpY2UuaCAgfCAgOSArKysrKysr LQogaW5jbHVkZS9kcm0vZHJtX2Rydi5oICAgICB8IDE1ICsrKysrKysrKy0tLS0KIDMgZmlsZXMg Y2hhbmdlZCwgNjggaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2RybV9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fZHJ2LmMKaW5k ZXggYmUzOGFjNy4uNjZjZWIwZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9kcnYu YworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2Rydi5jCkBAIC0zMiw2ICszMiw3IEBACiAjaW5j bHVkZSA8bGludXgvbW9kdWxlcGFyYW0uaD4KICNpbmNsdWRlIDxsaW51eC9tb3VudC5oPgogI2lu Y2x1ZGUgPGxpbnV4L3NsYWIuaD4KKyNpbmNsdWRlIDxsaW51eC9zcmN1Lmg+CiAKICNpbmNsdWRl IDxkcm0vZHJtX2Rydi5oPgogI2luY2x1ZGUgPGRybS9kcm1QLmg+CkBAIC03NCw2ICs3NSw4IEBA IHN0YXRpYyBib29sIGRybV9jb3JlX2luaXRfY29tcGxldGUgPSBmYWxzZTsKIAogc3RhdGljIHN0 cnVjdCBkZW50cnkgKmRybV9kZWJ1Z2ZzX3Jvb3Q7CiAKK0RFRklORV9TVEFUSUNfU1JDVShkcm1f dW5wbHVnX3NyY3UpOworCiAjZGVmaW5lIERSTV9QUklOVEtfRk1UICJbIiBEUk1fTkFNRSAiOiVz XSVzICVwViIKIAogdm9pZCBkcm1fZGV2X3ByaW50ayhjb25zdCBzdHJ1Y3QgZGV2aWNlICpkZXYs IGNvbnN0IGNoYXIgKmxldmVsLApAQCAtMzY0LDE4ICszNjcsNTEgQEAgdm9pZCBkcm1fcHV0X2Rl dihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogfQogRVhQT1JUX1NZTUJPTChkcm1fcHV0X2Rldik7 CiAKLXN0YXRpYyB2b2lkIGRybV9kZXZpY2Vfc2V0X3VucGx1Z2dlZChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2KQorLyoqCisgKiBkcm1fZGV2X2VudGVyIC0gRW50ZXIgZGV2aWNlIGNyaXRpY2FsIHNl Y3Rpb24KKyAqIEBkZXY6IERSTSBkZXZpY2UKKyAqIEBpZHg6IFBvaW50ZXIgdG8gaW5kZXggdGhh dCB3aWxsIGJlIHBhc3NlZCB0byB0aGUgbWF0Y2hpbmcgZHJtX2Rldl9leGl0KCkKKyAqCisgKiBU aGlzIGZ1bmN0aW9uIG1hcmtzIGFuZCBwcm90ZWN0cyB0aGUgYmVnaW5uaW5nIG9mIGEgc2VjdGlv biB0aGF0IHNob3VsZCBub3QKKyAqIGJlIGVudGVyZWQgYWZ0ZXIgdGhlIGRldmljZSBoYXMgYmVl biB1bnBsdWdnZWQuIFRoZSBzZWN0aW9uIGVuZCBpcyBtYXJrZWQKKyAqIHdpdGggZHJtX2Rldl9l eGl0KCkuIENhbGxzIHRvIHRoaXMgZnVuY3Rpb24gY2FuIGJlIG5lc3RlZC4KKyAqCisgKiBSZXR1 cm5zOgorICogVHJ1ZSBpZiBpdCBpcyBPSyB0byBlbnRlciB0aGUgc2VjdGlvbiwgZmFsc2Ugb3Ro ZXJ3aXNlLgorICovCitib29sIGRybV9kZXZfZW50ZXIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwg aW50ICppZHgpCit7CisJKmlkeCA9IHNyY3VfcmVhZF9sb2NrKCZkcm1fdW5wbHVnX3NyY3UpOwor CisJaWYgKGRldi0+dW5wbHVnZ2VkKSB7CisJCXNyY3VfcmVhZF91bmxvY2soJmRybV91bnBsdWdf c3JjdSwgKmlkeCk7CisJCXJldHVybiBmYWxzZTsKKwl9CisKKwlyZXR1cm4gdHJ1ZTsKK30KK0VY UE9SVF9TWU1CT0woZHJtX2Rldl9lbnRlcik7CisKKy8qKgorICogZHJtX2Rldl9leGl0IC0gRXhp dCBkZXZpY2UgY3JpdGljYWwgc2VjdGlvbgorICogQGlkeDogaW5kZXggcmV0dXJuZWQgZnJvbSBk cm1fZGV2X2VudGVyKCkKKyAqCisgKiBUaGlzIGZ1bmN0aW9uIG1hcmtzIHRoZSBlbmQgb2YgYSBz ZWN0aW9uIHRoYXQgc2hvdWxkIG5vdCBiZSBlbnRlcmVkIGFmdGVyCisgKiB0aGUgZGV2aWNlIGhh cyBiZWVuIHVucGx1Z2dlZC4KKyAqLwordm9pZCBkcm1fZGV2X2V4aXQoaW50IGlkeCkKIHsKLQlz bXBfd21iKCk7Ci0JYXRvbWljX3NldCgmZGV2LT51bnBsdWdnZWQsIDEpOworCXNyY3VfcmVhZF91 bmxvY2soJmRybV91bnBsdWdfc3JjdSwgaWR4KTsKIH0KK0VYUE9SVF9TWU1CT0woZHJtX2Rldl9l eGl0KTsKIAogLyoqCiAgKiBkcm1fZGV2X3VucGx1ZyAtIHVucGx1ZyBhIERSTSBkZXZpY2UKICAq IEBkZXY6IERSTSBkZXZpY2UKICAqCiAgKiBUaGlzIHVucGx1Z3MgYSBob3RwbHVnZ2FibGUgRFJN IGRldmljZSwgd2hpY2ggbWFrZXMgaXQgaW5hY2Nlc3NpYmxlIHRvCi0gKiB1c2Vyc3BhY2Ugb3Bl cmF0aW9ucy4gRW50cnktcG9pbnRzIGNhbiB1c2UgZHJtX2Rldl9pc191bnBsdWdnZWQoKS4gVGhp cworICogdXNlcnNwYWNlIG9wZXJhdGlvbnMuIEVudHJ5LXBvaW50cyBjYW4gdXNlIGRybV9kZXZf ZW50ZXIoKSBhbmQKKyAqIGRybV9kZXZfZXhpdCgpIHRvIHByb3RlY3QgZGV2aWNlIHJlc291cmNl cyBpbiBhIHJhY2UgZnJlZSBtYW5uZXIuIFRoaXMKICAqIGVzc2VudGlhbGx5IHVucmVnaXN0ZXJz IHRoZSBkZXZpY2UgbGlrZSBkcm1fZGV2X3VucmVnaXN0ZXIoKSwgYnV0IGNhbiBiZQogICogY2Fs bGVkIHdoaWxlIHRoZXJlIGFyZSBzdGlsbCBvcGVuIHVzZXJzIG9mIEBkZXYuCiAgKi8KQEAgLTM4 NCwxMCArNDIwLDE4IEBAIHZvaWQgZHJtX2Rldl91bnBsdWcoc3RydWN0IGRybV9kZXZpY2UgKmRl dikKIAlkcm1fZGV2X3VucmVnaXN0ZXIoZGV2KTsKIAogCW11dGV4X2xvY2soJmRybV9nbG9iYWxf bXV0ZXgpOwotCWRybV9kZXZpY2Vfc2V0X3VucGx1Z2dlZChkZXYpOwogCWlmIChkZXYtPm9wZW5f Y291bnQgPT0gMCkKIAkJZHJtX2Rldl91bnJlZihkZXYpOwogCW11dGV4X3VubG9jaygmZHJtX2ds b2JhbF9tdXRleCk7CisKKwkvKgorCSAqIEFmdGVyIHN5bmNocm9uaXppbmcgYW55IGNyaXRpY2Fs IHJlYWQgc2VjdGlvbiBpcyBndWFyYW50ZWVkIHRvIHNlZQorCSAqIHRoZSBuZXcgdmFsdWUgb2Yg LT51bnBsdWdnZWQsIGFuZCBhbnkgY3JpdGljYWwgc2VjdGlvbiB3aGljaCBtaWdodAorCSAqIHN0 aWxsIGhhdmUgc2VlbiB0aGUgb2xkIHZhbHVlIG9mIC0+dW5wbHVnZ2VkIGlzIGd1YXJhbnRlZWQg dG8gaGF2ZQorCSAqIGZpbmlzaGVkLgorCSAqLworCWRldi0+dW5wbHVnZ2VkID0gdHJ1ZTsKKwlz eW5jaHJvbml6ZV9zcmN1KCZkcm1fdW5wbHVnX3NyY3UpOwogfQogRVhQT1JUX1NZTUJPTChkcm1f ZGV2X3VucGx1Zyk7CiAKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9kZXZpY2UuaCBiL2lu Y2x1ZGUvZHJtL2RybV9kZXZpY2UuaAppbmRleCBlMjFhZjg3Li5iMGNhYmJiIDEwMDY0NAotLS0g YS9pbmNsdWRlL2RybS9kcm1fZGV2aWNlLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX2RldmljZS5o CkBAIC00NSw3ICs0NSwxNCBAQCBzdHJ1Y3QgZHJtX2RldmljZSB7CiAJLyogY3VycmVudGx5IGFj dGl2ZSBtYXN0ZXIgZm9yIHRoaXMgZGV2aWNlLiBQcm90ZWN0ZWQgYnkgbWFzdGVyX211dGV4ICov CiAJc3RydWN0IGRybV9tYXN0ZXIgKm1hc3RlcjsKIAotCWF0b21pY190IHVucGx1Z2dlZDsJCQkv Kio8IEZsYWcgd2hldGhlciBkZXYgaXMgZGVhZCAqLworCS8qKgorCSAqIEB1bnBsdWdnZWQ6CisJ ICoKKwkgKiBGbGFnIHRvIHRlbGwgaWYgdGhlIGRldmljZSBoYXMgYmVlbiB1bnBsdWdnZWQuCisJ ICogU2VlIGRybV9kZXZfZW50ZXIoKSBhbmQgZHJtX2Rldl9pc191bnBsdWdnZWQoKS4KKwkgKi8K Kwlib29sIHVucGx1Z2dlZDsKKwogCXN0cnVjdCBpbm9kZSAqYW5vbl9pbm9kZTsJCS8qKjwgaW5v ZGUgZm9yIHByaXZhdGUgYWRkcmVzcy1zcGFjZSAqLwogCWNoYXIgKnVuaXF1ZTsJCQkJLyoqPCB1 bmlxdWUgbmFtZSBvZiB0aGUgZGV2aWNlICovCiAJLypAfSAqLwpkaWZmIC0tZ2l0IGEvaW5jbHVk ZS9kcm0vZHJtX2Rydi5oIGIvaW5jbHVkZS9kcm0vZHJtX2Rydi5oCmluZGV4IDcxYmJhYWUuLjEw MWM4MjQgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9kcnYuaAorKysgYi9pbmNsdWRlL2Ry bS9kcm1fZHJ2LmgKQEAgLTYxNCw2ICs2MTQsOCBAQCB2b2lkIGRybV9kZXZfdW5yZWdpc3Rlcihz dHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsKIHZvaWQgZHJtX2Rldl9yZWYoc3RydWN0IGRybV9kZXZp Y2UgKmRldik7CiB2b2lkIGRybV9kZXZfdW5yZWYoc3RydWN0IGRybV9kZXZpY2UgKmRldik7CiB2 b2lkIGRybV9wdXRfZGV2KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYpOworYm9vbCBkcm1fZGV2X2Vu dGVyKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIGludCAqaWR4KTsKK3ZvaWQgZHJtX2Rldl9leGl0 KGludCBpZHgpOwogdm9pZCBkcm1fZGV2X3VucGx1ZyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KTsK IAogLyoqCkBAIC02MjUsMTEgKzYyNywxNiBAQCB2b2lkIGRybV9kZXZfdW5wbHVnKHN0cnVjdCBk cm1fZGV2aWNlICpkZXYpOwogICogdW5wbHVnZ2VkLCB0aGVzZSB0d28gZnVuY3Rpb25zIGd1YXJh bnRlZSB0aGF0IGFueSBzdG9yZSBiZWZvcmUgY2FsbGluZwogICogZHJtX2Rldl91bnBsdWcoKSBp cyB2aXNpYmxlIHRvIGNhbGxlcnMgb2YgdGhpcyBmdW5jdGlvbiBhZnRlciBpdCBjb21wbGV0ZXMK ICAqLwotc3RhdGljIGlubGluZSBpbnQgZHJtX2Rldl9pc191bnBsdWdnZWQoc3RydWN0IGRybV9k ZXZpY2UgKmRldikKK3N0YXRpYyBpbmxpbmUgYm9vbCBkcm1fZGV2X2lzX3VucGx1Z2dlZChzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2KQogewotCWludCByZXQgPSBhdG9taWNfcmVhZCgmZGV2LT51bnBs dWdnZWQpOwotCXNtcF9ybWIoKTsKLQlyZXR1cm4gcmV0OworCWludCBpZHg7CisKKwlpZiAoZHJt X2Rldl9lbnRlcihkZXYsICZpZHgpKSB7CisJCWRybV9kZXZfZXhpdChpZHgpOworCQlyZXR1cm4g ZmFsc2U7CisJfQorCisJcmV0dXJuIHRydWU7CiB9CiAKIAotLSAKMi43LjQKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxp c3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=