From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sam Ravnborg Subject: [PATCH v4 1/8] drm: move drm_can_sleep() to drm_util.h Date: Sat, 12 Jan 2019 20:32:44 +0100 Message-ID: <20190112193251.20450-2-sam@ravnborg.org> References: <20190112193251.20450-1-sam@ravnborg.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-lf1-x143.google.com (mail-lf1-x143.google.com [IPv6:2a00:1450:4864:20::143]) by gabe.freedesktop.org (Postfix) with ESMTPS id 027B06E449 for ; Sat, 12 Jan 2019 19:33:29 +0000 (UTC) Received: by mail-lf1-x143.google.com with SMTP id i26so13124061lfc.0 for ; Sat, 12 Jan 2019 11:33:28 -0800 (PST) In-Reply-To: <20190112193251.20450-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: Alex Deucher , Alexey Brodkin , Andrzej Hajda , Benjamin Gaignard , Chen Feng , Christian Konig , Daniel Vetter , David Airlie , David Zhou , Eric Anholt , Gerd Hoffmann , Kieran Bingham , Laurent Pinchart , Laurent Pinchart , Maarten Lankhorst , Maxime Ripard , Philippe Cornu , Rob Clark , Rongrong Zou , Sean Paul , Tomi Valkeinen , Vincent Abriou Cc: Sam Ravnborg List-Id: dri-devel@lists.freedesktop.org TW92ZSBkcm1fY2FuX3NsZWVwKCkgb3V0IG9mIGRybVAuaCB0byBhbGxvdyB1c2Vycwp0byBnZXQg cmlkIG9mIHRoZSBkcm1QLmggaW5jbHVkZS4KClRoZXJlIHdhcyBubyBoZWFkZXIgZmlsZSB0aGF0 IHdhcyBhIGdvb2QgbWF0Y2ggZm9yIHRoaXMgaGVscGVyIGZ1bmN0aW9uLgpTbyBhZGQgdGhpcyB0 byBkcm1fdXRpbCB3aXRoIHRoZSByZWxldmFudCBpbmNsdWRlcy4KCkFkZCBpbmNsdWRlIG9mIGRy bV91dGlsLmggdG8gYWxsIHVzZXJzLgoKdjI6Ci0gVXBkYXRlIGNvbW1lbnRzIHRvIHVzZSBrZXJu ZWwtZG9jIHN0eWxlIChEYW5pZWwpCi0gQWRkIEZJWE1FIHRvIGRybV9jYW5fc2xlZXAgYW5kIGFk ZCBub3RlIHRoYXQgdGhpcwogIGZ1bmN0aW9uIHNob3VsZCBub3QgYmUgdXNlZCBpbiBuZXcgY29k ZSAoRGFuaWVsKQoKdjM6Ci0gRml4IGtlcm5lbC1kb2Mgc3ludGF4IChEYW5pZWwpCi0gUGx1ZyBk cm1fdXRpbC5oIGludG8gZHJtLWludGVybmVscy5yc3QgKERhbmllbCkKClNpZ25lZC1vZmYtYnk6 IFNhbSBSYXZuYm9yZyA8c2FtQHJhdm5ib3JnLm9yZz4KQ2M6IE1hYXJ0ZW4gTGFua2hvcnN0IDxt YWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+CkNjOiBNYXhpbWUgUmlwYXJkIDxtYXhp bWUucmlwYXJkQGJvb3RsaW4uY29tPgpDYzogU2VhbiBQYXVsIDxzZWFuQHBvb3JseS5ydW4+CkNj OiBEYXZpZCBBaXJsaWUgPGFpcmxpZWRAbGludXguaWU+CkNjOiBEYW5pZWwgVmV0dGVyIDxkYW5p ZWxAZmZ3bGwuY2g+CkNjOiBBbGV4IERldWNoZXIgPGFsZXhhbmRlci5kZXVjaGVyQGFtZC5jb20+ CkNjOiAiQ2hyaXN0aWFuIEvDtm5pZyIgPGNocmlzdGlhbi5rb2VuaWdAYW1kLmNvbT4KQ2M6ICJE YXZpZCAoQ2h1bk1pbmcpIFpob3UiIDxEYXZpZDEuWmhvdUBhbWQuY29tPgpDYzogR2VyZCBIb2Zm bWFubiA8a3JheGVsQHJlZGhhdC5jb20+CkNjOiBSb2IgQ2xhcmsgPHJvYmRjbGFya0BnbWFpbC5j b20+CkNjOiBUb21pIFZhbGtlaW5lbiA8dG9taS52YWxrZWluZW5AdGkuY29tPgpDYzogRXJpYyBB bmhvbHQgPGVyaWNAYW5ob2x0Lm5ldD4KLS0tCiBEb2N1bWVudGF0aW9uL2dwdS9kcm0taW50ZXJu YWxzLnJzdCAgICAgICAgICAgICB8ICA5ICsrKysrKwogZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRn cHUvYXRvbS5jICAgICAgICAgICAgICAgfCAgMiArKwogZHJpdmVycy9ncHUvZHJtL2FzdC9hc3Rf ZmIuYyAgICAgICAgICAgICAgICAgICAgfCAgMiArKwogZHJpdmVycy9ncHUvZHJtL2NpcnJ1cy9j aXJydXNfZmJkZXYuYyAgICAgICAgICAgfCAgMSArCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2ZsaXBf d29yay5jICAgICAgICAgICAgICAgICB8ICAxICsKIGRyaXZlcnMvZ3B1L2RybS9tZ2FnMjAwL21n YWcyMDBfZmIuYyAgICAgICAgICAgIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL21k cDUvbWRwNV9zbXAuYyAgICAgICAgfCAgMSArCiBkcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFw X2ZiZGV2LmMgICAgICAgICAgICB8ICAxICsKIGRyaXZlcnMvZ3B1L2RybS9xeGwvcXhsX2NtZC5j ICAgICAgICAgICAgICAgICAgIHwgIDIgKysKIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vYXRvbS5j ICAgICAgICAgICAgICAgICAgIHwgIDIgKysKIGRyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9u X2xlZ2FjeV9lbmNvZGVycy5jIHwgIDEgKwogZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfZHJ2Lmgg ICAgICAgICAgICAgICAgICAgfCAgMSArCiBpbmNsdWRlL2RybS9kcm1QLmggICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB8ICA4IC0tLS0tCiBpbmNsdWRlL2RybS9kcm1fdXRpbC5oICAgICAg ICAgICAgICAgICAgICAgICAgICB8IDQzICsrKysrKysrKysrKysrKysrKysrKysrKy0KIDE0IGZp bGVzIGNoYW5nZWQsIDY2IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvRG9jdW1lbnRhdGlvbi9ncHUvZHJtLWludGVybmFscy5yc3QgYi9Eb2N1bWVudGF0aW9uL2dw dS9kcm0taW50ZXJuYWxzLnJzdAppbmRleCA5MDkwZmFiZjNmN2EuLjJjYWYyMWVmZmQyOCAxMDA2 NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9ncHUvZHJtLWludGVybmFscy5yc3QKKysrIGIvRG9jdW1l bnRhdGlvbi9ncHUvZHJtLWludGVybmFscy5yc3QKQEAgLTIzMyw2ICsyMzMsMTUgQEAgUHJpbnRl cgogLi4ga2VybmVsLWRvYzo6IGRyaXZlcnMvZ3B1L2RybS9kcm1fcHJpbnQuYwogICAgOmV4cG9y dDoKIAorVXRpbGl0aWVzCistLS0tLS0tLS0KKworLi4ga2VybmVsLWRvYzo6IGluY2x1ZGUvZHJt L2RybV91dGlsLmgKKyAgIDpkb2M6IGRybSB1dGlscworCisuLiBrZXJuZWwtZG9jOjogaW5jbHVk ZS9kcm0vZHJtX3V0aWwuaAorICAgOmludGVybmFsOgorCiAKIExlZ2FjeSBTdXBwb3J0IENvZGUK ID09PT09PT09PT09PT09PT09PT0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1k Z3B1L2F0b20uYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2F0b20uYwppbmRleCBlOTkz NGRlMWI5Y2YuLmRkMzBmNGU2MWE4YyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvYXRvbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2F0b20uYwpAQCAt MjcsNiArMjcsOCBAQAogI2luY2x1ZGUgPGxpbnV4L3NsYWIuaD4KICNpbmNsdWRlIDxhc20vdW5h bGlnbmVkLmg+CiAKKyNpbmNsdWRlIDxkcm0vZHJtX3V0aWwuaD4KKwogI2RlZmluZSBBVE9NX0RF QlVHCiAKICNpbmNsdWRlICJhdG9tLmgiCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYXN0 L2FzdF9mYi5jIGIvZHJpdmVycy9ncHUvZHJtL2FzdC9hc3RfZmIuYwppbmRleCA3NWY4NjdkMDAw MzEuLjJjOWY4ZGQ5NzMzYSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FzdC9hc3RfZmIu YworKysgYi9kcml2ZXJzL2dwdS9kcm0vYXN0L2FzdF9mYi5jCkBAIC0zOSw3ICszOSw5IEBACiAj aW5jbHVkZSA8ZHJtL2RybVAuaD4KICNpbmNsdWRlIDxkcm0vZHJtX2NydGMuaD4KICNpbmNsdWRl IDxkcm0vZHJtX2ZiX2hlbHBlci5oPgorI2luY2x1ZGUgPGRybS9kcm1fdXRpbC5oPgogI2luY2x1 ZGUgPGRybS9kcm1fY3J0Y19oZWxwZXIuaD4KKwogI2luY2x1ZGUgImFzdF9kcnYuaCIKIAogc3Rh dGljIHZvaWQgYXN0X2RpcnR5X3VwZGF0ZShzdHJ1Y3QgYXN0X2ZiZGV2ICphZmJkZXYsCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vY2lycnVzL2NpcnJ1c19mYmRldi5jIGIvZHJpdmVycy9n cHUvZHJtL2NpcnJ1cy9jaXJydXNfZmJkZXYuYwppbmRleCA0ZGQ0OTljN2QxYmEuLjc5ZmVhMWI4 YmMxNCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2NpcnJ1cy9jaXJydXNfZmJkZXYuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vY2lycnVzL2NpcnJ1c19mYmRldi5jCkBAIC0xMCw2ICsxMCw3 IEBACiAgKi8KICNpbmNsdWRlIDxsaW51eC9tb2R1bGUuaD4KICNpbmNsdWRlIDxkcm0vZHJtUC5o PgorI2luY2x1ZGUgPGRybS9kcm1fdXRpbC5oPgogI2luY2x1ZGUgPGRybS9kcm1fZmJfaGVscGVy Lmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9jcnRjX2hlbHBlci5oPgogCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vZHJtX2ZsaXBfd29yay5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9mbGlwX3dv cmsuYwppbmRleCAxMmRlYTE2ZjIyYTguLjNkYTNiZjVhZjQwNSAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2RybV9mbGlwX3dvcmsuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZsaXBf d29yay5jCkBAIC0yMiw2ICsyMiw3IEBACiAgKi8KIAogI2luY2x1ZGUgPGRybS9kcm1QLmg+Cisj aW5jbHVkZSA8ZHJtL2RybV91dGlsLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9mbGlwX3dvcmsuaD4K IAogLyoqCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbWdhZzIwMC9tZ2FnMjAwX2ZiLmMg Yi9kcml2ZXJzL2dwdS9kcm0vbWdhZzIwMC9tZ2FnMjAwX2ZiLmMKaW5kZXggMzA3MjZjOWZlMjhj Li42ODkzOTM0YjI2YzAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tZ2FnMjAwL21nYWcy MDBfZmIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbWdhZzIwMC9tZ2FnMjAwX2ZiLmMKQEAgLTEy LDYgKzEyLDcgQEAKICAqLwogI2luY2x1ZGUgPGxpbnV4L21vZHVsZS5oPgogI2luY2x1ZGUgPGRy bS9kcm1QLmg+CisjaW5jbHVkZSA8ZHJtL2RybV91dGlsLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9m Yl9oZWxwZXIuaD4KICNpbmNsdWRlIDxkcm0vZHJtX2NydGNfaGVscGVyLmg+CiAKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9tZHA1L21kcDVfc21wLmMgYi9kcml2ZXJzL2dw dS9kcm0vbXNtL2Rpc3AvbWRwNS9tZHA1X3NtcC5jCmluZGV4IDdjZWJjYjJiM2EzNy4uNjE1MzUx NGRiMDRjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvbWRwNS9tZHA1X3Nt cC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9tZHA1L21kcDVfc21wLmMKQEAgLTE2 LDYgKzE2LDcgQEAKICAqIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3Lmdu dS5vcmcvbGljZW5zZXMvPi4KICAqLwogCisjaW5jbHVkZSA8ZHJtL2RybV91dGlsLmg+CiAKICNp bmNsdWRlICJtZHA1X2ttcy5oIgogI2luY2x1ZGUgIm1kcDVfc21wLmgiCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2ZiZGV2LmMgYi9kcml2ZXJzL2dwdS9kcm0vb21h cGRybS9vbWFwX2ZiZGV2LmMKaW5kZXggYWVlOTkxOTQ0OTlmLi44NTFjNTlmMDdlYjEgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBfZmJkZXYuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vb21hcGRybS9vbWFwX2ZiZGV2LmMKQEAgLTE2LDYgKzE2LDcgQEAKICAqLwogCiAj aW5jbHVkZSA8ZHJtL2RybV9jcnRjLmg+CisjaW5jbHVkZSA8ZHJtL2RybV91dGlsLmg+CiAjaW5j bHVkZSA8ZHJtL2RybV9mYl9oZWxwZXIuaD4KIAogI2luY2x1ZGUgIm9tYXBfZHJ2LmgiCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcXhsL3F4bF9jbWQuYyBiL2RyaXZlcnMvZ3B1L2RybS9x eGwvcXhsX2NtZC5jCmluZGV4IGRmZmM1MDkzZmYxNi4uMmUxMDBmNjQ0MjM2IDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vcXhsL3F4bF9jbWQuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcXhs L3F4bF9jbWQuYwpAQCAtMjUsNiArMjUsOCBAQAogCiAvKiBRWEwgY21kL3JpbmcgaGFuZGxpbmcg Ki8KIAorI2luY2x1ZGUgPGRybS9kcm1fdXRpbC5oPgorCiAjaW5jbHVkZSAicXhsX2Rydi5oIgog I2luY2x1ZGUgInF4bF9vYmplY3QuaCIKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3Jh ZGVvbi9hdG9tLmMgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL2F0b20uYwppbmRleCBlNTVjYmVl ZTdhNTMuLmFjOThhZDU2MTg3MCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9h dG9tLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9hdG9tLmMKQEAgLTI3LDYgKzI3LDgg QEAKICNpbmNsdWRlIDxsaW51eC9zbGFiLmg+CiAjaW5jbHVkZSA8YXNtL3VuYWxpZ25lZC5oPgog CisjaW5jbHVkZSA8ZHJtL2RybV91dGlsLmg+CisKICNkZWZpbmUgQVRPTV9ERUJVRwogCiAjaW5j bHVkZSAiYXRvbS5oIgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25f bGVnYWN5X2VuY29kZXJzLmMgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9sZWdhY3lf ZW5jb2RlcnMuYwppbmRleCAyMjJhMWZhNDFkN2MuLjdlMzI1N2U4ZmQ1NiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fbGVnYWN5X2VuY29kZXJzLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fbGVnYWN5X2VuY29kZXJzLmMKQEAgLTI0LDYgKzI0 LDcgQEAKICAqICAgICAgICAgIEFsZXggRGV1Y2hlcgogICovCiAjaW5jbHVkZSA8ZHJtL2RybVAu aD4KKyNpbmNsdWRlIDxkcm0vZHJtX3V0aWwuaD4KICNpbmNsdWRlIDxkcm0vZHJtX2NydGNfaGVs cGVyLmg+CiAjaW5jbHVkZSA8ZHJtL3JhZGVvbl9kcm0uaD4KICNpbmNsdWRlICJyYWRlb24uaCIK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92YzQvdmM0X2Rydi5oIGIvZHJpdmVycy9ncHUv ZHJtL3ZjNC92YzRfZHJ2LmgKaW5kZXggYzI0YjA3OGYwNTkzLi4yYzYzNWYwMDFjNzEgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS92YzQvdmM0X2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS92YzQvdmM0X2Rydi5oCkBAIC05LDYgKzksNyBAQAogI2luY2x1ZGUgPGxpbnV4L21tX3R5cGVz Lmg+CiAjaW5jbHVkZSA8bGludXgvcmVzZXJ2YXRpb24uaD4KICNpbmNsdWRlIDxkcm0vZHJtUC5o PgorI2luY2x1ZGUgPGRybS9kcm1fdXRpbC5oPgogI2luY2x1ZGUgPGRybS9kcm1fZW5jb2Rlci5o PgogI2luY2x1ZGUgPGRybS9kcm1fZ2VtX2NtYV9oZWxwZXIuaD4KICNpbmNsdWRlIDxkcm0vZHJt X2F0b21pYy5oPgpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtUC5oIGIvaW5jbHVkZS9kcm0v ZHJtUC5oCmluZGV4IDllNDdjOGRjNmI4Ny4uYmM0Y2IzNzMyNDA3IDEwMDY0NAotLS0gYS9pbmNs dWRlL2RybS9kcm1QLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtUC5oCkBAIC05NCwxNCArOTQsNiBA QCBzdHJ1Y3QgZG1hX2J1Zl9hdHRhY2htZW50Owogc3RydWN0IHBjaV9kZXY7CiBzdHJ1Y3QgcGNp X2NvbnRyb2xsZXI7CiAKLS8qIHJldHVybnMgdHJ1ZSBpZiBjdXJyZW50bHkgb2theSB0byBzbGVl cCAqLwotc3RhdGljIGlubGluZSBib29sIGRybV9jYW5fc2xlZXAodm9pZCkKLXsKLQlpZiAoaW5f YXRvbWljKCkgfHwgaW5fZGJnX21hc3RlcigpIHx8IGlycXNfZGlzYWJsZWQoKSkKLQkJcmV0dXJu IGZhbHNlOwotCXJldHVybiB0cnVlOwotfQotCiAjaWYgZGVmaW5lZChDT05GSUdfRFJNX0RFQlVH X1NFTEZURVNUX01PRFVMRSkKICNkZWZpbmUgRVhQT1JUX1NZTUJPTF9GT1JfVEVTVFNfT05MWSh4 KSBFWFBPUlRfU1lNQk9MKHgpCiAjZWxzZQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX3V0 aWwuaCBiL2luY2x1ZGUvZHJtL2RybV91dGlsLmgKaW5kZXggODhhYmRjYTg5YmFhLi5mNzc2YTU1 ZTU1MDggMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV91dGlsLmgKKysrIGIvaW5jbHVkZS9k cm0vZHJtX3V0aWwuaApAQCAtMjYsNyArMjYsNDggQEAKICNpZm5kZWYgX0RSTV9VVElMX0hfCiAj ZGVmaW5lIF9EUk1fVVRJTF9IXwogCi0vKiBoZWxwZXIgZm9yIGhhbmRsaW5nIGNvbmRpdGlvbmFs cyBpbiB2YXJpb3VzIGZvcl9lYWNoIG1hY3JvcyAqLworLyoqCisgKiBET0M6IGRybSB1dGlscwor ICoKKyAqIE1hY3JvcyBhbmQgaW5saW5lIGZ1bmN0aW9ucyB0aGF0IGRvZXMgbm90IG5hdHVyYWxs eSBiZWxvbmcgaW4gb3RoZXIgcGxhY2VzCisgKi8KKworI2luY2x1ZGUgPGxpbnV4L2lycWZsYWdz Lmg+CisjaW5jbHVkZSA8bGludXgvcHJlZW1wdC5oPgorI2luY2x1ZGUgPGxpbnV4L2tnZGIuaD4K KyNpbmNsdWRlIDxsaW51eC9zbXAuaD4KKworLyoqCisgKiBmb3JfZWFjaF9pZiAtIGhlbHBlciBm b3IgaGFuZGxpbmcgY29uZGl0aW9uYWxzIGluIHZhcmlvdXMgZm9yX2VhY2ggbWFjcm9zCisgKiBA Y29uZGl0aW9uOiBUaGUgY29uZGl0aW9uIHRvIGNoZWNrCisgKgorICogVHlwaWNhbCB1c2U6Ogor ICoKKyAqCSNkZWZpbmUgZm9yX2VhY2hfZm9vX2Jhcih4LCB5KSBcJworICoJCWxpc3RfZm9yX2Vh Y2hfZW50cnkoeCwgeS0+bGlzdCwgaGVhZCkgXCcKKyAqCQkJZm9yX2VhY2hfaWYoeC0+c29tZXRo aW5nID09IFNPTUVUSElORykKKyAqCisgKiBUaGUgZm9yX2VhY2hfaWYoKSBtYWNybyBtYWtlcyB0 aGUgdXNlIG9mIGZvcl9lYWNoX2Zvb19iYXIoKSBsZXNzIGVycm9yCisgKiBwcm9uZS4KKyAqLwog I2RlZmluZSBmb3JfZWFjaF9pZihjb25kaXRpb24pIGlmICghKGNvbmRpdGlvbikpIHt9IGVsc2UK IAorLyoqCisgKiBkcm1fY2FuX3NsZWVwIC0gcmV0dXJucyB0cnVlIGlmIGN1cnJlbnRseSBva2F5 IHRvIHNsZWVwCisgKgorICogVGhpcyBmdW5jdGlvbiBzaGFsbCBub3QgYmUgdXNlZCBpbiBuZXcg Y29kZS4KKyAqIFRoZSBjaGVjayBmb3IgcnVubmluZyBpbiBhdG9taWMgY29udGV4dCBtYXkgbm90 IHdvcmsgLSBzZWUgbGludXgvcHJlZW1wdC5oLgorICoKKyAqIEZJWE1FOiBBbGwgdXNlcnMgb2Yg ZHJtX2Nhbl9zbGVlcCBzaG91bGQgYmUgcmVtb3ZlZCAoc2VlIHRvZG8ucnN0KQorICoKKyAqIFJl dHVybnM6CisgKiBUcnVlIGlmIGtnZGIgaXMgYWN0aXZlIG9yIHdlIGFyZSBpbiBhbiBhdG9taWMg Y29udGV4dCBvciBpcnFzIGFyZSBkaXNhYmxlZAorICovCitzdGF0aWMgaW5saW5lIGJvb2wgZHJt X2Nhbl9zbGVlcCh2b2lkKQoreworCWlmIChpbl9hdG9taWMoKSB8fCBpbl9kYmdfbWFzdGVyKCkg fHwgaXJxc19kaXNhYmxlZCgpKQorCQlyZXR1cm4gZmFsc2U7CisJcmV0dXJuIHRydWU7Cit9CisK ICNlbmRpZgotLSAKMi4xMi4wCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9k cmktZGV2ZWwK