From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 62BE5C56202 for ; Wed, 25 Nov 2020 10:40:28 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 03D832063A for ; Wed, 25 Nov 2020 10:40:27 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 03D832063A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 150EA6E8FA; Wed, 25 Nov 2020 10:40:26 +0000 (UTC) Received: from mblankhorst.nl (mblankhorst.nl [IPv6:2a02:2308::216:3eff:fe92:dfa3]) by gabe.freedesktop.org (Postfix) with ESMTPS id 72C8C6E89A for ; Wed, 25 Nov 2020 10:40:24 +0000 (UTC) From: Maarten Lankhorst To: intel-gfx@lists.freedesktop.org Date: Wed, 25 Nov 2020 11:39:11 +0100 Message-Id: <20201125104011.606641-4-maarten.lankhorst@linux.intel.com> X-Mailer: git-send-email 2.29.2.222.g5d2a92d10f8 In-Reply-To: <20201125104011.606641-1-maarten.lankhorst@linux.intel.com> References: <20201125104011.606641-1-maarten.lankhorst@linux.intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH v5 03/63] drm/i915: Move cmd parser pinning to execbuffer X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: =?UTF-8?q?Thomas=20Hellstr=C3=B6m?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" V2UgbmVlZCB0byBnZXQgcmlkIG9mIGFsbG9jYXRpb25zIGluIHRoZSBjbWQgcGFyc2VyLCBiZWNh dXNlIGl0IG5lZWRzCnRvIGJlIGNhbGxlZCBmcm9tIGEgc2lnbmFsaW5nIGNvbnRleHQsIGZpcnN0 IG1vdmUgYWxsIHBpbm5pbmcgdG8KZXhlY2J1Ziwgd2hlcmUgd2UgYWxyZWFkeSBob2xkIGFsbCBs b2Nrcy4KCkFsbG9jYXRlIGp1bXBfd2hpdGVsaXN0IGluIHRoZSBleGVjYnVmZmVyLCBhbmQgYWRk IGFubm90YXRpb25zIGFyb3VuZAppbnRlbF9lbmdpbmVfY21kX3BhcnNlcigpLCB0byBlbnN1cmUg d2Ugb25seSBjYWxsIHRoZSBjb21tYW5kIHBhcnNlcgp3aXRob3V0IGFsbG9jYXRpbmcgYW55IG1l bW9yeSwgb3IgdGFraW5nIGFueSBsb2NrcyB3ZSdyZSBub3Qgc3VwcG9zZWQgdG8uCgpCZWNhdXNl IGk5MTVfZ2VtX29iamVjdF9nZXRfcGFnZSgpIG1heSBhbHNvIGFsbG9jYXRlIG1lbW9yeSwgYWRk IGEKcGF0aCB0byBpOTE1X2dlbV9vYmplY3RfZ2V0X3NnKCkgdGhhdCBwcmV2ZW50cyBtZW1vcnkg YWxsb2NhdGlvbnMsCmFuZCB3YWxrIHRoZSBzZyBsaXN0IG1hbnVhbGx5LiBJdCBzaG91bGQgYmUg c2ltaWxhcmx5IGZhc3QuCgpUaGlzIGhhcyB0aGUgYWRkZWQgYmVuZWZpdCBvZiBiZWluZyBhYmxl IHRvIGNhdGNoIGFsbCBtZW1vcnkgYWxsb2NhdGlvbgplcnJvcnMgYmVmb3JlIHRoZSBwb2ludCBv ZiBubyByZXR1cm4sIGFuZCByZXR1cm4gLUVOT01FTSBzYWZlbHkgdG8gdGhlCmV4ZWNidWYgc3Vi bWl0dGVyLgoKU2lnbmVkLW9mZi1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hv cnN0QGxpbnV4LmludGVsLmNvbT4KQWNrZWQtYnk6IFRob21hcyBIZWxsc3Ryw7ZtIDx0aG9tYXMu aGVsbHN0cm9tQGxpbnV4LmludGVsLmNvbT4KLS0tCiAuLi4vZ3B1L2RybS9pOTE1L2dlbS9pOTE1 X2dlbV9leGVjYnVmZmVyLmMgICAgfCAgNzQgKysrKysrKysrKysrLQogZHJpdmVycy9ncHUvZHJt L2k5MTUvZ2VtL2k5MTVfZ2VtX29iamVjdC5oICAgIHwgIDEwICstCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9nZW0vaTkxNV9nZW1fcGFnZXMuYyAgICAgfCAgMjEgKysrLQogZHJpdmVycy9ncHUvZHJt L2k5MTUvZ3QvaW50ZWxfZ2d0dC5jICAgICAgICAgIHwgICAyICstCiBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2NtZF9wYXJzZXIuYyAgICAgICAgfCAxMDQgKysrKysrKystLS0tLS0tLS0tCiBk cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2Rydi5oICAgICAgICAgICAgICAgfCAgIDcgKy0KIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfbWVtY3B5LmMgICAgICAgICAgICB8ICAgMiArLQogZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9tZW1jcHkuaCAgICAgICAgICAgIHwgICAyICstCiA4IGZp bGVzIGNoYW5nZWQsIDE0MiBpbnNlcnRpb25zKCspLCA4MCBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fZXhlY2J1ZmZlci5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX2V4ZWNidWZmZXIuYwppbmRleCAxOTA0ZTZl NWVhNjQuLmExOTkzMzY3OTJmYiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2Vt L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkx NV9nZW1fZXhlY2J1ZmZlci5jCkBAIC0yNyw2ICsyNyw3IEBACiAjaW5jbHVkZSAiaTkxNV9zd19m ZW5jZV93b3JrLmgiCiAjaW5jbHVkZSAiaTkxNV90cmFjZS5oIgogI2luY2x1ZGUgImk5MTVfdXNl cl9leHRlbnNpb25zLmgiCisjaW5jbHVkZSAiaTkxNV9tZW1jcHkuaCIKIAogc3RydWN0IGViX3Zt YSB7CiAJc3RydWN0IGk5MTVfdm1hICp2bWE7CkBAIC0yMjczLDI0ICsyMjc0LDQ1IEBAIHN0cnVj dCBlYl9wYXJzZV93b3JrIHsKIAlzdHJ1Y3QgaTkxNV92bWEgKnRyYW1wb2xpbmU7CiAJdW5zaWdu ZWQgbG9uZyBiYXRjaF9vZmZzZXQ7CiAJdW5zaWduZWQgbG9uZyBiYXRjaF9sZW5ndGg7CisJdW5z aWduZWQgbG9uZyAqanVtcF93aGl0ZWxpc3Q7CisJY29uc3Qgdm9pZCAqYmF0Y2hfbWFwOworCXZv aWQgKnNoYWRvd19tYXA7CiB9OwogCiBzdGF0aWMgaW50IF9fZWJfcGFyc2Uoc3RydWN0IGRtYV9m ZW5jZV93b3JrICp3b3JrKQogewogCXN0cnVjdCBlYl9wYXJzZV93b3JrICpwdyA9IGNvbnRhaW5l cl9vZih3b3JrLCB0eXBlb2YoKnB3KSwgYmFzZSk7CisJaW50IHJldDsKKwlib29sIGNvb2tpZTsK IAotCXJldHVybiBpbnRlbF9lbmdpbmVfY21kX3BhcnNlcihwdy0+ZW5naW5lLAotCQkJCSAgICAg ICBwdy0+YmF0Y2gsCi0JCQkJICAgICAgIHB3LT5iYXRjaF9vZmZzZXQsCi0JCQkJICAgICAgIHB3 LT5iYXRjaF9sZW5ndGgsCi0JCQkJICAgICAgIHB3LT5zaGFkb3csCi0JCQkJICAgICAgIHB3LT50 cmFtcG9saW5lKTsKKwljb29raWUgPSBkbWFfZmVuY2VfYmVnaW5fc2lnbmFsbGluZygpOworCXJl dCA9IGludGVsX2VuZ2luZV9jbWRfcGFyc2VyKHB3LT5lbmdpbmUsCisJCQkJICAgICAgcHctPmJh dGNoLAorCQkJCSAgICAgIHB3LT5iYXRjaF9vZmZzZXQsCisJCQkJICAgICAgcHctPmJhdGNoX2xl bmd0aCwKKwkJCQkgICAgICBwdy0+c2hhZG93LAorCQkJCSAgICAgIHB3LT5qdW1wX3doaXRlbGlz dCwKKwkJCQkgICAgICBwdy0+c2hhZG93X21hcCwKKwkJCQkgICAgICBwdy0+YmF0Y2hfbWFwKTsK KwlkbWFfZmVuY2VfZW5kX3NpZ25hbGxpbmcoY29va2llKTsKKworCXJldHVybiByZXQ7CiB9CiAK IHN0YXRpYyB2b2lkIF9fZWJfcGFyc2VfcmVsZWFzZShzdHJ1Y3QgZG1hX2ZlbmNlX3dvcmsgKndv cmspCiB7CiAJc3RydWN0IGViX3BhcnNlX3dvcmsgKnB3ID0gY29udGFpbmVyX29mKHdvcmssIHR5 cGVvZigqcHcpLCBiYXNlKTsKIAorCWlmICghSVNfRVJSX09SX05VTEwocHctPmp1bXBfd2hpdGVs aXN0KSkKKwkJa2ZyZWUocHctPmp1bXBfd2hpdGVsaXN0KTsKKworCWlmIChwdy0+YmF0Y2hfbWFw KQorCQlpOTE1X2dlbV9vYmplY3RfdW5waW5fbWFwKHB3LT5iYXRjaC0+b2JqKTsKKwllbHNlCisJ CWk5MTVfZ2VtX29iamVjdF91bnBpbl9wYWdlcyhwdy0+YmF0Y2gtPm9iaik7CisKKwlpOTE1X2dl bV9vYmplY3RfdW5waW5fbWFwKHB3LT5zaGFkb3ctPm9iaik7CisKIAlpZiAocHctPnRyYW1wb2xp bmUpCiAJCWk5MTVfYWN0aXZlX3JlbGVhc2UoJnB3LT50cmFtcG9saW5lLT5hY3RpdmUpOwogCWk5 MTVfYWN0aXZlX3JlbGVhc2UoJnB3LT5zaGFkb3ctPmFjdGl2ZSk7CkBAIC0yMzQwLDYgKzIzNjIs OCBAQCBzdGF0aWMgaW50IGViX3BhcnNlX3BpcGVsaW5lKHN0cnVjdCBpOTE1X2V4ZWNidWZmZXIg KmViLAogCQkJICAgICBzdHJ1Y3QgaTkxNV92bWEgKnRyYW1wb2xpbmUpCiB7CiAJc3RydWN0IGVi X3BhcnNlX3dvcmsgKnB3OworCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpiYXRjaCA9IGVi LT5iYXRjaC0+dm1hLT5vYmo7CisJYm9vbCBuZWVkc19jbGZsdXNoOwogCWludCBlcnI7CiAKIAlH RU1fQlVHX09OKG92ZXJmbG93c190eXBlKGViLT5iYXRjaF9zdGFydF9vZmZzZXQsIHB3LT5iYXRj aF9vZmZzZXQpKTsKQEAgLTIzNjMsNiArMjM4NywzNCBAQCBzdGF0aWMgaW50IGViX3BhcnNlX3Bp cGVsaW5lKHN0cnVjdCBpOTE1X2V4ZWNidWZmZXIgKmViLAogCQkJZ290byBlcnJfc2hhZG93Owog CX0KIAorCXB3LT5zaGFkb3dfbWFwID0gaTkxNV9nZW1fb2JqZWN0X3Bpbl9tYXAoc2hhZG93LT5v YmosIEk5MTVfTUFQX0ZPUkNFX1dCKTsKKwlpZiAoSVNfRVJSKHB3LT5zaGFkb3dfbWFwKSkgewor CQllcnIgPSBQVFJfRVJSKHB3LT5zaGFkb3dfbWFwKTsKKwkJZ290byBlcnJfdHJhbXBvbGluZTsK Kwl9CisKKwluZWVkc19jbGZsdXNoID0KKwkJIShiYXRjaC0+Y2FjaGVfY29oZXJlbnQgJiBJOTE1 X0JPX0NBQ0hFX0NPSEVSRU5UX0ZPUl9SRUFEKTsKKworCXB3LT5iYXRjaF9tYXAgPSBFUlJfUFRS KC1FTk9ERVYpOworCWlmIChuZWVkc19jbGZsdXNoICYmIGk5MTVfaGFzX21lbWNweV9mcm9tX3dj KCkpCisJCXB3LT5iYXRjaF9tYXAgPSBpOTE1X2dlbV9vYmplY3RfcGluX21hcChiYXRjaCwgSTkx NV9NQVBfV0MpOworCisJaWYgKElTX0VSUihwdy0+YmF0Y2hfbWFwKSkgeworCQllcnIgPSBpOTE1 X2dlbV9vYmplY3RfcGluX3BhZ2VzKGJhdGNoKTsKKwkJaWYgKGVycikKKwkJCWdvdG8gZXJyX3Vu bWFwX3NoYWRvdzsKKwkJcHctPmJhdGNoX21hcCA9IE5VTEw7CisJfQorCisJcHctPmp1bXBfd2hp dGVsaXN0ID0KKwkJaW50ZWxfZW5naW5lX2NtZF9wYXJzZXJfYWxsb2NfanVtcF93aGl0ZWxpc3Qo ZWItPmJhdGNoX2xlbiwKKwkJCQkJCQkgICAgIHRyYW1wb2xpbmUpOworCWlmIChJU19FUlIocHct Pmp1bXBfd2hpdGVsaXN0KSkgeworCQllcnIgPSBQVFJfRVJSKHB3LT5qdW1wX3doaXRlbGlzdCk7 CisJCWdvdG8gZXJyX3VubWFwX2JhdGNoOworCX0KKwogCWRtYV9mZW5jZV93b3JrX2luaXQoJnB3 LT5iYXNlLCAmZWJfcGFyc2Vfb3BzKTsKIAogCXB3LT5lbmdpbmUgPSBlYi0+ZW5naW5lOwpAQCAt MjQwMiw2ICsyNDU0LDE2IEBAIHN0YXRpYyBpbnQgZWJfcGFyc2VfcGlwZWxpbmUoc3RydWN0IGk5 MTVfZXhlY2J1ZmZlciAqZWIsCiAJZG1hX2ZlbmNlX3dvcmtfY29tbWl0X2ltbSgmcHctPmJhc2Up OwogCXJldHVybiBlcnI7CiAKK2Vycl91bm1hcF9iYXRjaDoKKwlpZiAocHctPmJhdGNoX21hcCkK KwkJaTkxNV9nZW1fb2JqZWN0X3VucGluX21hcChiYXRjaCk7CisJZWxzZQorCQlpOTE1X2dlbV9v YmplY3RfdW5waW5fcGFnZXMoYmF0Y2gpOworZXJyX3VubWFwX3NoYWRvdzoKKwlpOTE1X2dlbV9v YmplY3RfdW5waW5fbWFwKHNoYWRvdy0+b2JqKTsKK2Vycl90cmFtcG9saW5lOgorCWlmICh0cmFt cG9saW5lKQorCQlpOTE1X2FjdGl2ZV9yZWxlYXNlKCZ0cmFtcG9saW5lLT5hY3RpdmUpOwogZXJy X3NoYWRvdzoKIAlpOTE1X2FjdGl2ZV9yZWxlYXNlKCZzaGFkb3ctPmFjdGl2ZSk7CiBlcnJfYmF0 Y2g6CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fb2JqZWN0 LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkxNV9nZW1fb2JqZWN0LmgKaW5kZXggYmUx NDQ4NmY2M2E3Li45OWIxOGJhMGM0OGQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2dlbS9pOTE1X2dlbV9vYmplY3QuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0vaTkx NV9nZW1fb2JqZWN0LmgKQEAgLTI3NSwyMiArMjc1LDIyIEBAIHN0cnVjdCBzY2F0dGVybGlzdCAq CiBfX2k5MTVfZ2VtX29iamVjdF9nZXRfc2coc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9i aiwKIAkJCSBzdHJ1Y3QgaTkxNV9nZW1fb2JqZWN0X3BhZ2VfaXRlciAqaXRlciwKIAkJCSB1bnNp Z25lZCBpbnQgbiwKLQkJCSB1bnNpZ25lZCBpbnQgKm9mZnNldCk7CisJCQkgdW5zaWduZWQgaW50 ICpvZmZzZXQsIGJvb2wgYWxsb3dfYWxsb2MpOwogCiBzdGF0aWMgaW5saW5lIHN0cnVjdCBzY2F0 dGVybGlzdCAqCiBpOTE1X2dlbV9vYmplY3RfZ2V0X3NnKHN0cnVjdCBkcm1faTkxNV9nZW1fb2Jq ZWN0ICpvYmosCiAJCSAgICAgICB1bnNpZ25lZCBpbnQgbiwKLQkJICAgICAgIHVuc2lnbmVkIGlu dCAqb2Zmc2V0KQorCQkgICAgICAgdW5zaWduZWQgaW50ICpvZmZzZXQsIGJvb2wgYWxsb3dfYWxs b2MpCiB7Ci0JcmV0dXJuIF9faTkxNV9nZW1fb2JqZWN0X2dldF9zZyhvYmosICZvYmotPm1tLmdl dF9wYWdlLCBuLCBvZmZzZXQpOworCXJldHVybiBfX2k5MTVfZ2VtX29iamVjdF9nZXRfc2cob2Jq LCAmb2JqLT5tbS5nZXRfcGFnZSwgbiwgb2Zmc2V0LCBhbGxvd19hbGxvYyk7CiB9CiAKIHN0YXRp YyBpbmxpbmUgc3RydWN0IHNjYXR0ZXJsaXN0ICoKIGk5MTVfZ2VtX29iamVjdF9nZXRfc2dfZG1h KHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJCQkgICB1bnNpZ25lZCBpbnQgbiwK LQkJCSAgIHVuc2lnbmVkIGludCAqb2Zmc2V0KQorCQkJICAgdW5zaWduZWQgaW50ICpvZmZzZXQs IGJvb2wgYWxsb3dfYWxsb2MpCiB7Ci0JcmV0dXJuIF9faTkxNV9nZW1fb2JqZWN0X2dldF9zZyhv YmosICZvYmotPm1tLmdldF9kbWFfcGFnZSwgbiwgb2Zmc2V0KTsKKwlyZXR1cm4gX19pOTE1X2dl bV9vYmplY3RfZ2V0X3NnKG9iaiwgJm9iai0+bW0uZ2V0X2RtYV9wYWdlLCBuLCBvZmZzZXQsIGFs bG93X2FsbG9jKTsKIH0KIAogc3RydWN0IHBhZ2UgKgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX3BhZ2VzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9nZW0v aTkxNV9nZW1fcGFnZXMuYwppbmRleCBlMmM3YjJhNzg5NWYuLmNhMDc2MjAzZjVlOSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX3BhZ2VzLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvZ2VtL2k5MTVfZ2VtX3BhZ2VzLmMKQEAgLTQ0NSw3ICs0NDUsOCBA QCBzdHJ1Y3Qgc2NhdHRlcmxpc3QgKgogX19pOTE1X2dlbV9vYmplY3RfZ2V0X3NnKHN0cnVjdCBk cm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJCQkgc3RydWN0IGk5MTVfZ2VtX29iamVjdF9wYWdl X2l0ZXIgKml0ZXIsCiAJCQkgdW5zaWduZWQgaW50IG4sCi0JCQkgdW5zaWduZWQgaW50ICpvZmZz ZXQpCisJCQkgdW5zaWduZWQgaW50ICpvZmZzZXQsCisJCQkgYm9vbCBhbGxvd19hbGxvYykKIHsK IAljb25zdCBib29sIGRtYSA9IGl0ZXIgPT0gJm9iai0+bW0uZ2V0X2RtYV9wYWdlOwogCXN0cnVj dCBzY2F0dGVybGlzdCAqc2c7CkBAIC00NjcsNiArNDY4LDkgQEAgX19pOTE1X2dlbV9vYmplY3Rf Z2V0X3NnKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJaWYgKG4gPCBSRUFEX09O Q0UoaXRlci0+c2dfaWR4KSkKIAkJZ290byBsb29rdXA7CiAKKwlpZiAoIWFsbG93X2FsbG9jKQor CQlnb3RvIG1hbnVhbF9sb29rdXA7CisKIAltdXRleF9sb2NrKCZpdGVyLT5sb2NrKTsKIAogCS8q IFdlIHByZWZlciB0byByZXVzZSB0aGUgbGFzdCBzZyBzbyB0aGF0IHJlcGVhdGVkIGxvb2t1cCBv ZiB0aGlzCkBAIC01MTYsNyArNTIwLDE2IEBAIF9faTkxNV9nZW1fb2JqZWN0X2dldF9zZyhzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqLAogCWlmICh1bmxpa2VseShuIDwgaWR4KSkgLyog aW5zZXJ0aW9uIGNvbXBsZXRlZCBieSBhbm90aGVyIHRocmVhZCAqLwogCQlnb3RvIGxvb2t1cDsK IAotCS8qIEluIGNhc2Ugd2UgZmFpbGVkIHRvIGluc2VydCB0aGUgZW50cnkgaW50byB0aGUgcmFk aXh0cmVlLCB3ZSBuZWVkCisJZ290byBtYW51YWxfd2FsazsKKworbWFudWFsX2xvb2t1cDoKKwlp ZHggPSAwOworCXNnID0gb2JqLT5tbS5wYWdlcy0+c2dsOworCWNvdW50ID0gX19zZ19wYWdlX2Nv dW50KHNnKTsKKworbWFudWFsX3dhbGs6CisJLyoKKwkgKiBJbiBjYXNlIHdlIGZhaWxlZCB0byBp bnNlcnQgdGhlIGVudHJ5IGludG8gdGhlIHJhZGl4dHJlZSwgd2UgbmVlZAogCSAqIHRvIGxvb2sg YmV5b25kIHRoZSBjdXJyZW50IHNnLgogCSAqLwogCXdoaWxlIChpZHggKyBjb3VudCA8PSBuKSB7 CkBAIC01NjMsNyArNTc2LDcgQEAgaTkxNV9nZW1fb2JqZWN0X2dldF9wYWdlKHN0cnVjdCBkcm1f aTkxNV9nZW1fb2JqZWN0ICpvYmosIHVuc2lnbmVkIGludCBuKQogCiAJR0VNX0JVR19PTighaTkx NV9nZW1fb2JqZWN0X2hhc19zdHJ1Y3RfcGFnZShvYmopKTsKIAotCXNnID0gaTkxNV9nZW1fb2Jq ZWN0X2dldF9zZyhvYmosIG4sICZvZmZzZXQpOworCXNnID0gaTkxNV9nZW1fb2JqZWN0X2dldF9z ZyhvYmosIG4sICZvZmZzZXQsIHRydWUpOwogCXJldHVybiBudGhfcGFnZShzZ19wYWdlKHNnKSwg b2Zmc2V0KTsKIH0KIApAQCAtNTg5LDcgKzYwMiw3IEBAIGk5MTVfZ2VtX29iamVjdF9nZXRfZG1h X2FkZHJlc3NfbGVuKHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosCiAJc3RydWN0IHNj YXR0ZXJsaXN0ICpzZzsKIAl1bnNpZ25lZCBpbnQgb2Zmc2V0OwogCi0Jc2cgPSBpOTE1X2dlbV9v YmplY3RfZ2V0X3NnX2RtYShvYmosIG4sICZvZmZzZXQpOworCXNnID0gaTkxNV9nZW1fb2JqZWN0 X2dldF9zZ19kbWEob2JqLCBuLCAmb2Zmc2V0LCB0cnVlKTsKIAogCWlmIChsZW4pCiAJCSpsZW4g PSBzZ19kbWFfbGVuKHNnKSAtIChvZmZzZXQgPDwgUEFHRV9TSElGVCk7CmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9nZ3R0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9ndC9pbnRlbF9nZ3R0LmMKaW5kZXggY2Y5NDUyNWJlMmMxLi42MGJkMmM4ZWQ4YjAgMTAwNjQ0 Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d0L2ludGVsX2dndHQuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9ndC9pbnRlbF9nZ3R0LmMKQEAgLTEzODMsNyArMTM4Myw3IEBAIGludGVs X3BhcnRpYWxfcGFnZXMoY29uc3Qgc3RydWN0IGk5MTVfZ2d0dF92aWV3ICp2aWV3LAogCWlmIChy ZXQpCiAJCWdvdG8gZXJyX3NnX2FsbG9jOwogCi0JaXRlciA9IGk5MTVfZ2VtX29iamVjdF9nZXRf c2dfZG1hKG9iaiwgdmlldy0+cGFydGlhbC5vZmZzZXQsICZvZmZzZXQpOworCWl0ZXIgPSBpOTE1 X2dlbV9vYmplY3RfZ2V0X3NnX2RtYShvYmosIHZpZXctPnBhcnRpYWwub2Zmc2V0LCAmb2Zmc2V0 LCB0cnVlKTsKIAlHRU1fQlVHX09OKCFpdGVyKTsKIAogCXNnID0gc3QtPnNnbDsKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfY21kX3BhcnNlci5jIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9jbWRfcGFyc2VyLmMKaW5kZXggOTMyNjU5NTFmZGJiLi44ODgzYTdkNDk2 NGYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfY21kX3BhcnNlci5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfY21kX3BhcnNlci5jCkBAIC0xMTM2LDM4ICsx MTM2LDE5IEBAIGZpbmRfcmVnKGNvbnN0IHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSwg dTMyIGFkZHIpCiAvKiBSZXR1cm5zIGEgdm1hcCdkIHBvaW50ZXIgdG8gZHN0X29iaiwgd2hpY2gg dGhlIGNhbGxlciBtdXN0IHVubWFwICovCiBzdGF0aWMgdTMyICpjb3B5X2JhdGNoKHN0cnVjdCBk cm1faTkxNV9nZW1fb2JqZWN0ICpkc3Rfb2JqLAogCQkgICAgICAgc3RydWN0IGRybV9pOTE1X2dl bV9vYmplY3QgKnNyY19vYmosCi0JCSAgICAgICB1bnNpZ25lZCBsb25nIG9mZnNldCwgdW5zaWdu ZWQgbG9uZyBsZW5ndGgpCisJCSAgICAgICB1bnNpZ25lZCBsb25nIG9mZnNldCwgdW5zaWduZWQg bG9uZyBsZW5ndGgsCisJCSAgICAgICB2b2lkICpkc3QsIGNvbnN0IHZvaWQgKnNyYykKIHsKLQli b29sIG5lZWRzX2NsZmx1c2g7Ci0Jdm9pZCAqZHN0LCAqc3JjOwotCWludCByZXQ7Ci0KLQlkc3Qg PSBpOTE1X2dlbV9vYmplY3RfcGluX21hcChkc3Rfb2JqLCBJOTE1X01BUF9GT1JDRV9XQik7Ci0J aWYgKElTX0VSUihkc3QpKQotCQlyZXR1cm4gZHN0OwotCi0JcmV0ID0gaTkxNV9nZW1fb2JqZWN0 X3Bpbl9wYWdlcyhzcmNfb2JqKTsKLQlpZiAocmV0KSB7Ci0JCWk5MTVfZ2VtX29iamVjdF91bnBp bl9tYXAoZHN0X29iaik7Ci0JCXJldHVybiBFUlJfUFRSKHJldCk7Ci0JfQotCi0JbmVlZHNfY2xm bHVzaCA9CisJYm9vbCBuZWVkc19jbGZsdXNoID0KIAkJIShzcmNfb2JqLT5jYWNoZV9jb2hlcmVu dCAmIEk5MTVfQk9fQ0FDSEVfQ09IRVJFTlRfRk9SX1JFQUQpOwogCi0Jc3JjID0gRVJSX1BUUigt RU5PREVWKTsKLQlpZiAobmVlZHNfY2xmbHVzaCAmJiBpOTE1X2hhc19tZW1jcHlfZnJvbV93Yygp KSB7Ci0JCXNyYyA9IGk5MTVfZ2VtX29iamVjdF9waW5fbWFwKHNyY19vYmosIEk5MTVfTUFQX1dD KTsKLQkJaWYgKCFJU19FUlIoc3JjKSkgewotCQkJaTkxNV91bmFsaWduZWRfbWVtY3B5X2Zyb21f d2MoZHN0LAotCQkJCQkJICAgICAgc3JjICsgb2Zmc2V0LAotCQkJCQkJICAgICAgbGVuZ3RoKTsK LQkJCWk5MTVfZ2VtX29iamVjdF91bnBpbl9tYXAoc3JjX29iaik7Ci0JCX0KLQl9Ci0JaWYgKElT X0VSUihzcmMpKSB7Ci0JCXVuc2lnbmVkIGxvbmcgeCwgbjsKKwlpZiAoc3JjKSB7CisJCUdFTV9C VUdfT04oIW5lZWRzX2NsZmx1c2gpOworCQlpOTE1X3VuYWxpZ25lZF9tZW1jcHlfZnJvbV93Yyhk c3QsIHNyYyArIG9mZnNldCwgbGVuZ3RoKTsKKwl9IGVsc2UgeworCQlzdHJ1Y3Qgc2NhdHRlcmxp c3QgKnNnOwogCQl2b2lkICpwdHI7CisJCXVuc2lnbmVkIGludCB4LCBzZ19vZnM7CiAKIAkJLyoK IAkJICogV2UgY2FuIGF2b2lkIGNsZmx1c2hpbmcgcGFydGlhbCBjYWNoZWxpbmVzIGJlZm9yZSB0 aGUgd3JpdGUKQEAgLTExODMsMjMgKzExNjQsMzIgQEAgc3RhdGljIHUzMiAqY29weV9iYXRjaChz dHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqZHN0X29iaiwKIAogCQlwdHIgPSBkc3Q7CiAJCXgg PSBvZmZzZXRfaW5fcGFnZShvZmZzZXQpOwotCQlmb3IgKG4gPSBvZmZzZXQgPj4gUEFHRV9TSElG VDsgbGVuZ3RoOyBuKyspIHsKLQkJCWludCBsZW4gPSBtaW4obGVuZ3RoLCBQQUdFX1NJWkUgLSB4 KTsKLQotCQkJc3JjID0ga21hcF9hdG9taWMoaTkxNV9nZW1fb2JqZWN0X2dldF9wYWdlKHNyY19v YmosIG4pKTsKLQkJCWlmIChuZWVkc19jbGZsdXNoKQotCQkJCWRybV9jbGZsdXNoX3ZpcnRfcmFu Z2Uoc3JjICsgeCwgbGVuKTsKLQkJCW1lbWNweShwdHIsIHNyYyArIHgsIGxlbik7Ci0JCQlrdW5t YXBfYXRvbWljKHNyYyk7Ci0KLQkJCXB0ciArPSBsZW47Ci0JCQlsZW5ndGggLT0gbGVuOwotCQkJ eCA9IDA7CisKKwkJc2cgPSBpOTE1X2dlbV9vYmplY3RfZ2V0X3NnKHNyY19vYmosIG9mZnNldCA+ PiBQQUdFX1NISUZULCAmc2dfb2ZzLCBmYWxzZSk7CisKKwkJd2hpbGUgKGxlbmd0aCkgeworCQkJ dW5zaWduZWQgbG9uZyBzZ19tYXggPSBzZy0+bGVuZ3RoID4+IFBBR0VfU0hJRlQ7CisKKwkJCWZv ciAoOyBsZW5ndGggJiYgc2dfb2ZzIDwgc2dfbWF4OyBzZ19vZnMrKykgeworCQkJCXVuc2lnbmVk IGxvbmcgbGVuID0gbWluKGxlbmd0aCwgUEFHRV9TSVpFIC0geCk7CisJCQkJdm9pZCAqbWFwOwor CisJCQkJbWFwID0ga21hcF9hdG9taWMobnRoX3BhZ2Uoc2dfcGFnZShzZyksIHNnX29mcykpOwor CQkJCWlmIChuZWVkc19jbGZsdXNoKQorCQkJCQlkcm1fY2xmbHVzaF92aXJ0X3JhbmdlKG1hcCAr IHgsIGxlbik7CisJCQkJbWVtY3B5KHB0ciwgbWFwICsgeCwgbGVuKTsKKwkJCQlrdW5tYXBfYXRv bWljKG1hcCk7CisKKwkJCQlwdHIgKz0gbGVuOworCQkJCWxlbmd0aCAtPSBsZW47CisJCQkJeCA9 IDA7CisJCQl9CisKKwkJCXNnX29mcyA9IDA7CisJCQlzZyA9IHNnX25leHQoc2cpOwogCQl9CiAJ fQogCi0JaTkxNV9nZW1fb2JqZWN0X3VucGluX3BhZ2VzKHNyY19vYmopOwotCiAJLyogZHN0X29i aiBpcyByZXR1cm5lZCB3aXRoIHZtYXAgcGlubmVkICovCiAJcmV0dXJuIGRzdDsKIH0KQEAgLTEz NTksOSArMTM0OSw2IEBAIHN0YXRpYyBpbnQgY2hlY2tfYmJzdGFydCh1MzIgKmNtZCwgdTMyIG9m ZnNldCwgdTMyIGxlbmd0aCwKIAlpZiAodGFyZ2V0X2NtZF9pbmRleCA9PSBvZmZzZXQpCiAJCXJl dHVybiAwOwogCi0JaWYgKElTX0VSUihqdW1wX3doaXRlbGlzdCkpCi0JCXJldHVybiBQVFJfRVJS KGp1bXBfd2hpdGVsaXN0KTsKLQogCWlmICghdGVzdF9iaXQodGFyZ2V0X2NtZF9pbmRleCwganVt cF93aGl0ZWxpc3QpKSB7CiAJCURSTV9ERUJVRygiQ01EOiBCQl9TVEFSVCB0byAweCVsbHggbm90 IGEgcHJldmlvdXNseSBleGVjdXRlZCBjbWRcbiIsCiAJCQkgIGp1bXBfdGFyZ2V0KTsKQEAgLTEz NzEsMTAgKzEzNTgsMTQgQEAgc3RhdGljIGludCBjaGVja19iYnN0YXJ0KHUzMiAqY21kLCB1MzIg b2Zmc2V0LCB1MzIgbGVuZ3RoLAogCXJldHVybiAwOwogfQogCi1zdGF0aWMgdW5zaWduZWQgbG9u ZyAqYWxsb2Nfd2hpdGVsaXN0KHUzMiBiYXRjaF9sZW5ndGgpCit1bnNpZ25lZCBsb25nICppbnRl bF9lbmdpbmVfY21kX3BhcnNlcl9hbGxvY19qdW1wX3doaXRlbGlzdCh1MzIgYmF0Y2hfbGVuZ3Ro LAorCQkJCQkJCSAgICBib29sIHRyYW1wb2xpbmUpCiB7CiAJdW5zaWduZWQgbG9uZyAqam1wOwog CisJaWYgKHRyYW1wb2xpbmUpCisJCXJldHVybiBOVUxMOworCiAJLyoKIAkgKiBXZSBleHBlY3Qg YmF0Y2hfbGVuZ3RoIHRvIGJlIGxlc3MgdGhhbiAyNTZLaUIgZm9yIGtub3duIHVzZXJzLAogCSAq IGkuZS4gd2UgbmVlZCBhdCBtb3N0IGFuIDhLaUIgYml0bWFwIGFsbG9jYXRpb24gd2hpY2ggc2hv dWxkIGJlCkBAIC0xNDE3LDE0ICsxNDA4LDE2IEBAIGludCBpbnRlbF9lbmdpbmVfY21kX3BhcnNl cihzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUsCiAJCQkgICAgdW5zaWduZWQgbG9uZyBi YXRjaF9vZmZzZXQsCiAJCQkgICAgdW5zaWduZWQgbG9uZyBiYXRjaF9sZW5ndGgsCiAJCQkgICAg c3RydWN0IGk5MTVfdm1hICpzaGFkb3csCi0JCQkgICAgYm9vbCB0cmFtcG9saW5lKQorCQkJICAg IHVuc2lnbmVkIGxvbmcgKmp1bXBfd2hpdGVsaXN0LAorCQkJICAgIHZvaWQgKnNoYWRvd19tYXAs CisJCQkgICAgY29uc3Qgdm9pZCAqYmF0Y2hfbWFwKQogewogCXUzMiAqY21kLCAqYmF0Y2hfZW5k LCBvZmZzZXQgPSAwOwogCXN0cnVjdCBkcm1faTkxNV9jbWRfZGVzY3JpcHRvciBkZWZhdWx0X2Rl c2MgPSBub29wX2Rlc2M7CiAJY29uc3Qgc3RydWN0IGRybV9pOTE1X2NtZF9kZXNjcmlwdG9yICpk ZXNjID0gJmRlZmF1bHRfZGVzYzsKLQl1bnNpZ25lZCBsb25nICpqdW1wX3doaXRlbGlzdDsKIAl1 NjQgYmF0Y2hfYWRkciwgc2hhZG93X2FkZHI7CiAJaW50IHJldCA9IDA7CisJYm9vbCB0cmFtcG9s aW5lID0gIWp1bXBfd2hpdGVsaXN0OwogCiAJR0VNX0JVR19PTighSVNfQUxJR05FRChiYXRjaF9v ZmZzZXQsIHNpemVvZigqY21kKSkpOwogCUdFTV9CVUdfT04oIUlTX0FMSUdORUQoYmF0Y2hfbGVu Z3RoLCBzaXplb2YoKmNtZCkpKTsKQEAgLTE0MzIsMTYgKzE0MjUsOCBAQCBpbnQgaW50ZWxfZW5n aW5lX2NtZF9wYXJzZXIoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lLAogCQkJCSAgICAg YmF0Y2gtPnNpemUpKTsKIAlHRU1fQlVHX09OKCFiYXRjaF9sZW5ndGgpOwogCi0JY21kID0gY29w eV9iYXRjaChzaGFkb3ctPm9iaiwgYmF0Y2gtPm9iaiwgYmF0Y2hfb2Zmc2V0LCBiYXRjaF9sZW5n dGgpOwotCWlmIChJU19FUlIoY21kKSkgewotCQlEUk1fREVCVUcoIkNNRDogRmFpbGVkIHRvIGNv cHkgYmF0Y2hcbiIpOwotCQlyZXR1cm4gUFRSX0VSUihjbWQpOwotCX0KLQotCWp1bXBfd2hpdGVs aXN0ID0gTlVMTDsKLQlpZiAoIXRyYW1wb2xpbmUpCi0JCS8qIERlZmVyIGZhaWx1cmUgdW50aWwg YXR0ZW1wdGVkIHVzZSAqLwotCQlqdW1wX3doaXRlbGlzdCA9IGFsbG9jX3doaXRlbGlzdChiYXRj aF9sZW5ndGgpOworCWNtZCA9IGNvcHlfYmF0Y2goc2hhZG93LT5vYmosIGJhdGNoLT5vYmosIGJh dGNoX29mZnNldCwgYmF0Y2hfbGVuZ3RoLAorCQkJIHNoYWRvd19tYXAsIGJhdGNoX21hcCk7CiAK IAlzaGFkb3dfYWRkciA9IGdlbjhfY2Fub25pY2FsX2FkZHIoc2hhZG93LT5ub2RlLnN0YXJ0KTsK IAliYXRjaF9hZGRyID0gZ2VuOF9jYW5vbmljYWxfYWRkcihiYXRjaC0+bm9kZS5zdGFydCArIGJh dGNoX29mZnNldCk7CkBAIC0xNTQ5LDkgKzE1MzQsNiBAQCBpbnQgaW50ZWxfZW5naW5lX2NtZF9w YXJzZXIoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lLAogCQlkcm1fY2xmbHVzaF92aXJ0 X3JhbmdlKHB0ciwgKHZvaWQgKikoY21kICsgMSkgLSBwdHIpOwogCX0KIAotCWlmICghSVNfRVJS X09SX05VTEwoanVtcF93aGl0ZWxpc3QpKQotCQlrZnJlZShqdW1wX3doaXRlbGlzdCk7Ci0JaTkx NV9nZW1fb2JqZWN0X3VucGluX21hcChzaGFkb3ctPm9iaik7CiAJcmV0dXJuIHJldDsKIH0KIApk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggMTViZThkZWJhZTU0Li5hN2U3ZWZhZmUzNTAgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMTk1MiwxMiArMTk1MiwxNyBAQCBjb25zdCBjaGFy ICppOTE1X2NhY2hlX2xldmVsX3N0cihzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSwgaW50 IHR5cGUpOwogaW50IGk5MTVfY21kX3BhcnNlcl9nZXRfdmVyc2lvbihzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYpOwogdm9pZCBpbnRlbF9lbmdpbmVfaW5pdF9jbWRfcGFyc2VyKHN0 cnVjdCBpbnRlbF9lbmdpbmVfY3MgKmVuZ2luZSk7CiB2b2lkIGludGVsX2VuZ2luZV9jbGVhbnVw X2NtZF9wYXJzZXIoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqZW5naW5lKTsKK3Vuc2lnbmVkIGxv bmcgKmludGVsX2VuZ2luZV9jbWRfcGFyc2VyX2FsbG9jX2p1bXBfd2hpdGVsaXN0KHUzMiBiYXRj aF9sZW5ndGgsCisJCQkJCQkJICAgIGJvb2wgdHJhbXBvbGluZSk7CisKIGludCBpbnRlbF9lbmdp bmVfY21kX3BhcnNlcihzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICplbmdpbmUsCiAJCQkgICAgc3Ry dWN0IGk5MTVfdm1hICpiYXRjaCwKIAkJCSAgICB1bnNpZ25lZCBsb25nIGJhdGNoX29mZnNldCwK IAkJCSAgICB1bnNpZ25lZCBsb25nIGJhdGNoX2xlbmd0aCwKIAkJCSAgICBzdHJ1Y3QgaTkxNV92 bWEgKnNoYWRvdywKLQkJCSAgICBib29sIHRyYW1wb2xpbmUpOworCQkJICAgIHVuc2lnbmVkIGxv bmcgKmp1bXBfd2hpdGVsaXN0LAorCQkJICAgIHZvaWQgKnNoYWRvd19tYXAsCisJCQkgICAgY29u c3Qgdm9pZCAqYmF0Y2hfbWFwKTsKICNkZWZpbmUgSTkxNV9DTURfUEFSU0VSX1RSQU1QT0xJTkVf U0laRSA4CiAKIC8qIGludGVsX2RldmljZV9pbmZvLmMgKi8KZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfbWVtY3B5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X21l bWNweS5jCmluZGV4IDdiM2I4M2JkNWFiOC4uMWIwMjFhNDkwMmRlIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X21lbWNweS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfbWVtY3B5LmMKQEAgLTEzNSw3ICsxMzUsNyBAQCBib29sIGk5MTVfbWVtY3B5X2Zyb21f d2Modm9pZCAqZHN0LCBjb25zdCB2b2lkICpzcmMsIHVuc2lnbmVkIGxvbmcgbGVuKQogICogYWNj ZXB0cyB0aGF0IGl0cyBhcmd1bWVudHMgbWF5IG5vdCBiZSBhbGlnbmVkLCBidXQgYXJlIHZhbGlk IGZvciB0aGUKICAqIHBvdGVudGlhbCAxNi1ieXRlIHJlYWQgcGFzdCB0aGUgZW5kLgogICovCi12 b2lkIGk5MTVfdW5hbGlnbmVkX21lbWNweV9mcm9tX3djKHZvaWQgKmRzdCwgdm9pZCAqc3JjLCB1 bnNpZ25lZCBsb25nIGxlbikKK3ZvaWQgaTkxNV91bmFsaWduZWRfbWVtY3B5X2Zyb21fd2Modm9p ZCAqZHN0LCBjb25zdCB2b2lkICpzcmMsIHVuc2lnbmVkIGxvbmcgbGVuKQogewogCXVuc2lnbmVk IGxvbmcgYWRkcjsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9tZW1j cHkuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfbWVtY3B5LmgKaW5kZXggZTM2ZDMwZWRk OTg3Li4zZGYwNjNhMzI5M2IgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf bWVtY3B5LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9tZW1jcHkuaApAQCAtMTMs NyArMTMsNyBAQCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZTsKIHZvaWQgaTkxNV9tZW1jcHlfaW5p dF9lYXJseShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqaTkxNSk7CiAKIGJvb2wgaTkxNV9tZW1j cHlfZnJvbV93Yyh2b2lkICpkc3QsIGNvbnN0IHZvaWQgKnNyYywgdW5zaWduZWQgbG9uZyBsZW4p Owotdm9pZCBpOTE1X3VuYWxpZ25lZF9tZW1jcHlfZnJvbV93Yyh2b2lkICpkc3QsIHZvaWQgKnNy YywgdW5zaWduZWQgbG9uZyBsZW4pOwordm9pZCBpOTE1X3VuYWxpZ25lZF9tZW1jcHlfZnJvbV93 Yyh2b2lkICpkc3QsIGNvbnN0IHZvaWQgKnNyYywgdW5zaWduZWQgbG9uZyBsZW4pOwogCiAvKiBU aGUgbW92bnRkcWEgaW5zdHJ1Y3Rpb25zIHVzZWQgZm9yIG1lbWNweS1mcm9tLXdjIHJlcXVpcmUg MTYtYnl0ZSBhbGlnbm1lbnQsCiAgKiBhcyB3ZWxsIGFzIFNTRTQuMSBzdXBwb3J0LiBpOTE1X21l bWNweV9mcm9tX3djKCkgd2lsbCByZXBvcnQgaWYgaXQgY2Fubm90Ci0tIAoyLjI5LjIuMjIyLmc1 ZDJhOTJkMTBmOAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4 Cg==