From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: [PATCH] drm/fb-helper: Stop using mode_config.mutex for internals Date: Wed, 5 Jul 2017 06:56:29 +0200 Message-ID: <20170705045629.31265-1-daniel.vetter@ffwll.ch> References: <20170704151833.17304-9-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x241.google.com (mail-wm0-x241.google.com [IPv6:2a00:1450:400c:c09::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id EC0B089EEB for ; Wed, 5 Jul 2017 04:56:36 +0000 (UTC) Received: by mail-wm0-x241.google.com with SMTP id y5so29893441wmh.3 for ; Tue, 04 Jul 2017 21:56:36 -0700 (PDT) In-Reply-To: <20170704151833.17304-9-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 , Daniel Vetter , Thierry Reding List-Id: dri-devel@lists.freedesktop.org VGhvc2UgYXJlIG5vdyBhbGwgcHJvdGVjdGVkIHVzaW5nIGZiX2hlbHBlci0+bG9jay4KCnYyOiBX ZSBzdGlsbCBuZWVkIHRvIGhvbGQgbW9kZV9jb25maWcubXV0ZXggcmlnaHQgYXJvdW5kIGNhbGxp bmcKY29ubmVjdG9yLT5maWxsX21vZGVzLgoKdjM6IEkgZm9yZ290IHRvIGhvbGQgbW9kZV9jb25m aWcubXV0ZXggd2hpbGUgbG9va2luZyBhdApjb25uZWN0b3ItPnN0YXR1cyBhbmQgdGhlIG1vZGUg bGlzdC4gQWxzbywgd2UgbmVlZCB0byBwYXRjaCB1cCB0aGUKaTkxNSAtPmluaXRpYWxfY29uZmln IGNhbGxiYWNrIHRvIGdyYWIgdGhlIGxvY2tzIGl0IG5lZWRzIHRvIGluc3BlY3QKdGhlIG1vZGVz ZXQgc3RhdGUgcmVjb3ZlcmVkIGZyb20gdGhlIGZ3LgoKdjQ6IERvbid0IHJlb3JkZXIgdGhlIHBy b2JlIHRvbyBtdWNoIChWaWxsZSkuCgpDYzogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxh QGxpbnV4LmludGVsLmNvbT4KQ2M6IEpvaG4gU3R1bHR6IDxqb2huLnN0dWx0ekBsaW5hcm8ub3Jn PgpDYzogVGhpZXJyeSBSZWRpbmcgPHRyZWRpbmdAbnZpZGlhLmNvbT4KU2lnbmVkLW9mZi1ieTog RGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBpbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUv ZHJtL2RybV9mYl9oZWxwZXIuYyAgICB8IDMzICsrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQogZHJpdmVycy9ncHUvZHJtL2RybV92YmxhbmsuYyAgICAgICB8ICAyICstCiBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pbnRlbF9mYmRldi5jIHwgMTYgKysrKysrKysrKysrLS0tLQogMyBmaWxl cyBjaGFuZ2VkLCAyMSBpbnNlcnRpb25zKCspLCAzMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9m Yl9oZWxwZXIuYwppbmRleCBjNWJmMzdmM2JjZGQuLjVkM2Q3NzY1MDhiMyAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2RybV9mYl9oZWxwZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJt X2ZiX2hlbHBlci5jCkBAIC0xMDYsNyArMTA2LDcgQEAgc3RhdGljIERFRklORV9NVVRFWChrZXJu ZWxfZmJfaGVscGVyX2xvY2spOwogICovCiAKICNkZWZpbmUgZHJtX2ZiX2hlbHBlcl9mb3JfZWFj aF9jb25uZWN0b3IoZmJoLCBpX18pIFwKLQlmb3IgKCh7IGxvY2tkZXBfYXNzZXJ0X2hlbGQoJihm YmgpLT5kZXYtPm1vZGVfY29uZmlnLm11dGV4KTsgfSksIFwKKwlmb3IgKCh7IGxvY2tkZXBfYXNz ZXJ0X2hlbGQoJihmYmgpLT5sb2NrKTsgfSksIFwKIAkgICAgIGlfXyA9IDA7IGlfXyA8IChmYmgp LT5jb25uZWN0b3JfY291bnQ7IGlfXysrKQogCiBzdGF0aWMgaW50IF9fZHJtX2ZiX2hlbHBlcl9h ZGRfb25lX2Nvbm5lY3RvcihzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqZmJfaGVscGVyLApAQCAtMTIw LDcgKzEyMCw2IEBAIHN0YXRpYyBpbnQgX19kcm1fZmJfaGVscGVyX2FkZF9vbmVfY29ubmVjdG9y KHN0cnVjdCBkcm1fZmJfaGVscGVyICpmYl9oZWxwZXIsCiAJCXJldHVybiAwOwogCiAJbG9ja2Rl cF9hc3NlcnRfaGVsZCgmZmJfaGVscGVyLT5sb2NrKTsKLQlsb2NrZGVwX2Fzc2VydF9oZWxkKCZm Yl9oZWxwZXItPmRldi0+bW9kZV9jb25maWcubXV0ZXgpOwogCiAJY291bnQgPSBmYl9oZWxwZXIt PmNvbm5lY3Rvcl9jb3VudCArIDE7CiAKQEAgLTE1MiwxMSArMTUxLDcgQEAgaW50IGRybV9mYl9o ZWxwZXJfYWRkX29uZV9jb25uZWN0b3Ioc3RydWN0IGRybV9mYl9oZWxwZXIgKmZiX2hlbHBlciwK IAlpbnQgZXJyOwogCiAJbXV0ZXhfbG9jaygmZmJfaGVscGVyLT5sb2NrKTsKLQltdXRleF9sb2Nr KCZmYl9oZWxwZXItPmRldi0+bW9kZV9jb25maWcubXV0ZXgpOwotCiAJZXJyID0gX19kcm1fZmJf aGVscGVyX2FkZF9vbmVfY29ubmVjdG9yKGZiX2hlbHBlciwgY29ubmVjdG9yKTsKLQotCW11dGV4 X3VubG9jaygmZmJfaGVscGVyLT5kZXYtPm1vZGVfY29uZmlnLm11dGV4KTsKIAltdXRleF91bmxv Y2soJmZiX2hlbHBlci0+bG9jayk7CiAKIAlyZXR1cm4gZXJyOwpAQCAtMTg4LDcgKzE4Myw2IEBA IGludCBkcm1fZmJfaGVscGVyX3NpbmdsZV9hZGRfYWxsX2Nvbm5lY3RvcnMoc3RydWN0IGRybV9m Yl9oZWxwZXIgKmZiX2hlbHBlcikKIAkJcmV0dXJuIDA7CiAKIAltdXRleF9sb2NrKCZmYl9oZWxw ZXItPmxvY2spOwotCW11dGV4X2xvY2soJmRldi0+bW9kZV9jb25maWcubXV0ZXgpOwogCWRybV9j b25uZWN0b3JfbGlzdF9pdGVyX2JlZ2luKGRldiwgJmNvbm5faXRlcik7CiAJZHJtX2Zvcl9lYWNo X2Nvbm5lY3Rvcl9pdGVyKGNvbm5lY3RvciwgJmNvbm5faXRlcikgewogCQlyZXQgPSBfX2RybV9m Yl9oZWxwZXJfYWRkX29uZV9jb25uZWN0b3IoZmJfaGVscGVyLCBjb25uZWN0b3IpOwpAQCAtMjEw LDcgKzIwNCw2IEBAIGludCBkcm1fZmJfaGVscGVyX3NpbmdsZV9hZGRfYWxsX2Nvbm5lY3RvcnMo c3RydWN0IGRybV9mYl9oZWxwZXIgKmZiX2hlbHBlcikKIAlmYl9oZWxwZXItPmNvbm5lY3Rvcl9j b3VudCA9IDA7CiBvdXQ6CiAJZHJtX2Nvbm5lY3Rvcl9saXN0X2l0ZXJfZW5kKCZjb25uX2l0ZXIp OwotCW11dGV4X3VubG9jaygmZGV2LT5tb2RlX2NvbmZpZy5tdXRleCk7CiAJbXV0ZXhfdW5sb2Nr KCZmYl9oZWxwZXItPmxvY2spOwogCiAJcmV0dXJuIHJldDsKQEAgLTI1MywxMSArMjQ2LDcgQEAg aW50IGRybV9mYl9oZWxwZXJfcmVtb3ZlX29uZV9jb25uZWN0b3Ioc3RydWN0IGRybV9mYl9oZWxw ZXIgKmZiX2hlbHBlciwKIAlpbnQgZXJyOwogCiAJbXV0ZXhfbG9jaygmZmJfaGVscGVyLT5sb2Nr KTsKLQltdXRleF9sb2NrKCZmYl9oZWxwZXItPmRldi0+bW9kZV9jb25maWcubXV0ZXgpOwotCiAJ ZXJyID0gX19kcm1fZmJfaGVscGVyX3JlbW92ZV9vbmVfY29ubmVjdG9yKGZiX2hlbHBlciwgY29u bmVjdG9yKTsKLQotCW11dGV4X3VubG9jaygmZmJfaGVscGVyLT5kZXYtPm1vZGVfY29uZmlnLm11 dGV4KTsKIAltdXRleF91bmxvY2soJmZiX2hlbHBlci0+bG9jayk7CiAKIAlyZXR1cm4gZXJyOwpA QCAtMTg3OSwxMiArMTg2OCwxMSBAQCB2b2lkIGRybV9mYl9oZWxwZXJfZmlsbF92YXIoc3RydWN0 IGZiX2luZm8gKmluZm8sIHN0cnVjdCBkcm1fZmJfaGVscGVyICpmYl9oZWxwZQogRVhQT1JUX1NZ TUJPTChkcm1fZmJfaGVscGVyX2ZpbGxfdmFyKTsKIAogc3RhdGljIGludCBkcm1fZmJfaGVscGVy X3Byb2JlX2Nvbm5lY3Rvcl9tb2RlcyhzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqZmJfaGVscGVyLAot CQkJCQkgICAgICAgdWludDMyX3QgbWF4WCwKLQkJCQkJICAgICAgIHVpbnQzMl90IG1heFkpCisJ CQkJCQl1aW50MzJfdCBtYXhYLAorCQkJCQkJdWludDMyX3QgbWF4WSkKIHsKIAlzdHJ1Y3QgZHJt X2Nvbm5lY3RvciAqY29ubmVjdG9yOwotCWludCBjb3VudCA9IDA7Ci0JaW50IGk7CisJaW50IGks IGNvdW50ID0gMDsKIAogCWRybV9mYl9oZWxwZXJfZm9yX2VhY2hfY29ubmVjdG9yKGZiX2hlbHBl ciwgaSkgewogCQljb25uZWN0b3IgPSBmYl9oZWxwZXItPmNvbm5lY3Rvcl9pbmZvW2ldLT5jb25u ZWN0b3I7CkBAIC0yMjgyLDEyICsyMjcwLDggQEAgc3RhdGljIHZvaWQgZHJtX3NldHVwX2NydGNz KHN0cnVjdCBkcm1fZmJfaGVscGVyICpmYl9oZWxwZXIsCiAJaW50IGk7CiAKIAlEUk1fREVCVUdf S01TKCJcbiIpOwotCWlmIChkcm1fZmJfaGVscGVyX3Byb2JlX2Nvbm5lY3Rvcl9tb2RlcyhmYl9o ZWxwZXIsIHdpZHRoLCBoZWlnaHQpID09IDApCi0JCURSTV9ERUJVR19LTVMoIk5vIGNvbm5lY3Rv cnMgcmVwb3J0ZWQgY29ubmVjdGVkIHdpdGggbW9kZXNcbiIpOwotCiAJLyogcHJldmVudCBjb25j dXJyZW50IG1vZGlmaWNhdGlvbiBvZiBjb25uZWN0b3JfY291bnQgYnkgaG90cGx1ZyAqLwogCWxv Y2tkZXBfYXNzZXJ0X2hlbGQoJmZiX2hlbHBlci0+bG9jayk7Ci0JbG9ja2RlcF9hc3NlcnRfaGVs ZCgmZmJfaGVscGVyLT5kZXYtPm1vZGVfY29uZmlnLm11dGV4KTsKIAogCWNydGNzID0ga2NhbGxv YyhmYl9oZWxwZXItPmNvbm5lY3Rvcl9jb3VudCwKIAkJCXNpemVvZihzdHJ1Y3QgZHJtX2ZiX2hl bHBlcl9jcnRjICopLCBHRlBfS0VSTkVMKTsKQEAgLTIzMDIsNiArMjI4Niw5IEBAIHN0YXRpYyB2 b2lkIGRybV9zZXR1cF9jcnRjcyhzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqZmJfaGVscGVyLAogCQln b3RvIG91dDsKIAl9CiAKKwltdXRleF9sb2NrKCZmYl9oZWxwZXItPmRldi0+bW9kZV9jb25maWcu bXV0ZXgpOworCWlmIChkcm1fZmJfaGVscGVyX3Byb2JlX2Nvbm5lY3Rvcl9tb2RlcyhmYl9oZWxw ZXIsIHdpZHRoLCBoZWlnaHQpID09IDApCisJCURSTV9ERUJVR19LTVMoIk5vIGNvbm5lY3RvcnMg cmVwb3J0ZWQgY29ubmVjdGVkIHdpdGggbW9kZXNcbiIpOwogCWRybV9lbmFibGVfY29ubmVjdG9y cyhmYl9oZWxwZXIsIGVuYWJsZWQpOwogCiAJaWYgKCEoZmJfaGVscGVyLT5mdW5jcy0+aW5pdGlh bF9jb25maWcgJiYKQEAgLTIzMjMsNiArMjMxMCw3IEBAIHN0YXRpYyB2b2lkIGRybV9zZXR1cF9j cnRjcyhzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqZmJfaGVscGVyLAogCiAJCWRybV9waWNrX2NydGNz KGZiX2hlbHBlciwgY3J0Y3MsIG1vZGVzLCAwLCB3aWR0aCwgaGVpZ2h0KTsKIAl9CisJbXV0ZXhf dW5sb2NrKCZmYl9oZWxwZXItPmRldi0+bW9kZV9jb25maWcubXV0ZXgpOwogCiAJLyogbmVlZCB0 byBzZXQgdGhlIG1vZGVzZXRzIHVwIGhlcmUgZm9yIHVzZSBsYXRlciAqLwogCS8qIGZpbGwgb3V0 IHRoZSBjb25uZWN0b3I8LT5jcnRjIG1hcHBpbmdzIGludG8gdGhlIG1vZGVzZXRzICovCkBAIC0y NDE0LDEyICsyNDAyLDEwIEBAIGludCBkcm1fZmJfaGVscGVyX2luaXRpYWxfY29uZmlnKHN0cnVj dCBkcm1fZmJfaGVscGVyICpmYl9oZWxwZXIsIGludCBicHBfc2VsKQogCQlyZXR1cm4gMDsKIAog CW11dGV4X2xvY2soJmZiX2hlbHBlci0+bG9jayk7Ci0JbXV0ZXhfbG9jaygmZGV2LT5tb2RlX2Nv bmZpZy5tdXRleCk7CiAJZHJtX3NldHVwX2NydGNzKGZiX2hlbHBlciwKIAkJCWRldi0+bW9kZV9j b25maWcubWF4X3dpZHRoLAogCQkJZGV2LT5tb2RlX2NvbmZpZy5tYXhfaGVpZ2h0KTsKIAlyZXQg PSBkcm1fZmJfaGVscGVyX3NpbmdsZV9mYl9wcm9iZShmYl9oZWxwZXIsIGJwcF9zZWwpOwotCW11 dGV4X3VubG9jaygmZGV2LT5tb2RlX2NvbmZpZy5tdXRleCk7CiAJbXV0ZXhfdW5sb2NrKCZmYl9o ZWxwZXItPmxvY2spOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CkBAIC0yNDgyLDEwICsyNDY4 LDcgQEAgaW50IGRybV9mYl9oZWxwZXJfaG90cGx1Z19ldmVudChzdHJ1Y3QgZHJtX2ZiX2hlbHBl ciAqZmJfaGVscGVyKQogCiAJRFJNX0RFQlVHX0tNUygiXG4iKTsKIAotCW11dGV4X2xvY2soJmRl di0+bW9kZV9jb25maWcubXV0ZXgpOwogCWRybV9zZXR1cF9jcnRjcyhmYl9oZWxwZXIsIGZiX2hl bHBlci0+ZmItPndpZHRoLCBmYl9oZWxwZXItPmZiLT5oZWlnaHQpOwotCi0JbXV0ZXhfdW5sb2Nr KCZkZXYtPm1vZGVfY29uZmlnLm11dGV4KTsKIAltdXRleF91bmxvY2soJmZiX2hlbHBlci0+bG9j ayk7CiAKIAlkcm1fZmJfaGVscGVyX3NldF9wYXIoZmJfaGVscGVyLT5mYmRldik7CmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3ZibGFuay5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV92 YmxhbmsuYwppbmRleCBiZmU4NmZhMmQzYjEuLjcwZjJiOTU5M2VkYyAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2RybV92YmxhbmsuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX3ZibGFu ay5jCkBAIC04MzYsNyArODM2LDcgQEAgc3RhdGljIHZvaWQgc2VuZF92YmxhbmtfZXZlbnQoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwKICAqIE5PVEU6IERyaXZlcnMgdXNpbmcgdGhpcyB0byBzZW5k IG91dCB0aGUgJmRybV9jcnRjX3N0YXRlLmV2ZW50IGFzIHBhcnQgb2YgYW4KICAqIGF0b21pYyBj b21taXQgbXVzdCBlbnN1cmUgdGhhdCB0aGUgbmV4dCB2YmxhbmsgaGFwcGVucyBhdCBleGFjdGx5 IHRoZSBzYW1lCiAgKiB0aW1lIGFzIHRoZSBhdG9taWMgY29tbWl0IGlzIGNvbW1pdHRlZCB0byB0 aGUgaGFyZHdhcmUuIFRoaXMgZnVuY3Rpb24gaXRzZWxmCi0gKiBkb2VzICoqbm90KiogcHJvdGVj dCBhZ2FpbiB0aGUgbmV4dCB2YmxhbmsgaW50ZXJydXB0IHJhY2luZyB3aXRoIGVpdGhlciB0aGlz CisgKiBkb2VzICoqbm90KiogcHJvdGVjdCBhZ2FpbnN0IHRoZSBuZXh0IHZibGFuayBpbnRlcnJ1 cHQgcmFjaW5nIHdpdGggZWl0aGVyIHRoaXMKICAqIGZ1bmN0aW9uIGNhbGwgb3IgdGhlIGF0b21p YyBjb21taXQgb3BlcmF0aW9uLiBBIHBvc3NpYmxlIHNlcXVlbmNlIGNvdWxkIGJlOgogICoKICAq IDEuIERyaXZlciBjb21taXRzIG5ldyBoYXJkd2FyZSBzdGF0ZSBpbnRvIHZibGFuay1zeW5jaHJv bml6ZWQgcmVnaXN0ZXJzLgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf ZmJkZXYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2ZiZGV2LmMKaW5kZXggMGM0Y2Rl NmIyZTZmLi5mMTFlZTAzOWZmNDUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2ZiZGV2LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZmJkZXYuYwpAQCAt MzUyLDE0ICszNTIsMjAgQEAgc3RhdGljIGJvb2wgaW50ZWxfZmJfaW5pdGlhbF9jb25maWcoc3Ry dWN0IGRybV9mYl9oZWxwZXIgKmZiX2hlbHBlciwKIAl1bnNpZ25lZCBpbnQgY291bnQgPSBtaW4o ZmJfaGVscGVyLT5jb25uZWN0b3JfY291bnQsIEJJVFNfUEVSX0xPTkcpOwogCWludCBpLCBqOwog CWJvb2wgKnNhdmVfZW5hYmxlZDsKLQlib29sIGZhbGxiYWNrID0gdHJ1ZTsKKwlib29sIGZhbGxi YWNrID0gdHJ1ZSwgcmV0ID0gdHJ1ZTsKIAlpbnQgbnVtX2Nvbm5lY3RvcnNfZW5hYmxlZCA9IDA7 CiAJaW50IG51bV9jb25uZWN0b3JzX2RldGVjdGVkID0gMDsKKwlzdHJ1Y3QgZHJtX21vZGVzZXRf YWNxdWlyZV9jdHggY3R4OwogCiAJc2F2ZV9lbmFibGVkID0ga2NhbGxvYyhjb3VudCwgc2l6ZW9m KGJvb2wpLCBHRlBfS0VSTkVMKTsKIAlpZiAoIXNhdmVfZW5hYmxlZCkKIAkJcmV0dXJuIGZhbHNl OwogCisJZHJtX21vZGVzZXRfYWNxdWlyZV9pbml0KCZjdHgsIDApOworCisJd2hpbGUgKGRybV9t b2Rlc2V0X2xvY2tfYWxsX2N0eChmYl9oZWxwZXItPmRldiwgJmN0eCkgIT0gMCkKKwkJZHJtX21v ZGVzZXRfYmFja29mZigmY3R4KTsKKwogCW1lbWNweShzYXZlX2VuYWJsZWQsIGVuYWJsZWQsIGNv dW50KTsKIAltYXNrID0gR0VOTUFTSyhjb3VudCAtIDEsIDApOwogCWNvbm5fY29uZmlndXJlZCA9 IDA7CkBAIC01MDksMTIgKzUxNSwxNCBAQCBzdGF0aWMgYm9vbCBpbnRlbF9mYl9pbml0aWFsX2Nv bmZpZyhzdHJ1Y3QgZHJtX2ZiX2hlbHBlciAqZmJfaGVscGVyLAogYmFpbDoKIAkJRFJNX0RFQlVH X0tNUygiTm90IHVzaW5nIGZpcm13YXJlIGNvbmZpZ3VyYXRpb25cbiIpOwogCQltZW1jcHkoZW5h YmxlZCwgc2F2ZV9lbmFibGVkLCBjb3VudCk7Ci0JCWtmcmVlKHNhdmVfZW5hYmxlZCk7Ci0JCXJl dHVybiBmYWxzZTsKKwkJcmV0ID0gZmFsc2U7CiAJfQogCisJZHJtX21vZGVzZXRfZHJvcF9sb2Nr cygmY3R4KTsKKwlkcm1fbW9kZXNldF9hY3F1aXJlX2ZpbmkoJmN0eCk7CisKIAlrZnJlZShzYXZl X2VuYWJsZWQpOwotCXJldHVybiB0cnVlOworCXJldHVybiByZXQ7CiB9CiAKIHN0YXRpYyBjb25z dCBzdHJ1Y3QgZHJtX2ZiX2hlbHBlcl9mdW5jcyBpbnRlbF9mYl9oZWxwZXJfZnVuY3MgPSB7Ci0t IAoyLjEzLjIKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=