From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shashank Sharma Subject: [PATCH 01/20] drm: handle HDMI 2.0 VICs in AVI info-frames Date: Mon, 10 Jul 2017 16:48:29 +0530 Message-ID: <1499685528-6926-2-git-send-email-shashank.sharma@intel.com> References: <1499685528-6926-1-git-send-email-shashank.sharma@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1499685528-6926-1-git-send-email-shashank.sharma@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org SERNSSAxLjRiIHN1cHBvcnQgdGhlIENFQSB2aWRlbyBtb2RlcyBhcyBwZXIgcmFuZ2Ugb2YgQ0VB LTg2MS1EIChWSUMgMS02NCkuCkZvciBhbnkgb3RoZXIgbW9kZSwgdGhlIFZJQyBmaWxlZCBpbiBB VkkgaW5mb2ZyYW1lcyBzaG91bGQgYmUgMC4KSERNSSAyLjAgc2lua3MsIHN1cHBvcnQgdmlkZW8g bW9kZXMgcmFuZ2UgYXMgcGVyIENFQS04NjEtRiBzcGVjLCB3aGljaCBpcwpleHRlbmRlZCB0byAo VklDIDEtMTA3KS4KClRoaXMgcGF0Y2ggYWRkcyBhIGJvb2wgaW5wdXQgdmFyaWFibGUsIHdoaWNo IGluZGljYXRlcyBpZiB0aGUgY29ubmVjdGVkCnNpbmsgaXMgYSBIRE1JIDIuMCBzaW5rIG9yIG5v dC4gVGhpcyB3aWxsIG1ha2Ugc3VyZSB0aGF0IHdlIGRvbid0IHBhc3MgYQpIRE1JIDIuMCBWSUMg dG8gYSBIRE1JIDEuNCBzaW5rLgoKVGhpcyBwYXRjaCB0b3VjaGVzIGFsbCBkcm0gZHJpdmVycywg d2hvIGFyZSBjYWxsZXJzIG9mIHRoaXMgZnVuY3Rpb24KZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9m cm9tX2Rpc3BsYXlfbW9kZSBidXQgdG8gbWFrZSBzdXJlIHRoZXJlIGlzCm5vIGNoYW5nZSBpbiBj dXJyZW50IGJlaGF2aW9yLCBpc19oZG1pMiBpcyBrZXB0IGFzIGZhbHNlLgoKSW4gY2FzZSBvZiBJ OTE1IGRyaXZlciwgdGhpcyBwYXRjaDoKLSBjaGVja3MgaWYgdGhlIGNvbm5lY3RlZCBkaXNwbGF5 IGlzIEhETUkgMi4wLgotIEhETUkgaW5mb2ZyYW1lcyBjYXJyeSBvbmUgb2YgdGhpcyB0d28gdHlw ZSBvZiBpbmZvcm1hdGlvbjoKCS0gVklDIGZvciA0SyBtb2RlcyBmb3IgSERNSSAxLjQgc2lua3MK CS0gUzNEIGluZm9ybWF0aW9uIGZvciBTM0QgbW9kZXMKICBBcyBDRUEtODYxLUYgaGFzIGFscmVh ZHkgZGVmaW5lZCBWSUNzIGZvciA0SyB2aWRlb21vZGVzLCB0aGlzCiAgcGF0Y2ggZG9lc24ndCBh bGxvdyBzZW5kaW5nIEhETUkgaW5mb2ZyYW1lcyBmb3IgSERNSSAyLjAgc2lua3MsCiAgdW50aWwg dGhlIG1vZGUgaXMgM0QuCgpQUzogVGhpcyBwYXRjaCB0b3VjaGVzIGEgZmV3IGxpbmVzIGluIGZl dyBmaWxlcywgd2hpY2ggd2VyZQphbHJlYWR5IGFib3ZlIDgwIGNoYXIsIHNvIGNoZWNrcGF0Y2gg Z2l2ZXMgODAgY2hhciB3YXJuaW5nIGFnYWluLgotIGdwdS9kcm0vb21hcGRybS9vbWFwX2VuY29k ZXIuYwotIGdwdS9kcm0vaTkxNS9pbnRlbF9zZHZvLmMKClYyOiBSZWJhc2UsIEFkZGVkIHItYiBm cm9tIEFuZHJ6ZWoKVjM6IEFkZHJlc3NlZCByZXZpZXcgY29tbWVudCBmcm9tIFZpbGxlOgoJLSBE byBub3Qgc2VuZCBWSUNzIGluIGJvdGggQVZJLUlGIGFuZCBIRE1JLUlGCgkgIHNlbmQgb25seSBv bmUgb2YgaXQuClY0OiBSZWJhc2UKVjU6IEFkZGVkIHItYiBmcm9tIE5laWwuCiAgICBBZGRyZXNz ZWQgcmV2aWV3IGNvbW1lbnRzIGZyb20gVmlsbGUKICAgIC0gRG8gbm90IGJsb2NrIEhETUkgdmVu ZG9yIElGLCBpbnN0ZWFkIGNoZWNrIGZvciBWSUMgd2hpbGUKICAgICAgaGFuZGxpbmcgQVZJIGlu Zm9mcmFtZXMKVjY6IFJlYmFzZQoKUmV2aWV3ZWQtYnk6IEFuZHJ6ZWogSGFqZGEgPGEuaGFqZGFA c2Ftc3VuZy5jb20+ClJldmlld2VkLWJ5OiBOZWlsIEFybXN0cm9uZyA8bmFybXN0cm9uZ0BiYXls aWJyZS5jb20+ClNpZ25lZC1vZmYtYnk6IFNoYXNoYW5rIFNoYXJtYSA8c2hhc2hhbmsuc2hhcm1h QGludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9kY2VfdjEwXzAuYyAg ICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9kY2VfdjExXzAuYyAgICB8ICAy ICstCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9kY2VfdjZfMC5jICAgICB8ICAyICstCiBk cml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9kY2VfdjhfMC5jICAgICB8ICAyICstCiBkcml2ZXJz L2dwdS9kcm0vYnJpZGdlL2FuYWxvZ2l4LWFueDc4eHguYyB8ICAzICsrLQogZHJpdmVycy9ncHUv ZHJtL2JyaWRnZS9zaWk5MDJ4LmMgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL2Jy aWRnZS9zeW5vcHN5cy9kdy1oZG1pLmMgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL2RybV9lZGlk LmMgICAgICAgICAgICAgICAgfCAyNiArKysrKysrKysrKysrKysrKysrKysrKysrLQogZHJpdmVy cy9ncHUvZHJtL2V4eW5vcy9leHlub3NfaGRtaS5jICAgICAgfCAgMiArLQogZHJpdmVycy9ncHUv ZHJtL2kyYy90ZGE5OTh4X2Rydi5jICAgICAgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfaGRtaS5jICAgICAgICAgfCAgNSArKysrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfc2R2by5jICAgICAgICAgfCAgMyArKy0KIGRyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9t dGtfaGRtaS5jICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9tc20vaGRtaS9oZG1pX2Jy aWRnZS5jICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L252NTBfZGlzcGxheS5j ICAgIHwgIDMgKystCiBkcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2VuY29kZXIuYyAgICB8 ICAzICsrLQogZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fYXVkaW8uYyAgICAgfCAgMiAr LQogZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL2lubm9faGRtaS5jICAgICAgfCAgMiArLQogZHJp dmVycy9ncHUvZHJtL3N0aS9zdGlfaGRtaS5jICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9n cHUvZHJtL3N1bjRpL3N1bjRpX2hkbWlfZW5jLmMgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJt L3RlZ3JhL2hkbWkuYyAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL3RlZ3Jh L3Nvci5jICAgICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfaGRt aS5jICAgICAgICAgICAgfCAgMiArLQogZHJpdmVycy9ncHUvZHJtL3p0ZS96eF9oZG1pLmMgICAg ICAgICAgICAgfCAgMiArLQogaW5jbHVkZS9kcm0vZHJtX2VkaWQuaCAgICAgICAgICAgICAgICAg ICAgfCAgMyArKy0KIDI1IGZpbGVzIGNoYW5nZWQsIDU3IGluc2VydGlvbnMoKyksIDI1IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2RjZV92MTBf MC5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZGNlX3YxMF8wLmMKaW5kZXggOWY3OGMw My4uYWZmMWY0OCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZGNlX3Yx MF8wLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZGNlX3YxMF8wLmMKQEAgLTE4 NjcsNyArMTg2Nyw3IEBAIHN0YXRpYyB2b2lkIGRjZV92MTBfMF9hZm10X3NldG1vZGUoc3RydWN0 IGRybV9lbmNvZGVyICplbmNvZGVyLAogCWRjZV92MTBfMF9hdWRpb193cml0ZV9zYWRfcmVncyhl bmNvZGVyKTsKIAlkY2VfdjEwXzBfYXVkaW9fd3JpdGVfbGF0ZW5jeV9maWVsZHMoZW5jb2Rlciwg bW9kZSk7CiAKLQllcnIgPSBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2Rl KCZmcmFtZSwgbW9kZSk7CisJZXJyID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3Bs YXlfbW9kZSgmZnJhbWUsIG1vZGUsIGZhbHNlKTsKIAlpZiAoZXJyIDwgMCkgewogCQlEUk1fRVJS T1IoImZhaWxlZCB0byBzZXR1cCBBVkkgaW5mb2ZyYW1lOiAlemRcbiIsIGVycik7CiAJCXJldHVy bjsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2RjZV92MTFfMC5jIGIv ZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZGNlX3YxMV8wLmMKaW5kZXggNGJjZjAxZC4uMmRm NjUwZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZGNlX3YxMV8wLmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZGNlX3YxMV8wLmMKQEAgLTE4NTEsNyAr MTg1MSw3IEBAIHN0YXRpYyB2b2lkIGRjZV92MTFfMF9hZm10X3NldG1vZGUoc3RydWN0IGRybV9l bmNvZGVyICplbmNvZGVyLAogCWRjZV92MTFfMF9hdWRpb193cml0ZV9zYWRfcmVncyhlbmNvZGVy KTsKIAlkY2VfdjExXzBfYXVkaW9fd3JpdGVfbGF0ZW5jeV9maWVsZHMoZW5jb2RlciwgbW9kZSk7 CiAKLQllcnIgPSBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKCZmcmFt ZSwgbW9kZSk7CisJZXJyID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9k ZSgmZnJhbWUsIG1vZGUsIGZhbHNlKTsKIAlpZiAoZXJyIDwgMCkgewogCQlEUk1fRVJST1IoImZh aWxlZCB0byBzZXR1cCBBVkkgaW5mb2ZyYW1lOiAlemRcbiIsIGVycik7CiAJCXJldHVybjsKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2RjZV92Nl8wLmMgYi9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9kY2VfdjZfMC5jCmluZGV4IGZkMTM0YTQuLjBjMzg5MWYgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2RjZV92Nl8wLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZGNlX3Y2XzAuYwpAQCAtMTU5Nyw3ICsxNTk3LDcgQEAg c3RhdGljIHZvaWQgZGNlX3Y2XzBfYXVkaW9fc2V0X2F2aV9pbmZvZnJhbWUoc3RydWN0IGRybV9l bmNvZGVyICplbmNvZGVyLAogCXNzaXplX3QgZXJyOwogCXUzMiB0bXA7CiAKLQllcnIgPSBkcm1f aGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKCZmcmFtZSwgbW9kZSk7CisJZXJy ID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUsIG1vZGUs IGZhbHNlKTsKIAlpZiAoZXJyIDwgMCkgewogCQlEUk1fRVJST1IoImZhaWxlZCB0byBzZXR1cCBB VkkgaW5mb2ZyYW1lOiAlemRcbiIsIGVycik7CiAJCXJldHVybjsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2RjZV92OF8wLmMgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9kY2VfdjhfMC5jCmluZGV4IGE5ZTg2OTUuLmMxNjRiZWYgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2RjZV92OF8wLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2Ft ZC9hbWRncHUvZGNlX3Y4XzAuYwpAQCAtMTc1MCw3ICsxNzUwLDcgQEAgc3RhdGljIHZvaWQgZGNl X3Y4XzBfYWZtdF9zZXRtb2RlKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlciwKIAlkY2Vfdjhf MF9hdWRpb193cml0ZV9zYWRfcmVncyhlbmNvZGVyKTsKIAlkY2VfdjhfMF9hdWRpb193cml0ZV9s YXRlbmN5X2ZpZWxkcyhlbmNvZGVyLCBtb2RlKTsKIAotCWVyciA9IGRybV9oZG1pX2F2aV9pbmZv ZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZyYW1lLCBtb2RlKTsKKwllcnIgPSBkcm1faGRtaV9h dmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKCZmcmFtZSwgbW9kZSwgZmFsc2UpOwogCWlm IChlcnIgPCAwKSB7CiAJCURSTV9FUlJPUigiZmFpbGVkIHRvIHNldHVwIEFWSSBpbmZvZnJhbWU6 ICV6ZFxuIiwgZXJyKTsKIAkJcmV0dXJuOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2Jy aWRnZS9hbmFsb2dpeC1hbng3OHh4LmMgYi9kcml2ZXJzL2dwdS9kcm0vYnJpZGdlL2FuYWxvZ2l4 LWFueDc4eHguYwppbmRleCA5MDA2NTc4Li5hMDgzMjExIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dw dS9kcm0vYnJpZGdlL2FuYWxvZ2l4LWFueDc4eHguYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYnJp ZGdlL2FuYWxvZ2l4LWFueDc4eHguYwpAQCAtMTA5Nyw3ICsxMDk3LDggQEAgc3RhdGljIHZvaWQg YW54Nzh4eF9icmlkZ2VfbW9kZV9zZXQoc3RydWN0IGRybV9icmlkZ2UgKmJyaWRnZSwKIAogCW11 dGV4X2xvY2soJmFueDc4eHgtPmxvY2spOwogCi0JZXJyID0gZHJtX2hkbWlfYXZpX2luZm9mcmFt ZV9mcm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUsIGFkanVzdGVkX21vZGUpOworCWVyciA9IGRybV9o ZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZyYW1lLCBhZGp1c3RlZF9tb2Rl LAorCQkJCQkJICAgICAgIGZhbHNlKTsKIAlpZiAoZXJyKSB7CiAJCURSTV9FUlJPUigiRmFpbGVk IHRvIHNldHVwIEFWSSBpbmZvZnJhbWU6ICVkXG4iLCBlcnIpOwogCQlnb3RvIHVubG9jazsKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2Uvc2lpOTAyeC5jIGIvZHJpdmVycy9ncHUv ZHJtL2JyaWRnZS9zaWk5MDJ4LmMKaW5kZXggOWI4NzA2Ny4uM2RjNDBmNiAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9zaWk5MDJ4LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2Jy aWRnZS9zaWk5MDJ4LmMKQEAgLTI2OSw3ICsyNjksNyBAQCBzdGF0aWMgdm9pZCBzaWk5MDJ4X2Jy aWRnZV9tb2RlX3NldChzdHJ1Y3QgZHJtX2JyaWRnZSAqYnJpZGdlLAogCWlmIChyZXQpCiAJCXJl dHVybjsKIAotCXJldCA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUo JmZyYW1lLCBhZGopOworCXJldCA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5 X21vZGUoJmZyYW1lLCBhZGosIGZhbHNlKTsKIAlpZiAocmV0IDwgMCkgewogCQlEUk1fRVJST1Io ImNvdWxkbid0IGZpbGwgQVZJIGluZm9mcmFtZVxuIik7CiAJCXJldHVybjsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9icmlkZ2Uvc3lub3BzeXMvZHctaGRtaS5jIGIvZHJpdmVycy9ncHUv ZHJtL2JyaWRnZS9zeW5vcHN5cy9kdy1oZG1pLmMKaW5kZXggZWFkMTEyNC4uMGIwYzlkZSAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9zeW5vcHN5cy9kdy1oZG1pLmMKKysrIGIv ZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9zeW5vcHN5cy9kdy1oZG1pLmMKQEAgLTEzMTcsNyArMTMx Nyw3IEBAIHN0YXRpYyB2b2lkIGhkbWlfY29uZmlnX0FWSShzdHJ1Y3QgZHdfaGRtaSAqaGRtaSwg c3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpCiAJdTggdmFsOwogCiAJLyogSW5pdGlhbGlz ZSBpbmZvIGZyYW1lIGZyb20gRFJNIG1vZGUgKi8KLQlkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zy b21fZGlzcGxheV9tb2RlKCZmcmFtZSwgbW9kZSk7CisJZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9m cm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUsIG1vZGUsIGZhbHNlKTsKIAogCWlmIChoZG1pX2J1c19m bXRfaXNfeXV2NDQ0KGhkbWktPmhkbWlfZGF0YS5lbmNfb3V0X2J1c19mb3JtYXQpKQogCQlmcmFt ZS5jb2xvcnNwYWNlID0gSERNSV9DT0xPUlNQQUNFX1lVVjQ0NDsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fZWRpZC5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMKaW5kZXgg MmU1NTU5OS4uMDY2N2IwNyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMK KysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9lZGlkLmMKQEAgLTQzMzQsMTIgKzQzMzQsMTQgQEAg RVhQT1JUX1NZTUJPTChkcm1fc2V0X3ByZWZlcnJlZF9tb2RlKTsKICAqICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEgZnJvbSBhIERSTSBkaXNwbGF5IG1v ZGUKICAqIEBmcmFtZTogSERNSSBBVkkgaW5mb2ZyYW1lCiAgKiBAbW9kZTogRFJNIGRpc3BsYXkg bW9kZQorICogQGlzX2hkbWkyX3Npbms6IFNpbmsgaXMgSERNSSAyLjAgY29tcGxpYW50CiAgKgog ICogUmV0dXJuOiAwIG9uIHN1Y2Nlc3Mgb3IgYSBuZWdhdGl2ZSBlcnJvciBjb2RlIG9uIGZhaWx1 cmUuCiAgKi8KIGludAogZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZShz dHJ1Y3QgaGRtaV9hdmlfaW5mb2ZyYW1lICpmcmFtZSwKLQkJCQkJIGNvbnN0IHN0cnVjdCBkcm1f ZGlzcGxheV9tb2RlICptb2RlKQorCQkJCQkgY29uc3Qgc3RydWN0IGRybV9kaXNwbGF5X21vZGUg Km1vZGUsCisJCQkJCSBib29sIGlzX2hkbWkyX3NpbmspCiB7CiAJaW50IGVycjsKIApAQCAtNDM1 NSw2ICs0MzU3LDI4IEBAIGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUo c3RydWN0IGhkbWlfYXZpX2luZm9mcmFtZSAqZnJhbWUsCiAKIAlmcmFtZS0+dmlkZW9fY29kZSA9 IGRybV9tYXRjaF9jZWFfbW9kZShtb2RlKTsKIAorCS8qCisJICogSERNSSAxLjQgVklDIHJhbmdl OiAxIDw9IFZJQyA8PSA2NCAoQ0VBLTg2MS1EKSBidXQKKwkgKiBIRE1JIDIuMCBWSUMgcmFuZ2U6 IDEgPD0gVklDIDw9IDEwNyAoQ0VBLTg2MS1GKS4gU28gd2UKKwkgKiBoYXZlIHRvIG1ha2Ugc3Vy ZSB3ZSBkb250IGJyZWFrIEhETUkgMS40IHNpbmtzLgorCSAqLworCWlmICghaXNfaGRtaTJfc2lu ayAmJiBmcmFtZS0+dmlkZW9fY29kZSA+IDY0KQorCQlmcmFtZS0+dmlkZW9fY29kZSA9IDA7CisK KwkvKgorCSAqIEhETUkgc3BlYyBzYXlzIGlmIGEgbW9kZSBpcyBmb3VuZCBpbiBIRE1JIDEuNGIg NEsgbW9kZXMKKwkgKiB3ZSBzaG91bGQgc2VuZCBpdHMgVklDIGluIHZlbmRvciBpbmZvZnJhbWVz LCBlbHNlIHNlbmQgdGhlCisJICogVklDIGluIEFWSSBpbmZvZnJhbWVzLiBMZXRzIGNoZWNrIGlm IHRoaXMgbW9kZSBpcyBwcmVzZW50IGluCisJICogSERNSSAxLjRiIDRLIG1vZGVzCisJICovCisJ aWYgKGZyYW1lLT52aWRlb19jb2RlKSB7CisJCXU4IHZlbmRvcl9pZl92aWMgPSBkcm1fbWF0Y2hf aGRtaV9tb2RlKG1vZGUpOworCQlib29sIGlzX3MzZCA9IG1vZGUtPmZsYWdzICYgRFJNX01PREVf RkxBR18zRF9NQVNLOworCisJCWlmIChkcm1fdmFsaWRfaGRtaV92aWModmVuZG9yX2lmX3ZpYykg JiYgIWlzX3MzZCkKKwkJCWZyYW1lLT52aWRlb19jb2RlID0gMDsKKwl9CisKIAlmcmFtZS0+cGlj dHVyZV9hc3BlY3QgPSBIRE1JX1BJQ1RVUkVfQVNQRUNUX05PTkU7CiAKIAkvKgpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfaGRtaS5jIGIvZHJpdmVycy9ncHUvZHJt L2V4eW5vcy9leHlub3NfaGRtaS5jCmluZGV4IDA2YmZiZTQuLmM5NTM5MjcgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2hkbWkuYworKysgYi9kcml2ZXJzL2dwdS9k cm0vZXh5bm9zL2V4eW5vc19oZG1pLmMKQEAgLTc4NCw3ICs3ODQsNyBAQCBzdGF0aWMgdm9pZCBo ZG1pX3JlZ19pbmZvZnJhbWVzKHN0cnVjdCBoZG1pX2NvbnRleHQgKmhkYXRhKQogCX0KIAogCXJl dCA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZybS5hdmksCi0J CQkmaGRhdGEtPmN1cnJlbnRfbW9kZSk7CisJCQkmaGRhdGEtPmN1cnJlbnRfbW9kZSwgZmFsc2Up OwogCWlmICghcmV0KQogCQlyZXQgPSBoZG1pX2F2aV9pbmZvZnJhbWVfcGFjaygmZnJtLmF2aSwg YnVmLCBzaXplb2YoYnVmKSk7CiAJaWYgKHJldCA+IDApIHsKZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9pMmMvdGRhOTk4eF9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS9pMmMvdGRhOTk4eF9k cnYuYwppbmRleCA4NmY0N2UxLi5kMWU3YWM1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v aTJjL3RkYTk5OHhfZHJ2LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2kyYy90ZGE5OTh4X2Rydi5j CkBAIC03MTIsNyArNzEyLDcgQEAgdGRhOTk4eF93cml0ZV9hdmkoc3RydWN0IHRkYTk5OHhfcHJp diAqcHJpdiwgc3RydWN0IGRybV9kaXNwbGF5X21vZGUgKm1vZGUpCiB7CiAJdW5pb24gaGRtaV9p bmZvZnJhbWUgZnJhbWU7CiAKLQlkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9t b2RlKCZmcmFtZS5hdmksIG1vZGUpOworCWRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNw bGF5X21vZGUoJmZyYW1lLmF2aSwgbW9kZSwgZmFsc2UpOwogCWZyYW1lLmF2aS5xdWFudGl6YXRp b25fcmFuZ2UgPSBIRE1JX1FVQU5USVpBVElPTl9SQU5HRV9GVUxMOwogCiAJdGRhOTk4eF93cml0 ZV9pZihwcml2LCBESVBfSUZfRkxBR1NfSUYyLCBSRUdfSUYyX0hCMCwgJmZyYW1lKTsKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2hkbWkuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2hkbWkuYwppbmRleCBlYzA3NzlhLi5jYzBkMTAwIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9oZG1pLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfaGRtaS5jCkBAIC00NTksMTEgKzQ1OSwxNCBAQCBzdGF0aWMgdm9pZCBpbnRlbF9o ZG1pX3NldF9hdmlfaW5mb2ZyYW1lKHN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlciwKIAlzdHJ1 Y3QgaW50ZWxfaGRtaSAqaW50ZWxfaGRtaSA9IGVuY190b19pbnRlbF9oZG1pKGVuY29kZXIpOwog CWNvbnN0IHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICphZGp1c3RlZF9tb2RlID0KIAkJJmNydGNf c3RhdGUtPmJhc2UuYWRqdXN0ZWRfbW9kZTsKKwlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVj dG9yID0gJmludGVsX2hkbWktPmF0dGFjaGVkX2Nvbm5lY3Rvci0+YmFzZTsKKwlib29sIGlzX2hk bWkyX3NpbmsgPSBjb25uZWN0b3ItPmRpc3BsYXlfaW5mby5oZG1pLnNjZGMuc3VwcG9ydGVkOwog CXVuaW9uIGhkbWlfaW5mb2ZyYW1lIGZyYW1lOwogCWludCByZXQ7CiAKIAlyZXQgPSBkcm1faGRt aV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKCZmcmFtZS5hdmksCi0JCQkJCQkgICAg ICAgYWRqdXN0ZWRfbW9kZSk7CisJCQkJCQkgICAgICAgYWRqdXN0ZWRfbW9kZSwKKwkJCQkJCSAg ICAgICBpc19oZG1pMl9zaW5rKTsKIAlpZiAocmV0IDwgMCkgewogCQlEUk1fRVJST1IoImNvdWxk bid0IGZpbGwgQVZJIGluZm9mcmFtZVxuIik7CiAJCXJldHVybjsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nkdm8uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X3Nkdm8uYwppbmRleCBmOTAyOTIyLi5lNThhNDdkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9zZHZvLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc2R2 by5jCkBAIC05OTYsNyArOTk2LDggQEAgc3RhdGljIGJvb2wgaW50ZWxfc2R2b19zZXRfYXZpX2lu Zm9mcmFtZShzdHJ1Y3QgaW50ZWxfc2R2byAqaW50ZWxfc2R2bywKIAlzc2l6ZV90IGxlbjsKIAog CXJldCA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZyYW1lLmF2 aSwKLQkJCQkJCSAgICAgICAmcGlwZV9jb25maWctPmJhc2UuYWRqdXN0ZWRfbW9kZSk7CisJCQkJ CQkgICAgICAgJnBpcGVfY29uZmlnLT5iYXNlLmFkanVzdGVkX21vZGUsCisJCQkJCQkgICAgICAg ZmFsc2UpOwogCWlmIChyZXQgPCAwKSB7CiAJCURSTV9FUlJPUigiY291bGRuJ3QgZmlsbCBBVkkg aW5mb2ZyYW1lXG4iKTsKIAkJcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL21lZGlhdGVrL210a19oZG1pLmMgYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2hk bWkuYwppbmRleCAwYTRmZmQ3Li41YzBkMDI0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v bWVkaWF0ZWsvbXRrX2hkbWkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2hk bWkuYwpAQCAtOTc1LDcgKzk3NSw3IEBAIHN0YXRpYyBpbnQgbXRrX2hkbWlfc2V0dXBfYXZpX2lu Zm9mcmFtZShzdHJ1Y3QgbXRrX2hkbWkgKmhkbWksCiAJdTggYnVmZmVyWzE3XTsKIAlzc2l6ZV90 IGVycjsKIAotCWVyciA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUo JmZyYW1lLCBtb2RlKTsKKwllcnIgPSBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxh eV9tb2RlKCZmcmFtZSwgbW9kZSwgZmFsc2UpOwogCWlmIChlcnIgPCAwKSB7CiAJCWRldl9lcnIo aGRtaS0+ZGV2LAogCQkJIkZhaWxlZCB0byBnZXQgQVZJIGluZm9mcmFtZSBmcm9tIG1vZGU6ICV6 ZFxuIiwgZXJyKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vaGRtaS9oZG1pX2Jy aWRnZS5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9oZG1pL2hkbWlfYnJpZGdlLmMKaW5kZXggYWU0 MGU3MS4uMTNhYzgyMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9oZG1pL2hkbWlf YnJpZGdlLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9oZG1pL2hkbWlfYnJpZGdlLmMKQEAg LTk3LDcgKzk3LDcgQEAgc3RhdGljIHZvaWQgbXNtX2hkbWlfY29uZmlnX2F2aV9pbmZvZnJhbWUo c3RydWN0IGhkbWkgKmhkbWkpCiAJdTMyIHZhbDsKIAlpbnQgbGVuOwogCi0JZHJtX2hkbWlfYXZp X2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUuYXZpLCBtb2RlKTsKKwlkcm1faGRt aV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKCZmcmFtZS5hdmksIG1vZGUsIGZhbHNl KTsKIAogCWxlbiA9IGhkbWlfaW5mb2ZyYW1lX3BhY2soJmZyYW1lLCBidWZmZXIsIHNpemVvZihi dWZmZXIpKTsKIAlpZiAobGVuIDwgMCkgewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL25v dXZlYXUvbnY1MF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udjUwX2Rpc3Bs YXkuYwppbmRleCA0MmE4NWMxLi41ZjcxZTMwIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v bm91dmVhdS9udjUwX2Rpc3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udjUw X2Rpc3BsYXkuYwpAQCAtMjc2Miw3ICsyNzYyLDggQEAgbnY1MF9oZG1pX2VuYWJsZShzdHJ1Y3Qg ZHJtX2VuY29kZXIgKmVuY29kZXIsIHN0cnVjdCBkcm1fZGlzcGxheV9tb2RlICptb2RlKQogCWlm ICghZHJtX2RldGVjdF9oZG1pX21vbml0b3IobnZfY29ubmVjdG9yLT5lZGlkKSkKIAkJcmV0dXJu OwogCi0JcmV0ID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgmYXZp X2ZyYW1lLmF2aSwgbW9kZSk7CisJcmV0ID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rp c3BsYXlfbW9kZSgmYXZpX2ZyYW1lLmF2aSwgbW9kZSwKKwkJCQkJCSAgICAgICBmYWxzZSk7CiAJ aWYgKCFyZXQpIHsKIAkJLyogV2UgaGF2ZSBhbiBBVkkgSW5mb0ZyYW1lLCBwb3B1bGF0ZSBpdCB0 byB0aGUgZGlzcGxheSAqLwogCQlhcmdzLnB3ci5hdmlfaW5mb2ZyYW1lX2xlbmd0aApkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL29tYXBkcm0vb21hcF9lbmNvZGVyLmMgYi9kcml2ZXJzL2dw dS9kcm0vb21hcGRybS9vbWFwX2VuY29kZXIuYwppbmRleCA4NmM5NzdiLi42MjRmNWI1IDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2VuY29kZXIuYworKysgYi9kcml2 ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2VuY29kZXIuYwpAQCAtODUsNyArODUsOCBAQCBzdGF0 aWMgdm9pZCBvbWFwX2VuY29kZXJfbW9kZV9zZXQoc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVy LAogCWlmIChoZG1pX21vZGUgJiYgZHNzZGV2LT5kcml2ZXItPnNldF9oZG1pX2luZm9mcmFtZSkg ewogCQlzdHJ1Y3QgaGRtaV9hdmlfaW5mb2ZyYW1lIGF2aTsKIAotCQlyID0gZHJtX2hkbWlfYXZp X2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgmYXZpLCBhZGp1c3RlZF9tb2RlKTsKKwkJciA9 IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmF2aSwgYWRqdXN0ZWRf bW9kZSwKKwkJCQkJCQkgICAgIGZhbHNlKTsKIAkJaWYgKHIgPT0gMCkKIAkJCWRzc2Rldi0+ZHJp dmVyLT5zZXRfaGRtaV9pbmZvZnJhbWUoZHNzZGV2LCAmYXZpKTsKIAl9CmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9hdWRpby5jIGIvZHJpdmVycy9ncHUvZHJtL3Jh ZGVvbi9yYWRlb25fYXVkaW8uYwppbmRleCBhYWFjYWMxLi43NzBlMzFmIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9hdWRpby5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9yYWRlb24vcmFkZW9uX2F1ZGlvLmMKQEAgLTUxNiw3ICs1MTYsNyBAQCBzdGF0aWMgaW50IHJh ZGVvbl9hdWRpb19zZXRfYXZpX3BhY2tldChzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIsCiAJ aWYgKCFjb25uZWN0b3IpCiAJCXJldHVybiAtRUlOVkFMOwogCi0JZXJyID0gZHJtX2hkbWlfYXZp X2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUsIG1vZGUpOworCWVyciA9IGRybV9o ZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZyYW1lLCBtb2RlLCBmYWxzZSk7 CiAJaWYgKGVyciA8IDApIHsKIAkJRFJNX0VSUk9SKCJmYWlsZWQgdG8gc2V0dXAgQVZJIGluZm9m cmFtZTogJWRcbiIsIGVycik7CiAJCXJldHVybiBlcnI7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vcm9ja2NoaXAvaW5ub19oZG1pLmMgYi9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvaW5u b19oZG1pLmMKaW5kZXggN2Q5Yjc1ZS4uNzE0OTk2OCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL3JvY2tjaGlwL2lubm9faGRtaS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9p bm5vX2hkbWkuYwpAQCAtMjk0LDcgKzI5NCw3IEBAIHN0YXRpYyBpbnQgaW5ub19oZG1pX2NvbmZp Z192aWRlb19hdmkoc3RydWN0IGlubm9faGRtaSAqaGRtaSwKIAl1bmlvbiBoZG1pX2luZm9mcmFt ZSBmcmFtZTsKIAlpbnQgcmM7CiAKLQlyYyA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9k aXNwbGF5X21vZGUoJmZyYW1lLmF2aSwgbW9kZSk7CisJcmMgPSBkcm1faGRtaV9hdmlfaW5mb2Zy YW1lX2Zyb21fZGlzcGxheV9tb2RlKCZmcmFtZS5hdmksIG1vZGUsIGZhbHNlKTsKIAogCWlmICho ZG1pLT5oZG1pX2RhdGEuZW5jX291dF9mb3JtYXQgPT0gSERNSV9DT0xPUlNQQUNFX1lVVjQ0NCkK IAkJZnJhbWUuYXZpLmNvbG9yc3BhY2UgPSBIRE1JX0NPTE9SU1BBQ0VfWVVWNDQ0OwpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL3N0aS9zdGlfaGRtaS5jIGIvZHJpdmVycy9ncHUvZHJtL3N0 aS9zdGlfaGRtaS5jCmluZGV4IGE1OWM5NWEuLmRiYzZhMTkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMv Z3B1L2RybS9zdGkvc3RpX2hkbWkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9oZG1p LmMKQEAgLTQzNCw3ICs0MzQsNyBAQCBzdGF0aWMgaW50IGhkbWlfYXZpX2luZm9mcmFtZV9jb25m aWcoc3RydWN0IHN0aV9oZG1pICpoZG1pKQogCiAJRFJNX0RFQlVHX0RSSVZFUigiXG4iKTsKIAot CXJldCA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmluZm9mcmFt ZSwgbW9kZSk7CisJcmV0ID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9k ZSgmaW5mb2ZyYW1lLCBtb2RlLCBmYWxzZSk7CiAJaWYgKHJldCA8IDApIHsKIAkJRFJNX0VSUk9S KCJmYWlsZWQgdG8gc2V0dXAgQVZJIGluZm9mcmFtZTogJWRcbiIsIHJldCk7CiAJCXJldHVybiBy ZXQ7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfaGRtaV9lbmMuYyBi L2RyaXZlcnMvZ3B1L2RybS9zdW40aS9zdW40aV9oZG1pX2VuYy5jCmluZGV4IGQzMzk4ZjYyLi44 M2I3YTJhIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfaGRtaV9lbmMu YworKysgYi9kcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfaGRtaV9lbmMuYwpAQCAtNTIsNyAr NTIsNyBAQCBzdGF0aWMgaW50IHN1bjRpX2hkbWlfc2V0dXBfYXZpX2luZm9mcmFtZXMoc3RydWN0 IHN1bjRpX2hkbWkgKmhkbWksCiAJdTggYnVmZmVyWzE3XTsKIAlpbnQgaSwgcmV0OwogCi0JcmV0 ID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUsIG1vZGUp OworCXJldCA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZyYW1l LCBtb2RlLCBmYWxzZSk7CiAJaWYgKHJldCA8IDApIHsKIAkJRFJNX0VSUk9SKCJGYWlsZWQgdG8g Z2V0IGluZm9mcmFtZXMgZnJvbSBtb2RlXG4iKTsKIAkJcmV0dXJuIHJldDsKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9oZG1pLmMgYi9kcml2ZXJzL2dwdS9kcm0vdGVncmEvaGRt aS5jCmluZGV4IGNkYTA0OTEuLjcxOGQ4ZGIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS90 ZWdyYS9oZG1pLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3RlZ3JhL2hkbWkuYwpAQCAtNzM0LDcg KzczNCw3IEBAIHN0YXRpYyB2b2lkIHRlZ3JhX2hkbWlfc2V0dXBfYXZpX2luZm9mcmFtZShzdHJ1 Y3QgdGVncmFfaGRtaSAqaGRtaSwKIAl1OCBidWZmZXJbMTddOwogCXNzaXplX3QgZXJyOwogCi0J ZXJyID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUsIG1v ZGUpOworCWVyciA9IGRybV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZy YW1lLCBtb2RlLCBmYWxzZSk7CiAJaWYgKGVyciA8IDApIHsKIAkJZGV2X2VycihoZG1pLT5kZXYs ICJmYWlsZWQgdG8gc2V0dXAgQVZJIGluZm9mcmFtZTogJXpkXG4iLCBlcnIpOwogCQlyZXR1cm47 CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdGVncmEvc29yLmMgYi9kcml2ZXJzL2dwdS9k cm0vdGVncmEvc29yLmMKaW5kZXggYThmNTI4OS4uZmIyNzA5YyAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL3RlZ3JhL3Nvci5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9zb3IuYwpA QCAtMTkwNCw3ICsxOTA0LDcgQEAgdGVncmFfc29yX2hkbWlfc2V0dXBfYXZpX2luZm9mcmFtZShz dHJ1Y3QgdGVncmFfc29yICpzb3IsCiAJdmFsdWUgJj0gfklORk9GUkFNRV9DVFJMX0VOQUJMRTsK IAl0ZWdyYV9zb3Jfd3JpdGVsKHNvciwgdmFsdWUsIFNPUl9IRE1JX0FWSV9JTkZPRlJBTUVfQ1RS TCk7CiAKLQllcnIgPSBkcm1faGRtaV9hdmlfaW5mb2ZyYW1lX2Zyb21fZGlzcGxheV9tb2RlKCZm cmFtZSwgbW9kZSk7CisJZXJyID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlf bW9kZSgmZnJhbWUsIG1vZGUsIGZhbHNlKTsKIAlpZiAoZXJyIDwgMCkgewogCQlkZXZfZXJyKHNv ci0+ZGV2LCAiZmFpbGVkIHRvIHNldHVwIEFWSSBpbmZvZnJhbWU6ICVkXG4iLCBlcnIpOwogCQly ZXR1cm4gZXJyOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfaGRtaS5jIGIv ZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfaGRtaS5jCmluZGV4IGVkNjNkNGUuLjQwNmQ2ZDggMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS92YzQvdmM0X2hkbWkuYworKysgYi9kcml2ZXJzL2dw dS9kcm0vdmM0L3ZjNF9oZG1pLmMKQEAgLTM5NSw3ICszOTUsNyBAQCBzdGF0aWMgdm9pZCB2YzRf aGRtaV9zZXRfYXZpX2luZm9mcmFtZShzdHJ1Y3QgZHJtX2VuY29kZXIgKmVuY29kZXIpCiAJdW5p b24gaGRtaV9pbmZvZnJhbWUgZnJhbWU7CiAJaW50IHJldDsKIAotCXJldCA9IGRybV9oZG1pX2F2 aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZyYW1lLmF2aSwgbW9kZSk7CisJcmV0ID0g ZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUuYXZpLCBtb2Rl LCBmYWxzZSk7CiAJaWYgKHJldCA8IDApIHsKIAkJRFJNX0VSUk9SKCJjb3VsZG4ndCBmaWxsIEFW SSBpbmZvZnJhbWVcbiIpOwogCQlyZXR1cm47CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v enRlL3p4X2hkbWkuYyBiL2RyaXZlcnMvZ3B1L2RybS96dGUvenhfaGRtaS5jCmluZGV4IDBkZjcz NjYuLjdlODM0ZTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS96dGUvenhfaGRtaS5jCisr KyBiL2RyaXZlcnMvZ3B1L2RybS96dGUvenhfaGRtaS5jCkBAIC0xMjQsNyArMTI0LDcgQEAgc3Rh dGljIGludCB6eF9oZG1pX2NvbmZpZ192aWRlb19hdmkoc3RydWN0IHp4X2hkbWkgKmhkbWksCiAJ dW5pb24gaGRtaV9pbmZvZnJhbWUgZnJhbWU7CiAJaW50IHJldDsKIAotCXJldCA9IGRybV9oZG1p X2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoJmZyYW1lLmF2aSwgbW9kZSk7CisJcmV0 ID0gZHJtX2hkbWlfYXZpX2luZm9mcmFtZV9mcm9tX2Rpc3BsYXlfbW9kZSgmZnJhbWUuYXZpLCBt b2RlLCBmYWxzZSk7CiAJaWYgKHJldCkgewogCQlEUk1fREVWX0VSUk9SKGhkbWktPmRldiwgImZh aWxlZCB0byBnZXQgYXZpIGluZm9mcmFtZTogJWRcbiIsCiAJCQkgICAgICByZXQpOwpkaWZmIC0t Z2l0IGEvaW5jbHVkZS9kcm0vZHJtX2VkaWQuaCBiL2luY2x1ZGUvZHJtL2RybV9lZGlkLmgKaW5k ZXggN2I5ZjQ4Yi4uODljMDA2MiAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2VkaWQuaAor KysgYi9pbmNsdWRlL2RybS9kcm1fZWRpZC5oCkBAIC0zNDMsNyArMzQzLDggQEAgZHJtX2xvYWRf ZWRpZF9maXJtd2FyZShzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yKQogCiBpbnQKIGRy bV9oZG1pX2F2aV9pbmZvZnJhbWVfZnJvbV9kaXNwbGF5X21vZGUoc3RydWN0IGhkbWlfYXZpX2lu Zm9mcmFtZSAqZnJhbWUsCi0JCQkJCSBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9k ZSk7CisJCQkJCSBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSwKKwkJCQkJIGJv b2wgaXNfaGRtaTJfc2luayk7CiBpbnQKIGRybV9oZG1pX3ZlbmRvcl9pbmZvZnJhbWVfZnJvbV9k aXNwbGF5X21vZGUoc3RydWN0IGhkbWlfdmVuZG9yX2luZm9mcmFtZSAqZnJhbWUsCiAJCQkJCSAg ICBjb25zdCBzdHJ1Y3QgZHJtX2Rpc3BsYXlfbW9kZSAqbW9kZSk7Ci0tIAoyLjcuNAoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxp bmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==