From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: [PATCH 08/17] drm/plane-helper: transitional atomic plane helpers Date: Sun, 2 Nov 2014 14:19:21 +0100 Message-ID: <1414934370-11924-9-git-send-email-daniel.vetter@ffwll.ch> References: <1414934370-11924-1-git-send-email-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1414934370-11924-1-git-send-email-daniel.vetter@ffwll.ch> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: DRI Development Cc: Daniel Vetter , Intel Graphics Development List-Id: dri-devel@lists.freedesktop.org Q29udmVydGluZyBhIGRyaXZlciB0byB0aGUgYXRvbWljIGludGVyZmFjZSBjYW4gYmUgYSBkYXVu dGluZwp1bmRlcnRha2luZy4gT25lIG9mIHRoZSBwcmVyZXF1aXNpdGVzIGlzIHRvIGhhdmUgZnVs bCB1bml2ZXJzYWwgcGxhbmVzCnN1cHBvcnQuCgpUbyBtYWtlIHRoYXQgdHJhbnNpdGlvbiBhIGJp dCBlYXNpZXIgdGhpcyBwYXRoYyBwcm92aWRlcyBwbGFuZSBoZWxwZXJzCndoaWNoIHVzZSB0aGUg bmV3IGF0b21pYyBoZWxwZXIgY2FsbGJhY2tzIGp1c3Qgb25seSBmb3IgdGhlIHBsYW5lCmNoYW5n ZXMuIFRoaXMgd2F5IHRoZSBwbGFuZSB1cGRhdGUgZnVuY3Rpb25hbGl0eSBjYW4gYmUgdGVzdGVk IHdpdGhvdXQKYmVpbmcgZm9yY2VkIHRvIGNvbnZlcnQgZXZlcnl0aGluZyBhdCBvbmNlLgoKT2Yg Y291cnNlIGEgcmVhbCBhdG9taWMgdXBkYXRlIGNhcGFibGUgZHJpdmVyIHdpbGwgaW1wbGVtZW50 IHRoZQphbGwgcGxhbmUgcHJvcGVydGllcyB0aHJvdWdoIHRoZSBhdG9taWMgaW50ZXJmYWNlLCBz byB0aGVzZSBoZWxwZXJzCmFyZSBtb3N0bHkgdHJhbnNpdGlvbmFsLiBCdXQgdGhleSBjYW4gYmUg dXNlZCB0byBlbmFibGUgcHJvcGVyCnVuaXZlcnNhbCBwbGFuZSBzdXBwb3J0LCBlc3BlY2lhbGx5 IG9uY2UgdGhlIGNydGMgaGVscGVycyBoYXZlIGFsc28KYmVlbiBhZGFwdGVkLgoKdjI6IFVzZSAt PmF0b21pY19kdXBsaWNhdGVfc3RhdGUgaWYgYXZhaWxhYmxlLgoKdjM6IERvbid0IGZvcmdldCB0 byBjYWxsIC0+YXRvbWljX2Rlc3Ryb3lfc3RhdGUgaWYgYXZhaWxhYmxlLgoKdjQ6IEZpeHVwIGtl cm5lbGRvYywgcmVwb3J0ZWQgYnkgUGF1bG8uCgp2NTogRXh0cmFjdCBhIGNvbW1vbiBwbGFuZV9j b21taXQgaGVscGVyIGFuZCBmaXggc29tZSBidWdzIGluIHRoZQpwbGFuZV9zdGF0ZSBzZXR1cCBv ZiB0aGUgcGxhbmVfZGlzYWJsZSBpbXBsZW1lbnRhdGlvbi4KCnY2OiBGaXggaXNzdWVzIHdpdGgg dGhlIGNsZWFudXAgb2YgdGhlIG9sZCBmYi4gU2luY2UgdHJhbnNpdGlvbmFsCmhlbHBlcnMgY2Fu IGJlIG1peGVkIHdlIG5lZWQgdG8gYXNzdW1lIHRoYXQgdGhlIG9sZCBmYiBoYXMgYmVlbiBzZXQg dXAKYnkgYSBsZWdhY3kgcGF0aCAoZS5nLiBzZXRfY29uZmlnIG9yIHBhZ2VfZmxpcCB3aGVuIHRo ZSBwcmltYXJ5IHBsYW5lCmlzIGNvbnZlcnRlZCB0byB1c2UgdGhlc2UgZnVuY3Rpb25zIGFscmVh ZHkpLiBIZW5jZSBwYXNzIGFuIGFkZGl0aW9uYWwKb2xkX2ZiIHBhcmFtZXRlciB0byBwbGFuZV9j b21taXQgdG8gZG8gdGhhdCBjbGVhbnVwIHdvcmsgY29ycmVjdGx5LgoKdjc6Ci0gRml4IHNwdXJp b3VzIFdBUk5JTkcgKGNydGMgaGVscGVycyByZWFsbHkgbG92ZSB0byBkaXNhYmxlIHN0dWZmCiAg aGFyZGVyKSBhbmQgZml4IGFycmF5IGluZGV4IGJvbmdoaXRzLgotIENvcnJlY3RseSBoYW5kbGUg dGhlIGxhY2sgb2YgcGxhbmUtPnN0YXRlIG9iamVjdCwgbmVjZXNzYXJ5IGZvcgogIHRyYW5zaXRp b25hbCB1c2UuCi0gRG9uJ3QgaW5kaWNhdGUgZmFpbHVyZSBpZiBkcm1fdmJsYW5rX2dldCBkb2Vz bid0IHdvcmsgLSB0aGF0J3MKICBleHBlY3RlZCB3aGVuIHRoZSBwaXBlIGlzIGluIGRwbXMgb2Zm IG1vZGUuCgpDYzogUGF1bG8gWmFub25pIDxwcnphbm9uaUBnbWFpbC5jb20+ClNpZ25lZC1vZmYt Ynk6IERhbmllbCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+Ci0tLQogZHJpdmVycy9n cHUvZHJtL2RybV9wbGFuZV9oZWxwZXIuYyB8IDE3MiArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKystCiBpbmNsdWRlL2RybS9kcm1fcGxhbmVfaGVscGVyLmggICAgIHwgICA4ICsr CiAyIGZpbGVzIGNoYW5nZWQsIDE3OSBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9wbGFuZV9oZWxwZXIuYyBiL2RyaXZlcnMvZ3B1 L2RybS9kcm1fcGxhbmVfaGVscGVyLmMKaW5kZXggODI3ZWMxYTMwNDBiLi40NWFhOGM5OGUzZmIg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fcGxhbmVfaGVscGVyLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL2RybV9wbGFuZV9oZWxwZXIuYwpAQCAtMjcsNyArMjcsNyBAQAogI2luY2x1 ZGUgPGRybS9kcm1QLmg+CiAjaW5jbHVkZSA8ZHJtL2RybV9wbGFuZV9oZWxwZXIuaD4KICNpbmNs dWRlIDxkcm0vZHJtX3JlY3QuaD4KLSNpbmNsdWRlIDxkcm0vZHJtX3BsYW5lX2hlbHBlci5oPgor I2luY2x1ZGUgPGRybS9kcm1fY3J0Y19oZWxwZXIuaD4KIAogI2RlZmluZSBTVUJQSVhFTF9NQVNL IDB4ZmZmZgogCkBAIC0zNjksMyArMzY5LDE3MyBAQCBpbnQgZHJtX2NydGNfaW5pdChzdHJ1Y3Qg ZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCiAJcmV0dXJuIGRybV9jcnRj X2luaXRfd2l0aF9wbGFuZXMoZGV2LCBjcnRjLCBwcmltYXJ5LCBOVUxMLCBmdW5jcyk7CiB9CiBF WFBPUlRfU1lNQk9MKGRybV9jcnRjX2luaXQpOworCitzdGF0aWMgaW50CitwbGFuZV9jb21taXQo c3RydWN0IGRybV9wbGFuZSAqcGxhbmUsIHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKnBsYW5lX3N0 YXRlLAorCSAgICAgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqb2xkX2ZiKQoreworCXN0cnVjdCBk cm1fcGxhbmVfaGVscGVyX2Z1bmNzICpwbGFuZV9mdW5jczsKKwlzdHJ1Y3QgZHJtX2NydGMgKmNy dGNbMl07CisJc3RydWN0IGRybV9jcnRjX2hlbHBlcl9mdW5jcyAqY3J0Y19mdW5jc1syXTsKKwlp bnQgaSwgcmV0ID0gMDsKKworCXBsYW5lX2Z1bmNzID0gcGxhbmUtPmhlbHBlcl9wcml2YXRlOwor CisJLyogU2luY2UgdGhpcyBpcyBhIHRyYW5zaXRpb25hbCBoZWxwZXIgd2UgY2FuJ3QgYXNzdW1l IHRoYXQgcGxhbmUtPnN0YXRlCisJICogaXMgYWx3YXlzIHZhbGlkLiBIZW5jZSB3ZSBuZWVkIHRv IHVzZSBwbGFuZS0+Y3J0YyBpbnN0ZWFkIG9mCisJICogcGxhbmUtPnN0YXRlLT5jcnRjIGFzIHRo ZSBvbGQgY3J0Yy4gKi8KKwljcnRjWzBdID0gcGxhbmUtPmNydGM7CisJY3J0Y1sxXSA9IGNydGNb MF0gIT0gcGxhbmVfc3RhdGUtPmNydGMgPyBwbGFuZV9zdGF0ZS0+Y3J0YyA6IE5VTEw7CisKKwlm b3IgKGkgPSAwOyBpIDwgMjsgaSsrKQorCQljcnRjX2Z1bmNzW2ldID0gY3J0Y1tpXSA/IGNydGNb aV0tPmhlbHBlcl9wcml2YXRlIDogTlVMTDsKKworCWlmIChwbGFuZV9mdW5jcy0+YXRvbWljX2No ZWNrKSB7CisJCXJldCA9IHBsYW5lX2Z1bmNzLT5hdG9taWNfY2hlY2socGxhbmUsIHBsYW5lX3N0 YXRlKTsKKwkJaWYgKHJldCkKKwkJCWdvdG8gZmFpbDsKKwl9CisKKwlpZiAocGxhbmVfZnVuY3Mt PnByZXBhcmVfZmIgJiYgcGxhbmVfc3RhdGUtPmZiKSB7CisJCXJldCA9IHBsYW5lX2Z1bmNzLT5w cmVwYXJlX2ZiKHBsYW5lLCBwbGFuZV9zdGF0ZS0+ZmIpOworCQlpZiAocmV0KQorCQkJZ290byBm YWlsOworCX0KKworCS8qIFBvaW50IG9mIG5vIHJldHVybiwgY29tbWl0IHN3IHN0YXRlLiAqLwor CXN3YXAocGxhbmUtPnN0YXRlLCBwbGFuZV9zdGF0ZSk7CisKKwlmb3IgKGkgPSAwOyBpIDwgMjsg aSsrKSB7CisJCWlmIChjcnRjX2Z1bmNzW2ldICYmIGNydGNfZnVuY3NbaV0tPmF0b21pY19iZWdp bikKKwkJCWNydGNfZnVuY3NbaV0tPmF0b21pY19iZWdpbihjcnRjW2ldKTsKKwl9CisKKwlwbGFu ZV9mdW5jcy0+YXRvbWljX3VwZGF0ZShwbGFuZSk7CisKKwlmb3IgKGkgPSAwOyBpIDwgMjsgaSsr KSB7CisJCWlmIChjcnRjX2Z1bmNzW2ldICYmIGNydGNfZnVuY3NbaV0tPmF0b21pY19mbHVzaCkK KwkJCWNydGNfZnVuY3NbaV0tPmF0b21pY19mbHVzaChjcnRjW2ldKTsKKwl9CisKKwlmb3IgKGkg PSAwOyBpIDwgMjsgaSsrKSB7CisJCWlmICghY3J0Y1tpXSkKKwkJCWNvbnRpbnVlOworCisJCS8q IFRoZXJlJ3Mgbm8gb3RoZXIgd2F5IHRvIGZpZ3VyZSBvdXQgd2hldGhlciB0aGUgY3J0YyBpcyBy dW5uaW5nLiAqLworCQlyZXQgPSBkcm1fY3J0Y192YmxhbmtfZ2V0KGNydGNbaV0pOworCQlpZiAo cmV0ID09IDApIHsKKwkJCWRybV9jcnRjX3dhaXRfb25lX3ZibGFuayhjcnRjW2ldKTsKKwkJCWRy bV9jcnRjX3ZibGFua19wdXQoY3J0Y1tpXSk7CisJCX0KKworCQlyZXQgPSAwOworCX0KKworCWlm IChwbGFuZV9mdW5jcy0+Y2xlYW51cF9mYiAmJiBvbGRfZmIpCisJCXBsYW5lX2Z1bmNzLT5jbGVh bnVwX2ZiKHBsYW5lLCBvbGRfZmIpOworZmFpbDoKKwlpZiAocGxhbmVfc3RhdGUpIHsKKwkJaWYg KHBsYW5lLT5mdW5jcy0+YXRvbWljX2Rlc3Ryb3lfc3RhdGUpCisJCQlwbGFuZS0+ZnVuY3MtPmF0 b21pY19kZXN0cm95X3N0YXRlKHBsYW5lLCBwbGFuZV9zdGF0ZSk7CisJCWVsc2UKKwkJCWtmcmVl KHBsYW5lX3N0YXRlKTsKKwl9CisKKwlyZXR1cm4gcmV0OworfQorCisvKioKKyAqIGRybV9wbGFu ZV9oZWxwZXJfdXBkYXRlKCkgLSBIZWxwZXIgZm9yIHByaW1hcnkgcGxhbmUgdXBkYXRlCisgKiBA cGxhbmU6IHBsYW5lIG9iamVjdCB0byB1cGRhdGUKKyAqIEBjcnRjOiBvd25pbmcgQ1JUQyBvZiBv d25pbmcgcGxhbmUKKyAqIEBmYjogZnJhbWVidWZmZXIgdG8gZmxpcCBvbnRvIHBsYW5lCisgKiBA Y3J0Y194OiB4IG9mZnNldCBvZiBwcmltYXJ5IHBsYW5lIG9uIGNydGMKKyAqIEBjcnRjX3k6IHkg b2Zmc2V0IG9mIHByaW1hcnkgcGxhbmUgb24gY3J0YworICogQGNydGNfdzogd2lkdGggb2YgcHJp bWFyeSBwbGFuZSByZWN0YW5nbGUgb24gY3J0YworICogQGNydGNfaDogaGVpZ2h0IG9mIHByaW1h cnkgcGxhbmUgcmVjdGFuZ2xlIG9uIGNydGMKKyAqIEBzcmNfeDogeCBvZmZzZXQgb2YgQGZiIGZv ciBwYW5uaW5nCisgKiBAc3JjX3k6IHkgb2Zmc2V0IG9mIEBmYiBmb3IgcGFubmluZworICogQHNy Y193OiB3aWR0aCBvZiBzb3VyY2UgcmVjdGFuZ2xlIGluIEBmYgorICogQHNyY19oOiBoZWlnaHQg b2Ygc291cmNlIHJlY3RhbmdsZSBpbiBAZmIKKyAqCisgKiBQcm92aWRlcyBhIGRlZmF1bHQgcGxh bmUgdXBkYXRlIGhhbmRsZXIgdXNpbmcgdGhlIGF0b21pYyBwbGFuZSB1cGRhdGUKKyAqIGZ1bmN0 aW9ucy4gSXQgaXMgZnVsbHkgbGVmdCB0byB0aGUgZHJpdmVyIHRvIGNoZWNrIHBsYW5lIGNvbnN0 cmFpbnRzIGFuZAorICogaGFuZGxlIGNvcm5lci1jYXNlcyBsaWtlIGEgZnVsbHkgb2NjbHVkZWQg b3Igb3RoZXJ3aXNlIGludmlzaWJsZSBwbGFuZS4KKyAqCisgKiBUaGlzIGlzIHVzZWZ1bCBmb3Ig cGllY2V3aXNlIHRyYW5zaXRpb25pbmcgb2YgYSBkcml2ZXIgdG8gdGhlIGF0b21pYyBoZWxwZXJz LgorICoKKyAqIFJFVFVSTlM6CisgKiBaZXJvIG9uIHN1Y2Nlc3MsIGVycm9yIGNvZGUgb24gZmFp bHVyZQorICovCitpbnQgZHJtX3BsYW5lX2hlbHBlcl91cGRhdGUoc3RydWN0IGRybV9wbGFuZSAq cGxhbmUsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKKwkJCSAgICBzdHJ1Y3QgZHJtX2ZyYW1lYnVm ZmVyICpmYiwKKwkJCSAgICBpbnQgY3J0Y194LCBpbnQgY3J0Y195LAorCQkJICAgIHVuc2lnbmVk IGludCBjcnRjX3csIHVuc2lnbmVkIGludCBjcnRjX2gsCisJCQkgICAgdWludDMyX3Qgc3JjX3gs IHVpbnQzMl90IHNyY195LAorCQkJICAgIHVpbnQzMl90IHNyY193LCB1aW50MzJfdCBzcmNfaCkK K3sKKwlzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZTsKKworCWlmIChwbGFuZS0+ ZnVuY3MtPmF0b21pY19kdXBsaWNhdGVfc3RhdGUpCisJCXBsYW5lX3N0YXRlID0gcGxhbmUtPmZ1 bmNzLT5hdG9taWNfZHVwbGljYXRlX3N0YXRlKHBsYW5lKTsKKwllbHNlIGlmIChwbGFuZS0+c3Rh dGUpCisJCXBsYW5lX3N0YXRlID0ga21lbWR1cChwbGFuZS0+c3RhdGUsIHNpemVvZigqcGxhbmVf c3RhdGUpLAorCQkJCSAgICAgIEdGUF9LRVJORUwpOworCWVsc2UKKwkJcGxhbmVfc3RhdGUgPSBr emFsbG9jKHNpemVvZigqcGxhbmVfc3RhdGUpLCBHRlBfS0VSTkVMKTsKKwlpZiAoIXBsYW5lX3N0 YXRlKQorCQlyZXR1cm4gLUVOT01FTTsKKworCXBsYW5lX3N0YXRlLT5jcnRjID0gY3J0YzsKKwlw bGFuZV9zdGF0ZS0+ZmIgPSBmYjsKKwlwbGFuZV9zdGF0ZS0+Y3J0Y194ID0gY3J0Y194OworCXBs YW5lX3N0YXRlLT5jcnRjX3kgPSBjcnRjX3k7CisJcGxhbmVfc3RhdGUtPmNydGNfaCA9IGNydGNf aDsKKwlwbGFuZV9zdGF0ZS0+Y3J0Y193ID0gY3J0Y193OworCXBsYW5lX3N0YXRlLT5zcmNfeCA9 IHNyY194OworCXBsYW5lX3N0YXRlLT5zcmNfeSA9IHNyY195OworCXBsYW5lX3N0YXRlLT5zcmNf aCA9IHNyY19oOworCXBsYW5lX3N0YXRlLT5zcmNfdyA9IHNyY193OworCisJcmV0dXJuIHBsYW5l X2NvbW1pdChwbGFuZSwgcGxhbmVfc3RhdGUsIHBsYW5lLT5mYik7Cit9CitFWFBPUlRfU1lNQk9M KGRybV9wbGFuZV9oZWxwZXJfdXBkYXRlKTsKKworLyoqCisgKiBkcm1fcGxhbmVfaGVscGVyX2Rp c2FibGUoKSAtIEhlbHBlciBmb3IgcHJpbWFyeSBwbGFuZSBkaXNhYmxlCisgKiBAcGxhbmU6IHBs YW5lIHRvIGRpc2FibGUKKyAqCisgKiBQcm92aWRlcyBhIGRlZmF1bHQgcGxhbmUgZGlzYWJsZSBo YW5kbGVyIHVzaW5nIHRoZSBhdG9taWMgcGxhbmUgdXBkYXRlCisgKiBmdW5jdGlvbnMuIEl0IGlz IGZ1bGx5IGxlZnQgdG8gdGhlIGRyaXZlciB0byBjaGVjayBwbGFuZSBjb25zdHJhaW50cyBhbmQK KyAqIGhhbmRsZSBjb3JuZXItY2FzZXMgbGlrZSBhIGZ1bGx5IG9jY2x1ZGVkIG9yIG90aGVyd2lz ZSBpbnZpc2libGUgcGxhbmUuCisgKgorICogVGhpcyBpcyB1c2VmdWwgZm9yIHBpZWNld2lzZSB0 cmFuc2l0aW9uaW5nIG9mIGEgZHJpdmVyIHRvIHRoZSBhdG9taWMgaGVscGVycy4KKyAqCisgKiBS RVRVUk5TOgorICogWmVybyBvbiBzdWNjZXNzLCBlcnJvciBjb2RlIG9uIGZhaWx1cmUKKyAqLwor aW50IGRybV9wbGFuZV9oZWxwZXJfZGlzYWJsZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSkKK3sK KwlzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZTsKKworCS8qIGNydGMgaGVscGVy cyBsb3ZlIHRvIGNhbGwgZGlzYWJsZSBmdW5jdGlvbnMgZm9yIGFscmVhZHkgZGlzYWJsZWQgaHcK KwkgKiBmdW5jdGlvbnMuIFNvIGNvcGUgd2l0aCB0aGF0LiAqLworCWlmICghcGxhbmUtPmNydGMp CisJCXJldHVybiAwOworCisJaWYgKHBsYW5lLT5mdW5jcy0+YXRvbWljX2R1cGxpY2F0ZV9zdGF0 ZSkKKwkJcGxhbmVfc3RhdGUgPSBwbGFuZS0+ZnVuY3MtPmF0b21pY19kdXBsaWNhdGVfc3RhdGUo cGxhbmUpOworCWVsc2UgaWYgKHBsYW5lLT5zdGF0ZSkKKwkJcGxhbmVfc3RhdGUgPSBrbWVtZHVw KHBsYW5lLT5zdGF0ZSwgc2l6ZW9mKCpwbGFuZV9zdGF0ZSksCisJCQkJICAgICAgR0ZQX0tFUk5F TCk7CisJZWxzZQorCQlwbGFuZV9zdGF0ZSA9IGt6YWxsb2Moc2l6ZW9mKCpwbGFuZV9zdGF0ZSks IEdGUF9LRVJORUwpOworCWlmICghcGxhbmVfc3RhdGUpCisJCXJldHVybiAtRU5PTUVNOworCisJ cGxhbmVfc3RhdGUtPmNydGMgPSBOVUxMOworCXBsYW5lX3N0YXRlLT5mYiA9IE5VTEw7CisKKwly ZXR1cm4gcGxhbmVfY29tbWl0KHBsYW5lLCBwbGFuZV9zdGF0ZSwgcGxhbmUtPmZiKTsKK30KK0VY UE9SVF9TWU1CT0woZHJtX3BsYW5lX2hlbHBlcl9kaXNhYmxlKTsKZGlmZiAtLWdpdCBhL2luY2x1 ZGUvZHJtL2RybV9wbGFuZV9oZWxwZXIuaCBiL2luY2x1ZGUvZHJtL2RybV9wbGFuZV9oZWxwZXIu aAppbmRleCBjMjE0NmE3ZDkxZmIuLjhhMDcwOTcwNGFmMCAxMDA2NDQKLS0tIGEvaW5jbHVkZS9k cm0vZHJtX3BsYW5lX2hlbHBlci5oCisrKyBiL2luY2x1ZGUvZHJtL2RybV9wbGFuZV9oZWxwZXIu aApAQCAtOTQsNCArOTQsMTIgQEAgZXh0ZXJuIHN0cnVjdCBkcm1fcGxhbmUgKmRybV9wcmltYXJ5 X2hlbHBlcl9jcmVhdGVfcGxhbmUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJCQkJCQkgaW50 IG51bV9mb3JtYXRzKTsKIAogCitpbnQgZHJtX3BsYW5lX2hlbHBlcl91cGRhdGUoc3RydWN0IGRy bV9wbGFuZSAqcGxhbmUsIHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKKwkJCSAgICBzdHJ1Y3QgZHJt X2ZyYW1lYnVmZmVyICpmYiwKKwkJCSAgICBpbnQgY3J0Y194LCBpbnQgY3J0Y195LAorCQkJICAg IHVuc2lnbmVkIGludCBjcnRjX3csIHVuc2lnbmVkIGludCBjcnRjX2gsCisJCQkgICAgdWludDMy X3Qgc3JjX3gsIHVpbnQzMl90IHNyY195LAorCQkJICAgIHVpbnQzMl90IHNyY193LCB1aW50MzJf dCBzcmNfaCk7CitpbnQgZHJtX3BsYW5lX2hlbHBlcl9kaXNhYmxlKHN0cnVjdCBkcm1fcGxhbmUg KnBsYW5lKTsKKwogI2VuZGlmCi0tIAoyLjEuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9s aXN0aW5mby9pbnRlbC1nZngK