From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by gabe.freedesktop.org (Postfix) with ESMTPS id E6D7D89C17 for ; Wed, 10 Oct 2018 10:50:26 +0000 (UTC) From: Lukasz Kalamarz Date: Wed, 10 Oct 2018 12:48:37 +0200 Message-Id: <20181010104837.14069-1-lukasz.kalamarz@intel.com> In-Reply-To: <20181009144525.7111-1-lukasz.kalamarz@intel.com> References: <20181009144525.7111-1-lukasz.kalamarz@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t v2] libs: Adding rendercopy support for gen11 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org Cc: Lucas De Marchi , Rodrigo Vivi List-ID: RnJvbTogIkthbGFtYXJ6LCBMdWthc3oiIDxsdWthc3oua2FsYW1hcnpAaW50ZWwuY29tPgoKSW4g R2VuMTEgdGhlcmUgd2VyZSBFVSBjaGFuZ2VzIHdoaWNoIHdhcyBjYXVzaW5nIGdlbV9yZW5kZXJf Y29weSB0ZXN0CmZhaWxpbmcuIFNoYWRlciB1c2VkIGluIGdlbjkgaXMgbm8gbG9uZ2VyIGFwcGxp Y2FibGUgZm9yIHRob3NlIGNoYW5nZQphbmQgaXQgaGFkIHRvIGJlIGFsaWduZWQgdG8gZ2VuMTEg Y2hhbmdlcy4gU2luY2Ugb25seSBkaWZmZXJlbmNlIGlzCnNoYWRlciwgY3JlYXRlZCBhIHdyYXBw ZXIgZm9yIGdlbjkgZnVuY3Rpb24uCgp2MjogQWRkZWQgZ2VuMTEgc2hhZGVyIHNvdXJjZSBwYXRo IG5leHQgdG8gaXQgYmluYXJ5IGZvcm0KClNpZ25lZC1vZmYtYnk6IEx1a2FzeiBLYWxhbWFyeiA8 bHVrYXN6LmthbGFtYXJ6QGludGVsLmNvbT4KCkNjOiBNaWNoYcWCIFdpbmlhcnNraSA8bWljaGFs LndpbmlhcnNraUBpbnRlbC5jb20+CkNjOiBBbnRvbmlvIEFyZ2Vuemlhbm8gPGFudG9uaW8uYXJn ZW56aWFub0BpbnRlbC5jb20+CkNjOiBMdWNhcyBEZSBNYXJjaGkgPGx1Y2FzLmRlbWFyY2hpQGlu dGVsLmNvbT4KQ2M6IFJvZHJpZ28gVml2aSA8cm9kcmlnby52aXZpQGludGVsLmNvbT4KQ2M6IEth dGFyenluYSBEZWMgPGthdGFyenluYS5kZWNAaW50ZWwuY29tPgotLS0KIGxpYi9pOTE1L3NoYWRl cnMvcHMvYmxpdC5nMTFhIHwgMjIgKysrKysrKysrKwogbGliL2ludGVsX2JhdGNoYnVmZmVyLmMg ICAgICAgfCAgMiArCiBsaWIvcmVuZGVyY29weS5oICAgICAgICAgICAgICB8ICA1ICsrKwogbGli L3JlbmRlcmNvcHlfZ2VuOS5jICAgICAgICAgfCA5OCArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrLS0tLS0tLS0tCiA0IGZpbGVzIGNoYW5nZWQsIDEwNyBpbnNlcnRpb25zKCspLCAy MCBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsaWIvaTkxNS9zaGFkZXJzL3BzL2Js aXQuZzExYQoKZGlmZiAtLWdpdCBhL2xpYi9pOTE1L3NoYWRlcnMvcHMvYmxpdC5nMTFhIGIvbGli L2k5MTUvc2hhZGVycy9wcy9ibGl0LmcxMWEKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAuLjE1ZmU3OGFmCi0tLSAvZGV2L251bGwKKysrIGIvbGliL2k5MTUvc2hhZGVycy9wcy9i bGl0LmcxMWEKQEAgLTAsMCArMSwyMiBAQAorLyogIFRoaXMgaXMgdGhlIHNhbWUgc2hhZGVyIGFz IGZvciBwcmV2aW91cyBnZW5zLiBPbiBHZW4gMTEgaW5zdHJ1Y3Rpb24gcGxuIHdhcyBkZWxldGVk IGFuZCBuZWVkcyB0byBiZSByZXBsYWNlZCBieSBtYWQuCitUaGlzIHNoYWRlciB3YXMgZ2VuZXJh dGVkIHVzaW5nIElHQSB0b29sIChub3QgYXNzZW1ibGVyIGludGVncmF0ZWQgaW50byBJR1QpCisq LworCisoVykgbWFkKDh8TTApIGFjYzAuMDwxPjpuZiByNi43PDA7MD46ZiByMi4wPDg7MT46ZiBy Ni4wPDA+OmYKKyhXKSBtYWQoOHxNMCkgcjEwLjA8MT46ZiBhY2MwLjA8ODsxPjpuZiByMy4wPDg7 MT46ZiByNi4xPDA+OmYKKworKFcpIG1hZCg4fE0wKSBhY2MwLjA8MT46bmYgcjYuMDwwOzA+OmYg cjQuMDw4OzE+OmYgcjYuMDwwPjpmCisoVykgbWFkKDh8TTApIHIxMS4wPDE+OmYgYWNjMC4wPDg7 MT46bmYgcjUuMDw4OzE+OmYgcjYuMTwwPjpmCisKKyhXKSBtYWQoOHxNMCkgYWNjMC4wPDE+Om5m IHI2LjQ8MDswPjpmIHIyLjA8ODsxPjpmIHI2LjQ8MD46ZgorKFcpIG1hZCg4fE0wKSByMTIuMDwx PjpmIGFjYzAuMDw4OzE+Om5mIHIzLjA8ODsxPjpmIHI2LjU8MD46ZgorCisoVykgbWFkKDh8TTAp IGFjYzAuMDwxPjpuZiByNi4wPDA7MD46ZiByNC4wPDg7MT46ZiByNi40PDA+OmYKKyhXKSBtYWQo OHxNMCkgcjEzLjA8MT46ZiBhY2MwLjA8ODsxPjpuZiByNS4wPDg7MT46ZiByNi41PDA+OmYKKwor KFcpIHNlbmQoMTZ8TTApIHIxMTI6ZiByMTA6dWIgMHgxMDAwMDAwMiAweDA4ODQwMDAxIC8vICBT QU1QTEVSICB3cjo0LCByZDo4LCBmYzogMHg0MDAwMQorICAgIG1vdiAoMTZ8TTApICAgICAgICAg ICAgICByMTEzLjA8MT46ZiAgIHIxMi4wPDg7OCwxPjpmCisgICAgbW92ICgxNnxNMCkgICAgICAg ICAgICAgIHIxMTUuMDwxPjpmICAgcjE0LjA8ODs4LDE+OmYKKyAgICBtb3YgKDE2fE0wKSAgICAg ICAgICAgICAgcjExNy4wPDE+OmYgICByMTYuMDw4OzgsMT46ZgorICAgIG1vdiAoMTZ8TTApICAg ICAgICAgICAgICByMTE5LjA8MT46ZiAgIHIxOC4wPDg7OCwxPjpmCisoVykgc2VuZCgxNnxNMCkg bnVsbDpmIHIxMTI6dWIgMHgxMDAwMDAyNSAweDEwMDMxMDAwIHtFT1R9IC8vICBEUF9SQyAgd3I6 OCwgcmQ6MCwgUmVuZGVyIFRhcmdldCBXcml0ZSBtc2M6MTYsIHRvICMwCmRpZmYgLS1naXQgYS9s aWIvaW50ZWxfYmF0Y2hidWZmZXIuYyBiL2xpYi9pbnRlbF9iYXRjaGJ1ZmZlci5jCmluZGV4IDM4 NzQwNGZmLi5jMTNiMWRjNCAxMDA2NDQKLS0tIGEvbGliL2ludGVsX2JhdGNoYnVmZmVyLmMKKysr IGIvbGliL2ludGVsX2JhdGNoYnVmZmVyLmMKQEAgLTg0Myw2ICs4NDMsOCBAQCBpZ3RfcmVuZGVy X2NvcHlmdW5jX3QgaWd0X2dldF9yZW5kZXJfY29weWZ1bmMoaW50IGRldmlkKQogCQljb3B5ID0g Z2VuOF9yZW5kZXJfY29weWZ1bmM7CiAJZWxzZSBpZiAoSVNfR0VOOShkZXZpZCkgfHwgSVNfR0VO MTAoZGV2aWQpKQogCQljb3B5ID0gZ2VuOV9yZW5kZXJfY29weWZ1bmM7CisJZWxzZSBpZiAoSVNf R0VOMTEoZGV2aWQpKQorCQljb3B5ID0gZ2VuMTFfcmVuZGVyX2NvcHlmdW5jOwogCiAJcmV0dXJu IGNvcHk7CiB9CmRpZmYgLS1naXQgYS9saWIvcmVuZGVyY29weS5oIGIvbGliL3JlbmRlcmNvcHku aAppbmRleCBkMWJiNjI4NC4uMzVjMjhkZDkgMTAwNjQ0Ci0tLSBhL2xpYi9yZW5kZXJjb3B5LmgK KysrIGIvbGliL3JlbmRlcmNvcHkuaApAQCAtMjMsNiArMjMsMTEgQEAgc3RhdGljIGlubGluZSB2 b2lkIGVtaXRfdmVydGV4X25vcm1hbGl6ZWQoc3RydWN0IGludGVsX2JhdGNoYnVmZmVyICpiYXRj aCwKIAlPVVRfQkFUQ0godS51aSk7CiB9CiAKK3ZvaWQgZ2VuMTFfcmVuZGVyX2NvcHlmdW5jKHN0 cnVjdCBpbnRlbF9iYXRjaGJ1ZmZlciAqYmF0Y2gsCisJCQkgIGRybV9pbnRlbF9jb250ZXh0ICpj b250ZXh0LAorCQkJICBjb25zdCBzdHJ1Y3QgaWd0X2J1ZiAqc3JjLCB1bnNpZ25lZCBzcmNfeCwg dW5zaWduZWQgc3JjX3ksCisJCQkgIHVuc2lnbmVkIHdpZHRoLCB1bnNpZ25lZCBoZWlnaHQsCisJ CQkgIGNvbnN0IHN0cnVjdCBpZ3RfYnVmICpkc3QsIHVuc2lnbmVkIGRzdF94LCB1bnNpZ25lZCBk c3RfeSk7CiB2b2lkIGdlbjlfcmVuZGVyX2NvcHlmdW5jKHN0cnVjdCBpbnRlbF9iYXRjaGJ1ZmZl ciAqYmF0Y2gsCiAJCQkgIGRybV9pbnRlbF9jb250ZXh0ICpjb250ZXh0LAogCQkJICBjb25zdCBz dHJ1Y3QgaWd0X2J1ZiAqc3JjLCB1bnNpZ25lZCBzcmNfeCwgdW5zaWduZWQgc3JjX3ksCmRpZmYg LS1naXQgYS9saWIvcmVuZGVyY29weV9nZW45LmMgYi9saWIvcmVuZGVyY29weV9nZW45LmMKaW5k ZXggZjMyNGZiZDcuLmFkYmQ4MTI0IDEwMDY0NAotLS0gYS9saWIvcmVuZGVyY29weV9nZW45LmMK KysrIGIvbGliL3JlbmRlcmNvcHlfZ2VuOS5jCkBAIC01MCwyMyArNTAsNTQgQEAgc3RydWN0IHsK IH0gdmlld3BvcnQ7CiAKIC8qIHNlZSBsaWIvaTkxNS9zaGFkZXJzL3BzL2JsaXQuZzdhICovCi1z dGF0aWMgY29uc3QgdWludDMyX3QgcHNfa2VybmVsW11bNF0gPSB7CitzdGF0aWMgY29uc3QgdWlu dDMyX3QgcHNfa2VybmVsX2dlbjlbXVs0XSA9IHsKICNpZiAxCi0gICB7IDB4MDA4MDAwNWEsIDB4 MmY0MDNhZTgsIDB4M2EwMDAwYzAsIDB4MDA4ZDAwNDAgfSwKLSAgIHsgMHgwMDgwMDA1YSwgMHgy ZjgwM2FlOCwgMHgzYTAwMDBkMCwgMHgwMDhkMDA0MCB9LAotICAgeyAweDAyODAwMDMxLCAweDJl MjAzYTQ4LCAweDBlOGQwZjQwLCAweDA4ODQwMDAxIH0sCi0gICB7IDB4MDU4MDAwMzEsIDB4MjAw MDNhNDAsIDB4MGU4ZDBlMjAsIDB4OTAwMzEwMDAgfSwKKwl7IDB4MDA4MDAwNWEsIDB4MmY0MDNh ZTgsIDB4M2EwMDAwYzAsIDB4MDA4ZDAwNDAgfSwKKwl7IDB4MDA4MDAwNWEsIDB4MmY4MDNhZTgs IDB4M2EwMDAwZDAsIDB4MDA4ZDAwNDAgfSwKKwl7IDB4MDI4MDAwMzEsIDB4MmUyMDNhNDgsIDB4 MGU4ZDBmNDAsIDB4MDg4NDAwMDEgfSwKKwl7IDB4MDU4MDAwMzEsIDB4MjAwMDNhNDAsIDB4MGU4 ZDBlMjAsIDB4OTAwMzEwMDAgfSwKICNlbHNlCi0gICAvKiBXcml0ZSBhbGwgLTEgKi8KLSAgIHsg MHgwMDYwMDAwMSwgMHgyZTAwMDYwOCwgMHgwMDAwMDAwMCwgMHgzZjgwMDAwMCB9LAotICAgeyAw eDAwNjAwMDAxLCAweDJlMjAwNjA4LCAweDAwMDAwMDAwLCAweDNmODAwMDAwIH0sCi0gICB7IDB4 MDA2MDAwMDEsIDB4MmU0MDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAwMDAgfSwKLSAgIHsgMHgw MDYwMDAwMSwgMHgyZTYwMDYwOCwgMHgwMDAwMDAwMCwgMHgzZjgwMDAwMCB9LAotICAgeyAweDAw NjAwMDAxLCAweDJlODAwNjA4LCAweDAwMDAwMDAwLCAweDNmODAwMDAwIH0sCi0gICB7IDB4MDA2 MDAwMDEsIDB4MmVhMDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAwMDAgfSwKLSAgIHsgMHgwMDYw MDAwMSwgMHgyZWMwMDYwOCwgMHgwMDAwMDAwMCwgMHgzZjgwMDAwMCB9LAotICAgeyAweDAwNjAw MDAxLCAweDJlZTAwNjA4LCAweDAwMDAwMDAwLCAweDNmODAwMDAwIH0sCi0gICB7IDB4MDU4MDAw MzEsIDB4MjAwMDIyZTAsIDB4MGUwMDBlMDAsIDB4OTAwMzEwMDAgfSwKKwkvKiBXcml0ZSBhbGwg LTEgKi8KKwl7IDB4MDA2MDAwMDEsIDB4MmUwMDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAwMDAg fSwKKwl7IDB4MDA2MDAwMDEsIDB4MmUyMDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAwMDAgfSwK Kwl7IDB4MDA2MDAwMDEsIDB4MmU0MDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAwMDAgfSwKKwl7 IDB4MDA2MDAwMDEsIDB4MmU2MDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAwMDAgfSwKKwl7IDB4 MDA2MDAwMDEsIDB4MmU4MDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAwMDAgfSwKKwl7IDB4MDA2 MDAwMDEsIDB4MmVhMDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAwMDAgfSwKKwl7IDB4MDA2MDAw MDEsIDB4MmVjMDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAwMDAgfSwKKwl7IDB4MDA2MDAwMDEs IDB4MmVlMDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAwMDAgfSwKKwl7IDB4MDU4MDAwMzEsIDB4 MjAwMDIyZTAsIDB4MGUwMDBlMDAsIDB4OTAwMzEwMDAgfSwKKyNlbmRpZgorfTsKKworLyogc2Vl IGxpYi9pOTE1L3NoYWRlcnMvcHMvYmxpdC5nMTFhICovCitzdGF0aWMgY29uc3QgdWludDMyX3Qg cHNfa2VybmVsX2dlbjExW11bNF0gPSB7CisjaWYgMQorCXsgMHgwMDYwMDA1YiwgMHgyMDAwYzAx YywgMHgwNzIwNjYwMSwgMHgwMTgwMDQwNCB9LAorCXsgMHgwMDYwMDA1YiwgMHg3MTAwNDgwYywg MHgwNzIyMDAzYiwgMHgwMTg4MDQwNiB9LAorCXsgMHgwMDYwMDA1YiwgMHgyMDAwYzAxYywgMHgw NzIwNjYwMSwgMHgwMTgwMDQwOCB9LAorCXsgMHgwMDYwMDA1YiwgMHg3MjAwNDgwYywgMHgwNzIy MDAzYiwgMHgwMTg4MDQwYSB9LAorCXsgMHgwMDYwMDA1YiwgMHgyMDAwYzAxYywgMHgwNzIwNmUw MSwgMHgwMWEwMDQwNCB9LAorCXsgMHgwMDYwMDA1YiwgMHg3MzAwNDgwYywgMHgwNzIyMDAzYiwg MHgwMWE4MDQwNiB9LAorCXsgMHgwMDYwMDA1YiwgMHgyMDAwYzAxYywgMHgwNzIwNmUwMSwgMHgw MWEwMDQwOCB9LAorCXsgMHgwMDYwMDA1YiwgMHg3NDAwNDgwYywgMHgwNzIyMDAzYiwgMHgwMWE4 MDQwYSB9LAorCXsgMHgwMjgwMDAzMSwgMHgyMTgwNGE0YywgMHgwNjAwMGUyMCwgMHgwODg0MDAw MSB9LAorCXsgMHgwMDgwMDAwMSwgMHgyZTIwNGIyOCwgMHgwMDhkMDE4MCwgMHgwMDAwMDAwMCB9 LAorCXsgMHgwMDgwMDAwMSwgMHgyZTYwNGIyOCwgMHgwMDhkMDFjMCwgMHgwMDAwMDAwMCB9LAor CXsgMHgwMDgwMDAwMSwgMHgyZWEwNGIyOCwgMHgwMDhkMDIwMCwgMHgwMDAwMDAwMCB9LAorCXsg MHgwMDgwMDAwMSwgMHgyZWUwNGIyOCwgMHgwMDhkMDI0MCwgMHgwMDAwMDAwMCB9LAorCXsgMHgw NTgwMDAzMSwgMHgyMDAwNGE0NCwgMHgwNjAwMGUyMCwgMHg5MDAzMTAwMCB9LAorI2Vsc2UKKwkv KiBXcml0ZSBhbGwgLTEgKi8KKwl7IDB4MDA2MDAwMDEsIDB4MmUwMDA2MDgsIDB4MDAwMDAwMDAs IDB4M2Y4MDAwMDAgfSwKKwl7IDB4MDA2MDAwMDEsIDB4MmUyMDA2MDgsIDB4MDAwMDAwMDAsIDB4 M2Y4MDAwMDAgfSwKKwl7IDB4MDA2MDAwMDEsIDB4MmU0MDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4 MDAwMDAgfSwKKwl7IDB4MDA2MDAwMDEsIDB4MmU2MDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAw MDAgfSwKKwl7IDB4MDA2MDAwMDEsIDB4MmU4MDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAwMDAg fSwKKwl7IDB4MDA2MDAwMDEsIDB4MmVhMDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAwMDAgfSwK Kwl7IDB4MDA2MDAwMDEsIDB4MmVjMDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAwMDAgfSwKKwl7 IDB4MDA2MDAwMDEsIDB4MmVlMDA2MDgsIDB4MDAwMDAwMDAsIDB4M2Y4MDAwMDAgfSwKKwl7IDB4 MDU4MDAwMzEsIDB4MjAwMDIyZTAsIDB4MGUwMDBlMDAsIDB4OTAwMzEwMDAgfSwKICNlbmRpZgog fTsKIApAQCAtOTA3LDExICs5MzgsMTQgQEAgc3RhdGljIHZvaWQgZ2VuOF9lbWl0X3ByaW1pdGl2 ZShzdHJ1Y3QgaW50ZWxfYmF0Y2hidWZmZXIgKmJhdGNoLCB1aW50MzJfdCBvZmZzZXQKIAogI2Rl ZmluZSBCQVRDSF9TVEFURV9TUExJVCAyMDQ4CiAKLXZvaWQgZ2VuOV9yZW5kZXJfY29weWZ1bmMo c3RydWN0IGludGVsX2JhdGNoYnVmZmVyICpiYXRjaCwKK3N0YXRpYwordm9pZCBfZ2VuOV9yZW5k ZXJfY29weWZ1bmMoc3RydWN0IGludGVsX2JhdGNoYnVmZmVyICpiYXRjaCwKIAkJCSAgZHJtX2lu dGVsX2NvbnRleHQgKmNvbnRleHQsCi0JCQkgIGNvbnN0IHN0cnVjdCBpZ3RfYnVmICpzcmMsIHVu c2lnbmVkIHNyY194LCB1bnNpZ25lZCBzcmNfeSwKLQkJCSAgdW5zaWduZWQgd2lkdGgsIHVuc2ln bmVkIGhlaWdodCwKLQkJCSAgY29uc3Qgc3RydWN0IGlndF9idWYgKmRzdCwgdW5zaWduZWQgZHN0 X3gsIHVuc2lnbmVkIGRzdF95KQorCQkJICBjb25zdCBzdHJ1Y3QgaWd0X2J1ZiAqc3JjLCB1bnNp Z25lZCBzcmNfeCwKKwkJCSAgdW5zaWduZWQgc3JjX3ksIHVuc2lnbmVkIHdpZHRoLCB1bnNpZ25l ZCBoZWlnaHQsCisJCQkgIGNvbnN0IHN0cnVjdCBpZ3RfYnVmICpkc3QsIHVuc2lnbmVkIGRzdF94 LAorCQkJICB1bnNpZ25lZCBkc3RfeSwgY29uc3QgdWludDMyX3QgcHNfa2VybmVsW11bNF0sCisJ CQkgIHVpbnQzMl90IHBzX2tlcm5lbF9zaXplKQogewogCXVpbnQzMl90IHBzX3NhbXBsZXJfc3Rh dGUsIHBzX2tlcm5lbF9vZmYsIHBzX2JpbmRpbmdfdGFibGU7CiAJdWludDMyX3Qgc2Npc3Nvcl9z dGF0ZTsKQEAgLTkyOCw3ICs5NjIsNyBAQCB2b2lkIGdlbjlfcmVuZGVyX2NvcHlmdW5jKHN0cnVj dCBpbnRlbF9iYXRjaGJ1ZmZlciAqYmF0Y2gsCiAKIAlwc19iaW5kaW5nX3RhYmxlICA9IGdlbjhf YmluZF9zdXJmYWNlcyhiYXRjaCwgc3JjLCBkc3QpOwogCXBzX3NhbXBsZXJfc3RhdGUgID0gZ2Vu OF9jcmVhdGVfc2FtcGxlcihiYXRjaCk7Ci0JcHNfa2VybmVsX29mZiA9IGdlbjhfZmlsbF9wcyhi YXRjaCwgcHNfa2VybmVsLCBzaXplb2YocHNfa2VybmVsKSk7CisJcHNfa2VybmVsX29mZiA9IGdl bjhfZmlsbF9wcyhiYXRjaCwgcHNfa2VybmVsLCBwc19rZXJuZWxfc2l6ZSk7CiAJdmVydGV4X2J1 ZmZlciA9IGdlbjdfZmlsbF92ZXJ0ZXhfYnVmZmVyX2RhdGEoYmF0Y2gsIHNyYywKIAkJCQkJCSAg ICAgc3JjX3gsIHNyY195LAogCQkJCQkJICAgICBkc3RfeCwgZHN0X3ksCkBAIC0xMDE0LDMgKzEw NDgsMjcgQEAgdm9pZCBnZW45X3JlbmRlcl9jb3B5ZnVuYyhzdHJ1Y3QgaW50ZWxfYmF0Y2hidWZm ZXIgKmJhdGNoLAogCWdlbjZfcmVuZGVyX2ZsdXNoKGJhdGNoLCBjb250ZXh0LCBiYXRjaF9lbmQp OwogCWludGVsX2JhdGNoYnVmZmVyX3Jlc2V0KGJhdGNoKTsKIH0KKwordm9pZCBnZW45X3JlbmRl cl9jb3B5ZnVuYyhzdHJ1Y3QgaW50ZWxfYmF0Y2hidWZmZXIgKmJhdGNoLAorCQkJICBkcm1faW50 ZWxfY29udGV4dCAqY29udGV4dCwKKwkJCSAgY29uc3Qgc3RydWN0IGlndF9idWYgKnNyYywgdW5z aWduZWQgc3JjX3gsIHVuc2lnbmVkIHNyY195LAorCQkJICB1bnNpZ25lZCB3aWR0aCwgdW5zaWdu ZWQgaGVpZ2h0LAorCQkJICBjb25zdCBzdHJ1Y3QgaWd0X2J1ZiAqZHN0LCB1bnNpZ25lZCBkc3Rf eCwgdW5zaWduZWQgZHN0X3kpCisKK3sKKwlfZ2VuOV9yZW5kZXJfY29weWZ1bmMoYmF0Y2gsIGNv bnRleHQsIHNyYywgc3JjX3gsIHNyY195LAorCQkJICB3aWR0aCwgaGVpZ2h0LCBkc3QsIGRzdF94 LCBkc3RfeSwgcHNfa2VybmVsX2dlbjksCisJCQkgIHNpemVvZihwc19rZXJuZWxfZ2VuOSkpOwor fQorCit2b2lkIGdlbjExX3JlbmRlcl9jb3B5ZnVuYyhzdHJ1Y3QgaW50ZWxfYmF0Y2hidWZmZXIg KmJhdGNoLAorCQkJICBkcm1faW50ZWxfY29udGV4dCAqY29udGV4dCwKKwkJCSAgY29uc3Qgc3Ry dWN0IGlndF9idWYgKnNyYywgdW5zaWduZWQgc3JjX3gsIHVuc2lnbmVkIHNyY195LAorCQkJICB1 bnNpZ25lZCB3aWR0aCwgdW5zaWduZWQgaGVpZ2h0LAorCQkJICBjb25zdCBzdHJ1Y3QgaWd0X2J1 ZiAqZHN0LCB1bnNpZ25lZCBkc3RfeCwgdW5zaWduZWQgZHN0X3kpCisKK3sKKwlfZ2VuOV9yZW5k ZXJfY29weWZ1bmMoYmF0Y2gsIGNvbnRleHQsIHNyYywgc3JjX3gsIHNyY195LAorCQkJICB3aWR0 aCwgaGVpZ2h0LCBkc3QsIGRzdF94LCBkc3RfeSwgcHNfa2VybmVsX2dlbjExLAorCQkJICBzaXpl b2YocHNfa2VybmVsX2dlbjExKSk7Cit9Ci0tIAoyLjE0LjQKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCmlndC1kZXYgbWFpbGluZyBsaXN0CmlndC1kZXZA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vaWd0LWRldgo=