From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH 48/53] drm/i915: Update intel_ring_begin() to take a request structure Date: Thu, 19 Feb 2015 17:18:00 +0000 Message-ID: <1424366285-29232-49-git-send-email-John.C.Harrison@Intel.com> References: <1423828140-10653-1-git-send-email-John.C.Harrison@Intel.com> <1424366285-29232-1-git-send-email-John.C.Harrison@Intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id E52B3720A1 for ; Thu, 19 Feb 2015 09:18:57 -0800 (PST) In-Reply-To: <1424366285-29232-1-git-send-email-John.C.Harrison@Intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Intel-GFX@Lists.FreeDesktop.Org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KCk5vdyB0aGF0 IGV2ZXJ5dGhpbmcgYWJvdmUgaGFzIGJlZW4gY29udmVydGVkIHRvIHVzZSByZXF1ZXN0cywgaW50 ZWxfcmluZ19iZWdpbigpCmNhbiBiZSB1cGRhdGVkIHRvIHRha2UgYSByZXF1ZXN0IGluc3RlYWQg b2YgYSByaW5nLiBUaGlzIGFsc28gbWVhbnMgdGhhdCBpdCBubwpsb25nZXIgbmVlZHMgdG8gbGF6 aWx5IGFsbG9jYXRlIGEgcmVxdWVzdCBpZiBuby1vbmUgaGFwcGVucyB0byBoYXZlIGRvbmUgaXQK ZWFybGllci4KCkZvcjogVklaLTUxMTUKU2lnbmVkLW9mZi1ieTogSm9obiBIYXJyaXNvbiA8Sm9o bi5DLkhhcnJpc29uQEludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bS5jICAgICAgICAgICAgfCAgICAyICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9j b250ZXh0LmMgICAgfCAgICAyICstCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVj YnVmZmVyLmMgfCAgICA4ICsrLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5j ICAgICAgICB8ICAgIDYgKy0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMg ICAgICAgfCAgIDEwICsrLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX292ZXJsYXkuYyAg ICAgICB8ICAgIDggKystLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYyAgICAgICAg ICAgIHwgICAgMiArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1ZmZlci5jICAg IHwgICA3MiArKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9yaW5nYnVmZmVyLmggICAgfCAgICAyICstCiA5IGZpbGVzIGNoYW5nZWQsIDU0IGlu c2VydGlvbnMoKyksIDU4IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCmluZGV4 IGI1NjEzZmYuLjYwZjY2NzEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf Z2VtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwpAQCAtNDY1Niw3ICs0 NjU2LDcgQEAgaW50IGk5MTVfZ2VtX2wzX3JlbWFwKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVz dCAqcmVxLCBpbnQgc2xpY2UpCiAJaWYgKCFIQVNfTDNfRFBGKGRldikgfHwgIXJlbWFwX2luZm8p CiAJCXJldHVybiAwOwogCi0JcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCBHRU43X0wzTE9H X1NJWkUgLyA0ICogMyk7CisJcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyZXEsIEdFTjdfTDNMT0df U0laRSAvIDQgKiAzKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9jb250ZXh0LmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbV9jb250ZXh0LmMKaW5kZXggMzg0ZjQ4MS4uZTM0ODQyNCAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fY29udGV4dC5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtX2NvbnRleHQuYwpAQCAtNTAzLDcgKzUwMyw3IEBAIG1pX3Nl dF9jb250ZXh0KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxLCB1MzIgaHdfZmxhZ3Mp CiAJaWYgKElOVEVMX0lORk8ocmluZy0+ZGV2KS0+Z2VuID49IDcpCiAJCWxlbiArPSAyICsgKG51 bV9yaW5ncyA/IDQqbnVtX3JpbmdzICsgMiA6IDApOwogCi0JcmV0ID0gaW50ZWxfcmluZ19iZWdp bihyaW5nLCBsZW4pOworCXJldCA9IGludGVsX3JpbmdfYmVnaW4ocmVxLCBsZW4pOwogCWlmIChy ZXQpCiAJCXJldHVybiByZXQ7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtX2V4ZWNidWZmZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2V4ZWNi dWZmZXIuYwppbmRleCA4YjRmOGE5Li42YTcwM2U2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9nZW1fZXhlY2J1ZmZlci5jCkBAIC0xMDEzLDcgKzEwMTMsNyBAQCBpOTE1X3Jlc2V0X2dl bjdfc29sX29mZnNldHMoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJcmV0dXJuIC1FSU5WQUw7 CiAJfQogCi0JcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCA0ICogMyk7CisJcmV0ID0gaW50 ZWxfcmluZ19iZWdpbihyZXEsIDQgKiAzKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCkBA IC0xMDQ0LDcgKzEwNDQsNyBAQCBpOTE1X2VtaXRfYm94KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVx dWVzdCAqcmVxLAogCX0KIAogCWlmIChJTlRFTF9JTkZPKHJpbmctPmRldiktPmdlbiA+PSA0KSB7 Ci0JCXJldCA9IGludGVsX3JpbmdfYmVnaW4ocmluZywgNCk7CisJCXJldCA9IGludGVsX3Jpbmdf YmVnaW4ocmVxLCA0KTsKIAkJaWYgKHJldCkKIAkJCXJldHVybiByZXQ7CiAKQEAgLTEwNTMsNyAr MTA1Myw3IEBAIGk5MTVfZW1pdF9ib3goc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEs CiAJCWludGVsX3JpbmdfZW1pdChyaW5nLCAoKGJveC0+eDIgLSAxKSAmIDB4ZmZmZikgfCAoYm94 LT55MiAtIDEpIDw8IDE2KTsKIAkJaW50ZWxfcmluZ19lbWl0KHJpbmcsIERSNCk7CiAJfSBlbHNl IHsKLQkJcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCA2KTsKKwkJcmV0ID0gaW50ZWxfcmlu Z19iZWdpbihyZXEsIDYpOwogCQlpZiAocmV0KQogCQkJcmV0dXJuIHJldDsKIApAQCAtMTIzNSw3 ICsxMjM1LDcgQEAgaTkxNV9nZW1fcmluZ2J1ZmZlcl9zdWJtaXNzaW9uKHN0cnVjdCBpOTE1X2V4 ZWNidWZmZXJfcGFyYW1zICpwYXJhbXMsCiAKIAlpZiAocmluZyA9PSAmZGV2X3ByaXYtPnJpbmdb UkNTXSAmJgogCQkJaW5zdHBfbW9kZSAhPSBkZXZfcHJpdi0+cmVsYXRpdmVfY29uc3RhbnRzX21v ZGUpIHsKLQkJcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCA0KTsKKwkJcmV0ID0gaW50ZWxf cmluZ19iZWdpbihwYXJhbXMtPnJlcXVlc3QsIDQpOwogCQlpZiAocmV0KQogCQkJZ290byBlcnJv cjsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYwppbmRleCBhMWFmNjQ0Li4wNDQ1Mjc4 IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYwpAQCAtMjg4LDcgKzI4OCw3IEBAIHN0 YXRpYyBpbnQgZ2VuOF93cml0ZV9wZHAoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEs IHVuc2lnbmVkIGVudHJ5LAogCiAJQlVHX09OKGVudHJ5ID49IDQpOwogCi0JcmV0ID0gaW50ZWxf cmluZ19iZWdpbihyaW5nLCA2KTsKKwlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJlcSwgNik7CiAJ aWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIApAQCAtNzg4LDcgKzc4OCw3IEBAIHN0YXRpYyBpbnQg aHN3X21tX3N3aXRjaChzdHJ1Y3QgaTkxNV9od19wcGd0dCAqcHBndHQsCiAJaWYgKHJldCkKIAkJ cmV0dXJuIHJldDsKIAotCXJldCA9IGludGVsX3JpbmdfYmVnaW4ocmluZywgNik7CisJcmV0ID0g aW50ZWxfcmluZ19iZWdpbihyZXEsIDYpOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAKQEAg LTgyNSw3ICs4MjUsNyBAQCBzdGF0aWMgaW50IGdlbjdfbW1fc3dpdGNoKHN0cnVjdCBpOTE1X2h3 X3BwZ3R0ICpwcGd0dCwKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCi0JcmV0ID0gaW50ZWxf cmluZ19iZWdpbihyaW5nLCA2KTsKKwlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJlcSwgNik7CiAJ aWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5j CmluZGV4IDc5NjI5NDYuLjY5MDFlOWEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX2Rpc3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5 LmMKQEAgLTkyNTksNyArOTI1OSw3IEBAIHN0YXRpYyBpbnQgaW50ZWxfZ2VuMl9xdWV1ZV9mbGlw KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJdTMyIGZsaXBfbWFzazsKIAlpbnQgcmV0OwogCi0J cmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCA2KTsKKwlyZXQgPSBpbnRlbF9yaW5nX2JlZ2lu KHJlcSwgNik7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIApAQCAtOTI5NCw3ICs5Mjk0LDcg QEAgc3RhdGljIGludCBpbnRlbF9nZW4zX3F1ZXVlX2ZsaXAoc3RydWN0IGRybV9kZXZpY2UgKmRl diwKIAl1MzIgZmxpcF9tYXNrOwogCWludCByZXQ7CiAKLQlyZXQgPSBpbnRlbF9yaW5nX2JlZ2lu KHJpbmcsIDYpOworCXJldCA9IGludGVsX3JpbmdfYmVnaW4ocmVxLCA2KTsKIAlpZiAocmV0KQog CQlyZXR1cm4gcmV0OwogCkBAIC05MzI3LDcgKzkzMjcsNyBAQCBzdGF0aWMgaW50IGludGVsX2dl bjRfcXVldWVfZmxpcChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCXVpbnQzMl90IHBmLCBwaXBl c3JjOwogCWludCByZXQ7CiAKLQlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJpbmcsIDQpOworCXJl dCA9IGludGVsX3JpbmdfYmVnaW4ocmVxLCA0KTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0Owog CkBAIC05MzY2LDcgKzkzNjYsNyBAQCBzdGF0aWMgaW50IGludGVsX2dlbjZfcXVldWVfZmxpcChz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCXVpbnQzMl90IHBmLCBwaXBlc3JjOwogCWludCByZXQ7 CiAKLQlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJpbmcsIDQpOworCXJldCA9IGludGVsX3Jpbmdf YmVnaW4ocmVxLCA0KTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCkBAIC05NDQyLDcgKzk0 NDIsNyBAQCBzdGF0aWMgaW50IGludGVsX2dlbjdfcXVldWVfZmxpcChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LAogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAKLQlyZXQgPSBpbnRlbF9yaW5nX2Jl Z2luKHJpbmcsIGxlbik7CisJcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyZXEsIGxlbik7CiAJaWYg KHJldCkKIAkJcmV0dXJuIHJldDsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfb3ZlcmxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfb3ZlcmxheS5jCmlu ZGV4IDIyOGM5ZDEuLjFmYjc2NTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX292ZXJsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9vdmVybGF5LmMK QEAgLTI1MSw3ICsyNTEsNyBAQCBzdGF0aWMgaW50IGludGVsX292ZXJsYXlfb24oc3RydWN0IGlu dGVsX292ZXJsYXkgKm92ZXJsYXkpCiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIAotCXJldCA9 IGludGVsX3JpbmdfYmVnaW4ocmluZywgNCk7CisJcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyZXEs IDQpOwogCWlmIChyZXQpIHsKIAkJaTkxNV9nZW1fcmVxdWVzdF91bnJlZmVyZW5jZShyZXEpOwog CQlyZXR1cm4gcmV0OwpAQCAtMjkyLDcgKzI5Miw3IEBAIHN0YXRpYyBpbnQgaW50ZWxfb3Zlcmxh eV9jb250aW51ZShzdHJ1Y3QgaW50ZWxfb3ZlcmxheSAqb3ZlcmxheSwKIAlpZiAocmV0KQogCQly ZXR1cm4gcmV0OwogCi0JcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCAyKTsKKwlyZXQgPSBp bnRlbF9yaW5nX2JlZ2luKHJlcSwgMik7CiAJaWYgKHJldCkgewogCQlpOTE1X2dlbV9yZXF1ZXN0 X3VucmVmZXJlbmNlKHJlcSk7CiAJCXJldHVybiByZXQ7CkBAIC0zNTksNyArMzU5LDcgQEAgc3Rh dGljIGludCBpbnRlbF9vdmVybGF5X29mZihzdHJ1Y3QgaW50ZWxfb3ZlcmxheSAqb3ZlcmxheSkK IAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCi0JcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5n LCA2KTsKKwlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJlcSwgNik7CiAJaWYgKHJldCkgewogCQlp OTE1X2dlbV9yZXF1ZXN0X3VucmVmZXJlbmNlKHJlcSk7CiAJCXJldHVybiByZXQ7CkBAIC00MzQs NyArNDM0LDcgQEAgc3RhdGljIGludCBpbnRlbF9vdmVybGF5X3JlbGVhc2Vfb2xkX3ZpZChzdHJ1 Y3QgaW50ZWxfb3ZlcmxheSAqb3ZlcmxheSkKIAkJaWYgKHJldCkKIAkJCXJldHVybiByZXQ7CiAK LQkJcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCAyKTsKKwkJcmV0ID0gaW50ZWxfcmluZ19i ZWdpbihyZXEsIDIpOwogCQlpZiAocmV0KSB7CiAJCQlpOTE1X2dlbV9yZXF1ZXN0X3VucmVmZXJl bmNlKHJlcSk7CiAJCQlyZXR1cm4gcmV0OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfcG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKaW5kZXggNjU5 NGE1Mi4uY2MyMjUzNiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0u YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCkBAIC01MDEyLDcgKzUwMTIs NyBAQCBzdGF0aWMgdm9pZCBpcm9ubGFrZV9lbmFibGVfcmM2KHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYpCiAJICogR1BVIGNhbiBhdXRvbWF0aWNhbGx5IHBvd2VyIGRvd24gdGhlIHJlbmRlciB1bml0 IGlmIGdpdmVuIGEgcGFnZQogCSAqIHRvIHNhdmUgc3RhdGUuCiAJICovCi0JcmV0ID0gaW50ZWxf cmluZ19iZWdpbihyaW5nLCA2KTsKKwlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJlcSwgNik7CiAJ aWYgKHJldCkKIAkJZ290byBlcnI7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3JpbmdidWZmZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZm ZXIuYwppbmRleCAxMDlmMjgzLi41ZWVmMDJlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pbnRlbF9yaW5nYnVmZmVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf cmluZ2J1ZmZlci5jCkBAIC0xMDYsNyArMTA2LDcgQEAgZ2VuMl9yZW5kZXJfcmluZ19mbHVzaChz dHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSwKIAlpZiAoaW52YWxpZGF0ZV9kb21haW5z ICYgSTkxNV9HRU1fRE9NQUlOX1NBTVBMRVIpCiAJCWNtZCB8PSBNSV9SRUFEX0ZMVVNIOwogCi0J cmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCAyKTsKKwlyZXQgPSBpbnRlbF9yaW5nX2JlZ2lu KHJlcSwgMik7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIApAQCAtMTY1LDcgKzE2NSw3IEBA IGdlbjRfcmVuZGVyX3JpbmdfZmx1c2goc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEs CiAJICAgIChJU19HNFgoZGV2KSB8fCBJU19HRU41KGRldikpKQogCQljbWQgfD0gTUlfSU5WQUxJ REFURV9JU1A7CiAKLQlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJpbmcsIDIpOworCXJldCA9IGlu dGVsX3JpbmdfYmVnaW4ocmVxLCAyKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCkBAIC0y MjAsOCArMjIwLDcgQEAgaW50ZWxfZW1pdF9wb3N0X3N5bmNfbm9uemVyb19mbHVzaChzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSkKIAl1MzIgc2NyYXRjaF9hZGRyID0gcmluZy0+c2Ny YXRjaC5ndHRfb2Zmc2V0ICsgMiAqIENBQ0hFTElORV9CWVRFUzsKIAlpbnQgcmV0OwogCi0KLQly ZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJpbmcsIDYpOworCXJldCA9IGludGVsX3JpbmdfYmVnaW4o cmVxLCA2KTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCkBAIC0yMzQsNyArMjMzLDcgQEAg aW50ZWxfZW1pdF9wb3N0X3N5bmNfbm9uemVyb19mbHVzaChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3Jl cXVlc3QgKnJlcSkKIAlpbnRlbF9yaW5nX2VtaXQocmluZywgTUlfTk9PUCk7CiAJaW50ZWxfcmlu Z19hZHZhbmNlKHJpbmcpOwogCi0JcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCA2KTsKKwly ZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJlcSwgNik7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsK IApAQCAtMjg5LDcgKzI4OCw3IEBAIGdlbjZfcmVuZGVyX3JpbmdfZmx1c2goc3RydWN0IGRybV9p OTE1X2dlbV9yZXF1ZXN0ICpyZXEsCiAJCWZsYWdzIHw9IFBJUEVfQ09OVFJPTF9RV19XUklURSB8 IFBJUEVfQ09OVFJPTF9DU19TVEFMTDsKIAl9CiAKLQlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJp bmcsIDQpOworCXJldCA9IGludGVsX3JpbmdfYmVnaW4ocmVxLCA0KTsKIAlpZiAocmV0KQogCQly ZXR1cm4gcmV0OwogCkBAIC0zMDgsNyArMzA3LDcgQEAgZ2VuN19yZW5kZXJfcmluZ19jc19zdGFs bF93YShzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSkKIAlzdHJ1Y3QgaW50ZWxfZW5n aW5lX2NzICpyaW5nID0gcmVxLT5yaW5nOwogCWludCByZXQ7CiAKLQlyZXQgPSBpbnRlbF9yaW5n X2JlZ2luKHJpbmcsIDQpOworCXJldCA9IGludGVsX3JpbmdfYmVnaW4ocmVxLCA0KTsKIAlpZiAo cmV0KQogCQlyZXR1cm4gcmV0OwogCkBAIC0zMzAsNyArMzI5LDcgQEAgc3RhdGljIGludCBnZW43 X3JpbmdfZmJjX2ZsdXNoKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxLCB1MzIgdmFs dWUpCiAJaWYgKCFyaW5nLT5mYmNfZGlydHkpCiAJCXJldHVybiAwOwogCi0JcmV0ID0gaW50ZWxf cmluZ19iZWdpbihyaW5nLCA2KTsKKwlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJlcSwgNik7CiAJ aWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIAkvKiBXYUZiY051a2VPbjNEQmx0Oml2Yi9oc3cgKi8K QEAgLTM5NSw3ICszOTQsNyBAQCBnZW43X3JlbmRlcl9yaW5nX2ZsdXNoKHN0cnVjdCBkcm1faTkx NV9nZW1fcmVxdWVzdCAqcmVxLAogCQlnZW43X3JlbmRlcl9yaW5nX2NzX3N0YWxsX3dhKHJlcSk7 CiAJfQogCi0JcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCA0KTsKKwlyZXQgPSBpbnRlbF9y aW5nX2JlZ2luKHJlcSwgNCk7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIApAQCAtNDE4LDcg KzQxNyw3IEBAIGdlbjhfZW1pdF9waXBlX2NvbnRyb2woc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1 ZXN0ICpyZXEsCiAJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyA9IHJlcS0+cmluZzsKIAlp bnQgcmV0OwogCi0JcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCA2KTsKKwlyZXQgPSBpbnRl bF9yaW5nX2JlZ2luKHJlcSwgNik7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIApAQCAtNzYw LDcgKzc1OSw3IEBAIHN0YXRpYyBpbnQgaW50ZWxfcmluZ193b3JrYXJvdW5kc19lbWl0KHN0cnVj dCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxKQogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAK LQlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJpbmcsICh3LT5jb3VudCAqIDIgKyAyKSk7CisJcmV0 ID0gaW50ZWxfcmluZ19iZWdpbihyZXEsICh3LT5jb3VudCAqIDIgKyAyKSk7CiAJaWYgKHJldCkK IAkJcmV0dXJuIHJldDsKIApAQCAtMTExOSw3ICsxMTE4LDcgQEAgc3RhdGljIGludCBnZW44X3Jj c19zaWduYWwoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpzaWduYWxsZXJfcmVxLAogCW51 bV9kd29yZHMgKz0gKG51bV9yaW5ncy0xKSAqIE1CT1hfVVBEQVRFX0RXT1JEUzsKICN1bmRlZiBN Qk9YX1VQREFURV9EV09SRFMKIAotCXJldCA9IGludGVsX3JpbmdfYmVnaW4oc2lnbmFsbGVyLCBu dW1fZHdvcmRzKTsKKwlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHNpZ25hbGxlcl9yZXEsIG51bV9k d29yZHMpOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAKQEAgLTExNjAsNyArMTE1OSw3IEBA IHN0YXRpYyBpbnQgZ2VuOF94Y3Nfc2lnbmFsKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAq c2lnbmFsbGVyX3JlcSwKIAludW1fZHdvcmRzICs9IChudW1fcmluZ3MtMSkgKiBNQk9YX1VQREFU RV9EV09SRFM7CiAjdW5kZWYgTUJPWF9VUERBVEVfRFdPUkRTCiAKLQlyZXQgPSBpbnRlbF9yaW5n X2JlZ2luKHNpZ25hbGxlciwgbnVtX2R3b3Jkcyk7CisJcmV0ID0gaW50ZWxfcmluZ19iZWdpbihz aWduYWxsZXJfcmVxLCBudW1fZHdvcmRzKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCkBA IC0xMTk5LDcgKzExOTgsNyBAQCBzdGF0aWMgaW50IGdlbjZfc2lnbmFsKHN0cnVjdCBkcm1faTkx NV9nZW1fcmVxdWVzdCAqc2lnbmFsbGVyX3JlcSwKIAludW1fZHdvcmRzICs9IHJvdW5kX3VwKChu dW1fcmluZ3MtMSkgKiBNQk9YX1VQREFURV9EV09SRFMsIDIpOwogI3VuZGVmIE1CT1hfVVBEQVRF X0RXT1JEUwogCi0JcmV0ID0gaW50ZWxfcmluZ19iZWdpbihzaWduYWxsZXIsIG51bV9kd29yZHMp OworCXJldCA9IGludGVsX3JpbmdfYmVnaW4oc2lnbmFsbGVyX3JlcSwgbnVtX2R3b3Jkcyk7CiAJ aWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIApAQCAtMTIzNyw3ICsxMjM2LDcgQEAgZ2VuNl9hZGRf cmVxdWVzdChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSkKIAlpZiAocmluZy0+c2Vt YXBob3JlLnNpZ25hbCkKIAkJcmV0ID0gcmluZy0+c2VtYXBob3JlLnNpZ25hbChyZXEsIDQpOwog CWVsc2UKLQkJcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCA0KTsKKwkJcmV0ID0gaW50ZWxf cmluZ19iZWdpbihyZXEsIDQpOwogCiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKQEAgLTEyNzUs NyArMTI3NCw3IEBAIGdlbjhfcmluZ19zeW5jKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAq d2FpdGVyX3JlcSwKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB3YWl0ZXIt PmRldi0+ZGV2X3ByaXZhdGU7CiAJaW50IHJldDsKIAotCXJldCA9IGludGVsX3JpbmdfYmVnaW4o d2FpdGVyLCA0KTsKKwlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHdhaXRlcl9yZXEsIDQpOwogCWlm IChyZXQpCiAJCXJldHVybiByZXQ7CiAKQEAgLTEzMTIsNyArMTMxMSw3IEBAIGdlbjZfcmluZ19z eW5jKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqd2FpdGVyX3JlcSwKIAogCVdBUk5fT04o d2FpdF9tYm94ID09IE1JX1NFTUFQSE9SRV9TWU5DX0lOVkFMSUQpOwogCi0JcmV0ID0gaW50ZWxf cmluZ19iZWdpbih3YWl0ZXIsIDQpOworCXJldCA9IGludGVsX3JpbmdfYmVnaW4od2FpdGVyX3Jl cSwgNCk7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIApAQCAtMTM1Nyw3ICsxMzU2LDcgQEAg cGNfcmVuZGVyX2FkZF9yZXF1ZXN0KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxKQog CSAqIGluY29oZXJlbmNlIGJ5IGZsdXNoaW5nIHRoZSA2IFBJUEVfTk9USUZZIGJ1ZmZlcnMgb3V0 IHRvCiAJICogbWVtb3J5IGJlZm9yZSByZXF1ZXN0aW5nIGFuIGludGVycnVwdC4KIAkgKi8KLQly ZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJpbmcsIDMyKTsKKwlyZXQgPSBpbnRlbF9yaW5nX2JlZ2lu KHJlcSwgMzIpOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAKQEAgLTE1NDIsNyArMTU0MSw3 IEBAIGJzZF9yaW5nX2ZsdXNoKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxLAogCXN0 cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcgPSByZXEtPnJpbmc7CiAJaW50IHJldDsKIAotCXJl dCA9IGludGVsX3JpbmdfYmVnaW4ocmluZywgMik7CisJcmV0ID0gaW50ZWxfcmluZ19iZWdpbihy ZXEsIDIpOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAKQEAgLTE1NTgsNyArMTU1Nyw3IEBA IGk5eHhfYWRkX3JlcXVlc3Qoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEpCiAJc3Ry dWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyA9IHJlcS0+cmluZzsKIAlpbnQgcmV0OwogCi0JcmV0 ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCA0KTsKKwlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJl cSwgNCk7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIApAQCAtMTcwMyw3ICsxNzAyLDcgQEAg aTk2NV9kaXNwYXRjaF9leGVjYnVmZmVyKHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVx LAogCXN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcgPSByZXEtPnJpbmc7CiAJaW50IHJldDsK IAotCXJldCA9IGludGVsX3JpbmdfYmVnaW4ocmluZywgMik7CisJcmV0ID0gaW50ZWxfcmluZ19i ZWdpbihyZXEsIDIpOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAKQEAgLTE3MzEsNyArMTcz MCw3IEBAIGk4MzBfZGlzcGF0Y2hfZXhlY2J1ZmZlcihzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVl c3QgKnJlcSwKIAl1MzIgY3Nfb2Zmc2V0ID0gcmluZy0+c2NyYXRjaC5ndHRfb2Zmc2V0OwogCWlu dCByZXQ7CiAKLQlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJpbmcsIDYpOworCXJldCA9IGludGVs X3JpbmdfYmVnaW4ocmVxLCA2KTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCkBAIC0xNzQ4 LDcgKzE3NDcsNyBAQCBpODMwX2Rpc3BhdGNoX2V4ZWNidWZmZXIoc3RydWN0IGRybV9pOTE1X2dl bV9yZXF1ZXN0ICpyZXEsCiAJCWlmIChsZW4gPiBJODMwX0JBVENIX0xJTUlUKQogCQkJcmV0dXJu IC1FTk9TUEM7CiAKLQkJcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCA2ICsgMik7CisJCXJl dCA9IGludGVsX3JpbmdfYmVnaW4ocmVxLCA2ICsgMik7CiAJCWlmIChyZXQpCiAJCQlyZXR1cm4g cmV0OwogCkBAIC0xNzcxLDcgKzE3NzAsNyBAQCBpODMwX2Rpc3BhdGNoX2V4ZWNidWZmZXIoc3Ry dWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEsCiAJCW9mZnNldCA9IGNzX29mZnNldDsKIAl9 CiAKLQlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJpbmcsIDQpOworCXJldCA9IGludGVsX3Jpbmdf YmVnaW4ocmVxLCA0KTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCkBAIC0xNzkzLDcgKzE3 OTIsNyBAQCBpOTE1X2Rpc3BhdGNoX2V4ZWNidWZmZXIoc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1 ZXN0ICpyZXEsCiAJc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyA9IHJlcS0+cmluZzsKIAlp bnQgcmV0OwogCi0JcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyaW5nLCAyKTsKKwlyZXQgPSBpbnRl bF9yaW5nX2JlZ2luKHJlcSwgMik7CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIApAQCAtMjIz MiwxMyArMjIzMSwxNSBAQCBzdGF0aWMgaW50IF9faW50ZWxfcmluZ19wcmVwYXJlKHN0cnVjdCBp bnRlbF9lbmdpbmVfY3MgKnJpbmcsCiAJcmV0dXJuIDA7CiB9CiAKLWludCBpbnRlbF9yaW5nX2Jl Z2luKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsCitpbnQgaW50ZWxfcmluZ19iZWdpbihz dHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSwKIAkJICAgICBpbnQgbnVtX2R3b3JkcykK IHsKLQlzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcTsKKwlzdHJ1Y3QgaW50ZWxfZW5n aW5lX2NzICpyaW5nID0gcmVxLT5yaW5nOwogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdiA9IHJpbmctPmRldi0+ZGV2X3ByaXZhdGU7CiAJaW50IHJldDsKIAorCVdBUk5fT04ocmVx ID09IE5VTEwpOworCiAJcmV0ID0gaTkxNV9nZW1fY2hlY2tfd2VkZ2UoJmRldl9wcml2LT5ncHVf ZXJyb3IsCiAJCQkJICAgZGV2X3ByaXYtPm1tLmludGVycnVwdGlibGUpOwogCWlmIChyZXQpCkBA IC0yMjQ4LDExICsyMjQ5LDYgQEAgaW50IGludGVsX3JpbmdfYmVnaW4oc3RydWN0IGludGVsX2Vu Z2luZV9jcyAqcmluZywKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCi0JLyogUHJlYWxsb2Nh dGUgdGhlIG9sciBiZWZvcmUgdG91Y2hpbmcgdGhlIHJpbmcgKi8KLQlyZXQgPSBpbnRlbF9yaW5n X2FsbG9jX3JlcXVlc3QocmluZywgTlVMTCwgJnJlcSk7Ci0JaWYgKHJldCkKLQkJcmV0dXJuIHJl dDsKLQogCXJpbmctPmJ1ZmZlci0+c3BhY2UgLT0gbnVtX2R3b3JkcyAqIHNpemVvZih1aW50MzJf dCk7CiAJcmV0dXJuIDA7CiB9CkBAIC0yMjY4LDcgKzIyNjQsNyBAQCBpbnQgaW50ZWxfcmluZ19j YWNoZWxpbmVfYWxpZ24oc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEpCiAJCXJldHVy biAwOwogCiAJbnVtX2R3b3JkcyA9IENBQ0hFTElORV9CWVRFUyAvIHNpemVvZih1aW50MzJfdCkg LSBudW1fZHdvcmRzOwotCXJldCA9IGludGVsX3JpbmdfYmVnaW4ocmluZywgbnVtX2R3b3Jkcyk7 CisJcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyZXEsIG51bV9kd29yZHMpOwogCWlmIChyZXQpCiAJ CXJldHVybiByZXQ7CiAKQEAgLTIzMzgsNyArMjMzNCw3IEBAIHN0YXRpYyBpbnQgZ2VuNl9ic2Rf cmluZ19mbHVzaChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSwKIAl1aW50MzJfdCBj bWQ7CiAJaW50IHJldDsKIAotCXJldCA9IGludGVsX3JpbmdfYmVnaW4ocmluZywgNCk7CisJcmV0 ID0gaW50ZWxfcmluZ19iZWdpbihyZXEsIDQpOwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAK QEAgLTIzODUsNyArMjM4MSw3IEBAIGdlbjhfcmluZ19kaXNwYXRjaF9leGVjYnVmZmVyKHN0cnVj dCBkcm1faTkxNV9nZW1fcmVxdWVzdCAqcmVxLAogCQkJIShkaXNwYXRjaF9mbGFncyAmIEk5MTVf RElTUEFUQ0hfU0VDVVJFKTsKIAlpbnQgcmV0OwogCi0JcmV0ID0gaW50ZWxfcmluZ19iZWdpbihy aW5nLCA0KTsKKwlyZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJlcSwgNCk7CiAJaWYgKHJldCkKIAkJ cmV0dXJuIHJldDsKIApAQCAtMjQwNyw3ICsyNDAzLDcgQEAgaHN3X3JpbmdfZGlzcGF0Y2hfZXhl Y2J1ZmZlcihzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSwKIAlzdHJ1Y3QgaW50ZWxf ZW5naW5lX2NzICpyaW5nID0gcmVxLT5yaW5nOwogCWludCByZXQ7CiAKLQlyZXQgPSBpbnRlbF9y aW5nX2JlZ2luKHJpbmcsIDIpOworCXJldCA9IGludGVsX3JpbmdfYmVnaW4ocmVxLCAyKTsKIAlp ZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCkBAIC0yNDMwLDcgKzI0MjYsNyBAQCBnZW42X3Jpbmdf ZGlzcGF0Y2hfZXhlY2J1ZmZlcihzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSwKIAlz dHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nID0gcmVxLT5yaW5nOwogCWludCByZXQ7CiAKLQly ZXQgPSBpbnRlbF9yaW5nX2JlZ2luKHJpbmcsIDIpOworCXJldCA9IGludGVsX3JpbmdfYmVnaW4o cmVxLCAyKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCkBAIC0yNDU2LDcgKzI0NTIsNyBA QCBzdGF0aWMgaW50IGdlbjZfcmluZ19mbHVzaChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3Qg KnJlcSwKIAl1aW50MzJfdCBjbWQ7CiAJaW50IHJldDsKIAotCXJldCA9IGludGVsX3JpbmdfYmVn aW4ocmluZywgNCk7CisJcmV0ID0gaW50ZWxfcmluZ19iZWdpbihyZXEsIDQpOwogCWlmIChyZXQp CiAJCXJldHVybiByZXQ7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3JpbmdidWZmZXIuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3JpbmdidWZmZXIuaApp bmRleCA4MGViMzk5Li5lODNmYmJiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9yaW5nYnVmZmVyLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcmluZ2J1 ZmZlci5oCkBAIC0zODYsNyArMzg2LDcgQEAgaW50IGludGVsX2FsbG9jX3JpbmdidWZmZXJfb2Jq KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiB2b2lkIGludGVsX3N0b3BfcmluZ19idWZmZXIoc3Ry dWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyk7CiB2b2lkIGludGVsX2NsZWFudXBfcmluZ19idWZm ZXIoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZyk7CiAKLWludCBfX211c3RfY2hlY2sgaW50 ZWxfcmluZ19iZWdpbihzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLCBpbnQgbik7CitpbnQg X19tdXN0X2NoZWNrIGludGVsX3JpbmdfYmVnaW4oc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0 ICpyZXEsIGludCBuKTsKIGludCBfX211c3RfY2hlY2sgaW50ZWxfcmluZ19jYWNoZWxpbmVfYWxp Z24oc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1ZXN0ICpyZXEpOwogaW50IF9fbXVzdF9jaGVjayBp bnRlbF9yaW5nX2FsbG9jX3JlcXVlc3Qoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywKIAkJ CQkJICBzdHJ1Y3QgaW50ZWxfY29udGV4dCAqY3R4LAotLSAKMS43LjkuNQoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlz dApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK