From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: [PATCH 7/8] drm: Add old state pointer to CRTC .enable() helper function Date: Tue, 27 Jun 2017 23:38:42 +0300 Message-ID: <20170627203843.27004-8-laurent.pinchart+renesas@ideasonboard.com> References: <20170627203843.27004-1-laurent.pinchart+renesas@ideasonboard.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from galahad.ideasonboard.com (galahad.ideasonboard.com [185.26.127.97]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4D4DB6E3F9 for ; Tue, 27 Jun 2017 20:39:00 +0000 (UTC) In-Reply-To: <20170627203843.27004-1-laurent.pinchart+renesas@ideasonboard.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: Daniel Vetter List-Id: dri-devel@lists.freedesktop.org VGhlIG9sZCBzdGF0ZSBpcyB1c2VmdWwgZm9yIGRyaXZlcnMgdGhhdCBuZWVkIHRvIHBlcmZvcm0g b3BlcmF0aW9ucyBhdAplbmFibGUgdGltZSB0aGF0IGRlcGVuZCBvbiB0aGUgdHJhbnNpdGlvbiBi ZXR3ZWVuIHRoZSBvbGQgYW5kIG5ldwpzdGF0ZXMuCgpXaGlsZSBhdCBpdCwgcmVuYW1lIHRoZSBv cGVyYXRpb24gdG8gLmF0b21pY19lbmFibGUoKSB0byBiZSBjb25zaXN0ZW50CndpdGggLmF0b21p Y19kaXNhYmxlKCksIGFzIHRoZSAuZW5hYmxlKCkgb3BlcmF0aW9uIGlzIHVzZWQgYnkgYXRvbWlj CmhlbHBlcnMgb25seS4KClNpZ25lZC1vZmYtYnk6IExhdXJlbnQgUGluY2hhcnQgPGxhdXJlbnQu cGluY2hhcnQrcmVuZXNhc0BpZGVhc29uYm9hcmQuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9h cmMvYXJjcGd1X2NydGMuYyAgICAgICAgICAgICAgIHwgIDUgKystLQogZHJpdmVycy9ncHUvZHJt L2FybS9oZGxjZF9jcnRjLmMgICAgICAgICAgICAgICAgfCAgNSArKy0tCiBkcml2ZXJzL2dwdS9k cm0vYXJtL21hbGlkcF9jcnRjLmMgICAgICAgICAgICAgICB8ICA1ICsrLS0KIGRyaXZlcnMvZ3B1 L2RybS9hdG1lbC1obGNkYy9hdG1lbF9obGNkY19jcnRjLmMgIHwgIDUgKystLQogZHJpdmVycy9n cHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMgICAgICAgICAgICAgfCAgNyArKystLQogZHJpdmVy cy9ncHUvZHJtL2RybV9zaW1wbGVfa21zX2hlbHBlci5jICAgICAgICAgfCAgNSArKy0tCiBkcml2 ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fY3J0Yy5jICAgICAgICB8ICA1ICsrLS0KIGRy aXZlcnMvZ3B1L2RybS9mc2wtZGN1L2ZzbF9kY3VfZHJtX2NydGMuYyAgICAgIHwgIDUgKystLQog ZHJpdmVycy9ncHUvZHJtL2hpc2lsaWNvbi9oaWJtYy9oaWJtY19kcm1fZGUuYyAgfCAgNSArKy0t CiBkcml2ZXJzL2dwdS9kcm0vaGlzaWxpY29uL2tpcmluL2tpcmluX2RybV9hZGUuYyB8ICA1ICsr LS0KIGRyaXZlcnMvZ3B1L2RybS9pbXgvaXB1djMtY3J0Yy5jICAgICAgICAgICAgICAgIHwgIDUg KystLQogZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fY3J0Yy5jICAgICAgICAgfCAg NSArKy0tCiBkcml2ZXJzL2dwdS9kcm0vbWVzb24vbWVzb25fY3J0Yy5jICAgICAgICAgICAgICB8 ICA1ICsrLS0KIGRyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDQvbWRwNF9jcnRjLmMgICAgICAg IHwgIDUgKystLQogZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1X2NydGMuYyAgICAg ICAgfCAgNSArKy0tCiBkcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2NydGMuYyAgICAgICAg ICAgICB8ICA1ICsrLS0KIGRyaXZlcnMvZ3B1L2RybS9xeGwvcXhsX2Rpc3BsYXkuYyAgICAgICAg ICAgICAgIHwgIDUgKystLQogZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV9jcnRjLmMg ICAgICAgICAgfCAgNSArKy0tCiBkcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJt X3ZvcC5jICAgICB8ICA1ICsrLS0KIGRyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2NydGMuYyAgICAg ICAgICAgICAgICAgIHwgIDUgKystLQogZHJpdmVycy9ncHUvZHJtL3N0bS9sdGRjLmMgICAgICAg ICAgICAgICAgICAgICAgfCAgNSArKy0tCiBkcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfY3J0 Yy5jICAgICAgICAgICAgICB8ICA1ICsrLS0KIGRyaXZlcnMvZ3B1L2RybS90ZWdyYS9kYy5jICAg ICAgICAgICAgICAgICAgICAgIHwgIDUgKystLQogZHJpdmVycy9ncHUvZHJtL3RpbGNkYy90aWxj ZGNfY3J0Yy5jICAgICAgICAgICAgfCAgOCArKysrKy0KIGRyaXZlcnMvZ3B1L2RybS92YzQvdmM0 X2NydGMuYyAgICAgICAgICAgICAgICAgIHwgIDUgKystLQogZHJpdmVycy9ncHUvZHJtL3ZpcnRp by92aXJ0Z3B1X2Rpc3BsYXkuYyAgICAgICAgfCAgNSArKy0tCiBkcml2ZXJzL2dwdS9kcm0vdm13 Z2Z4L3Ztd2dmeF9sZHUuYyAgICAgICAgICAgICB8ICA3ICsrKy0tCiBkcml2ZXJzL2dwdS9kcm0v dm13Z2Z4L3Ztd2dmeF9zY3JuLmMgICAgICAgICAgICB8ICA3ICsrKy0tCiBkcml2ZXJzL2dwdS9k cm0vdm13Z2Z4L3Ztd2dmeF9zdGR1LmMgICAgICAgICAgICB8ICA1ICsrLS0KIGRyaXZlcnMvZ3B1 L2RybS96dGUvenhfdm91LmMgICAgICAgICAgICAgICAgICAgIHwgIDUgKystLQogaW5jbHVkZS9k cm0vZHJtX21vZGVzZXRfaGVscGVyX3Z0YWJsZXMuaCAgICAgICAgfCAzOCArKysrKysrKysrKysr LS0tLS0tLS0tLS0tCiAzMSBmaWxlcyBjaGFuZ2VkLCAxMTcgaW5zZXJ0aW9ucygrKSwgODAgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FyYy9hcmNwZ3VfY3J0Yy5j IGIvZHJpdmVycy9ncHUvZHJtL2FyYy9hcmNwZ3VfY3J0Yy5jCmluZGV4IDFmMzA2NzgxYzlkNS4u YzliYzZhOTBhYzgzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYXJjL2FyY3BndV9jcnRj LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FyYy9hcmNwZ3VfY3J0Yy5jCkBAIC0xMTksNyArMTE5 LDggQEAgc3RhdGljIHZvaWQgYXJjX3BndV9jcnRjX21vZGVfc2V0X25vZmIoc3RydWN0IGRybV9j cnRjICpjcnRjKQogCWNsa19zZXRfcmF0ZShhcmNwZ3UtPmNsaywgbS0+Y3J0Y19jbG9jayAqIDEw MDApOwogfQogCi1zdGF0aWMgdm9pZCBhcmNfcGd1X2NydGNfZW5hYmxlKHN0cnVjdCBkcm1fY3J0 YyAqY3J0YykKK3N0YXRpYyB2b2lkIGFyY19wZ3VfY3J0Y19hdG9taWNfZW5hYmxlKHN0cnVjdCBk cm1fY3J0YyAqY3J0YywKKwkJCQkgICAgICAgc3RydWN0IGRybV9jcnRjX3N0YXRlICpvbGRfc3Rh dGUpCiB7CiAJc3RydWN0IGFyY3BndV9kcm1fcHJpdmF0ZSAqYXJjcGd1ID0gY3J0Y190b19hcmNw Z3VfcHJpdihjcnRjKTsKIApAQCAtMTYxLDkgKzE2Miw5IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qg ZHJtX2NydGNfaGVscGVyX2Z1bmNzIGFyY19wZ3VfY3J0Y19oZWxwZXJfZnVuY3MgPSB7CiAJLm1v ZGVfc2V0CT0gZHJtX2hlbHBlcl9jcnRjX21vZGVfc2V0LAogCS5tb2RlX3NldF9iYXNlCT0gZHJt X2hlbHBlcl9jcnRjX21vZGVfc2V0X2Jhc2UsCiAJLm1vZGVfc2V0X25vZmIJPSBhcmNfcGd1X2Ny dGNfbW9kZV9zZXRfbm9mYiwKLQkuZW5hYmxlCQk9IGFyY19wZ3VfY3J0Y19lbmFibGUsCiAJLmRp c2FibGUJPSBhcmNfcGd1X2NydGNfZGlzYWJsZSwKIAkuYXRvbWljX2JlZ2luCT0gYXJjX3BndV9j cnRjX2F0b21pY19iZWdpbiwKKwkuYXRvbWljX2VuYWJsZQk9IGFyY19wZ3VfY3J0Y19hdG9taWNf ZW5hYmxlLAogfTsKIAogc3RhdGljIHZvaWQgYXJjX3BndV9wbGFuZV9hdG9taWNfdXBkYXRlKHN0 cnVjdCBkcm1fcGxhbmUgKnBsYW5lLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FybS9o ZGxjZF9jcnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0vYXJtL2hkbGNkX2NydGMuYwppbmRleCBkNjdi NmYxNWU4YjguLjJiN2Y0ZjA1ZDkxZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FybS9o ZGxjZF9jcnRjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FybS9oZGxjZF9jcnRjLmMKQEAgLTE2 NSw3ICsxNjUsOCBAQCBzdGF0aWMgdm9pZCBoZGxjZF9jcnRjX21vZGVfc2V0X25vZmIoc3RydWN0 IGRybV9jcnRjICpjcnRjKQogCWNsa19zZXRfcmF0ZShoZGxjZC0+Y2xrLCBtLT5jcnRjX2Nsb2Nr ICogMTAwMCk7CiB9CiAKLXN0YXRpYyB2b2lkIGhkbGNkX2NydGNfZW5hYmxlKHN0cnVjdCBkcm1f Y3J0YyAqY3J0YykKK3N0YXRpYyB2b2lkIGhkbGNkX2NydGNfYXRvbWljX2VuYWJsZShzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMsCisJCQkJICAgICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm9sZF9zdGF0 ZSkKIHsKIAlzdHJ1Y3QgaGRsY2RfZHJtX3ByaXZhdGUgKmhkbGNkID0gY3J0Y190b19oZGxjZF9w cml2KGNydGMpOwogCkBAIC0yMTgsMTAgKzIxOSwxMCBAQCBzdGF0aWMgdm9pZCBoZGxjZF9jcnRj X2F0b21pY19iZWdpbihzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiB9CiAKIHN0YXRpYyBjb25zdCBz dHJ1Y3QgZHJtX2NydGNfaGVscGVyX2Z1bmNzIGhkbGNkX2NydGNfaGVscGVyX2Z1bmNzID0gewot CS5lbmFibGUJCT0gaGRsY2RfY3J0Y19lbmFibGUsCiAJLmRpc2FibGUJPSBoZGxjZF9jcnRjX2Rp c2FibGUsCiAJLmF0b21pY19jaGVjawk9IGhkbGNkX2NydGNfYXRvbWljX2NoZWNrLAogCS5hdG9t aWNfYmVnaW4JPSBoZGxjZF9jcnRjX2F0b21pY19iZWdpbiwKKwkuYXRvbWljX2VuYWJsZQk9IGhk bGNkX2NydGNfYXRvbWljX2VuYWJsZSwKIH07CiAKIHN0YXRpYyBpbnQgaGRsY2RfcGxhbmVfYXRv bWljX2NoZWNrKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2FybS9tYWxpZHBfY3J0Yy5jIGIvZHJpdmVycy9ncHUvZHJtL2FybS9tYWxpZHBfY3J0 Yy5jCmluZGV4IDRiYjM4YTIxZWZlYy4uOGU1YjFjMDE4MWFiIDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vYXJtL21hbGlkcF9jcnRjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FybS9tYWxp ZHBfY3J0Yy5jCkBAIC00Niw3ICs0Niw4IEBAIHN0YXRpYyBlbnVtIGRybV9tb2RlX3N0YXR1cyBt YWxpZHBfY3J0Y19tb2RlX3ZhbGlkKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAlyZXR1cm4gTU9E RV9PSzsKIH0KIAotc3RhdGljIHZvaWQgbWFsaWRwX2NydGNfZW5hYmxlKHN0cnVjdCBkcm1fY3J0 YyAqY3J0YykKK3N0YXRpYyB2b2lkIG1hbGlkcF9jcnRjX2F0b21pY19lbmFibGUoc3RydWN0IGRy bV9jcnRjICpjcnRjLAorCQkJCSAgICAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xkX3N0YXRl KQogewogCXN0cnVjdCBtYWxpZHBfZHJtICptYWxpZHAgPSBjcnRjX3RvX21hbGlkcF9kZXZpY2Uo Y3J0Yyk7CiAJc3RydWN0IG1hbGlkcF9od19kZXZpY2UgKmh3ZGV2ID0gbWFsaWRwLT5kZXY7CkBA IC00MDgsOSArNDA5LDkgQEAgc3RhdGljIGludCBtYWxpZHBfY3J0Y19hdG9taWNfY2hlY2soc3Ry dWN0IGRybV9jcnRjICpjcnRjLAogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2hlbHBl cl9mdW5jcyBtYWxpZHBfY3J0Y19oZWxwZXJfZnVuY3MgPSB7CiAJLm1vZGVfdmFsaWQgPSBtYWxp ZHBfY3J0Y19tb2RlX3ZhbGlkLAotCS5lbmFibGUgPSBtYWxpZHBfY3J0Y19lbmFibGUsCiAJLmRp c2FibGUgPSBtYWxpZHBfY3J0Y19kaXNhYmxlLAogCS5hdG9taWNfY2hlY2sgPSBtYWxpZHBfY3J0 Y19hdG9taWNfY2hlY2ssCisJLmF0b21pY19lbmFibGUgPSBtYWxpZHBfY3J0Y19hdG9taWNfZW5h YmxlLAogfTsKIAogc3RhdGljIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqbWFsaWRwX2NydGNfZHVw bGljYXRlX3N0YXRlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9hdG1lbC1obGNkYy9hdG1lbF9obGNkY19jcnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0v YXRtZWwtaGxjZGMvYXRtZWxfaGxjZGNfY3J0Yy5jCmluZGV4IGY2YjhjNTkwOGEyMC4uZTU0ZTUw MzE4MGY0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYXRtZWwtaGxjZGMvYXRtZWxfaGxj ZGNfY3J0Yy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9hdG1lbC1obGNkYy9hdG1lbF9obGNkY19j cnRjLmMKQEAgLTE4Myw3ICsxODMsOCBAQCBzdGF0aWMgdm9pZCBhdG1lbF9obGNkY19jcnRjX2Rp c2FibGUoc3RydWN0IGRybV9jcnRjICpjKQogCXBtX3J1bnRpbWVfcHV0X3N5bmMoZGV2LT5kZXYp OwogfQogCi1zdGF0aWMgdm9pZCBhdG1lbF9obGNkY19jcnRjX2VuYWJsZShzdHJ1Y3QgZHJtX2Ny dGMgKmMpCitzdGF0aWMgdm9pZCBhdG1lbF9obGNkY19jcnRjX2F0b21pY19lbmFibGUoc3RydWN0 IGRybV9jcnRjICpjLAorCQkJCQkgICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm9sZF9zdGF0ZSkK IHsKIAlzdHJ1Y3QgZHJtX2RldmljZSAqZGV2ID0gYy0+ZGV2OwogCXN0cnVjdCBhdG1lbF9obGNk Y19jcnRjICpjcnRjID0gZHJtX2NydGNfdG9fYXRtZWxfaGxjZGNfY3J0YyhjKTsKQEAgLTMyMCwx MCArMzIxLDEwIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2NydGNfaGVscGVyX2Z1bmNzIGxj ZGNfY3J0Y19oZWxwZXJfZnVuY3MgPSB7CiAJLm1vZGVfc2V0X25vZmIgPSBhdG1lbF9obGNkY19j cnRjX21vZGVfc2V0X25vZmIsCiAJLm1vZGVfc2V0X2Jhc2UgPSBkcm1faGVscGVyX2NydGNfbW9k ZV9zZXRfYmFzZSwKIAkuZGlzYWJsZSA9IGF0bWVsX2hsY2RjX2NydGNfZGlzYWJsZSwKLQkuZW5h YmxlID0gYXRtZWxfaGxjZGNfY3J0Y19lbmFibGUsCiAJLmF0b21pY19jaGVjayA9IGF0bWVsX2hs Y2RjX2NydGNfYXRvbWljX2NoZWNrLAogCS5hdG9taWNfYmVnaW4gPSBhdG1lbF9obGNkY19jcnRj X2F0b21pY19iZWdpbiwKIAkuYXRvbWljX2ZsdXNoID0gYXRtZWxfaGxjZGNfY3J0Y19hdG9taWNf Zmx1c2gsCisJLmF0b21pY19lbmFibGUgPSBhdG1lbF9obGNkY19jcnRjX2F0b21pY19lbmFibGUs CiB9OwogCiBzdGF0aWMgdm9pZCBhdG1lbF9obGNkY19jcnRjX2Rlc3Ryb3koc3RydWN0IGRybV9j cnRjICpjKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMg Yi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYwppbmRleCAyZjI2OWU0MjY3ZGEu LjIzZTQ2NjFhNjJmZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVs cGVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMKQEAgLTEwNjks MTIgKzEwNjksMTMgQEAgdm9pZCBkcm1fYXRvbWljX2hlbHBlcl9jb21taXRfbW9kZXNldF9lbmFi bGVzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJCQkJCSAgICAgIHN0cnVjdCBkcm1fYXRvbWlj X3N0YXRlICpvbGRfc3RhdGUpCiB7CiAJc3RydWN0IGRybV9jcnRjICpjcnRjOworCXN0cnVjdCBk cm1fY3J0Y19zdGF0ZSAqb2xkX2NydGNfc3RhdGU7CiAJc3RydWN0IGRybV9jcnRjX3N0YXRlICpu ZXdfY3J0Y19zdGF0ZTsKIAlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yOwogCXN0cnVj dCBkcm1fY29ubmVjdG9yX3N0YXRlICpuZXdfY29ubl9zdGF0ZTsKIAlpbnQgaTsKIAotCWZvcl9l YWNoX25ld19jcnRjX2luX3N0YXRlKG9sZF9zdGF0ZSwgY3J0YywgbmV3X2NydGNfc3RhdGUsIGkp IHsKKwlmb3JfZWFjaF9vbGRuZXdfY3J0Y19pbl9zdGF0ZShvbGRfc3RhdGUsIGNydGMsIG9sZF9j cnRjX3N0YXRlLCBuZXdfY3J0Y19zdGF0ZSwgaSkgewogCQljb25zdCBzdHJ1Y3QgZHJtX2NydGNf aGVscGVyX2Z1bmNzICpmdW5jczsKIAogCQkvKiBOZWVkIHRvIGZpbHRlciBvdXQgQ1JUQ3Mgd2hl cmUgb25seSBwbGFuZXMgY2hhbmdlLiAqLwpAQCAtMTA5MCw4ICsxMDkxLDggQEAgdm9pZCBkcm1f YXRvbWljX2hlbHBlcl9jb21taXRfbW9kZXNldF9lbmFibGVzKHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsCiAJCQlEUk1fREVCVUdfQVRPTUlDKCJlbmFibGluZyBbQ1JUQzolZDolc11cbiIsCiAJCQkJ CSBjcnRjLT5iYXNlLmlkLCBjcnRjLT5uYW1lKTsKIAotCQkJaWYgKGZ1bmNzLT5lbmFibGUpCi0J CQkJZnVuY3MtPmVuYWJsZShjcnRjKTsKKwkJCWlmIChmdW5jcy0+YXRvbWljX2VuYWJsZSkKKwkJ CQlmdW5jcy0+YXRvbWljX2VuYWJsZShjcnRjLCBvbGRfY3J0Y19zdGF0ZSk7CiAJCQllbHNlCiAJ CQkJZnVuY3MtPmNvbW1pdChjcnRjKTsKIAkJfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2RybV9zaW1wbGVfa21zX2hlbHBlci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9zaW1wbGVfa21z X2hlbHBlci5jCmluZGV4IGUwODRmOWY4Y2E2Ni4uNThjMjdhYjE3NTZmIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vZHJtX3NpbXBsZV9rbXNfaGVscGVyLmMKKysrIGIvZHJpdmVycy9ncHUv ZHJtL2RybV9zaW1wbGVfa21zX2hlbHBlci5jCkBAIC00MCw3ICs0MCw4IEBAIHN0YXRpYyBpbnQg ZHJtX3NpbXBsZV9rbXNfY3J0Y19jaGVjayhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJcmV0dXJu IGRybV9hdG9taWNfYWRkX2FmZmVjdGVkX3BsYW5lcyhzdGF0ZS0+c3RhdGUsIGNydGMpOwogfQog Ci1zdGF0aWMgdm9pZCBkcm1fc2ltcGxlX2ttc19jcnRjX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMg KmNydGMpCitzdGF0aWMgdm9pZCBkcm1fc2ltcGxlX2ttc19jcnRjX2VuYWJsZShzdHJ1Y3QgZHJt X2NydGMgKmNydGMsCisJCQkJICAgICAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xkX3N0YXRl KQogewogCXN0cnVjdCBkcm1fc2ltcGxlX2Rpc3BsYXlfcGlwZSAqcGlwZTsKIApAQCAtNjQsOCAr NjUsOCBAQCBzdGF0aWMgdm9pZCBkcm1fc2ltcGxlX2ttc19jcnRjX2Rpc2FibGUoc3RydWN0IGRy bV9jcnRjICpjcnRjKQogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2hlbHBlcl9mdW5j cyBkcm1fc2ltcGxlX2ttc19jcnRjX2hlbHBlcl9mdW5jcyA9IHsKIAkuYXRvbWljX2NoZWNrID0g ZHJtX3NpbXBsZV9rbXNfY3J0Y19jaGVjaywKKwkuYXRvbWljX2VuYWJsZSA9IGRybV9zaW1wbGVf a21zX2NydGNfZW5hYmxlLAogCS5kaXNhYmxlID0gZHJtX3NpbXBsZV9rbXNfY3J0Y19kaXNhYmxl LAotCS5lbmFibGUgPSBkcm1fc2ltcGxlX2ttc19jcnRjX2VuYWJsZSwKIH07CiAKIHN0YXRpYyBj b25zdCBzdHJ1Y3QgZHJtX2NydGNfZnVuY3MgZHJtX3NpbXBsZV9rbXNfY3J0Y19mdW5jcyA9IHsK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV9jcnRjLmMgYi9k cml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fY3J0Yy5jCmluZGV4IGQ3Mjc3N2Y2NDEx YS4uYjdlMmZhZGI2NDQyIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5v c19kcm1fY3J0Yy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV9jcnRj LmMKQEAgLTIxLDcgKzIxLDggQEAKICNpbmNsdWRlICJleHlub3NfZHJtX2Rydi5oIgogI2luY2x1 ZGUgImV4eW5vc19kcm1fcGxhbmUuaCIKIAotc3RhdGljIHZvaWQgZXh5bm9zX2RybV9jcnRjX2Vu YWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCitzdGF0aWMgdm9pZCBleHlub3NfZHJtX2NydGNf YXRvbWljX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCisJCQkJCSAgc3RydWN0IGRybV9j cnRjX3N0YXRlICpvbGRfc3RhdGUpCiB7CiAJc3RydWN0IGV4eW5vc19kcm1fY3J0YyAqZXh5bm9z X2NydGMgPSB0b19leHlub3NfY3J0YyhjcnRjKTsKIApAQCAtODIsMTEgKzgzLDExIEBAIHN0YXRp YyB2b2lkIGV4eW5vc19jcnRjX2F0b21pY19mbHVzaChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiB9 CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2NydGNfaGVscGVyX2Z1bmNzIGV4eW5vc19jcnRj X2hlbHBlcl9mdW5jcyA9IHsKLQkuZW5hYmxlCQk9IGV4eW5vc19kcm1fY3J0Y19lbmFibGUsCiAJ LmRpc2FibGUJPSBleHlub3NfZHJtX2NydGNfZGlzYWJsZSwKIAkuYXRvbWljX2NoZWNrCT0gZXh5 bm9zX2NydGNfYXRvbWljX2NoZWNrLAogCS5hdG9taWNfYmVnaW4JPSBleHlub3NfY3J0Y19hdG9t aWNfYmVnaW4sCiAJLmF0b21pY19mbHVzaAk9IGV4eW5vc19jcnRjX2F0b21pY19mbHVzaCwKKwku YXRvbWljX2VuYWJsZQk9IGV4eW5vc19kcm1fY3J0Y19hdG9taWNfZW5hYmxlLAogfTsKIAogdm9p ZCBleHlub3NfY3J0Y19oYW5kbGVfZXZlbnQoc3RydWN0IGV4eW5vc19kcm1fY3J0YyAqZXh5bm9z X2NydGMpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZnNsLWRjdS9mc2xfZGN1X2RybV9j cnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0vZnNsLWRjdS9mc2xfZGN1X2RybV9jcnRjLmMKaW5kZXgg Y2M0ZTk0NGExZDNjLi4wZTM3NTI0MzdlNDQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9m c2wtZGN1L2ZzbF9kY3VfZHJtX2NydGMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZnNsLWRjdS9m c2xfZGN1X2RybV9jcnRjLmMKQEAgLTYzLDcgKzYzLDggQEAgc3RhdGljIHZvaWQgZnNsX2RjdV9k cm1fY3J0Y19hdG9taWNfZGlzYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJY2xrX2Rpc2Fi bGVfdW5wcmVwYXJlKGZzbF9kZXYtPnBpeF9jbGspOwogfQogCi1zdGF0aWMgdm9pZCBmc2xfZGN1 X2RybV9jcnRjX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCitzdGF0aWMgdm9pZCBmc2xf ZGN1X2RybV9jcnRjX2F0b21pY19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjLAorCQkJCQkg ICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm9sZF9zdGF0ZSkKIHsKIAlzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2ID0gY3J0Yy0+ZGV2OwogCXN0cnVjdCBmc2xfZGN1X2RybV9kZXZpY2UgKmZzbF9kZXYg PSBkZXYtPmRldl9wcml2YXRlOwpAQCAtMTMzLDcgKzEzNCw3IEBAIHN0YXRpYyB2b2lkIGZzbF9k Y3VfZHJtX2NydGNfbW9kZV9zZXRfbm9mYihzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiBzdGF0aWMg Y29uc3Qgc3RydWN0IGRybV9jcnRjX2hlbHBlcl9mdW5jcyBmc2xfZGN1X2RybV9jcnRjX2hlbHBl cl9mdW5jcyA9IHsKIAkuYXRvbWljX2Rpc2FibGUgPSBmc2xfZGN1X2RybV9jcnRjX2F0b21pY19k aXNhYmxlLAogCS5hdG9taWNfZmx1c2ggPSBmc2xfZGN1X2RybV9jcnRjX2F0b21pY19mbHVzaCwK LQkuZW5hYmxlID0gZnNsX2RjdV9kcm1fY3J0Y19lbmFibGUsCisJLmF0b21pY19lbmFibGUgPSBm c2xfZGN1X2RybV9jcnRjX2F0b21pY19lbmFibGUsCiAJLm1vZGVfc2V0X25vZmIgPSBmc2xfZGN1 X2RybV9jcnRjX21vZGVfc2V0X25vZmIsCiB9OwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaGlzaWxpY29uL2hpYm1jL2hpYm1jX2RybV9kZS5jIGIvZHJpdmVycy9ncHUvZHJtL2hpc2ls aWNvbi9oaWJtYy9oaWJtY19kcm1fZGUuYwppbmRleCA1OTU0MmJkZGM5ODAuLjQ5ZWY0N2MwYzgx YSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2hpc2lsaWNvbi9oaWJtYy9oaWJtY19kcm1f ZGUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaGlzaWxpY29uL2hpYm1jL2hpYm1jX2RybV9kZS5j CkBAIC0xOTIsNyArMTkyLDggQEAgc3RhdGljIHN0cnVjdCBkcm1fcGxhbmUgKmhpYm1jX3BsYW5l X2luaXQoc3RydWN0IGhpYm1jX2RybV9wcml2YXRlICpwcml2KQogCXJldHVybiBwbGFuZTsKIH0K IAotc3RhdGljIHZvaWQgaGlibWNfY3J0Y19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQor c3RhdGljIHZvaWQgaGlibWNfY3J0Y19hdG9taWNfZW5hYmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0 YywKKwkJCQkgICAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xkX3N0YXRlKQogewogCXVuc2ln bmVkIGludCByZWc7CiAJc3RydWN0IGhpYm1jX2RybV9wcml2YXRlICpwcml2ID0gY3J0Yy0+ZGV2 LT5kZXZfcHJpdmF0ZTsKQEAgLTQ1MywxMSArNDU0LDExIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qg ZHJtX2NydGNfZnVuY3MgaGlibWNfY3J0Y19mdW5jcyA9IHsKIH07CiAKIHN0YXRpYyBjb25zdCBz dHJ1Y3QgZHJtX2NydGNfaGVscGVyX2Z1bmNzIGhpYm1jX2NydGNfaGVscGVyX2Z1bmNzID0gewot CS5lbmFibGUJCT0gaGlibWNfY3J0Y19lbmFibGUsCiAJLmRpc2FibGUJPSBoaWJtY19jcnRjX2Rp c2FibGUsCiAJLm1vZGVfc2V0X25vZmIJPSBoaWJtY19jcnRjX21vZGVfc2V0X25vZmIsCiAJLmF0 b21pY19iZWdpbgk9IGhpYm1jX2NydGNfYXRvbWljX2JlZ2luLAogCS5hdG9taWNfZmx1c2gJPSBo aWJtY19jcnRjX2F0b21pY19mbHVzaCwKKwkuYXRvbWljX2VuYWJsZQk9IGhpYm1jX2NydGNfYXRv bWljX2VuYWJsZSwKIH07CiAKIGludCBoaWJtY19kZV9pbml0KHN0cnVjdCBoaWJtY19kcm1fcHJp dmF0ZSAqcHJpdikKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9oaXNpbGljb24va2lyaW4v a2lyaW5fZHJtX2FkZS5jIGIvZHJpdmVycy9ncHUvZHJtL2hpc2lsaWNvbi9raXJpbi9raXJpbl9k cm1fYWRlLmMKaW5kZXggYzk2YzIyOGE5ODk4Li44ZTAwODE4YjI0ZmMgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9oaXNpbGljb24va2lyaW4va2lyaW5fZHJtX2FkZS5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9oaXNpbGljb24va2lyaW4va2lyaW5fZHJtX2FkZS5jCkBAIC00NjcsNyArNDY3 LDggQEAgc3RhdGljIHZvaWQgYWRlX2R1bXBfcmVncyh2b2lkIF9faW9tZW0gKmJhc2UpCiBzdGF0 aWMgdm9pZCBhZGVfZHVtcF9yZWdzKHZvaWQgX19pb21lbSAqYmFzZSkgeyB9CiAjZW5kaWYKIAot c3RhdGljIHZvaWQgYWRlX2NydGNfZW5hYmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKK3N0YXRp YyB2b2lkIGFkZV9jcnRjX2F0b21pY19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjLAorCQkJ CSAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xkX3N0YXRlKQogewogCXN0cnVjdCBhZGVfY3J0 YyAqYWNydGMgPSB0b19hZGVfY3J0YyhjcnRjKTsKIAlzdHJ1Y3QgYWRlX2h3X2N0eCAqY3R4ID0g YWNydGMtPmN0eDsKQEAgLTU1MywxMSArNTU0LDExIEBAIHN0YXRpYyB2b2lkIGFkZV9jcnRjX2F0 b21pY19mbHVzaChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiB9CiAKIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgZHJtX2NydGNfaGVscGVyX2Z1bmNzIGFkZV9jcnRjX2hlbHBlcl9mdW5jcyA9IHsKLQkuZW5h YmxlCQk9IGFkZV9jcnRjX2VuYWJsZSwKIAkuZGlzYWJsZQk9IGFkZV9jcnRjX2Rpc2FibGUsCiAJ Lm1vZGVfc2V0X25vZmIJPSBhZGVfY3J0Y19tb2RlX3NldF9ub2ZiLAogCS5hdG9taWNfYmVnaW4J PSBhZGVfY3J0Y19hdG9taWNfYmVnaW4sCiAJLmF0b21pY19mbHVzaAk9IGFkZV9jcnRjX2F0b21p Y19mbHVzaCwKKwkuYXRvbWljX2VuYWJsZQk9IGFkZV9jcnRjX2F0b21pY19lbmFibGUsCiB9Owog CiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2Z1bmNzIGFkZV9jcnRjX2Z1bmNzID0gewpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1jcnRjLmMgYi9kcml2ZXJzL2dw dS9kcm0vaW14L2lwdXYzLWNydGMuYwppbmRleCA1NDU2YzE1ZDk2MmMuLjUzZTBiMjRiZWRhNiAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1jcnRjLmMKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2lteC9pcHV2My1jcnRjLmMKQEAgLTUwLDcgKzUwLDggQEAgc3RhdGljIGlubGlu ZSBzdHJ1Y3QgaXB1X2NydGMgKnRvX2lwdV9jcnRjKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIAly ZXR1cm4gY29udGFpbmVyX29mKGNydGMsIHN0cnVjdCBpcHVfY3J0YywgYmFzZSk7CiB9CiAKLXN0 YXRpYyB2b2lkIGlwdV9jcnRjX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCitzdGF0aWMg dm9pZCBpcHVfY3J0Y19hdG9taWNfZW5hYmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKKwkJCQkg ICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm9sZF9zdGF0ZSkKIHsKIAlzdHJ1Y3QgaXB1X2NydGMg KmlwdV9jcnRjID0gdG9faXB1X2NydGMoY3J0Yyk7CiAJc3RydWN0IGlwdV9zb2MgKmlwdSA9IGRl dl9nZXRfZHJ2ZGF0YShpcHVfY3J0Yy0+ZGV2LT5wYXJlbnQpOwpAQCAtMjkzLDcgKzI5NCw3IEBA IHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2NydGNfaGVscGVyX2Z1bmNzIGlwdV9oZWxwZXJfZnVu Y3MgPSB7CiAJLmF0b21pY19jaGVjayA9IGlwdV9jcnRjX2F0b21pY19jaGVjaywKIAkuYXRvbWlj X2JlZ2luID0gaXB1X2NydGNfYXRvbWljX2JlZ2luLAogCS5hdG9taWNfZGlzYWJsZSA9IGlwdV9j cnRjX2F0b21pY19kaXNhYmxlLAotCS5lbmFibGUgPSBpcHVfY3J0Y19lbmFibGUsCisJLmF0b21p Y19lbmFibGUgPSBpcHVfY3J0Y19hdG9taWNfZW5hYmxlLAogfTsKIAogc3RhdGljIHZvaWQgaXB1 X3B1dF9yZXNvdXJjZXMoc3RydWN0IGlwdV9jcnRjICppcHVfY3J0YykKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2NydGMuYyBiL2RyaXZlcnMvZ3B1L2RybS9t ZWRpYXRlay9tdGtfZHJtX2NydGMuYwppbmRleCA2NTgyZTFmNTZkMzcuLjU5NzFiMDgyN2QxYiAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fY3J0Yy5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX2NydGMuYwpAQCAtMzY2LDcgKzM2Niw4 IEBAIHN0YXRpYyB2b2lkIG10a19jcnRjX2RkcF9jb25maWcoc3RydWN0IGRybV9jcnRjICpjcnRj KQogCX0KIH0KIAotc3RhdGljIHZvaWQgbXRrX2RybV9jcnRjX2VuYWJsZShzdHJ1Y3QgZHJtX2Ny dGMgKmNydGMpCitzdGF0aWMgdm9pZCBtdGtfZHJtX2NydGNfYXRvbWljX2VuYWJsZShzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMsCisJCQkJICAgICAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xkX3N0 YXRlKQogewogCXN0cnVjdCBtdGtfZHJtX2NydGMgKm10a19jcnRjID0gdG9fbXRrX2NydGMoY3J0 Yyk7CiAJc3RydWN0IG10a19kZHBfY29tcCAqb3ZsID0gbXRrX2NydGMtPmRkcF9jb21wWzBdOwpA QCAtNDg3LDEwICs0ODgsMTAgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19mdW5jcyBt dGtfY3J0Y19mdW5jcyA9IHsKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2NydGNfaGVscGVyX2Z1 bmNzIG10a19jcnRjX2hlbHBlcl9mdW5jcyA9IHsKIAkubW9kZV9maXh1cAk9IG10a19kcm1fY3J0 Y19tb2RlX2ZpeHVwLAogCS5tb2RlX3NldF9ub2ZiCT0gbXRrX2RybV9jcnRjX21vZGVfc2V0X25v ZmIsCi0JLmVuYWJsZQkJPSBtdGtfZHJtX2NydGNfZW5hYmxlLAogCS5kaXNhYmxlCT0gbXRrX2Ry bV9jcnRjX2Rpc2FibGUsCiAJLmF0b21pY19iZWdpbgk9IG10a19kcm1fY3J0Y19hdG9taWNfYmVn aW4sCiAJLmF0b21pY19mbHVzaAk9IG10a19kcm1fY3J0Y19hdG9taWNfZmx1c2gsCisJLmF0b21p Y19lbmFibGUJPSBtdGtfZHJtX2NydGNfYXRvbWljX2VuYWJsZSwKIH07CiAKIHN0YXRpYyBpbnQg bXRrX2RybV9jcnRjX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRybSwKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9tZXNvbi9tZXNvbl9jcnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0vbWVzb24v bWVzb25fY3J0Yy5jCmluZGV4IGM5ODZlYjAzYjlkOS4uNmYxNDgzMDdiMGUwIDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vbWVzb24vbWVzb25fY3J0Yy5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9tZXNvbi9tZXNvbl9jcnRjLmMKQEAgLTc5LDcgKzc5LDggQEAgc3RhdGljIGNvbnN0IHN0cnVj dCBkcm1fY3J0Y19mdW5jcyBtZXNvbl9jcnRjX2Z1bmNzID0gewogCiB9OwogCi1zdGF0aWMgdm9p ZCBtZXNvbl9jcnRjX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCitzdGF0aWMgdm9pZCBt ZXNvbl9jcnRjX2F0b21pY19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjLAorCQkJCSAgICAg c3RydWN0IGRybV9jcnRjX3N0YXRlICpvbGRfc3RhdGUpCiB7CiAJc3RydWN0IG1lc29uX2NydGMg Km1lc29uX2NydGMgPSB0b19tZXNvbl9jcnRjKGNydGMpOwogCXN0cnVjdCBkcm1fY3J0Y19zdGF0 ZSAqY3J0Y19zdGF0ZSA9IGNydGMtPnN0YXRlOwpAQCAtMTQ5LDEwICsxNTAsMTAgQEAgc3RhdGlj IHZvaWQgbWVzb25fY3J0Y19hdG9taWNfZmx1c2goc3RydWN0IGRybV9jcnRjICpjcnRjLAogfQog CiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2hlbHBlcl9mdW5jcyBtZXNvbl9jcnRjX2hl bHBlcl9mdW5jcyA9IHsKLQkuZW5hYmxlCQk9IG1lc29uX2NydGNfZW5hYmxlLAogCS5kaXNhYmxl CT0gbWVzb25fY3J0Y19kaXNhYmxlLAogCS5hdG9taWNfYmVnaW4JPSBtZXNvbl9jcnRjX2F0b21p Y19iZWdpbiwKIAkuYXRvbWljX2ZsdXNoCT0gbWVzb25fY3J0Y19hdG9taWNfZmx1c2gsCisJLmF0 b21pY19lbmFibGUJPSBtZXNvbl9jcnRjX2F0b21pY19lbmFibGUsCiB9OwogCiB2b2lkIG1lc29u X2NydGNfaXJxKHN0cnVjdCBtZXNvbl9kcm0gKnByaXYpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vbXNtL21kcC9tZHA0L21kcDRfY3J0Yy5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAv bWRwNC9tZHA0X2NydGMuYwppbmRleCA2MTVlMWRlZjY0ZDkuLjljMjAxMzNmM2Y4ZCAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNC9tZHA0X2NydGMuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA0L21kcDRfY3J0Yy5jCkBAIC0yOTUsNyArMjk1LDggQEAg c3RhdGljIHZvaWQgbWRwNF9jcnRjX2Rpc2FibGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQogCW1k cDRfY3J0Yy0+ZW5hYmxlZCA9IGZhbHNlOwogfQogCi1zdGF0aWMgdm9pZCBtZHA0X2NydGNfZW5h YmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKK3N0YXRpYyB2b2lkIG1kcDRfY3J0Y19hdG9taWNf ZW5hYmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKKwkJCQkgICAgc3RydWN0IGRybV9jcnRjX3N0 YXRlICpvbGRfc3RhdGUpCiB7CiAJc3RydWN0IG1kcDRfY3J0YyAqbWRwNF9jcnRjID0gdG9fbWRw NF9jcnRjKGNydGMpOwogCXN0cnVjdCBtZHA0X2ttcyAqbWRwNF9rbXMgPSBnZXRfa21zKGNydGMp OwpAQCAtNDkzLDEwICs0OTQsMTAgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19mdW5j cyBtZHA0X2NydGNfZnVuY3MgPSB7CiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2hlbHBl cl9mdW5jcyBtZHA0X2NydGNfaGVscGVyX2Z1bmNzID0gewogCS5tb2RlX3NldF9ub2ZiID0gbWRw NF9jcnRjX21vZGVfc2V0X25vZmIsCiAJLmRpc2FibGUgPSBtZHA0X2NydGNfZGlzYWJsZSwKLQku ZW5hYmxlID0gbWRwNF9jcnRjX2VuYWJsZSwKIAkuYXRvbWljX2NoZWNrID0gbWRwNF9jcnRjX2F0 b21pY19jaGVjaywKIAkuYXRvbWljX2JlZ2luID0gbWRwNF9jcnRjX2F0b21pY19iZWdpbiwKIAku YXRvbWljX2ZsdXNoID0gbWRwNF9jcnRjX2F0b21pY19mbHVzaCwKKwkuYXRvbWljX2VuYWJsZSA9 IG1kcDRfY3J0Y19hdG9taWNfZW5hYmxlLAogfTsKIAogc3RhdGljIHZvaWQgbWRwNF9jcnRjX3Zi bGFua19pcnEoc3RydWN0IG1kcF9pcnEgKmlycSwgdWludDMyX3QgaXJxc3RhdHVzKQpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1X2NydGMuYyBiL2RyaXZlcnMv Z3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9jcnRjLmMKaW5kZXggY2I1NDE1ZDZjMDRiLi5kMzlk OWQyNGQxNjkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9j cnRjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1X2NydGMuYwpAQCAt NDI5LDcgKzQyOSw4IEBAIHN0YXRpYyB2b2lkIG1kcDVfY3J0Y19kaXNhYmxlKHN0cnVjdCBkcm1f Y3J0YyAqY3J0YykKIAltZHA1X2NydGMtPmVuYWJsZWQgPSBmYWxzZTsKIH0KIAotc3RhdGljIHZv aWQgbWRwNV9jcnRjX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCitzdGF0aWMgdm9pZCBt ZHA1X2NydGNfYXRvbWljX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCisJCQkJICAgIHN0 cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xkX3N0YXRlKQogewogCXN0cnVjdCBtZHA1X2NydGMgKm1k cDVfY3J0YyA9IHRvX21kcDVfY3J0YyhjcnRjKTsKIAlzdHJ1Y3QgbWRwNV9jcnRjX3N0YXRlICpt ZHA1X2NzdGF0ZSA9IHRvX21kcDVfY3J0Y19zdGF0ZShjcnRjLT5zdGF0ZSk7CkBAIC05NDAsMTAg Kzk0MSwxMCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2Z1bmNzIG1kcDVfY3J0Y19u b19sbV9jdXJzb3JfZnVuY3MgPSB7CiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2hlbHBl cl9mdW5jcyBtZHA1X2NydGNfaGVscGVyX2Z1bmNzID0gewogCS5tb2RlX3NldF9ub2ZiID0gbWRw NV9jcnRjX21vZGVfc2V0X25vZmIsCiAJLmRpc2FibGUgPSBtZHA1X2NydGNfZGlzYWJsZSwKLQku ZW5hYmxlID0gbWRwNV9jcnRjX2VuYWJsZSwKIAkuYXRvbWljX2NoZWNrID0gbWRwNV9jcnRjX2F0 b21pY19jaGVjaywKIAkuYXRvbWljX2JlZ2luID0gbWRwNV9jcnRjX2F0b21pY19iZWdpbiwKIAku YXRvbWljX2ZsdXNoID0gbWRwNV9jcnRjX2F0b21pY19mbHVzaCwKKwkuYXRvbWljX2VuYWJsZSA9 IG1kcDVfY3J0Y19hdG9taWNfZW5hYmxlLAogfTsKIAogc3RhdGljIHZvaWQgbWRwNV9jcnRjX3Zi bGFua19pcnEoc3RydWN0IG1kcF9pcnEgKmlycSwgdWludDMyX3QgaXJxc3RhdHVzKQpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vb21hcF9jcnRjLmMgYi9kcml2ZXJzL2dwdS9k cm0vb21hcGRybS9vbWFwX2NydGMuYwppbmRleCBkZDBlZjQwY2E0NjkuLjdhMWI3YTljYzI3MCAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vb21hcF9jcnRjLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL29tYXBkcm0vb21hcF9jcnRjLmMKQEAgLTM1Niw3ICszNTYsOCBAQCBzdGF0 aWMgdm9pZCBvbWFwX2NydGNfYXJtX2V2ZW50KHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIAl9CiB9 CiAKLXN0YXRpYyB2b2lkIG9tYXBfY3J0Y19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQor c3RhdGljIHZvaWQgb21hcF9jcnRjX2F0b21pY19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRj LAorCQkJCSAgICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm9sZF9zdGF0ZSkKIHsKIAlzdHJ1Y3Qg b21hcF9jcnRjICpvbWFwX2NydGMgPSB0b19vbWFwX2NydGMoY3J0Yyk7CiAJaW50IHJldDsKQEAg LTU2OCwxMCArNTY5LDEwIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2NydGNfZnVuY3Mgb21h cF9jcnRjX2Z1bmNzID0gewogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19oZWxwZXJfZnVu Y3Mgb21hcF9jcnRjX2hlbHBlcl9mdW5jcyA9IHsKIAkubW9kZV9zZXRfbm9mYiA9IG9tYXBfY3J0 Y19tb2RlX3NldF9ub2ZiLAogCS5kaXNhYmxlID0gb21hcF9jcnRjX2Rpc2FibGUsCi0JLmVuYWJs ZSA9IG9tYXBfY3J0Y19lbmFibGUsCiAJLmF0b21pY19jaGVjayA9IG9tYXBfY3J0Y19hdG9taWNf Y2hlY2ssCiAJLmF0b21pY19iZWdpbiA9IG9tYXBfY3J0Y19hdG9taWNfYmVnaW4sCiAJLmF0b21p Y19mbHVzaCA9IG9tYXBfY3J0Y19hdG9taWNfZmx1c2gsCisJLmF0b21pY19lbmFibGUgPSBvbWFw X2NydGNfYXRvbWljX2VuYWJsZSwKIH07CiAKIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcXhsL3F4bF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9k cm0vcXhsL3F4bF9kaXNwbGF5LmMKaW5kZXggN2VkZTVmMTMxYTVjLi5lYTk1ZTdlN2NjN2YgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9xeGwvcXhsX2Rpc3BsYXkuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vcXhsL3F4bF9kaXNwbGF5LmMKQEAgLTQ0Nyw3ICs0NDcsOCBAQCBzdGF0aWMgdm9p ZCBxeGxfbW9kZV9zZXRfbm9mYihzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiAKIH0KIAotc3RhdGlj IHZvaWQgcXhsX2NydGNfZW5hYmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKK3N0YXRpYyB2b2lk IHF4bF9jcnRjX2F0b21pY19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjLAorCQkJCSAgIHN0 cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xkX3N0YXRlKQogewogCURSTV9ERUJVRygiXG4iKTsKIH0K QEAgLTQ2Niw4ICs0NjcsOCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2hlbHBlcl9m dW5jcyBxeGxfY3J0Y19oZWxwZXJfZnVuY3MgPSB7CiAJLmRpc2FibGUgPSBxeGxfY3J0Y19kaXNh YmxlLAogCS5tb2RlX2ZpeHVwID0gcXhsX2NydGNfbW9kZV9maXh1cCwKIAkubW9kZV9zZXRfbm9m YiA9IHF4bF9tb2RlX3NldF9ub2ZiLAotCS5lbmFibGUgPSBxeGxfY3J0Y19lbmFibGUsCiAJLmF0 b21pY19mbHVzaCA9IHF4bF9jcnRjX2F0b21pY19mbHVzaCwKKwkuYXRvbWljX2VuYWJsZSA9IHF4 bF9jcnRjX2F0b21pY19lbmFibGUsCiB9OwogCiBzdGF0aWMgaW50IHF4bF9wcmltYXJ5X2F0b21p Y19jaGVjayhzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9yY2FyLWR1L3JjYXJfZHVfY3J0Yy5jIGIvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNh cl9kdV9jcnRjLmMKaW5kZXggMzQ1ZWZmNzJmNTgxLi42YWEzZmE4ZDA2ZjkgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVfY3J0Yy5jCisrKyBiL2RyaXZlcnMvZ3B1 L2RybS9yY2FyLWR1L3JjYXJfZHVfY3J0Yy5jCkBAIC01NTIsNyArNTUyLDggQEAgdm9pZCByY2Fy X2R1X2NydGNfcmVzdW1lKHN0cnVjdCByY2FyX2R1X2NydGMgKnJjcnRjKQogICogQ1JUQyBGdW5j dGlvbnMKICAqLwogCi1zdGF0aWMgdm9pZCByY2FyX2R1X2NydGNfZW5hYmxlKHN0cnVjdCBkcm1f Y3J0YyAqY3J0YykKK3N0YXRpYyB2b2lkIHJjYXJfZHVfY3J0Y19hdG9taWNfZW5hYmxlKHN0cnVj dCBkcm1fY3J0YyAqY3J0YywKKwkJCQkgICAgICAgc3RydWN0IGRybV9jcnRjX3N0YXRlICpvbGRf c3RhdGUpCiB7CiAJc3RydWN0IHJjYXJfZHVfY3J0YyAqcmNydGMgPSB0b19yY2FyX2NydGMoY3J0 Yyk7CiAKQEAgLTYxMCw5ICs2MTEsOSBAQCBzdGF0aWMgdm9pZCByY2FyX2R1X2NydGNfYXRvbWlj X2ZsdXNoKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1f Y3J0Y19oZWxwZXJfZnVuY3MgY3J0Y19oZWxwZXJfZnVuY3MgPSB7CiAJLmRpc2FibGUgPSByY2Fy X2R1X2NydGNfZGlzYWJsZSwKLQkuZW5hYmxlID0gcmNhcl9kdV9jcnRjX2VuYWJsZSwKIAkuYXRv bWljX2JlZ2luID0gcmNhcl9kdV9jcnRjX2F0b21pY19iZWdpbiwKIAkuYXRvbWljX2ZsdXNoID0g cmNhcl9kdV9jcnRjX2F0b21pY19mbHVzaCwKKwkuYXRvbWljX2VuYWJsZSA9IHJjYXJfZHVfY3J0 Y19hdG9taWNfZW5hYmxlLAogfTsKIAogc3RhdGljIGludCByY2FyX2R1X2NydGNfZW5hYmxlX3Zi bGFuayhzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v cm9ja2NoaXAvcm9ja2NoaXBfZHJtX3ZvcC5jIGIvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3Jv Y2tjaGlwX2RybV92b3AuYwppbmRleCA1ZDQ1MDMzMmMyZmQuLmJiNTlmNzQxMDYzNCAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV92b3AuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX3ZvcC5jCkBAIC04NzEsNyArODcx LDggQEAgc3RhdGljIGJvb2wgdm9wX2NydGNfbW9kZV9maXh1cChzdHJ1Y3QgZHJtX2NydGMgKmNy dGMsCiAJcmV0dXJuIHRydWU7CiB9CiAKLXN0YXRpYyB2b2lkIHZvcF9jcnRjX2VuYWJsZShzdHJ1 Y3QgZHJtX2NydGMgKmNydGMpCitzdGF0aWMgdm9pZCB2b3BfY3J0Y19hdG9taWNfZW5hYmxlKHN0 cnVjdCBkcm1fY3J0YyAqY3J0YywKKwkJCQkgICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm9sZF9z dGF0ZSkKIHsKIAlzdHJ1Y3Qgdm9wICp2b3AgPSB0b192b3AoY3J0Yyk7CiAJY29uc3Qgc3RydWN0 IHZvcF9kYXRhICp2b3BfZGF0YSA9IHZvcC0+ZGF0YTsKQEAgLTEwNzksMTEgKzEwODAsMTEgQEAg c3RhdGljIHZvaWQgdm9wX2NydGNfYXRvbWljX2JlZ2luKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywK IH0KIAogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19oZWxwZXJfZnVuY3Mgdm9wX2NydGNf aGVscGVyX2Z1bmNzID0gewotCS5lbmFibGUgPSB2b3BfY3J0Y19lbmFibGUsCiAJLmRpc2FibGUg PSB2b3BfY3J0Y19kaXNhYmxlLAogCS5tb2RlX2ZpeHVwID0gdm9wX2NydGNfbW9kZV9maXh1cCwK IAkuYXRvbWljX2ZsdXNoID0gdm9wX2NydGNfYXRvbWljX2ZsdXNoLAogCS5hdG9taWNfYmVnaW4g PSB2b3BfY3J0Y19hdG9taWNfYmVnaW4sCisJLmF0b21pY19lbmFibGUgPSB2b3BfY3J0Y19hdG9t aWNfZW5hYmxlLAogfTsKIAogc3RhdGljIHZvaWQgdm9wX2NydGNfZGVzdHJveShzdHJ1Y3QgZHJt X2NydGMgKmNydGMpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9jcnRjLmMg Yi9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9jcnRjLmMKaW5kZXggZDQ1YTQzMzVkZjVkLi5iYjg2 NDM0NWZlZGYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2NydGMuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9jcnRjLmMKQEAgLTIwLDcgKzIwLDggQEAKICNpbmNs dWRlICJzdGlfdmlkLmgiCiAjaW5jbHVkZSAic3RpX3Z0Zy5oIgogCi1zdGF0aWMgdm9pZCBzdGlf Y3J0Y19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQorc3RhdGljIHZvaWQgc3RpX2NydGNf YXRvbWljX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCisJCQkJICAgc3RydWN0IGRybV9j cnRjX3N0YXRlICpvbGRfc3RhdGUpCiB7CiAJc3RydWN0IHN0aV9taXhlciAqbWl4ZXIgPSB0b19z dGlfbWl4ZXIoY3J0Yyk7CiAKQEAgLTIyMiwxMCArMjIzLDEwIEBAIHN0YXRpYyB2b2lkIHN0aV9j cnRjX2F0b21pY19mbHVzaChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiB9CiAKIHN0YXRpYyBjb25z dCBzdHJ1Y3QgZHJtX2NydGNfaGVscGVyX2Z1bmNzIHN0aV9jcnRjX2hlbHBlcl9mdW5jcyA9IHsK LQkuZW5hYmxlID0gc3RpX2NydGNfZW5hYmxlLAogCS5kaXNhYmxlID0gc3RpX2NydGNfZGlzYWJs aW5nLAogCS5tb2RlX3NldF9ub2ZiID0gc3RpX2NydGNfbW9kZV9zZXRfbm9mYiwKIAkuYXRvbWlj X2ZsdXNoID0gc3RpX2NydGNfYXRvbWljX2ZsdXNoLAorCS5hdG9taWNfZW5hYmxlID0gc3RpX2Ny dGNfYXRvbWljX2VuYWJsZSwKIH07CiAKIHN0YXRpYyB2b2lkIHN0aV9jcnRjX2Rlc3Ryb3koc3Ry dWN0IGRybV9jcnRjICpjcnRjKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3N0bS9sdGRj LmMgYi9kcml2ZXJzL2dwdS9kcm0vc3RtL2x0ZGMuYwppbmRleCAxYjk0ODNkNGYyYTQuLjMzN2Zj ZTAwNGQwOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3N0bS9sdGRjLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL3N0bS9sdGRjLmMKQEAgLTM4Niw3ICszODYsOCBAQCBzdGF0aWMgdm9pZCBs dGRjX2NydGNfbG9hZF9sdXQoc3RydWN0IGRybV9jcnRjICpjcnRjKQogCQkJCSAgbGRldi0+Y2x1 dFtpXSk7CiB9CiAKLXN0YXRpYyB2b2lkIGx0ZGNfY3J0Y19lbmFibGUoc3RydWN0IGRybV9jcnRj ICpjcnRjKQorc3RhdGljIHZvaWQgbHRkY19jcnRjX2F0b21pY19lbmFibGUoc3RydWN0IGRybV9j cnRjICpjcnRjLAorCQkJCSAgICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm9sZF9zdGF0ZSkKIHsK IAlzdHJ1Y3QgbHRkY19kZXZpY2UgKmxkZXYgPSBjcnRjX3RvX2x0ZGMoY3J0Yyk7CiAKQEAgLTUy NCwxMCArNTI1LDEwIEBAIHN0YXRpYyB2b2lkIGx0ZGNfY3J0Y19hdG9taWNfZmx1c2goc3RydWN0 IGRybV9jcnRjICpjcnRjLAogCiBzdGF0aWMgc3RydWN0IGRybV9jcnRjX2hlbHBlcl9mdW5jcyBs dGRjX2NydGNfaGVscGVyX2Z1bmNzID0gewogCS5sb2FkX2x1dCA9IGx0ZGNfY3J0Y19sb2FkX2x1 dCwKLQkuZW5hYmxlID0gbHRkY19jcnRjX2VuYWJsZSwKIAkuZGlzYWJsZSA9IGx0ZGNfY3J0Y19k aXNhYmxlLAogCS5tb2RlX3NldF9ub2ZiID0gbHRkY19jcnRjX21vZGVfc2V0X25vZmIsCiAJLmF0 b21pY19mbHVzaCA9IGx0ZGNfY3J0Y19hdG9taWNfZmx1c2gsCisJLmF0b21pY19lbmFibGUgPSBs dGRjX2NydGNfYXRvbWljX2VuYWJsZSwKIH07CiAKIGludCBsdGRjX2NydGNfZW5hYmxlX3ZibGFu ayhzdHJ1Y3QgZHJtX2RldmljZSAqZGRldiwgdW5zaWduZWQgaW50IHBpcGUpCmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfY3J0Yy5jIGIvZHJpdmVycy9ncHUvZHJtL3N1 bjRpL3N1bjRpX2NydGMuYwppbmRleCBmOGM3MDQzOWQxZTIuLjUwOWU0ZDgwMTRmMyAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL3N1bjRpL3N1bjRpX2NydGMuYworKysgYi9kcml2ZXJzL2dw dS9kcm0vc3VuNGkvc3VuNGlfY3J0Yy5jCkBAIC04Niw3ICs4Niw4IEBAIHN0YXRpYyB2b2lkIHN1 bjRpX2NydGNfZGlzYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiAJfQogfQogCi1zdGF0aWMg dm9pZCBzdW40aV9jcnRjX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCitzdGF0aWMgdm9p ZCBzdW40aV9jcnRjX2F0b21pY19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjLAorCQkJCSAg ICAgc3RydWN0IGRybV9jcnRjX3N0YXRlICpvbGRfc3RhdGUpCiB7CiAJc3RydWN0IHN1bjRpX2Ny dGMgKnNjcnRjID0gZHJtX2NydGNfdG9fc3VuNGlfY3J0YyhjcnRjKTsKIApAQCAtOTgsOCArOTks OCBAQCBzdGF0aWMgdm9pZCBzdW40aV9jcnRjX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMp CiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2hlbHBlcl9mdW5jcyBzdW40aV9jcnRjX2hl bHBlcl9mdW5jcyA9IHsKIAkuYXRvbWljX2JlZ2luCT0gc3VuNGlfY3J0Y19hdG9taWNfYmVnaW4s CiAJLmF0b21pY19mbHVzaAk9IHN1bjRpX2NydGNfYXRvbWljX2ZsdXNoLAorCS5hdG9taWNfZW5h YmxlCT0gc3VuNGlfY3J0Y19hdG9taWNfZW5hYmxlLAogCS5kaXNhYmxlCT0gc3VuNGlfY3J0Y19k aXNhYmxlLAotCS5lbmFibGUJCT0gc3VuNGlfY3J0Y19lbmFibGUsCiB9OwogCiBzdGF0aWMgaW50 IHN1bjRpX2NydGNfZW5hYmxlX3ZibGFuayhzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vdGVncmEvZGMuYyBiL2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9k Yy5jCmluZGV4IGM4NzVmMTE3ODZiOS4uMmUwZDE2N2NiNjU3IDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vdGVncmEvZGMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vdGVncmEvZGMuYwpAQCAt MTI0Myw3ICsxMjQzLDggQEAgc3RhdGljIHZvaWQgdGVncmFfY3J0Y19kaXNhYmxlKHN0cnVjdCBk cm1fY3J0YyAqY3J0YykKIAlwbV9ydW50aW1lX3B1dF9zeW5jKGRjLT5kZXYpOwogfQogCi1zdGF0 aWMgdm9pZCB0ZWdyYV9jcnRjX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCitzdGF0aWMg dm9pZCB0ZWdyYV9jcnRjX2F0b21pY19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjLAorCQkJ CSAgICAgc3RydWN0IGRybV9jcnRjX3N0YXRlICpvbGRfc3RhdGUpCiB7CiAJc3RydWN0IGRybV9k aXNwbGF5X21vZGUgKm1vZGUgPSAmY3J0Yy0+c3RhdGUtPmFkanVzdGVkX21vZGU7CiAJc3RydWN0 IHRlZ3JhX2RjX3N0YXRlICpzdGF0ZSA9IHRvX2RjX3N0YXRlKGNydGMtPnN0YXRlKTsKQEAgLTEz NTIsMTAgKzEzNTMsMTAgQEAgc3RhdGljIHZvaWQgdGVncmFfY3J0Y19hdG9taWNfZmx1c2goc3Ry dWN0IGRybV9jcnRjICpjcnRjLAogCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2hlbHBl cl9mdW5jcyB0ZWdyYV9jcnRjX2hlbHBlcl9mdW5jcyA9IHsKIAkuZGlzYWJsZSA9IHRlZ3JhX2Ny dGNfZGlzYWJsZSwKLQkuZW5hYmxlID0gdGVncmFfY3J0Y19lbmFibGUsCiAJLmF0b21pY19jaGVj ayA9IHRlZ3JhX2NydGNfYXRvbWljX2NoZWNrLAogCS5hdG9taWNfYmVnaW4gPSB0ZWdyYV9jcnRj X2F0b21pY19iZWdpbiwKIAkuYXRvbWljX2ZsdXNoID0gdGVncmFfY3J0Y19hdG9taWNfZmx1c2gs CisJLmF0b21pY19lbmFibGUgPSB0ZWdyYV9jcnRjX2F0b21pY19lbmFibGUsCiB9OwogCiBzdGF0 aWMgaXJxcmV0dXJuX3QgdGVncmFfZGNfaXJxKGludCBpcnEsIHZvaWQgKmRhdGEpCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vdGlsY2RjL3RpbGNkY19jcnRjLmMgYi9kcml2ZXJzL2dwdS9k cm0vdGlsY2RjL3RpbGNkY19jcnRjLmMKaW5kZXggZDUyNGVkMGQ1MTQ2Li42YzU4OTI3NjNkMjcg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS90aWxjZGMvdGlsY2RjX2NydGMuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vdGlsY2RjL3RpbGNkY19jcnRjLmMKQEAgLTUwNCw2ICs1MDQsMTIgQEAg c3RhdGljIHZvaWQgdGlsY2RjX2NydGNfZW5hYmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIAlt dXRleF91bmxvY2soJnRpbGNkY19jcnRjLT5lbmFibGVfbG9jayk7CiB9CiAKK3N0YXRpYyB2b2lk IHRpbGNkY19jcnRjX2F0b21pY19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjLAorCQkJCSAg ICAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xkX3N0YXRlKQoreworCXRpbGNkY19jcnRjX2Vu YWJsZShjcnRjKTsKK30KKwogc3RhdGljIHZvaWQgdGlsY2RjX2NydGNfb2ZmKHN0cnVjdCBkcm1f Y3J0YyAqY3J0YywgYm9vbCBzaHV0ZG93bikKIHsKIAlzdHJ1Y3QgdGlsY2RjX2NydGMgKnRpbGNk Y19jcnRjID0gdG9fdGlsY2RjX2NydGMoY3J0Yyk7CkBAIC03MjksOSArNzM1LDkgQEAgc3RhdGlj IGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19mdW5jcyB0aWxjZGNfY3J0Y19mdW5jcyA9IHsKIAogc3Rh dGljIGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19oZWxwZXJfZnVuY3MgdGlsY2RjX2NydGNfaGVscGVy X2Z1bmNzID0gewogCQkubW9kZV9maXh1cCAgICAgPSB0aWxjZGNfY3J0Y19tb2RlX2ZpeHVwLAot CQkuZW5hYmxlCQk9IHRpbGNkY19jcnRjX2VuYWJsZSwKIAkJLmRpc2FibGUJPSB0aWxjZGNfY3J0 Y19kaXNhYmxlLAogCQkuYXRvbWljX2NoZWNrCT0gdGlsY2RjX2NydGNfYXRvbWljX2NoZWNrLAor CQkuYXRvbWljX2VuYWJsZQk9IHRpbGNkY19jcnRjX2F0b21pY19lbmFibGUsCiB9OwogCiBpbnQg dGlsY2RjX2NydGNfbWF4X3dpZHRoKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS92YzQvdmM0X2NydGMuYyBiL2RyaXZlcnMvZ3B1L2RybS92YzQvdmM0 X2NydGMuYwppbmRleCBmMjBjMDE3NTljMGQuLjRjMDNhNTY1YjI3NiAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL3ZjNC92YzRfY3J0Yy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS92YzQvdmM0 X2NydGMuYwpAQCAtNTMzLDcgKzUzMyw4IEBAIHN0YXRpYyB2b2lkIHZjNF9jcnRjX2Rpc2FibGUo c3RydWN0IGRybV9jcnRjICpjcnRjKQogCX0KIH0KIAotc3RhdGljIHZvaWQgdmM0X2NydGNfZW5h YmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKK3N0YXRpYyB2b2lkIHZjNF9jcnRjX2F0b21pY19l bmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjLAorCQkJCSAgIHN0cnVjdCBkcm1fY3J0Y19zdGF0 ZSAqb2xkX3N0YXRlKQogewogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7CiAJ c3RydWN0IHZjNF9kZXYgKnZjNCA9IHRvX3ZjNF9kZXYoZGV2KTsKQEAgLTg3MCwxMCArODcxLDEw IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZHJtX2NydGNfZnVuY3MgdmM0X2NydGNfZnVuY3MgPSB7 CiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2hlbHBlcl9mdW5jcyB2YzRfY3J0Y19oZWxw ZXJfZnVuY3MgPSB7CiAJLm1vZGVfc2V0X25vZmIgPSB2YzRfY3J0Y19tb2RlX3NldF9ub2ZiLAog CS5kaXNhYmxlID0gdmM0X2NydGNfZGlzYWJsZSwKLQkuZW5hYmxlID0gdmM0X2NydGNfZW5hYmxl LAogCS5tb2RlX3ZhbGlkID0gdmM0X2NydGNfbW9kZV92YWxpZCwKIAkuYXRvbWljX2NoZWNrID0g dmM0X2NydGNfYXRvbWljX2NoZWNrLAogCS5hdG9taWNfZmx1c2ggPSB2YzRfY3J0Y19hdG9taWNf Zmx1c2gsCisJLmF0b21pY19lbmFibGUgPSB2YzRfY3J0Y19hdG9taWNfZW5hYmxlLAogfTsKIAog c3RhdGljIGNvbnN0IHN0cnVjdCB2YzRfY3J0Y19kYXRhIHB2MF9kYXRhID0gewpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL3ZpcnRpby92aXJ0Z3B1X2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1 L2RybS92aXJ0aW8vdmlydGdwdV9kaXNwbGF5LmMKaW5kZXggZDUxYmQ0NTIxZjE3Li4wM2EzYzEy ZWQxMDAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS92aXJ0aW8vdmlydGdwdV9kaXNwbGF5 LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3ZpcnRpby92aXJ0Z3B1X2Rpc3BsYXkuYwpAQCAtMTEz LDcgKzExMyw4IEBAIHN0YXRpYyB2b2lkIHZpcnRpb19ncHVfY3J0Y19tb2RlX3NldF9ub2ZiKHN0 cnVjdCBkcm1fY3J0YyAqY3J0YykKIAkJCQkgICBjcnRjLT5tb2RlLnZkaXNwbGF5LCAwLCAwKTsK IH0KIAotc3RhdGljIHZvaWQgdmlydGlvX2dwdV9jcnRjX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMg KmNydGMpCitzdGF0aWMgdm9pZCB2aXJ0aW9fZ3B1X2NydGNfYXRvbWljX2VuYWJsZShzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMsCisJCQkJCSAgc3RydWN0IGRybV9jcnRjX3N0YXRlICpvbGRfc3RhdGUp CiB7CiB9CiAKQEAgLTE0NSwxMSArMTQ2LDExIEBAIHN0YXRpYyB2b2lkIHZpcnRpb19ncHVfY3J0 Y19hdG9taWNfZmx1c2goc3RydWN0IGRybV9jcnRjICpjcnRjLAogfQogCiBzdGF0aWMgY29uc3Qg c3RydWN0IGRybV9jcnRjX2hlbHBlcl9mdW5jcyB2aXJ0aW9fZ3B1X2NydGNfaGVscGVyX2Z1bmNz ID0gewotCS5lbmFibGUgICAgICAgID0gdmlydGlvX2dwdV9jcnRjX2VuYWJsZSwKIAkuZGlzYWJs ZSAgICAgICA9IHZpcnRpb19ncHVfY3J0Y19kaXNhYmxlLAogCS5tb2RlX3NldF9ub2ZiID0gdmly dGlvX2dwdV9jcnRjX21vZGVfc2V0X25vZmIsCiAJLmF0b21pY19jaGVjayAgPSB2aXJ0aW9fZ3B1 X2NydGNfYXRvbWljX2NoZWNrLAogCS5hdG9taWNfZmx1c2ggID0gdmlydGlvX2dwdV9jcnRjX2F0 b21pY19mbHVzaCwKKwkuYXRvbWljX2VuYWJsZSA9IHZpcnRpb19ncHVfY3J0Y19hdG9taWNfZW5h YmxlLAogfTsKIAogc3RhdGljIHZvaWQgdmlydGlvX2dwdV9lbmNfbW9kZV9zZXQoc3RydWN0IGRy bV9lbmNvZGVyICplbmNvZGVyLApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92 bXdnZnhfbGR1LmMgYi9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9sZHUuYwppbmRleCBm OGFjZDNhMTU1MjMuLjgzMmI4M2M1ODJjMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3Zt d2dmeC92bXdnZnhfbGR1LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfbGR1 LmMKQEAgLTIwMyw3ICsyMDMsNyBAQCBzdGF0aWMgdm9pZCB2bXdfbGR1X2NydGNfbW9kZV9zZXRf bm9mYihzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiB9CiAKIC8qKgotICogdm13X2xkdV9jcnRjX2hl bHBlcl9lbmFibGUgLSBOb29wCisgKiB2bXdfbGR1X2NydGNfYXRvbWljX2VuYWJsZSAtIE5vb3AK ICAqCiAgKiBAY3J0YzogQ1JUQyBhc3NvY2lhdGVkIHdpdGggdGhlIG5ldyBzY3JlZW4KICAqCkBA IC0yMTIsNyArMjEyLDggQEAgc3RhdGljIHZvaWQgdm13X2xkdV9jcnRjX21vZGVfc2V0X25vZmIo c3RydWN0IGRybV9jcnRjICpjcnRjKQogICogYnV0IHNpbmNlIGZvciBMRFUgdGhlIGRpc3BsYXkg cGxhbmUgaXMgY2xvc2VseSB0aWVkIHRvIHRoZQogICogQ1JUQywgaXQgbWFrZXMgbW9yZSBzZW5z ZSB0byBkbyB0aG9zZSBhdCBwbGFuZSB1cGRhdGUgdGltZS4KICAqLwotc3RhdGljIHZvaWQgdm13 X2xkdV9jcnRjX2hlbHBlcl9lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjKQorc3RhdGljIHZv aWQgdm13X2xkdV9jcnRjX2F0b21pY19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjLAorCQkJ CSAgICAgICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm9sZF9zdGF0ZSkKIHsKIH0KIApAQCAtMzc2 LDEyICszNzcsMTIgQEAgZHJtX3BsYW5lX2hlbHBlcl9mdW5jcyB2bXdfbGR1X3ByaW1hcnlfcGxh bmVfaGVscGVyX2Z1bmNzID0gewogfTsKIAogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19o ZWxwZXJfZnVuY3Mgdm13X2xkdV9jcnRjX2hlbHBlcl9mdW5jcyA9IHsKLQkuZW5hYmxlID0gdm13 X2xkdV9jcnRjX2hlbHBlcl9lbmFibGUsCiAJLmRpc2FibGUgPSB2bXdfbGR1X2NydGNfaGVscGVy X2Rpc2FibGUsCiAJLm1vZGVfc2V0X25vZmIgPSB2bXdfbGR1X2NydGNfbW9kZV9zZXRfbm9mYiwK IAkuYXRvbWljX2NoZWNrID0gdm13X2R1X2NydGNfYXRvbWljX2NoZWNrLAogCS5hdG9taWNfYmVn aW4gPSB2bXdfZHVfY3J0Y19hdG9taWNfYmVnaW4sCiAJLmF0b21pY19mbHVzaCA9IHZtd19kdV9j cnRjX2F0b21pY19mbHVzaCwKKwkuYXRvbWljX2VuYWJsZSA9IHZtd19sZHVfY3J0Y19hdG9taWNf ZW5hYmxlLAogfTsKIAogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dm eF9zY3JuLmMgYi9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9zY3JuLmMKaW5kZXggMWNi ODI2YzUwM2JmLi44YmEzYmFkMDY5MDkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS92bXdn Zngvdm13Z2Z4X3Njcm4uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9zY3Ju LmMKQEAgLTI3MCwxMyArMjcwLDE0IEBAIHN0YXRpYyB2b2lkIHZtd19zb3VfY3J0Y19oZWxwZXJf cHJlcGFyZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiB9CiAKIC8qKgotICogdm13X3NvdV9jcnRj X2hlbHBlcl9lbmFibGUgLSBOb29wCisgKiB2bXdfc291X2NydGNfYXRvbWljX2VuYWJsZSAtIE5v b3AKICAqCiAgKiBAY3J0YzogQ1JUQyBhc3NvY2lhdGVkIHdpdGggdGhlIG5ldyBzY3JlZW4KICAq CiAgKiBUaGlzIGlzIGNhbGxlZCBhZnRlciBhIG1vZGUgc2V0IGhhcyBiZWVuIGNvbXBsZXRlZC4K ICAqLwotc3RhdGljIHZvaWQgdm13X3NvdV9jcnRjX2hlbHBlcl9lbmFibGUoc3RydWN0IGRybV9j cnRjICpjcnRjKQorc3RhdGljIHZvaWQgdm13X3NvdV9jcnRjX2F0b21pY19lbmFibGUoc3RydWN0 IGRybV9jcnRjICpjcnRjLAorCQkJCSAgICAgICBzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm9sZF9z dGF0ZSkKIHsKIH0KIApAQCAtNTczLDEyICs1NzQsMTIgQEAgZHJtX3BsYW5lX2hlbHBlcl9mdW5j cyB2bXdfc291X3ByaW1hcnlfcGxhbmVfaGVscGVyX2Z1bmNzID0gewogCiBzdGF0aWMgY29uc3Qg c3RydWN0IGRybV9jcnRjX2hlbHBlcl9mdW5jcyB2bXdfc291X2NydGNfaGVscGVyX2Z1bmNzID0g ewogCS5wcmVwYXJlID0gdm13X3NvdV9jcnRjX2hlbHBlcl9wcmVwYXJlLAotCS5lbmFibGUgPSB2 bXdfc291X2NydGNfaGVscGVyX2VuYWJsZSwKIAkuZGlzYWJsZSA9IHZtd19zb3VfY3J0Y19oZWxw ZXJfZGlzYWJsZSwKIAkubW9kZV9zZXRfbm9mYiA9IHZtd19zb3VfY3J0Y19tb2RlX3NldF9ub2Zi LAogCS5hdG9taWNfY2hlY2sgPSB2bXdfZHVfY3J0Y19hdG9taWNfY2hlY2ssCiAJLmF0b21pY19i ZWdpbiA9IHZtd19kdV9jcnRjX2F0b21pY19iZWdpbiwKIAkuYXRvbWljX2ZsdXNoID0gdm13X2R1 X2NydGNfYXRvbWljX2ZsdXNoLAorCS5hdG9taWNfZW5hYmxlID0gdm13X3NvdV9jcnRjX2F0b21p Y19lbmFibGUsCiB9OwogCiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13 Z2Z4X3N0ZHUuYyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X3N0ZHUuYwppbmRleCA0 ZWI5M2I0N2Q2ZGIuLmYyYjM5ZDljNTFjYyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3Zt d2dmeC92bXdnZnhfc3RkdS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X3N0 ZHUuYwpAQCAtNDEyLDcgKzQxMiw4IEBAIHN0YXRpYyB2b2lkIHZtd19zdGR1X2NydGNfaGVscGVy X3ByZXBhcmUoc3RydWN0IGRybV9jcnRjICpjcnRjKQogfQogCiAKLXN0YXRpYyB2b2lkIHZtd19z dGR1X2NydGNfaGVscGVyX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCitzdGF0aWMgdm9p ZCB2bXdfc3RkdV9jcnRjX2F0b21pY19lbmFibGUoc3RydWN0IGRybV9jcnRjICpjcnRjLAorCQkJ CQlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm9sZF9zdGF0ZSkKIHsKIAlzdHJ1Y3Qgdm13X3ByaXZh dGUgKmRldl9wcml2OwogCXN0cnVjdCB2bXdfc2NyZWVuX3RhcmdldF9kaXNwbGF5X3VuaXQgKnN0 ZHU7CkBAIC0xNDE1LDEyICsxNDE2LDEyIEBAIGRybV9wbGFuZV9oZWxwZXJfZnVuY3Mgdm13X3N0 ZHVfcHJpbWFyeV9wbGFuZV9oZWxwZXJfZnVuY3MgPSB7CiAKIHN0YXRpYyBjb25zdCBzdHJ1Y3Qg ZHJtX2NydGNfaGVscGVyX2Z1bmNzIHZtd19zdGR1X2NydGNfaGVscGVyX2Z1bmNzID0gewogCS5w cmVwYXJlID0gdm13X3N0ZHVfY3J0Y19oZWxwZXJfcHJlcGFyZSwKLQkuZW5hYmxlID0gdm13X3N0 ZHVfY3J0Y19oZWxwZXJfZW5hYmxlLAogCS5kaXNhYmxlID0gdm13X3N0ZHVfY3J0Y19oZWxwZXJf ZGlzYWJsZSwKIAkubW9kZV9zZXRfbm9mYiA9IHZtd19zdGR1X2NydGNfbW9kZV9zZXRfbm9mYiwK IAkuYXRvbWljX2NoZWNrID0gdm13X2R1X2NydGNfYXRvbWljX2NoZWNrLAogCS5hdG9taWNfYmVn aW4gPSB2bXdfZHVfY3J0Y19hdG9taWNfYmVnaW4sCiAJLmF0b21pY19mbHVzaCA9IHZtd19kdV9j cnRjX2F0b21pY19mbHVzaCwKKwkuYXRvbWljX2VuYWJsZSA9IHZtd19zdGR1X2NydGNfYXRvbWlj X2VuYWJsZSwKIH07CiAKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF92b3Uu YyBiL2RyaXZlcnMvZ3B1L2RybS96dGUvenhfdm91LmMKaW5kZXggNWZiZDEwYjYwZWU1Li5jY2I0 YjBiZGI4YzYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS96dGUvenhfdm91LmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL3p0ZS96eF92b3UuYwpAQCAtMzUwLDcgKzM1MCw4IEBAIHN0YXRpYyBp bmxpbmUgdm9pZCB2b3VfY2huX3NldF91cGRhdGUoc3RydWN0IHp4X2NydGMgKnpjcnRjKQogCXp4 X3dyaXRlbCh6Y3J0Yy0+Y2hucmVnICsgQ0hOX1VQREFURSwgMSk7CiB9CiAKLXN0YXRpYyB2b2lk IHp4X2NydGNfZW5hYmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKK3N0YXRpYyB2b2lkIHp4X2Ny dGNfYXRvbWljX2VuYWJsZShzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCisJCQkJICBzdHJ1Y3QgZHJt X2NydGNfc3RhdGUgKm9sZF9zdGF0ZSkKIHsKIAlzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9k ZSA9ICZjcnRjLT5zdGF0ZS0+YWRqdXN0ZWRfbW9kZTsKIAlib29sIGludGVybGFjZWQgPSBtb2Rl LT5mbGFncyAmIERSTV9NT0RFX0ZMQUdfSU5URVJMQUNFOwpAQCAtNDkwLDkgKzQ5MSw5IEBAIHN0 YXRpYyB2b2lkIHp4X2NydGNfYXRvbWljX2ZsdXNoKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIH0K IAogc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19oZWxwZXJfZnVuY3MgenhfY3J0Y19oZWxw ZXJfZnVuY3MgPSB7Ci0JLmVuYWJsZSA9IHp4X2NydGNfZW5hYmxlLAogCS5kaXNhYmxlID0genhf Y3J0Y19kaXNhYmxlLAogCS5hdG9taWNfZmx1c2ggPSB6eF9jcnRjX2F0b21pY19mbHVzaCwKKwku YXRvbWljX2VuYWJsZSA9IHp4X2NydGNfYXRvbWljX2VuYWJsZSwKIH07CiAKIHN0YXRpYyBpbnQg enhfdm91X2VuYWJsZV92Ymxhbmsoc3RydWN0IGRybV9jcnRjICpjcnRjKQpkaWZmIC0tZ2l0IGEv aW5jbHVkZS9kcm0vZHJtX21vZGVzZXRfaGVscGVyX3Z0YWJsZXMuaCBiL2luY2x1ZGUvZHJtL2Ry bV9tb2Rlc2V0X2hlbHBlcl92dGFibGVzLmgKaW5kZXggNDc0YTEwMjllYzc5Li5kNzRhMmNhZmMz ZGUgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9tb2Rlc2V0X2hlbHBlcl92dGFibGVzLmgK KysrIGIvaW5jbHVkZS9kcm0vZHJtX21vZGVzZXRfaGVscGVyX3Z0YWJsZXMuaApAQCAtMzE2LDI0 ICszMTYsNiBAQCBzdHJ1Y3QgZHJtX2NydGNfaGVscGVyX2Z1bmNzIHsKIAl2b2lkICgqZGlzYWJs ZSkoc3RydWN0IGRybV9jcnRjICpjcnRjKTsKIAogCS8qKgotCSAqIEBlbmFibGU6Ci0JICoKLQkg KiBUaGlzIGNhbGxiYWNrIHNob3VsZCBiZSB1c2VkIHRvIGVuYWJsZSB0aGUgQ1JUQy4gV2l0aCB0 aGUgYXRvbWljCi0JICogZHJpdmVycyBpdCBpcyBjYWxsZWQgYmVmb3JlIGFsbCBlbmNvZGVycyBj b25uZWN0ZWQgdG8gdGhpcyBDUlRDIGFyZQotCSAqIGVuYWJsZWQgdGhyb3VnaCB0aGUgZW5jb2Rl cidzIG93biAmZHJtX2VuY29kZXJfaGVscGVyX2Z1bmNzLmVuYWJsZQotCSAqIGhvb2suICBJZiB0 aGF0IHNlcXVlbmNlIGlzIHRvbyBzaW1wbGUgZHJpdmVycyBjYW4ganVzdCBhZGQgdGhlaXIgb3du Ci0JICogaG9va3MgYW5kIGNhbGwgaXQgZnJvbSB0aGlzIENSVEMgY2FsbGJhY2sgaGVyZSBieSBs b29waW5nIG92ZXIgYWxsCi0JICogZW5jb2RlcnMgY29ubmVjdGVkIHRvIGl0IHVzaW5nIGZvcl9l YWNoX2VuY29kZXJfb25fY3J0YygpLgotCSAqCi0JICogVGhpcyBob29rIGlzIHVzZWQgb25seSBi eSBhdG9taWMgaGVscGVycywgZm9yIHN5bW1ldHJ5IHdpdGggQGRpc2FibGUuCi0JICogQXRvbWlj IGRyaXZlcnMgZG9uJ3QgbmVlZCB0byBpbXBsZW1lbnQgaXQgaWYgdGhlcmUncyBubyBuZWVkIHRv Ci0JICogZW5hYmxlIGFueXRoaW5nIGF0IHRoZSBDUlRDIGxldmVsLiBUbyBlbnN1cmUgdGhhdCBy dW50aW1lIFBNIGhhbmRsaW5nCi0JICogKHVzaW5nIGVpdGhlciBEUE1TIG9yIHRoZSBuZXcgIkFD VElWRSIgcHJvcGVydHkpIHdvcmtzCi0JICogQGVuYWJsZSBtdXN0IGJlIHRoZSBpbnZlcnNlIG9m IEBkaXNhYmxlIGZvciBhdG9taWMgZHJpdmVycy4KLQkgKi8KLQl2b2lkICgqZW5hYmxlKShzdHJ1 Y3QgZHJtX2NydGMgKmNydGMpOwotCi0JLyoqCiAJICogQGF0b21pY19jaGVjazoKIAkgKgogCSAq IERyaXZlcnMgc2hvdWxkIGNoZWNrIHBsYW5lLXVwZGF0ZSByZWxhdGVkIENSVEMgY29uc3RyYWlu dHMgaW4gdGhpcwpAQCAtNDMzLDYgKzQxNSwyNiBAQCBzdHJ1Y3QgZHJtX2NydGNfaGVscGVyX2Z1 bmNzIHsKIAkJCSAgICAgc3RydWN0IGRybV9jcnRjX3N0YXRlICpvbGRfY3J0Y19zdGF0ZSk7CiAK IAkvKioKKwkgKiBAYXRvbWljX2VuYWJsZToKKwkgKgorCSAqIFRoaXMgY2FsbGJhY2sgc2hvdWxk IGJlIHVzZWQgdG8gZW5hYmxlIHRoZSBDUlRDLiBXaXRoIHRoZSBhdG9taWMKKwkgKiBkcml2ZXJz IGl0IGlzIGNhbGxlZCBiZWZvcmUgYWxsIGVuY29kZXJzIGNvbm5lY3RlZCB0byB0aGlzIENSVEMg YXJlCisJICogZW5hYmxlZCB0aHJvdWdoIHRoZSBlbmNvZGVyJ3Mgb3duICZkcm1fZW5jb2Rlcl9o ZWxwZXJfZnVuY3MuZW5hYmxlCisJICogaG9vay4gIElmIHRoYXQgc2VxdWVuY2UgaXMgdG9vIHNp bXBsZSBkcml2ZXJzIGNhbiBqdXN0IGFkZCB0aGVpciBvd24KKwkgKiBob29rcyBhbmQgY2FsbCBp dCBmcm9tIHRoaXMgQ1JUQyBjYWxsYmFjayBoZXJlIGJ5IGxvb3Bpbmcgb3ZlciBhbGwKKwkgKiBl bmNvZGVycyBjb25uZWN0ZWQgdG8gaXQgdXNpbmcgZm9yX2VhY2hfZW5jb2Rlcl9vbl9jcnRjKCku CisJICoKKwkgKiBUaGlzIGhvb2sgaXMgdXNlZCBvbmx5IGJ5IGF0b21pYyBoZWxwZXJzLCBmb3Ig c3ltbWV0cnkgd2l0aAorCSAqIEBhdG9taWNfZGlzYWJsZS4gQXRvbWljIGRyaXZlcnMgZG9uJ3Qg bmVlZCB0byBpbXBsZW1lbnQgaXQgaWYgdGhlcmUncworCSAqIG5vIG5lZWQgdG8gZW5hYmxlIGFu eXRoaW5nIGF0IHRoZSBDUlRDIGxldmVsLiBUbyBlbnN1cmUgdGhhdCBydW50aW1lCisJICogUE0g aGFuZGxpbmcgKHVzaW5nIGVpdGhlciBEUE1TIG9yIHRoZSBuZXcgIkFDVElWRSIgcHJvcGVydHkp IHdvcmtzCisJICogQGF0b21pY19lbmFibGUgbXVzdCBiZSB0aGUgaW52ZXJzZSBvZiBAYXRvbWlj X2Rpc2FibGUgZm9yIGF0b21pYworCSAqIGRyaXZlcnMuCisJICovCisJdm9pZCAoKmF0b21pY19l bmFibGUpKHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKKwkJCSAgICAgIHN0cnVjdCBkcm1fY3J0Y19z dGF0ZSAqb2xkX2NydGNfc3RhdGUpOworCisJLyoqCiAJICogQGF0b21pY19kaXNhYmxlOgogCSAq CiAJICogVGhpcyBjYWxsYmFjayBzaG91bGQgYmUgdXNlZCB0byBkaXNhYmxlIHRoZSBDUlRDLiBX aXRoIHRoZSBhdG9taWMKLS0gClJlZ2FyZHMsCgpMYXVyZW50IFBpbmNoYXJ0CgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBs aXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVz a3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK