From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gustavo Padovan Subject: [RFC 29/29] dma-buf/fence: de-stage sync framework Date: Fri, 15 Jan 2016 12:55:39 -0200 Message-ID: <1452869739-3304-30-git-send-email-gustavo@padovan.org> References: <1452869739-3304-1-git-send-email-gustavo@padovan.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-yk0-f176.google.com (mail-yk0-f176.google.com [209.85.160.176]) by gabe.freedesktop.org (Postfix) with ESMTPS id BD8957A101 for ; Fri, 15 Jan 2016 06:57:35 -0800 (PST) Received: by mail-yk0-f176.google.com with SMTP id x67so546644256ykd.2 for ; Fri, 15 Jan 2016 06:57:35 -0800 (PST) In-Reply-To: <1452869739-3304-1-git-send-email-gustavo@padovan.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Greg Kroah-Hartman Cc: devel@driverdev.osuosl.org, daniels@collabora.com, Daniel Vetter , Riley Andrews , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, =?UTF-8?q?Arve=20Hj=C3=B8nnev=C3=A5g?= , Maarten Lankhorst , Gustavo Padovan , John Harrison List-Id: dri-devel@lists.freedesktop.org RnJvbTogR3VzdGF2byBQYWRvdmFuIDxndXN0YXZvLnBhZG92YW5AY29sbGFib3JhLmNvLnVrPgoK VGhlIHN5bmMgZnJhbWV3b3JrIGlzIHJlYWR5IGZvciBtYWlubGluZSBpbmNsdXNpb24uIEhlcmUg d2UgbW92ZSBpdCB0bwpkcml2ZXJzL2RtYS1idWYgYW5kIHRoZSBoZWFkZXIgZmlsZXMgdG8gdGhl IGFwcHJvcGlhdGVkIHBsYWNlcy4KClRoZSBzeW5jIGZyYW1ld29yayBjb250YWluZWQgc29tZSBh YnN0cmFjdGlvbnMgYXJvdW5kIHN0cnVjdCBmZW5jZSBhbmQgdGhvc2UKd2VyZSByZW1vdmVkIGlu IHRoZSBkZS1zdGFnaW5nIHByb2Nlc3MgYW1vbmcgb3RoZXIgY2hhbmdlczoKClVzZXJzcGFjZSB2 aXNpYmxlIGNoYW5nZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKICogVGhlIHN3X3N5bmMg ZmlsZSB3YXMgbW92ZWQgZnJvbSAvZGV2L3N3X3N5bmMgdG8gPGRlYnVnZnM+L3N5bmMvc3dfc3lu Yy4gTm8KICBvdGhlciBjaGFuZ2UuCgpLZXJuZWwgQVBJIGNoYW5nZXMKLS0tLS0tLS0tLS0tLS0t LS0tCgogKiBzdHJ1Y3Qgc3luY190aW1lbGluZSBpcyBub3cgc3RydWN0IGZlbmNlX3RpbWVsaW5l CiAqIHN5bmNfdGltZWxpbmVfb3BzIGlzIG5vdyBmZW5jZV90aW1lbGluZV9vcHMgYW5kIHRoZXkg bm93IGNhcnJ5IHN0cnVjdAogZmVuY2UgYXMgcGFyYW1ldGVyIGluc3RlYWQgb2Ygc3RydWN0IHN5 bmNfcHQKICogYSAuY2xlYW51cCgpIGZlbmNlIG9wIHdhcyBhZGRlZCB0byBhbGxvdyBzeW5jX2Zl bmNlIHRvIHJ1biBhIGNsZWFudXAgd2hlbgogdGhlIGZlbmNlX3RpbWVsaW5lIGlzIGRlc3Ryb3ll ZAogKiBhZGRlZCBmZW5jZV9hZGRfdXNlZF9kYXRhKCkgdG8gcGFzcyBhIHByaXZhdGUgcG9pbnQg dG8gc3RydWN0IGZlbmNlLgogVGhpcyBwb2ludGVyIGlzIHNlbnQgYmFjayBvbiB0aGUgLmNsZWFu dXAgb3AuCiAqIFRoZSBzeW5jIHRpbWVsaW5lIGZ1bmN0aW9uIHdlcmUgbW92ZWQgdG8gYmUgZmVu Y2VfdGltZWxpbmUgZnVuY3Rpb25zOgogICAgICAgICAtIHN5bmNfdGltZWxpbmVfY3JlYXRlKCkg ICAgICAgLT4gZmVuY2VfdGltZWxpbmVfY3JlYXRlKCkKICAgICAgICAgLSBzeW5jX3RpbWVsaW5l X2dldCgpICAgICAgICAgIC0+IGZlbmNlX3RpbWVsaW5lX2dldCgpCiAgICAgICAgIC0gc3luY190 aW1lbGluZV9wdXQoKSAgICAgICAgICAtPiBmZW5jZV90aW1lbGluZV9wdXQoKQogICAgICAgICAt IHN5bmNfdGltZWxpbmVfZGVzdHJveSgpICAgICAgLT4gZmVuY2VfdGltZWxpbmVfZGVzdHJveSgp CiAgICAgICAgIC0gc3luY190aW1lbGluZV9zaWduYWwoKSAgICAgICAtPiBmZW5jZV90aW1lbGlu ZV9zaWduYWwoKQoKICAqIHN5bmNfcHRfY3JlYXRlKCkgd2FzIHJlcGxhY2VkIGJlIGZlbmNlX2Ny ZWF0ZV9vbl90aW1lbGluZSgpCgpJbnRlcm5hbCBjaGFuZ2VzCi0tLS0tLS0tLS0tLS0tLS0KCiAq IGZlbmNlX3RpbWVsaW5lX29wcyB3YXMgcmVtb3ZlZCBpbiBmYXZvciBvZiBkaXJlY3QgdXNlIGZl bmNlX29wcwogKiBmZW5jZSBkZWZhdWx0IGZ1bmN0aW9ucyB3ZXJlIGNyZWF0ZWQgZm9yIGZlbmNl X29wcwogKiByZW1vdmVkIHN0cnVjdHMgc3luY19wdCwgc3dfc3luY190aW1lbGluZSBhbmQgc3df c3luY19wdAoKU2lnbmVkLW9mZi1ieTogR3VzdGF2byBQYWRvdmFuIDxndXN0YXZvLnBhZG92YW5A Y29sbGFib3JhLmNvLnVrPgotLS0KIGRyaXZlcnMvS2NvbmZpZyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDIgKysKIGRyaXZlcnMvZG1hLWJ1Zi9LY29uZmlnICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwgMjIgKysrKysrKysrKysrKysrKysrKysrKwogZHJpdmVycy9k bWEtYnVmL01ha2VmaWxlICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMiArKwogZHJpdmVy cy97c3RhZ2luZy9hbmRyb2lkID0+IGRtYS1idWZ9L3N3X3N5bmMuYyAgICAgfCAgMyArLS0KIGRy aXZlcnMve3N0YWdpbmcvYW5kcm9pZCA9PiBkbWEtYnVmfS9zeW5jLmMgICAgICAgIHwgIDcgKysr Ky0tLQogZHJpdmVycy97c3RhZ2luZy9hbmRyb2lkID0+IGRtYS1idWZ9L3N5bmNfZGVidWcuYyAg fCAgMiArLQogZHJpdmVycy9zdGFnaW5nL2FuZHJvaWQvS2NvbmZpZyAgICAgICAgICAgICAgICAg ICAgfCAxOSAtLS0tLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL3N0YWdpbmcvYW5kcm9pZC9NYWtl ZmlsZSAgICAgICAgICAgICAgICAgICB8ICAyIC0tCiAuLi4vc3RhZ2luZy9hbmRyb2lkID0+IGlu Y2x1ZGUvbGludXh9L3N3X3N5bmMuaCAgICB8ICA0ICsrLS0KIHtkcml2ZXJzL3N0YWdpbmcvYW5k cm9pZCA9PiBpbmNsdWRlL2xpbnV4fS9zeW5jLmggIHwgIDQgKystLQogLi4uL2FuZHJvaWQvdHJh Y2UgPT4gaW5jbHVkZS90cmFjZS9ldmVudHN9L3N5bmMuaCAgfCAgNSArKy0tLQogLi4uL2FuZHJv aWQvdWFwaSA9PiBpbmNsdWRlL3VhcGkvbGludXh9L3N3X3N5bmMuaCAgfCAgMAogLi4uL2FuZHJv aWQvdWFwaSA9PiBpbmNsdWRlL3VhcGkvbGludXh9L3N5bmMuaCAgICAgfCAgMAogMTMgZmlsZXMg Y2hhbmdlZCwgMzggaW5zZXJ0aW9ucygrKSwgMzQgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAx MDA2NDQgZHJpdmVycy9kbWEtYnVmL0tjb25maWcKIHJlbmFtZSBkcml2ZXJzL3tzdGFnaW5nL2Fu ZHJvaWQgPT4gZG1hLWJ1Zn0vc3dfc3luYy5jICg5OCUpCiByZW5hbWUgZHJpdmVycy97c3RhZ2lu Zy9hbmRyb2lkID0+IGRtYS1idWZ9L3N5bmMuYyAoOTklKQogcmVuYW1lIGRyaXZlcnMve3N0YWdp bmcvYW5kcm9pZCA9PiBkbWEtYnVmfS9zeW5jX2RlYnVnLmMgKDk5JSkKIHJlbmFtZSB7ZHJpdmVy cy9zdGFnaW5nL2FuZHJvaWQgPT4gaW5jbHVkZS9saW51eH0vc3dfc3luYy5oICg5NSUpCiByZW5h bWUge2RyaXZlcnMvc3RhZ2luZy9hbmRyb2lkID0+IGluY2x1ZGUvbGludXh9L3N5bmMuaCAoOTkl KQogcmVuYW1lIHtkcml2ZXJzL3N0YWdpbmcvYW5kcm9pZC90cmFjZSA9PiBpbmNsdWRlL3RyYWNl L2V2ZW50c30vc3luYy5oICg5MiUpCiByZW5hbWUge2RyaXZlcnMvc3RhZ2luZy9hbmRyb2lkL3Vh cGkgPT4gaW5jbHVkZS91YXBpL2xpbnV4fS9zd19zeW5jLmggKDEwMCUpCiByZW5hbWUge2RyaXZl cnMvc3RhZ2luZy9hbmRyb2lkL3VhcGkgPT4gaW5jbHVkZS91YXBpL2xpbnV4fS9zeW5jLmggKDEw MCUpCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9LY29uZmlnIGIvZHJpdmVycy9LY29uZmlnCmluZGV4 IGQyYWMzMzkuLjQzMGY3NjEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvS2NvbmZpZworKysgYi9kcml2 ZXJzL0tjb25maWcKQEAgLTExNCw2ICsxMTQsOCBAQCBzb3VyY2UgImRyaXZlcnMvcnRjL0tjb25m aWciCiAKIHNvdXJjZSAiZHJpdmVycy9kbWEvS2NvbmZpZyIKIAorc291cmNlICJkcml2ZXJzL2Rt YS1idWYvS2NvbmZpZyIKKwogc291cmNlICJkcml2ZXJzL2RjYS9LY29uZmlnIgogCiBzb3VyY2Ug ImRyaXZlcnMvYXV4ZGlzcGxheS9LY29uZmlnIgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9kbWEtYnVm L0tjb25maWcgYi9kcml2ZXJzL2RtYS1idWYvS2NvbmZpZwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwLi40MTY4Zjg5Ci0tLSAvZGV2L251bGwKKysrIGIvZHJpdmVycy9kbWEtYnVm L0tjb25maWcKQEAgLTAsMCArMSwyMiBAQAorbWVudSAiRE1BQlVGIG9wdGlvbnMiCisKK2NvbmZp ZyBTWU5DCisJYm9vbCAiU3luY2hyb25pemF0aW9uIGZyYW1ld29yayIKKwlkZWZhdWx0IG4KKwlz ZWxlY3QgQU5PTl9JTk9ERVMKKwlzZWxlY3QgRE1BX1NIQVJFRF9CVUZGRVIKKwktLS1oZWxwLS0t CisJICBUaGlzIG9wdGlvbiBlbmFibGVzIHRoZSBmcmFtZXdvcmsgZm9yIHN5bmNocm9uaXphdGlv biBiZXR3ZWVuIG11bHRpcGxlCisJICBkcml2ZXJzLiAgU3luYyBpbXBsZW1lbnRhdGlvbnMgY2Fu IHRha2UgYWR2YW50YWdlIG9mIGhhcmR3YXJlCisJICBzeW5jaHJvbml6YXRpb24gYnVpbHQgaW50 byBkZXZpY2VzIGxpa2UgR1BVcy4KKworY29uZmlnIFNXX1NZTkMKKwlib29sICJTb2Z0d2FyZSBz eW5jaHJvbml6YXRpb24gb2JqZWN0cyIKKwlkZWZhdWx0IG4KKwlkZXBlbmRzIG9uIFNZTkMKKwkt LS1oZWxwLS0tCisJICBBIHN5bmMgb2JqZWN0IGRyaXZlciB0aGF0IHVzZXMgYSAzMmJpdCBjb3Vu dGVyIHRvIGNvb3JkaW5hdGUKKwkgIHN5bmNocm9uaXphdGlvbi4gIFVzZWZ1bCB3aGVuIHRoZXJl IGlzIG5vIGhhcmR3YXJlIHByaW1pdGl2ZSBiYWNraW5nCisJICB0aGUgc3luY2hyb25pemF0aW9u LgorCitlbmRtZW51CmRpZmYgLS1naXQgYS9kcml2ZXJzL2RtYS1idWYvTWFrZWZpbGUgYi9kcml2 ZXJzL2RtYS1idWYvTWFrZWZpbGUKaW5kZXggZmIwMzY5Ni4uYjg3MDkyMyAxMDA2NDQKLS0tIGEv ZHJpdmVycy9kbWEtYnVmL01ha2VmaWxlCisrKyBiL2RyaXZlcnMvZG1hLWJ1Zi9NYWtlZmlsZQpA QCAtMSArMSwzIEBACiBvYmoteSA6PSBkbWEtYnVmLm8gZmVuY2UubyBmZW5jZV9kZWJ1Zy5vIHJl c2VydmF0aW9uLm8gc2Vxbm8tZmVuY2Uubworb2JqLSQoQ09ORklHX1NZTkMpCQkJKz0gc3luYy5v IHN5bmNfZGVidWcubworb2JqLSQoQ09ORklHX1NXX1NZTkMpCQkJKz0gc3dfc3luYy5vCmRpZmYg LS1naXQgYS9kcml2ZXJzL3N0YWdpbmcvYW5kcm9pZC9zd19zeW5jLmMgYi9kcml2ZXJzL2RtYS1i dWYvc3dfc3luYy5jCnNpbWlsYXJpdHkgaW5kZXggOTglCnJlbmFtZSBmcm9tIGRyaXZlcnMvc3Rh Z2luZy9hbmRyb2lkL3N3X3N5bmMuYwpyZW5hbWUgdG8gZHJpdmVycy9kbWEtYnVmL3N3X3N5bmMu YwppbmRleCA4YzgzYmFkLi4zMmQwODAwIDEwMDY0NAotLS0gYS9kcml2ZXJzL3N0YWdpbmcvYW5k cm9pZC9zd19zeW5jLmMKKysrIGIvZHJpdmVycy9kbWEtYnVmL3N3X3N5bmMuYwpAQCAtMjIsOCAr MjIsNyBAQAogI2luY2x1ZGUgPGxpbnV4L21pc2NkZXZpY2UuaD4KICNpbmNsdWRlIDxsaW51eC9z eXNjYWxscy5oPgogI2luY2x1ZGUgPGxpbnV4L3VhY2Nlc3MuaD4KLQotI2luY2x1ZGUgInN3X3N5 bmMuaCIKKyNpbmNsdWRlIDxsaW51eC9zd19zeW5jLmg+CiAKIHN0YXRpYyB2b2lkIHN3X3N5bmNf Y2xlYW51cChzdHJ1Y3QgZmVuY2UgKmZlbmNlLCB2b2lkICp1c2VyX2RhdGEpCiB7CmRpZmYgLS1n aXQgYS9kcml2ZXJzL3N0YWdpbmcvYW5kcm9pZC9zeW5jLmMgYi9kcml2ZXJzL2RtYS1idWYvc3lu Yy5jCnNpbWlsYXJpdHkgaW5kZXggOTklCnJlbmFtZSBmcm9tIGRyaXZlcnMvc3RhZ2luZy9hbmRy b2lkL3N5bmMuYwpyZW5hbWUgdG8gZHJpdmVycy9kbWEtYnVmL3N5bmMuYwppbmRleCBhYWZlY2Y0 Li4yNDhhYTQ0IDEwMDY0NAotLS0gYS9kcml2ZXJzL3N0YWdpbmcvYW5kcm9pZC9zeW5jLmMKKysr IGIvZHJpdmVycy9kbWEtYnVmL3N5bmMuYwpAQCAtMjYsMTAgKzI2LDEwIEBACiAjaW5jbHVkZSA8 bGludXgvdWFjY2Vzcy5oPgogI2luY2x1ZGUgPGxpbnV4L2Fub25faW5vZGVzLmg+CiAKLSNpbmNs dWRlICJzeW5jLmgiCisjaW5jbHVkZSA8bGludXgvc3luYy5oPgogCiAjZGVmaW5lIENSRUFURV9U UkFDRV9QT0lOVFMKLSNpbmNsdWRlICJ0cmFjZS9zeW5jLmgiCisjaW5jbHVkZSA8dHJhY2UvZXZl bnRzL3N5bmMuaD4KIAogc3RhdGljIGNvbnN0IHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgc3luY19m ZW5jZV9mb3BzOwogCkBAIC0yODAsNyArMjgwLDcgQEAgaW50IHN5bmNfZmVuY2Vfd2FpdChzdHJ1 Y3Qgc3luY19mZW5jZSAqc3luY19mZW5jZSwgbG9uZyB0aW1lb3V0KQogCiAJdHJhY2Vfc3luY193 YWl0KHN5bmNfZmVuY2UsIDEpOwogCWZvciAoaSA9IDA7IGkgPCBzeW5jX2ZlbmNlLT5udW1fZmVu Y2VzOyArK2kpCi0JCXRyYWNlX2ZlbmNlKHN5bmNfZmVuY2UtPmNic1tpXS5mZW5jZSk7CisJCXRy YWNlX3N5bmNfZmVuY2Uoc3luY19mZW5jZS0+Y2JzW2ldLmZlbmNlKTsKIAlyZXQgPSB3YWl0X2V2 ZW50X2ludGVycnVwdGlibGVfdGltZW91dChzeW5jX2ZlbmNlLT53cSwKIAkJCQkJICAgICAgIGF0 b21pY19yZWFkKCZzeW5jX2ZlbmNlLT5zdGF0dXMpIDw9IDAsCiAJCQkJCSAgICAgICB0aW1lb3V0 KTsKQEAgLTM5NSw2ICszOTUsNyBAQCBzdGF0aWMgbG9uZyBzeW5jX2ZlbmNlX2lvY3RsX21lcmdl KHN0cnVjdCBzeW5jX2ZlbmNlICpzeW5jX2ZlbmNlLAogCiAJc3luY19mZW5jZV9pbnN0YWxsKGZl bmNlMywgZmQpOwogCXN5bmNfZmVuY2VfcHV0KGZlbmNlMik7CisKIAlyZXR1cm4gMDsKIAogZXJy X3B1dF9mZW5jZTM6CmRpZmYgLS1naXQgYS9kcml2ZXJzL3N0YWdpbmcvYW5kcm9pZC9zeW5jX2Rl YnVnLmMgYi9kcml2ZXJzL2RtYS1idWYvc3luY19kZWJ1Zy5jCnNpbWlsYXJpdHkgaW5kZXggOTkl CnJlbmFtZSBmcm9tIGRyaXZlcnMvc3RhZ2luZy9hbmRyb2lkL3N5bmNfZGVidWcuYwpyZW5hbWUg dG8gZHJpdmVycy9kbWEtYnVmL3N5bmNfZGVidWcuYwppbmRleCA4ZTJjYTU3Li4yOTQ3ODZiIDEw MDY0NAotLS0gYS9kcml2ZXJzL3N0YWdpbmcvYW5kcm9pZC9zeW5jX2RlYnVnLmMKKysrIGIvZHJp dmVycy9kbWEtYnVmL3N5bmNfZGVidWcuYwpAQCAtMjcsNyArMjcsNyBAQAogI2luY2x1ZGUgPGxp bnV4L3VhY2Nlc3MuaD4KICNpbmNsdWRlIDxsaW51eC9hbm9uX2lub2Rlcy5oPgogI2luY2x1ZGUg PGxpbnV4L3RpbWU2NC5oPgotI2luY2x1ZGUgInN3X3N5bmMuaCIKKyNpbmNsdWRlIDxsaW51eC9z d19zeW5jLmg+CiAKICNpZmRlZiBDT05GSUdfREVCVUdfRlMKIApkaWZmIC0tZ2l0IGEvZHJpdmVy cy9zdGFnaW5nL2FuZHJvaWQvS2NvbmZpZyBiL2RyaXZlcnMvc3RhZ2luZy9hbmRyb2lkL0tjb25m aWcKaW5kZXggYmQ5MGQyMC4uNGIxOGZlZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9zdGFnaW5nL2Fu ZHJvaWQvS2NvbmZpZworKysgYi9kcml2ZXJzL3N0YWdpbmcvYW5kcm9pZC9LY29uZmlnCkBAIC0z OCwyNSArMzgsNiBAQCBjb25maWcgQU5EUk9JRF9MT1dfTUVNT1JZX0tJTExFUgogCSAgc2NyaXB0 cyAoL2luaXQucmMpLCBhbmQgaXQgZGVmaW5lcyBwcmlvcml0eSB2YWx1ZXMgd2l0aCBtaW5pbXVt IGZyZWUgbWVtb3J5IHNpemUKIAkgIGZvciBlYWNoIHByaW9yaXR5LgogCi1jb25maWcgU1lOQwot CWJvb2wgIlN5bmNocm9uaXphdGlvbiBmcmFtZXdvcmsiCi0JZGVmYXVsdCBuCi0Jc2VsZWN0IEFO T05fSU5PREVTCi0Jc2VsZWN0IERNQV9TSEFSRURfQlVGRkVSCi0JLS0taGVscC0tLQotCSAgVGhp cyBvcHRpb24gZW5hYmxlcyB0aGUgZnJhbWV3b3JrIGZvciBzeW5jaHJvbml6YXRpb24gYmV0d2Vl biBtdWx0aXBsZQotCSAgZHJpdmVycy4gIFN5bmMgaW1wbGVtZW50YXRpb25zIGNhbiB0YWtlIGFk dmFudGFnZSBvZiBoYXJkd2FyZQotCSAgc3luY2hyb25pemF0aW9uIGJ1aWx0IGludG8gZGV2aWNl cyBsaWtlIEdQVXMuCi0KLWNvbmZpZyBTV19TWU5DCi0JYm9vbCAiU29mdHdhcmUgc3luY2hyb25p emF0aW9uIG9iamVjdHMiCi0JZGVmYXVsdCBuCi0JZGVwZW5kcyBvbiBTWU5DCi0JLS0taGVscC0t LQotCSAgQSBzeW5jIG9iamVjdCBkcml2ZXIgdGhhdCB1c2VzIGEgMzJiaXQgY291bnRlciB0byBj b29yZGluYXRlCi0JICBzeW5jaHJvbml6YXRpb24uICBVc2VmdWwgd2hlbiB0aGVyZSBpcyBubyBo YXJkd2FyZSBwcmltaXRpdmUgYmFja2luZwotCSAgdGhlIHN5bmNocm9uaXphdGlvbi4KLQogc291 cmNlICJkcml2ZXJzL3N0YWdpbmcvYW5kcm9pZC9pb24vS2NvbmZpZyIKIAogZW5kaWYgIyBpZiBB TkRST0lECmRpZmYgLS1naXQgYS9kcml2ZXJzL3N0YWdpbmcvYW5kcm9pZC9NYWtlZmlsZSBiL2Ry aXZlcnMvc3RhZ2luZy9hbmRyb2lkL01ha2VmaWxlCmluZGV4IGM3YjZjOTkuLjM1NWFkMGUgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvc3RhZ2luZy9hbmRyb2lkL01ha2VmaWxlCisrKyBiL2RyaXZlcnMv c3RhZ2luZy9hbmRyb2lkL01ha2VmaWxlCkBAIC02LDUgKzYsMyBAQCBvYmotJChDT05GSUdfQVNI TUVNKQkJCSs9IGFzaG1lbS5vCiBvYmotJChDT05GSUdfQU5EUk9JRF9USU1FRF9PVVRQVVQpCSs9 IHRpbWVkX291dHB1dC5vCiBvYmotJChDT05GSUdfQU5EUk9JRF9USU1FRF9HUElPKQkrPSB0aW1l ZF9ncGlvLm8KIG9iai0kKENPTkZJR19BTkRST0lEX0xPV19NRU1PUllfS0lMTEVSKQkrPSBsb3dt ZW1vcnlraWxsZXIubwotb2JqLSQoQ09ORklHX1NZTkMpCQkJKz0gc3luYy5vIHN5bmNfZGVidWcu bwotb2JqLSQoQ09ORklHX1NXX1NZTkMpCQkJKz0gc3dfc3luYy5vCmRpZmYgLS1naXQgYS9kcml2 ZXJzL3N0YWdpbmcvYW5kcm9pZC9zd19zeW5jLmggYi9pbmNsdWRlL2xpbnV4L3N3X3N5bmMuaApz aW1pbGFyaXR5IGluZGV4IDk1JQpyZW5hbWUgZnJvbSBkcml2ZXJzL3N0YWdpbmcvYW5kcm9pZC9z d19zeW5jLmgKcmVuYW1lIHRvIGluY2x1ZGUvbGludXgvc3dfc3luYy5oCmluZGV4IGY5MTI4ODgu LjY4Y2IzZDkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvc3RhZ2luZy9hbmRyb2lkL3N3X3N5bmMuaAor KysgYi9pbmNsdWRlL2xpbnV4L3N3X3N5bmMuaApAQCAtMTksOCArMTksOCBAQAogCiAjaW5jbHVk ZSA8bGludXgvdHlwZXMuaD4KICNpbmNsdWRlIDxsaW51eC9rY29uZmlnLmg+Ci0jaW5jbHVkZSAi c3luYy5oIgotI2luY2x1ZGUgInVhcGkvc3dfc3luYy5oIgorI2luY2x1ZGUgPGxpbnV4L3N5bmMu aD4KKyNpbmNsdWRlIDx1YXBpL2xpbnV4L3N3X3N5bmMuaD4KIAogI2lmIElTX0VOQUJMRUQoQ09O RklHX1NXX1NZTkMpCiBzdHJ1Y3QgZmVuY2VfdGltZWxpbmUgKnN3X3N5bmNfdGltZWxpbmVfY3Jl YXRlKGNvbnN0IGNoYXIgKm5hbWUpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9zdGFnaW5nL2FuZHJv aWQvc3luYy5oIGIvaW5jbHVkZS9saW51eC9zeW5jLmgKc2ltaWxhcml0eSBpbmRleCA5OSUKcmVu YW1lIGZyb20gZHJpdmVycy9zdGFnaW5nL2FuZHJvaWQvc3luYy5oCnJlbmFtZSB0byBpbmNsdWRl L2xpbnV4L3N5bmMuaAppbmRleCBkNjBkOWMyLi5lY2VmZWQ1IDEwMDY0NAotLS0gYS9kcml2ZXJz L3N0YWdpbmcvYW5kcm9pZC9zeW5jLmgKKysrIGIvaW5jbHVkZS9saW51eC9zeW5jLmgKQEAgLTIw LDggKzIwLDggQEAKICNpbmNsdWRlIDxsaW51eC9zcGlubG9jay5oPgogI2luY2x1ZGUgPGxpbnV4 L3dhaXQuaD4KICNpbmNsdWRlIDxsaW51eC9mZW5jZS5oPgotCi0jaW5jbHVkZSAidWFwaS9zeW5j LmgiCisjaW5jbHVkZSA8bGludXgvc3luYy5oPgorI2luY2x1ZGUgPHVhcGkvbGludXgvc3luYy5o PgogCiBzdHJ1Y3Qgc3luY19mZW5jZTsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9zdGFnaW5nL2Fu ZHJvaWQvdHJhY2Uvc3luYy5oIGIvaW5jbHVkZS90cmFjZS9ldmVudHMvc3luYy5oCnNpbWlsYXJp dHkgaW5kZXggOTIlCnJlbmFtZSBmcm9tIGRyaXZlcnMvc3RhZ2luZy9hbmRyb2lkL3RyYWNlL3N5 bmMuaApyZW5hbWUgdG8gaW5jbHVkZS90cmFjZS9ldmVudHMvc3luYy5oCmluZGV4IDRmNjg1MTUu LmZhMTk5NjIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvc3RhZ2luZy9hbmRyb2lkL3RyYWNlL3N5bmMu aAorKysgYi9pbmNsdWRlL3RyYWNlL2V2ZW50cy9zeW5jLmgKQEAgLTEsMTEgKzEsMTAgQEAKICN1 bmRlZiBUUkFDRV9TWVNURU0KLSNkZWZpbmUgVFJBQ0VfSU5DTFVERV9QQVRIIC4uLy4uL2RyaXZl cnMvc3RhZ2luZy9hbmRyb2lkL3RyYWNlCiAjZGVmaW5lIFRSQUNFX1NZU1RFTSBzeW5jCiAKICNp ZiAhZGVmaW5lZChfVFJBQ0VfU1lOQ19IKSB8fCBkZWZpbmVkKFRSQUNFX0hFQURFUl9NVUxUSV9S RUFEKQogI2RlZmluZSBfVFJBQ0VfU1lOQ19ICiAKLSNpbmNsdWRlICIuLi9zeW5jLmgiCisjaW5j bHVkZSA8bGludXgvc3luYy5oPgogI2luY2x1ZGUgPGxpbnV4L3RyYWNlcG9pbnQuaD4KIAogVFJB Q0VfRVZFTlQoc3luY193YWl0LApAQCAtMjksNyArMjgsNyBAQCBUUkFDRV9FVkVOVChzeW5jX3dh aXQsCiAJCQlfX2dldF9zdHIobmFtZSksIF9fZW50cnktPnN0YXR1cykKICk7CiAKLVRSQUNFX0VW RU5UKGZlbmNlLAorVFJBQ0VfRVZFTlQoc3luY19mZW5jZSwKIAlUUF9QUk9UTyhzdHJ1Y3QgZmVu Y2UgKmZlbmNlKSwKIAogCVRQX0FSR1MoZmVuY2UpLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9zdGFn aW5nL2FuZHJvaWQvdWFwaS9zd19zeW5jLmggYi9pbmNsdWRlL3VhcGkvbGludXgvc3dfc3luYy5o CnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBkcml2ZXJzL3N0YWdpbmcvYW5kcm9p ZC91YXBpL3N3X3N5bmMuaApyZW5hbWUgdG8gaW5jbHVkZS91YXBpL2xpbnV4L3N3X3N5bmMuaApk aWZmIC0tZ2l0IGEvZHJpdmVycy9zdGFnaW5nL2FuZHJvaWQvdWFwaS9zeW5jLmggYi9pbmNsdWRl L3VhcGkvbGludXgvc3luYy5oCnNpbWlsYXJpdHkgaW5kZXggMTAwJQpyZW5hbWUgZnJvbSBkcml2 ZXJzL3N0YWdpbmcvYW5kcm9pZC91YXBpL3N5bmMuaApyZW5hbWUgdG8gaW5jbHVkZS91YXBpL2xp bnV4L3N5bmMuaAotLSAKMi41LjAKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v ZHJpLWRldmVsCg==