From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sam Ravnborg Subject: [PATCH v3 04/12] drm: move drm_can_sleep() to drm_util.h Date: Tue, 8 Jan 2019 20:29:31 +0100 Message-ID: <20190108192939.15255-5-sam@ravnborg.org> References: <20190108192939.15255-1-sam@ravnborg.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-lj1-x243.google.com (mail-lj1-x243.google.com [IPv6:2a00:1450:4864:20::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id B38E96F006 for ; Tue, 8 Jan 2019 19:29:56 +0000 (UTC) Received: by mail-lj1-x243.google.com with SMTP id k15-v6so4397583ljc.8 for ; Tue, 08 Jan 2019 11:29:56 -0800 (PST) In-Reply-To: <20190108192939.15255-1-sam@ravnborg.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Daniel Vetter , David Airlie , Maarten Lankhorst , Maxime Ripard , Sean Paul , David Lechner , Laurent Pinchart , =?UTF-8?q?Noralf=20Tr=C3=B8nnes?= , linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org Cc: Tomi Valkeinen , Gerd Hoffmann , Alex Deucher , Sam Ravnborg , =?UTF-8?q?Christian=20K=C3=B6nig?= List-Id: dri-devel@lists.freedesktop.org TW92ZSBkcm1fY2FuX3NsZWVwKCkgb3V0IG9mIGRybVAuaCB0byBhbGxvdyB1c2Vycwp0byBnZXQg cmlkIG9mIHRoZSBkcm1QLmggaW5jbHVkZS4KClRoZXJlIHdhcyBubyBoZWFkZXIgZmlsZSB0aGF0 IHdhcyBhIGdvb2QgbWF0Y2ggZm9yIHRoaXMgaGVscGVyIGZ1bmN0aW9uLgpTbyBhZGQgdGhpcyB0 byBkcm1fdXRpbCB3aXRoIHRoZSByZWxldmFudCBpbmNsdWRlcy4KClVwZGF0ZSBjb21tZW50cyB0 byB1c2Uga2VybmVsLWRvYyBzdHlsZS4KQWRkIEZJWE1FIHRvIGRybV9jYW5fc2xlZXAgYW5kIGFk ZCBub3RlCnRoYXQgdGhpcyBmdW5jdGlvbiBzaG91bGQgbm90IGJlIHVzZWQgaW4gbmV3IGNvZGUK CkFkZCBpbmNsdWRlIG9mIGRybV91dGlsLmggdG8gYWxsIHVzZXJzLgoKU2lnbmVkLW9mZi1ieTog U2FtIFJhdm5ib3JnIDxzYW1AcmF2bmJvcmcub3JnPgpDYzogTWFhcnRlbiBMYW5raG9yc3QgPG1h YXJ0ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmNvbT4KQ2M6IE1heGltZSBSaXBhcmQgPG1heGlt ZS5yaXBhcmRAYm9vdGxpbi5jb20+CkNjOiBTZWFuIFBhdWwgPHNlYW5AcG9vcmx5LnJ1bj4KQ2M6 IERhdmlkIEFpcmxpZSA8YWlybGllZEBsaW51eC5pZT4KQ2M6IERhbmllbCBWZXR0ZXIgPGRhbmll bEBmZndsbC5jaD4KQ2M6IEFsZXggRGV1Y2hlciA8YWxleGFuZGVyLmRldWNoZXJAYW1kLmNvbT4K Q2M6ICJDaHJpc3RpYW4gS8O2bmlnIiA8Y2hyaXN0aWFuLmtvZW5pZ0BhbWQuY29tPgpDYzogIkRh dmlkIChDaHVuTWluZykgWmhvdSIgPERhdmlkMS5aaG91QGFtZC5jb20+CkNjOiBHZXJkIEhvZmZt YW5uIDxrcmF4ZWxAcmVkaGF0LmNvbT4KQ2M6IFJvYiBDbGFyayA8cm9iZGNsYXJrQGdtYWlsLmNv bT4KQ2M6IFRvbWkgVmFsa2VpbmVuIDx0b21pLnZhbGtlaW5lbkB0aS5jb20+CkNjOiBFcmljIEFu aG9sdCA8ZXJpY0BhbmhvbHQubmV0PgotLS0KIGRyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2F0 b20uYyAgICAgICAgICAgICAgIHwgIDIgKysKIGRyaXZlcnMvZ3B1L2RybS9hc3QvYXN0X2ZiLmMg ICAgICAgICAgICAgICAgICAgIHwgIDIgKysKIGRyaXZlcnMvZ3B1L2RybS9jaXJydXMvY2lycnVz X2ZiZGV2LmMgICAgICAgICAgIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL2RybV9mbGlwX3dvcmsu YyAgICAgICAgICAgICAgICAgfCAgMSArCiBkcml2ZXJzL2dwdS9kcm0vbWdhZzIwMC9tZ2FnMjAw X2ZiLmMgICAgICAgICAgICB8ICAxICsKIGRyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9tZHA1L21k cDVfc21wLmMgICAgICAgIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vb21hcF9mYmRl di5jICAgICAgICAgICAgfCAgMSArCiBkcml2ZXJzL2dwdS9kcm0vcXhsL3F4bF9jbWQuYyAgICAg ICAgICAgICAgICAgICB8ICAyICsrCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL2F0b20uYyAgICAg ICAgICAgICAgICAgICB8ICAyICsrCiBkcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9sZWdh Y3lfZW5jb2RlcnMuYyB8ICAxICsKIGRyaXZlcnMvZ3B1L2RybS92YzQvdmM0X2Rydi5oICAgICAg ICAgICAgICAgICAgIHwgIDEgKwogaW5jbHVkZS9kcm0vZHJtUC5oICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgOCAtLS0tLQogaW5jbHVkZS9kcm0vZHJtX3V0aWwuaCAgICAgICAgICAg ICAgICAgICAgICAgICAgfCA0MiArKysrKysrKysrKysrKysrKysrKysrKystCiAxMyBmaWxlcyBj aGFuZ2VkLCA1NiBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2F0b20uYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2F0b20uYwppbmRleCBlOTkzNGRlMWI5Y2YuLmRkMzBmNGU2MWE4YyAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvYXRvbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9h bWQvYW1kZ3B1L2F0b20uYwpAQCAtMjcsNiArMjcsOCBAQAogI2luY2x1ZGUgPGxpbnV4L3NsYWIu aD4KICNpbmNsdWRlIDxhc20vdW5hbGlnbmVkLmg+CiAKKyNpbmNsdWRlIDxkcm0vZHJtX3V0aWwu aD4KKwogI2RlZmluZSBBVE9NX0RFQlVHCiAKICNpbmNsdWRlICJhdG9tLmgiCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vYXN0L2FzdF9mYi5jIGIvZHJpdmVycy9ncHUvZHJtL2FzdC9hc3Rf ZmIuYwppbmRleCBhODBiY2ExYTg1N2YuLmViNjZiZjdkM2U2MyAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2FzdC9hc3RfZmIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYXN0L2FzdF9mYi5j CkBAIC0zOSw3ICszOSw5IEBACiAjaW5jbHVkZSA8ZHJtL2RybVAuaD4KICNpbmNsdWRlIDxkcm0v ZHJtX2NydGMuaD4KICNpbmNsdWRlIDxkcm0vZHJtX2ZiX2hlbHBlci5oPgorI2luY2x1ZGUgPGRy bS9kcm1fdXRpbC5oPgogI2luY2x1ZGUgPGRybS9kcm1fY3J0Y19oZWxwZXIuaD4KKwogI2luY2x1 ZGUgImFzdF9kcnYuaCIKIAogc3RhdGljIHZvaWQgYXN0X2RpcnR5X3VwZGF0ZShzdHJ1Y3QgYXN0 X2ZiZGV2ICphZmJkZXYsCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vY2lycnVzL2NpcnJ1 c19mYmRldi5jIGIvZHJpdmVycy9ncHUvZHJtL2NpcnJ1cy9jaXJydXNfZmJkZXYuYwppbmRleCA0 ZGQ0OTljN2QxYmEuLjc5ZmVhMWI4YmMxNCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2Np cnJ1cy9jaXJydXNfZmJkZXYuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vY2lycnVzL2NpcnJ1c19m YmRldi5jCkBAIC0xMCw2ICsxMCw3IEBACiAgKi8KICNpbmNsdWRlIDxsaW51eC9tb2R1bGUuaD4K ICNpbmNsdWRlIDxkcm0vZHJtUC5oPgorI2luY2x1ZGUgPGRybS9kcm1fdXRpbC5oPgogI2luY2x1 ZGUgPGRybS9kcm1fZmJfaGVscGVyLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9jcnRjX2hlbHBlci5o PgogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZsaXBfd29yay5jIGIvZHJpdmVy cy9ncHUvZHJtL2RybV9mbGlwX3dvcmsuYwppbmRleCAxMmRlYTE2ZjIyYTguLjNkYTNiZjVhZjQw NSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9mbGlwX3dvcmsuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vZHJtX2ZsaXBfd29yay5jCkBAIC0yMiw2ICsyMiw3IEBACiAgKi8KIAogI2lu Y2x1ZGUgPGRybS9kcm1QLmg+CisjaW5jbHVkZSA8ZHJtL2RybV91dGlsLmg+CiAjaW5jbHVkZSA8 ZHJtL2RybV9mbGlwX3dvcmsuaD4KIAogLyoqCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v bWdhZzIwMC9tZ2FnMjAwX2ZiLmMgYi9kcml2ZXJzL2dwdS9kcm0vbWdhZzIwMC9tZ2FnMjAwX2Zi LmMKaW5kZXggMzA3MjZjOWZlMjhjLi42ODkzOTM0YjI2YzAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9tZ2FnMjAwL21nYWcyMDBfZmIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbWdhZzIw MC9tZ2FnMjAwX2ZiLmMKQEAgLTEyLDYgKzEyLDcgQEAKICAqLwogI2luY2x1ZGUgPGxpbnV4L21v ZHVsZS5oPgogI2luY2x1ZGUgPGRybS9kcm1QLmg+CisjaW5jbHVkZSA8ZHJtL2RybV91dGlsLmg+ CiAjaW5jbHVkZSA8ZHJtL2RybV9mYl9oZWxwZXIuaD4KICNpbmNsdWRlIDxkcm0vZHJtX2NydGNf aGVscGVyLmg+CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9tZHA1L21k cDVfc21wLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvbWRwNS9tZHA1X3NtcC5jCmluZGV4 IDk2YzJiODI4ZGJhNC4uZmEyZDFkODk5NWVlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v bXNtL2Rpc3AvbWRwNS9tZHA1X3NtcC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9t ZHA1L21kcDVfc21wLmMKQEAgLTE2LDYgKzE2LDcgQEAKICAqIHRoaXMgcHJvZ3JhbS4gIElmIG5v dCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KICAqLwogCisjaW5jbHVkZSA8 ZHJtL2RybV91dGlsLmg+CiAKICNpbmNsdWRlICJtZHA1X2ttcy5oIgogI2luY2x1ZGUgIm1kcDVf c21wLmgiCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2ZiZGV2LmMg Yi9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2ZiZGV2LmMKaW5kZXggYWVlOTkxOTQ0OTlm Li44NTFjNTlmMDdlYjEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBf ZmJkZXYuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2ZiZGV2LmMKQEAgLTE2 LDYgKzE2LDcgQEAKICAqLwogCiAjaW5jbHVkZSA8ZHJtL2RybV9jcnRjLmg+CisjaW5jbHVkZSA8 ZHJtL2RybV91dGlsLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9mYl9oZWxwZXIuaD4KIAogI2luY2x1 ZGUgIm9tYXBfZHJ2LmgiCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcXhsL3F4bF9jbWQu YyBiL2RyaXZlcnMvZ3B1L2RybS9xeGwvcXhsX2NtZC5jCmluZGV4IGRmZmM1MDkzZmYxNi4uMmUx MDBmNjQ0MjM2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcXhsL3F4bF9jbWQuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vcXhsL3F4bF9jbWQuYwpAQCAtMjUsNiArMjUsOCBAQAogCiAvKiBR WEwgY21kL3JpbmcgaGFuZGxpbmcgKi8KIAorI2luY2x1ZGUgPGRybS9kcm1fdXRpbC5oPgorCiAj aW5jbHVkZSAicXhsX2Rydi5oIgogI2luY2x1ZGUgInF4bF9vYmplY3QuaCIKIApkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9hdG9tLmMgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9u L2F0b20uYwppbmRleCBlNTVjYmVlZTdhNTMuLmFjOThhZDU2MTg3MCAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL3JhZGVvbi9hdG9tLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9h dG9tLmMKQEAgLTI3LDYgKzI3LDggQEAKICNpbmNsdWRlIDxsaW51eC9zbGFiLmg+CiAjaW5jbHVk ZSA8YXNtL3VuYWxpZ25lZC5oPgogCisjaW5jbHVkZSA8ZHJtL2RybV91dGlsLmg+CisKICNkZWZp bmUgQVRPTV9ERUJVRwogCiAjaW5jbHVkZSAiYXRvbS5oIgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL3JhZGVvbi9yYWRlb25fbGVnYWN5X2VuY29kZXJzLmMgYi9kcml2ZXJzL2dwdS9kcm0v cmFkZW9uL3JhZGVvbl9sZWdhY3lfZW5jb2RlcnMuYwppbmRleCAyMjJhMWZhNDFkN2MuLjdlMzI1 N2U4ZmQ1NiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fbGVnYWN5 X2VuY29kZXJzLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fbGVnYWN5X2Vu Y29kZXJzLmMKQEAgLTI0LDYgKzI0LDcgQEAKICAqICAgICAgICAgIEFsZXggRGV1Y2hlcgogICov CiAjaW5jbHVkZSA8ZHJtL2RybVAuaD4KKyNpbmNsdWRlIDxkcm0vZHJtX3V0aWwuaD4KICNpbmNs dWRlIDxkcm0vZHJtX2NydGNfaGVscGVyLmg+CiAjaW5jbHVkZSA8ZHJtL3JhZGVvbl9kcm0uaD4K ICNpbmNsdWRlICJyYWRlb24uaCIKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92YzQvdmM0 X2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfZHJ2LmgKaW5kZXggYzI0YjA3OGYwNTkz Li4yYzYzNWYwMDFjNzEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS92YzQvdmM0X2Rydi5o CisrKyBiL2RyaXZlcnMvZ3B1L2RybS92YzQvdmM0X2Rydi5oCkBAIC05LDYgKzksNyBAQAogI2lu Y2x1ZGUgPGxpbnV4L21tX3R5cGVzLmg+CiAjaW5jbHVkZSA8bGludXgvcmVzZXJ2YXRpb24uaD4K ICNpbmNsdWRlIDxkcm0vZHJtUC5oPgorI2luY2x1ZGUgPGRybS9kcm1fdXRpbC5oPgogI2luY2x1 ZGUgPGRybS9kcm1fZW5jb2Rlci5oPgogI2luY2x1ZGUgPGRybS9kcm1fZ2VtX2NtYV9oZWxwZXIu aD4KICNpbmNsdWRlIDxkcm0vZHJtX2F0b21pYy5oPgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0v ZHJtUC5oIGIvaW5jbHVkZS9kcm0vZHJtUC5oCmluZGV4IDllNDdjOGRjNmI4Ny4uYmM0Y2IzNzMy NDA3IDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1QLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJt UC5oCkBAIC05NCwxNCArOTQsNiBAQCBzdHJ1Y3QgZG1hX2J1Zl9hdHRhY2htZW50Owogc3RydWN0 IHBjaV9kZXY7CiBzdHJ1Y3QgcGNpX2NvbnRyb2xsZXI7CiAKLS8qIHJldHVybnMgdHJ1ZSBpZiBj dXJyZW50bHkgb2theSB0byBzbGVlcCAqLwotc3RhdGljIGlubGluZSBib29sIGRybV9jYW5fc2xl ZXAodm9pZCkKLXsKLQlpZiAoaW5fYXRvbWljKCkgfHwgaW5fZGJnX21hc3RlcigpIHx8IGlycXNf ZGlzYWJsZWQoKSkKLQkJcmV0dXJuIGZhbHNlOwotCXJldHVybiB0cnVlOwotfQotCiAjaWYgZGVm aW5lZChDT05GSUdfRFJNX0RFQlVHX1NFTEZURVNUX01PRFVMRSkKICNkZWZpbmUgRVhQT1JUX1NZ TUJPTF9GT1JfVEVTVFNfT05MWSh4KSBFWFBPUlRfU1lNQk9MKHgpCiAjZWxzZQpkaWZmIC0tZ2l0 IGEvaW5jbHVkZS9kcm0vZHJtX3V0aWwuaCBiL2luY2x1ZGUvZHJtL2RybV91dGlsLmgKaW5kZXgg ODhhYmRjYTg5YmFhLi44ZmRhNTc3NzQ3MWMgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV91 dGlsLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX3V0aWwuaApAQCAtMjYsNyArMjYsNDcgQEAKICNp Zm5kZWYgX0RSTV9VVElMX0hfCiAjZGVmaW5lIF9EUk1fVVRJTF9IXwogCi0vKiBoZWxwZXIgZm9y IGhhbmRsaW5nIGNvbmRpdGlvbmFscyBpbiB2YXJpb3VzIGZvcl9lYWNoIG1hY3JvcyAqLworLyoq CisgKiBET0M6IGRybSB1dGlscworICoKKyAqIE1hY3JvcyBhbmQgaW5saW5lIGZ1bmN0aW9ucyB0 aGF0IGRvZXMgbm90IG5hdHVyYWxseSBiZWxvbmcgaW4gb3RoZXIgcGxhY2VzCisgKi8KKworI2lu Y2x1ZGUgPGxpbnV4L2lycWZsYWdzLmg+CisjaW5jbHVkZSA8bGludXgvcHJlZW1wdC5oPgorI2lu Y2x1ZGUgPGxpbnV4L2tnZGIuaD4KKyNpbmNsdWRlIDxsaW51eC9zbXAuaD4KKworLyoqCisgKiBm b3JfZWFjaF9pZiAtIGhlbHBlciBmb3IgaGFuZGxpbmcgY29uZGl0aW9uYWxzIGluIHZhcmlvdXMg Zm9yX2VhY2ggbWFjcm9zCisgKiBAY29uZGl0aW9uIFRoZSBjb25kaXRpb24gdG8gY2hlY2sKKyAq CisgKiBUeXBpY2FsIHVzZToKKyAqICNkZWZpbmUgZm9yX2VhY2hfZm9vX2Jhcih4LCB5KSBcCisg KglsaXN0X2Zvcl9lYWNoX2VudHJ5KHgsIHktPmxpc3QsIGhlYWQpIFwKKyAqCQlmb3JfZWFjaF9p Zih4LT5zb21ldGhpbmcgPT0gU09NRVRISU5HKQorICoKKyAqIFRoZSBmb3JfZWFjaF9pZigpIG1h Y3JvIG1ha2VzIHRoZSB1c2Ugb2YgZm9yX2VhY2hfZm9vX2JhcigpIGxlc3MgZXJyb3IKKyAqIHBy b25lLgorICovCiAjZGVmaW5lIGZvcl9lYWNoX2lmKGNvbmRpdGlvbikgaWYgKCEoY29uZGl0aW9u KSkge30gZWxzZQogCisvKioKKyAqIGRybV9jYW5fc2xlZXAgLSByZXR1cm5zIHRydWUgaWYgY3Vy cmVudGx5IG9rYXkgdG8gc2xlZXAKKyAqCisgKiBUaGlzIGZ1bmN0aW9uIHNoYWxsIG5vdCBiZSB1 c2VkIGluIG5ldyBjb2RlLgorICogVGhlIGNoZWNrIGZvciBydW5uaW5nIGluIGF0b21pYyBjb250 ZXh0IG1heSBub3Qgd29yayAtIHNlZSBsaW51eC9wcmVlbXB0LmguCisgKgorICogRklYTUU6IEFs bCB1c2VycyBvZiBkcm1fY2FuX3NsZWVwIHNob3VsZCBiZSByZW1vdmVkIChzZWUgdG9kby5yc3Qp CisgKgorICogUmV0dXJuczoKKyAqIFRydWUgaWYga2dkYiBpcyBhY3RpdmUgb3Igd2UgYXJlIGlu IGFuIGF0b21pYyBjb250ZXh0IG9yIGlycXMgYXJlIGRpc2FibGVkCisgKi8KK3N0YXRpYyBpbmxp bmUgYm9vbCBkcm1fY2FuX3NsZWVwKHZvaWQpCit7CisJaWYgKGluX2F0b21pYygpIHx8IGluX2Ri Z19tYXN0ZXIoKSB8fCBpcnFzX2Rpc2FibGVkKCkpCisJCXJldHVybiBmYWxzZTsKKwlyZXR1cm4g dHJ1ZTsKK30KKwogI2VuZGlmCi0tIAoyLjEyLjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxp c3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2RyaS1kZXZlbAo=