From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: [PATCH] drm/core: Change declaration for gamma_set. Date: Mon, 6 Jun 2016 11:18:09 +0200 Message-ID: <1465204689-24489-1-git-send-email-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: 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: intel-gfx@lists.freedesktop.org, Mathieu Larouche , VMware Graphics , Ben Skeggs , Alex Deucher , Thierry Reding , =?UTF-8?q?Christian=20K=C3=B6nig?= List-Id: intel-gfx@lists.freedesktop.org Q2hhbmdlIHJldHVybiB2YWx1ZSB0byBpbnQgdG8gcHJvcGFnYXRlIGVycm9ycyBmcm9tIGdhbW1h X3NldCwKYW5kIHJlbW92ZSBzdGFydCBwYXJhbWV0ZXIuIFVwZGF0ZXMgYWx3YXlzIHVzZSB0aGUg ZnVsbCBzaXplLAphbmQgc29tZSBkcml2ZXJzIGV2ZW4gaWdub3JlIHRoZSBzdGFydCBwYXJhbWV0 ZXIgYWx0b2dldGhlci4KCkNjOiBBbGV4IERldWNoZXIgPGFsZXhhbmRlci5kZXVjaGVyQGFtZC5j b20+CkNjOiBDaHJpc3RpYW4gS8O2bmlnIDxjaHJpc3RpYW4ua29lbmlnQGFtZC5jb20+CkNjOiBE YXZpZCBBaXJsaWUgPGFpcmxpZWRAbGludXguaWU+CkNjOiBQYXRyaWsgSmFrb2Jzc29uIDxwYXRy aWsuci5qYWtvYnNzb25AZ21haWwuY29tPgpDYzogQmVuIFNrZWdncyA8YnNrZWdnc0ByZWRoYXQu Y29tPgpDYzogRXJpYyBBbmhvbHQgPGVyaWNAYW5ob2x0Lm5ldD4KQ2M6IFZNd2FyZSBHcmFwaGlj cyA8bGludXgtZ3JhcGhpY3MtbWFpbnRhaW5lckB2bXdhcmUuY29tPgpDYzogTWF0aGlldSBMYXJv dWNoZSA8bWF0aGlldS5sYXJvdWNoZUBtYXRyb3guY29tPgpDYzogVGhpZXJyeSBSZWRpbmcgPHRy ZWRpbmdAbnZpZGlhLmNvbT4KU2lnbmVkLW9mZi1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0 ZW4ubGFua2hvcnN0QGxpbnV4LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9kY2VfdjEwXzAuYyAgfCAxMCArKysrKystLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9kY2VfdjExXzAuYyAgfCAxMCArKysrKystLS0tCiBkcml2ZXJzL2dwdS9kcm0vYW1kL2Ft ZGdwdS9kY2VfdjhfMC5jICAgfCAxMCArKysrKystLS0tCiBkcml2ZXJzL2dwdS9kcm0vYXN0L2Fz dF9tb2RlLmMgICAgICAgICAgfCAxMCArKysrKystLS0tCiBkcml2ZXJzL2dwdS9kcm0vY2lycnVz L2NpcnJ1c19tb2RlLmMgICAgfCAgOCArKysrKy0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9hdG9t aWNfaGVscGVyLmMgICAgIHwgMTMgKysrKysrLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2RybV9j cnRjLmMgICAgICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9kcm1fZmJfaGVscGVy LmMgICAgICAgICB8ICA0ICstLS0KIGRyaXZlcnMvZ3B1L2RybS9nbWE1MDAvZ21hX2Rpc3BsYXku YyAgICB8ICA5ICsrKysrLS0tLQogZHJpdmVycy9ncHUvZHJtL2dtYTUwMC9nbWFfZGlzcGxheS5o ICAgIHwgIDQgKystLQogZHJpdmVycy9ncHUvZHJtL21nYWcyMDAvbWdhZzIwMF9tb2RlLmMgIHwg IDkgKysrKystLS0tCiBkcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9kaXNwbnYwNC9jcnRjLmMgfCAx MiArKysrKysrLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L252NTBfZGlzcGxheS5jICB8 ICA5ICsrKysrLS0tLQogZHJpdmVycy9ncHUvZHJtL3JhZGVvbi9yYWRlb25fZGlzcGxheS5jIHwg MTEgKysrKysrKy0tLS0KIGRyaXZlcnMvZ3B1L2RybS92YzQvdmM0X2NydGMuYyAgICAgICAgICB8 ICA4ICsrKysrLS0tCiBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYyAgICAgfCAg OCArKysrKy0tLQogZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfa21zLmggICAgIHwgIDQg KystLQogaW5jbHVkZS9kcm0vZHJtX2F0b21pY19oZWxwZXIuaCAgICAgICAgIHwgIDYgKysrLS0t CiBpbmNsdWRlL2RybS9kcm1fY3J0Yy5oICAgICAgICAgICAgICAgICAgfCAgNCArKy0tCiAxOSBm aWxlcyBjaGFuZ2VkLCA4NSBpbnNlcnRpb25zKCspLCA2NiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9kY2VfdjEwXzAuYyBiL2RyaXZlcnMvZ3B1 L2RybS9hbWQvYW1kZ3B1L2RjZV92MTBfMC5jCmluZGV4IDgyMjczNDRkMmZmNi4uMTZkZTg2MmVh NTFmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9kY2VfdjEwXzAuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9kY2VfdjEwXzAuYwpAQCAtMjY2NywxOSAr MjY2NywyMSBAQCBzdGF0aWMgdm9pZCBkY2VfdjEwXzBfY3Vyc29yX3Jlc2V0KHN0cnVjdCBkcm1f Y3J0YyAqY3J0YykKIAl9CiB9CiAKLXN0YXRpYyB2b2lkIGRjZV92MTBfMF9jcnRjX2dhbW1hX3Nl dChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHUxNiAqcmVkLCB1MTYgKmdyZWVuLAotCQkJCSAgICB1 MTYgKmJsdWUsIHVpbnQzMl90IHN0YXJ0LCB1aW50MzJfdCBzaXplKQorc3RhdGljIGludCBkY2Vf djEwXzBfY3J0Y19nYW1tYV9zZXQoc3RydWN0IGRybV9jcnRjICpjcnRjLCB1MTYgKnJlZCwgdTE2 ICpncmVlbiwKKwkJCQkgICAgdTE2ICpibHVlLCB1aW50MzJfdCBzaXplKQogewogCXN0cnVjdCBh bWRncHVfY3J0YyAqYW1kZ3B1X2NydGMgPSB0b19hbWRncHVfY3J0YyhjcnRjKTsKLQlpbnQgZW5k ID0gKHN0YXJ0ICsgc2l6ZSA+IDI1NikgPyAyNTYgOiBzdGFydCArIHNpemUsIGk7CisJaW50IGk7 CiAKIAkvKiB1c2Vyc3BhY2UgcGFsZXR0ZXMgYXJlIGFsd2F5cyBjb3JyZWN0IGFzIGlzICovCi0J Zm9yIChpID0gc3RhcnQ7IGkgPCBlbmQ7IGkrKykgeworCWZvciAoaSA9IDA7IGkgPCBzaXplOyBp KyspIHsKIAkJYW1kZ3B1X2NydGMtPmx1dF9yW2ldID0gcmVkW2ldID4+IDY7CiAJCWFtZGdwdV9j cnRjLT5sdXRfZ1tpXSA9IGdyZWVuW2ldID4+IDY7CiAJCWFtZGdwdV9jcnRjLT5sdXRfYltpXSA9 IGJsdWVbaV0gPj4gNjsKIAl9CiAJZGNlX3YxMF8wX2NydGNfbG9hZF9sdXQoY3J0Yyk7CisKKwly ZXR1cm4gMDsKIH0KIAogc3RhdGljIHZvaWQgZGNlX3YxMF8wX2NydGNfZGVzdHJveShzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMpCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9k Y2VfdjExXzAuYyBiL2RyaXZlcnMvZ3B1L2RybS9hbWQvYW1kZ3B1L2RjZV92MTFfMC5jCmluZGV4 IGFmMjZlYzBiYzU5ZC4uNmUwYWU4ZTJlNjVjIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v YW1kL2FtZGdwdS9kY2VfdjExXzAuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9k Y2VfdjExXzAuYwpAQCAtMjY3OCwxOSArMjY3OCwyMSBAQCBzdGF0aWMgdm9pZCBkY2VfdjExXzBf Y3Vyc29yX3Jlc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKIAl9CiB9CiAKLXN0YXRpYyB2b2lk IGRjZV92MTFfMF9jcnRjX2dhbW1hX3NldChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHUxNiAqcmVk LCB1MTYgKmdyZWVuLAotCQkJCSAgICB1MTYgKmJsdWUsIHVpbnQzMl90IHN0YXJ0LCB1aW50MzJf dCBzaXplKQorc3RhdGljIGludCBkY2VfdjExXzBfY3J0Y19nYW1tYV9zZXQoc3RydWN0IGRybV9j cnRjICpjcnRjLCB1MTYgKnJlZCwgdTE2ICpncmVlbiwKKwkJCQkgICAgdTE2ICpibHVlLCB1aW50 MzJfdCBzaXplKQogewogCXN0cnVjdCBhbWRncHVfY3J0YyAqYW1kZ3B1X2NydGMgPSB0b19hbWRn cHVfY3J0YyhjcnRjKTsKLQlpbnQgZW5kID0gKHN0YXJ0ICsgc2l6ZSA+IDI1NikgPyAyNTYgOiBz dGFydCArIHNpemUsIGk7CisJaW50IGk7CiAKIAkvKiB1c2Vyc3BhY2UgcGFsZXR0ZXMgYXJlIGFs d2F5cyBjb3JyZWN0IGFzIGlzICovCi0JZm9yIChpID0gc3RhcnQ7IGkgPCBlbmQ7IGkrKykgewor CWZvciAoaSA9IDA7IGkgPCBzaXplOyBpKyspIHsKIAkJYW1kZ3B1X2NydGMtPmx1dF9yW2ldID0g cmVkW2ldID4+IDY7CiAJCWFtZGdwdV9jcnRjLT5sdXRfZ1tpXSA9IGdyZWVuW2ldID4+IDY7CiAJ CWFtZGdwdV9jcnRjLT5sdXRfYltpXSA9IGJsdWVbaV0gPj4gNjsKIAl9CiAJZGNlX3YxMV8wX2Ny dGNfbG9hZF9sdXQoY3J0Yyk7CisKKwlyZXR1cm4gMDsKIH0KIAogc3RhdGljIHZvaWQgZGNlX3Yx MV8wX2NydGNfZGVzdHJveShzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCmRpZmYgLS1naXQgYS9kcml2 ZXJzL2dwdS9kcm0vYW1kL2FtZGdwdS9kY2VfdjhfMC5jIGIvZHJpdmVycy9ncHUvZHJtL2FtZC9h bWRncHUvZGNlX3Y4XzAuYwppbmRleCAzZmI2NWU0MWE2ZWYuLjdiNWZhZTRjNzRmMSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2FtZC9hbWRncHUvZGNlX3Y4XzAuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vYW1kL2FtZGdwdS9kY2VfdjhfMC5jCkBAIC0yNTc0LDE5ICsyNTc0LDIxIEBAIHN0 YXRpYyB2b2lkIGRjZV92OF8wX2N1cnNvcl9yZXNldChzdHJ1Y3QgZHJtX2NydGMgKmNydGMpCiAJ fQogfQogCi1zdGF0aWMgdm9pZCBkY2VfdjhfMF9jcnRjX2dhbW1hX3NldChzdHJ1Y3QgZHJtX2Ny dGMgKmNydGMsIHUxNiAqcmVkLCB1MTYgKmdyZWVuLAotCQkJCSAgICB1MTYgKmJsdWUsIHVpbnQz Ml90IHN0YXJ0LCB1aW50MzJfdCBzaXplKQorc3RhdGljIGludCBkY2VfdjhfMF9jcnRjX2dhbW1h X3NldChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHUxNiAqcmVkLCB1MTYgKmdyZWVuLAorCQkJCSAg IHUxNiAqYmx1ZSwgdWludDMyX3Qgc2l6ZSkKIHsKIAlzdHJ1Y3QgYW1kZ3B1X2NydGMgKmFtZGdw dV9jcnRjID0gdG9fYW1kZ3B1X2NydGMoY3J0Yyk7Ci0JaW50IGVuZCA9IChzdGFydCArIHNpemUg PiAyNTYpID8gMjU2IDogc3RhcnQgKyBzaXplLCBpOworCWludCBpOwogCiAJLyogdXNlcnNwYWNl IHBhbGV0dGVzIGFyZSBhbHdheXMgY29ycmVjdCBhcyBpcyAqLwotCWZvciAoaSA9IHN0YXJ0OyBp IDwgZW5kOyBpKyspIHsKKwlmb3IgKGkgPSAwOyBpIDwgc2l6ZTsgaSsrKSB7CiAJCWFtZGdwdV9j cnRjLT5sdXRfcltpXSA9IHJlZFtpXSA+PiA2OwogCQlhbWRncHVfY3J0Yy0+bHV0X2dbaV0gPSBn cmVlbltpXSA+PiA2OwogCQlhbWRncHVfY3J0Yy0+bHV0X2JbaV0gPSBibHVlW2ldID4+IDY7CiAJ fQogCWRjZV92OF8wX2NydGNfbG9hZF9sdXQoY3J0Yyk7CisKKwlyZXR1cm4gMDsKIH0KIAogc3Rh dGljIHZvaWQgZGNlX3Y4XzBfY3J0Y19kZXN0cm95KHN0cnVjdCBkcm1fY3J0YyAqY3J0YykKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hc3QvYXN0X21vZGUuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9hc3QvYXN0X21vZGUuYwppbmRleCBjMzM3OTIyNjA2ZTMuLjU5NTdjM2U2NTlmZSAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2FzdC9hc3RfbW9kZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9hc3QvYXN0X21vZGUuYwpAQCAtNjI0LDE5ICs2MjQsMjEgQEAgc3RhdGljIHZvaWQgYXN0X2Ny dGNfcmVzZXQoc3RydWN0IGRybV9jcnRjICpjcnRjKQogCiB9CiAKLXN0YXRpYyB2b2lkIGFzdF9j cnRjX2dhbW1hX3NldChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHUxNiAqcmVkLCB1MTYgKmdyZWVu LAotCQkJCSB1MTYgKmJsdWUsIHVpbnQzMl90IHN0YXJ0LCB1aW50MzJfdCBzaXplKQorc3RhdGlj IGludCBhc3RfY3J0Y19nYW1tYV9zZXQoc3RydWN0IGRybV9jcnRjICpjcnRjLCB1MTYgKnJlZCwg dTE2ICpncmVlbiwKKwkJCSAgICAgIHUxNiAqYmx1ZSwgdWludDMyX3Qgc2l6ZSkKIHsKIAlzdHJ1 Y3QgYXN0X2NydGMgKmFzdF9jcnRjID0gdG9fYXN0X2NydGMoY3J0Yyk7Ci0JaW50IGVuZCA9IChz dGFydCArIHNpemUgPiAyNTYpID8gMjU2IDogc3RhcnQgKyBzaXplLCBpOworCWludCBpOwogCiAJ LyogdXNlcnNwYWNlIHBhbGV0dGVzIGFyZSBhbHdheXMgY29ycmVjdCBhcyBpcyAqLwotCWZvciAo aSA9IHN0YXJ0OyBpIDwgZW5kOyBpKyspIHsKKwlmb3IgKGkgPSAwOyBpIDwgc2l6ZTsgaSsrKSB7 CiAJCWFzdF9jcnRjLT5sdXRfcltpXSA9IHJlZFtpXSA+PiA4OwogCQlhc3RfY3J0Yy0+bHV0X2db aV0gPSBncmVlbltpXSA+PiA4OwogCQlhc3RfY3J0Yy0+bHV0X2JbaV0gPSBibHVlW2ldID4+IDg7 CiAJfQogCWFzdF9jcnRjX2xvYWRfbHV0KGNydGMpOworCisJcmV0dXJuIDA7CiB9CiAKIApkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2NpcnJ1cy9jaXJydXNfbW9kZS5jIGIvZHJpdmVycy9n cHUvZHJtL2NpcnJ1cy9jaXJydXNfbW9kZS5jCmluZGV4IDBiMWE0MTFjYjg5ZS4uMTdjOTE1ZDlh MDNlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vY2lycnVzL2NpcnJ1c19tb2RlLmMKKysr IGIvZHJpdmVycy9ncHUvZHJtL2NpcnJ1cy9jaXJydXNfbW9kZS5jCkBAIC0zMjUsMTggKzMyNSwy MCBAQCBzdGF0aWMgdm9pZCBjaXJydXNfY3J0Y19jb21taXQoc3RydWN0IGRybV9jcnRjICpjcnRj KQogICogdXNlIHRoaXMgZm9yIDgtYml0IG1vZGUgc28gY2FuJ3QgcGVyZm9ybSBzbW9vdGggZmFk ZXMgb24gZGVlcGVyIG1vZGVzLAogICogYnV0IGl0J3MgYSByZXF1aXJlbWVudCB0aGF0IHdlIHBy b3ZpZGUgdGhlIGZ1bmN0aW9uCiAgKi8KLXN0YXRpYyB2b2lkIGNpcnJ1c19jcnRjX2dhbW1hX3Nl dChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHUxNiAqcmVkLCB1MTYgKmdyZWVuLAotCQkJCSAgdTE2 ICpibHVlLCB1aW50MzJfdCBzdGFydCwgdWludDMyX3Qgc2l6ZSkKK3N0YXRpYyBpbnQgY2lycnVz X2NydGNfZ2FtbWFfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgdTE2ICpyZWQsIHUxNiAqZ3Jl ZW4sCisJCQkJIHUxNiAqYmx1ZSwgdWludDMyX3Qgc2l6ZSkKIHsKIAlzdHJ1Y3QgY2lycnVzX2Ny dGMgKmNpcnJ1c19jcnRjID0gdG9fY2lycnVzX2NydGMoY3J0Yyk7CiAJaW50IGk7CiAKLQlmb3Ig KGkgPSAwOyBpIDwgQ0lSUlVTX0xVVF9TSVpFOyBpKyspIHsKKwlmb3IgKGkgPSAwOyBpIDwgc2l6 ZTsgaSsrKSB7CiAJCWNpcnJ1c19jcnRjLT5sdXRfcltpXSA9IHJlZFtpXTsKIAkJY2lycnVzX2Ny dGMtPmx1dF9nW2ldID0gZ3JlZW5baV07CiAJCWNpcnJ1c19jcnRjLT5sdXRfYltpXSA9IGJsdWVb aV07CiAJfQogCWNpcnJ1c19jcnRjX2xvYWRfbHV0KGNydGMpOworCisJcmV0dXJuIDA7CiB9CiAK IC8qIFNpbXBsZSBjbGVhbnVwIGZ1bmN0aW9uICovCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vZHJtX2F0b21pY19oZWxwZXIuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBl ci5jCmluZGV4IDkzOWRmOTAwZGNhYS4uMjY2YzExMDE4YTE5IDEwMDY0NAotLS0gYS9kcml2ZXJz L2dwdS9kcm0vZHJtX2F0b21pY19oZWxwZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0 b21pY19oZWxwZXIuYwpAQCAtMjkzMywxNiArMjkzMywxNSBAQCBFWFBPUlRfU1lNQk9MKGRybV9h dG9taWNfaGVscGVyX2Nvbm5lY3Rvcl9kZXN0cm95X3N0YXRlKTsKICAqIEByZWQ6IHJlZCBjb3Jy ZWN0aW9uIHRhYmxlCiAgKiBAZ3JlZW46IGdyZWVuIGNvcnJlY3Rpb24gdGFibGUKICAqIEBibHVl OiBncmVlbiBjb3JyZWN0aW9uIHRhYmxlCi0gKiBAc3RhcnQ6CiAgKiBAc2l6ZTogc2l6ZSBvZiB0 aGUgdGFibGVzCiAgKgogICogSW1wbGVtZW50cyBzdXBwb3J0IGZvciBsZWdhY3kgZ2FtbWEgY29y cmVjdGlvbiB0YWJsZSBmb3IgZHJpdmVycwogICogdGhhdCBzdXBwb3J0IGNvbG9yIG1hbmFnZW1l bnQgdGhyb3VnaCB0aGUgREVHQU1NQV9MVVQvR0FNTUFfTFVUCiAgKiBwcm9wZXJ0aWVzLgogICov Ci12b2lkIGRybV9hdG9taWNfaGVscGVyX2xlZ2FjeV9nYW1tYV9zZXQoc3RydWN0IGRybV9jcnRj ICpjcnRjLAotCQkJCQl1MTYgKnJlZCwgdTE2ICpncmVlbiwgdTE2ICpibHVlLAotCQkJCQl1aW50 MzJfdCBzdGFydCwgdWludDMyX3Qgc2l6ZSkKK2ludCBkcm1fYXRvbWljX2hlbHBlcl9sZWdhY3lf Z2FtbWFfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKKwkJCQkgICAgICAgdTE2ICpyZWQsIHUx NiAqZ3JlZW4sIHUxNiAqYmx1ZSwKKwkJCQkgICAgICAgdWludDMyX3Qgc2l6ZSkKIHsKIAlzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2ID0gY3J0Yy0+ZGV2OwogCXN0cnVjdCBkcm1fbW9kZV9jb25maWcg KmNvbmZpZyA9ICZkZXYtPm1vZGVfY29uZmlnOwpAQCAtMjk1NCw3ICsyOTUzLDcgQEAgdm9pZCBk cm1fYXRvbWljX2hlbHBlcl9sZWdhY3lfZ2FtbWFfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywK IAogCXN0YXRlID0gZHJtX2F0b21pY19zdGF0ZV9hbGxvYyhjcnRjLT5kZXYpOwogCWlmICghc3Rh dGUpCi0JCXJldHVybjsKKwkJcmV0dXJuIC1FTk9NRU07CiAKIAlibG9iID0gZHJtX3Byb3BlcnR5 X2NyZWF0ZV9ibG9iKGRldiwKIAkJCQkJc2l6ZW9mKHN0cnVjdCBkcm1fY29sb3JfbHV0KSAqIHNp emUsCkBAIC0zMDA1LDcgKzMwMDQsNyBAQCByZXRyeToKIAogCWRybV9wcm9wZXJ0eV91bnJlZmVy ZW5jZV9ibG9iKGJsb2IpOwogCi0JcmV0dXJuOworCXJldHVybiAwOwogZmFpbDoKIAlpZiAocmV0 ID09IC1FREVBRExLKQogCQlnb3RvIGJhY2tvZmY7CkBAIC0zMDEzLDcgKzMwMTIsNyBAQCBmYWls OgogCWRybV9hdG9taWNfc3RhdGVfZnJlZShzdGF0ZSk7CiAJZHJtX3Byb3BlcnR5X3VucmVmZXJl bmNlX2Jsb2IoYmxvYik7CiAKLQlyZXR1cm47CisJcmV0dXJuIHJldDsKIGJhY2tvZmY6CiAJZHJt X2F0b21pY19zdGF0ZV9jbGVhcihzdGF0ZSk7CiAJZHJtX2F0b21pY19sZWdhY3lfYmFja29mZihz dGF0ZSk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYyBiL2RyaXZlcnMv Z3B1L2RybS9kcm1fY3J0Yy5jCmluZGV4IGQyYTZkOTU4Y2E3Ni4uNGQ2MWNlYWU3ODljIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2NydGMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0v ZHJtX2NydGMuYwpAQCAtNTIxNSw3ICs1MjE1LDcgQEAgaW50IGRybV9tb2RlX2dhbW1hX3NldF9p b2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQlnb3RvIG91dDsKIAl9CiAKLQljcnRjLT5m dW5jcy0+Z2FtbWFfc2V0KGNydGMsIHJfYmFzZSwgZ19iYXNlLCBiX2Jhc2UsIDAsIGNydGMtPmdh bW1hX3NpemUpOworCXJldCA9IGNydGMtPmZ1bmNzLT5nYW1tYV9zZXQoY3J0Yywgcl9iYXNlLCBn X2Jhc2UsIGJfYmFzZSwgY3J0Yy0+Z2FtbWFfc2l6ZSk7CiAKIG91dDoKIAlkcm1fbW9kZXNldF91 bmxvY2tfYWxsKGRldik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBl ci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9mYl9oZWxwZXIuYwppbmRleCA3NTkwZGY1ZTJlNzIu LjRhY2NmNjAzOTA1OCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9mYl9oZWxwZXIu YworKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2ZiX2hlbHBlci5jCkBAIC0yMjcsNyArMjI3LDcg QEAgc3RhdGljIHZvaWQgZHJtX2ZiX2hlbHBlcl9yZXN0b3JlX2x1dF9hdG9taWMoc3RydWN0IGRy bV9jcnRjICpjcnRjKQogCWdfYmFzZSA9IHJfYmFzZSArIGNydGMtPmdhbW1hX3NpemU7CiAJYl9i YXNlID0gZ19iYXNlICsgY3J0Yy0+Z2FtbWFfc2l6ZTsKIAotCWNydGMtPmZ1bmNzLT5nYW1tYV9z ZXQoY3J0Yywgcl9iYXNlLCBnX2Jhc2UsIGJfYmFzZSwgMCwgY3J0Yy0+Z2FtbWFfc2l6ZSk7CisJ Y3J0Yy0+ZnVuY3MtPmdhbW1hX3NldChjcnRjLCByX2Jhc2UsIGdfYmFzZSwgYl9iYXNlLCBjcnRj LT5nYW1tYV9zaXplKTsKIH0KIAogLyoqCkBAIC0xMDc2LDggKzEwNzYsNiBAQCBzdGF0aWMgaW50 IHNldGNvbHJlZyhzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHUxNiByZWQsIHUxNiBncmVlbiwKIAlX QVJOX09OKGZiLT5iaXRzX3Blcl9waXhlbCAhPSA4KTsKIAogCWZiX2hlbHBlci0+ZnVuY3MtPmdh bW1hX3NldChjcnRjLCByZWQsIGdyZWVuLCBibHVlLCByZWdubyk7Ci0KLQlyZXR1cm4gMDsKIH0K IAogLyoqCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZ21hNTAwL2dtYV9kaXNwbGF5LmMg Yi9kcml2ZXJzL2dwdS9kcm0vZ21hNTAwL2dtYV9kaXNwbGF5LmMKaW5kZXggYzk1NDA2ZTZmNDRk Li41YjYzNmJmMGI0NjcgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9nbWE1MDAvZ21hX2Rp c3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZ21hNTAwL2dtYV9kaXNwbGF5LmMKQEAgLTE3 NSwyMCArMTc1LDIxIEBAIHZvaWQgZ21hX2NydGNfbG9hZF9sdXQoc3RydWN0IGRybV9jcnRjICpj cnRjKQogCX0KIH0KIAotdm9pZCBnbWFfY3J0Y19nYW1tYV9zZXQoc3RydWN0IGRybV9jcnRjICpj cnRjLCB1MTYgKnJlZCwgdTE2ICpncmVlbiwgdTE2ICpibHVlLAotCQkJdTMyIHN0YXJ0LCB1MzIg c2l6ZSkKK2ludCBnbWFfY3J0Y19nYW1tYV9zZXQoc3RydWN0IGRybV9jcnRjICpjcnRjLCB1MTYg KnJlZCwgdTE2ICpncmVlbiwgdTE2ICpibHVlLAorCQkgICAgICAgdTMyIHNpemUpCiB7CiAJc3Ry dWN0IGdtYV9jcnRjICpnbWFfY3J0YyA9IHRvX2dtYV9jcnRjKGNydGMpOwogCWludCBpOwotCWlu dCBlbmQgPSAoc3RhcnQgKyBzaXplID4gMjU2KSA/IDI1NiA6IHN0YXJ0ICsgc2l6ZTsKIAotCWZv ciAoaSA9IHN0YXJ0OyBpIDwgZW5kOyBpKyspIHsKKwlmb3IgKGkgPSAwOyBpIDwgc2l6ZTsgaSsr KSB7CiAJCWdtYV9jcnRjLT5sdXRfcltpXSA9IHJlZFtpXSA+PiA4OwogCQlnbWFfY3J0Yy0+bHV0 X2dbaV0gPSBncmVlbltpXSA+PiA4OwogCQlnbWFfY3J0Yy0+bHV0X2JbaV0gPSBibHVlW2ldID4+ IDg7CiAJfQogCiAJZ21hX2NydGNfbG9hZF9sdXQoY3J0Yyk7CisKKwlyZXR1cm4gMDsKIH0KIAog LyoqCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZ21hNTAwL2dtYV9kaXNwbGF5LmggYi9k cml2ZXJzL2dwdS9kcm0vZ21hNTAwL2dtYV9kaXNwbGF5LmgKaW5kZXggYjI0OTFjNjVmMDUzLi5l NzJkZDA4YjcwMWIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9nbWE1MDAvZ21hX2Rpc3Bs YXkuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vZ21hNTAwL2dtYV9kaXNwbGF5LmgKQEAgLTcyLDgg KzcyLDggQEAgZXh0ZXJuIGludCBnbWFfY3J0Y19jdXJzb3Jfc2V0KHN0cnVjdCBkcm1fY3J0YyAq Y3J0YywKIAkJCSAgICAgICB1aW50MzJfdCB3aWR0aCwgdWludDMyX3QgaGVpZ2h0KTsKIGV4dGVy biBpbnQgZ21hX2NydGNfY3Vyc29yX21vdmUoc3RydWN0IGRybV9jcnRjICpjcnRjLCBpbnQgeCwg aW50IHkpOwogZXh0ZXJuIHZvaWQgZ21hX2NydGNfbG9hZF9sdXQoc3RydWN0IGRybV9jcnRjICpj cnRjKTsKLWV4dGVybiB2b2lkIGdtYV9jcnRjX2dhbW1hX3NldChzdHJ1Y3QgZHJtX2NydGMgKmNy dGMsIHUxNiAqcmVkLCB1MTYgKmdyZWVuLAotCQkJICAgICAgIHUxNiAqYmx1ZSwgdTMyIHN0YXJ0 LCB1MzIgc2l6ZSk7CitleHRlcm4gaW50IGdtYV9jcnRjX2dhbW1hX3NldChzdHJ1Y3QgZHJtX2Ny dGMgKmNydGMsIHUxNiAqcmVkLCB1MTYgKmdyZWVuLAorCQkJICAgICAgdTE2ICpibHVlLCB1MzIg c2l6ZSk7CiBleHRlcm4gdm9pZCBnbWFfY3J0Y19kcG1zKHN0cnVjdCBkcm1fY3J0YyAqY3J0Yywg aW50IG1vZGUpOwogZXh0ZXJuIHZvaWQgZ21hX2NydGNfcHJlcGFyZShzdHJ1Y3QgZHJtX2NydGMg KmNydGMpOwogZXh0ZXJuIHZvaWQgZ21hX2NydGNfY29tbWl0KHN0cnVjdCBkcm1fY3J0YyAqY3J0 Yyk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbWdhZzIwMC9tZ2FnMjAwX21vZGUuYyBi L2RyaXZlcnMvZ3B1L2RybS9tZ2FnMjAwL21nYWcyMDBfbW9kZS5jCmluZGV4IDE0ZTY0ZTA4OTA5 ZS4uZjZkNTg5MmQwM2YxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbWdhZzIwMC9tZ2Fn MjAwX21vZGUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbWdhZzIwMC9tZ2FnMjAwX21vZGUuYwpA QCAtMTM0NCwxOSArMTM0NCwyMCBAQCBzdGF0aWMgdm9pZCBtZ2FfY3J0Y19jb21taXQoc3RydWN0 IGRybV9jcnRjICpjcnRjKQogICogdXNlIHRoaXMgZm9yIDgtYml0IG1vZGUgc28gY2FuJ3QgcGVy Zm9ybSBzbW9vdGggZmFkZXMgb24gZGVlcGVyIG1vZGVzLAogICogYnV0IGl0J3MgYSByZXF1aXJl bWVudCB0aGF0IHdlIHByb3ZpZGUgdGhlIGZ1bmN0aW9uCiAgKi8KLXN0YXRpYyB2b2lkIG1nYV9j cnRjX2dhbW1hX3NldChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHUxNiAqcmVkLCB1MTYgKmdyZWVu LAotCQkJCSAgdTE2ICpibHVlLCB1aW50MzJfdCBzdGFydCwgdWludDMyX3Qgc2l6ZSkKK3N0YXRp YyBpbnQgbWdhX2NydGNfZ2FtbWFfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgdTE2ICpyZWQs IHUxNiAqZ3JlZW4sCisJCQkgICAgICB1MTYgKmJsdWUsIHVpbnQzMl90IHNpemUpCiB7CiAJc3Ry dWN0IG1nYV9jcnRjICptZ2FfY3J0YyA9IHRvX21nYV9jcnRjKGNydGMpOwotCWludCBlbmQgPSAo c3RhcnQgKyBzaXplID4gTUdBRzIwMF9MVVRfU0laRSkgPyBNR0FHMjAwX0xVVF9TSVpFIDogc3Rh cnQgKyBzaXplOwogCWludCBpOwogCi0JZm9yIChpID0gc3RhcnQ7IGkgPCBlbmQ7IGkrKykgewor CWZvciAoaSA9IDA7IGkgPCBzaXplOyBpKyspIHsKIAkJbWdhX2NydGMtPmx1dF9yW2ldID0gcmVk W2ldID4+IDg7CiAJCW1nYV9jcnRjLT5sdXRfZ1tpXSA9IGdyZWVuW2ldID4+IDg7CiAJCW1nYV9j cnRjLT5sdXRfYltpXSA9IGJsdWVbaV0gPj4gODsKIAl9CiAJbWdhX2NydGNfbG9hZF9sdXQoY3J0 Yyk7CisKKwlyZXR1cm4gMDsKIH0KIAogLyogU2ltcGxlIGNsZWFudXAgZnVuY3Rpb24gKi8KZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjA0L2NydGMuYyBiL2RyaXZl cnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjA0L2NydGMuYwppbmRleCA2ZjMxOGM1NGRhMzMuLjBj YjdhMThjZGUyNiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvZGlzcG52MDQv Y3J0Yy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L2Rpc3BudjA0L2NydGMuYwpAQCAt Nzg1LDE0ICs3ODUsMTQgQEAgbnZfY3J0Y19kaXNhYmxlKHN0cnVjdCBkcm1fY3J0YyAqY3J0YykK IAlub3V2ZWF1X2JvX3JlZihOVUxMLCAmZGlzcC0+aW1hZ2VbbnZfY3J0Yy0+aW5kZXhdKTsKIH0K IAotc3RhdGljIHZvaWQKLW52X2NydGNfZ2FtbWFfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0Yywg dTE2ICpyLCB1MTYgKmcsIHUxNiAqYiwgdWludDMyX3Qgc3RhcnQsCitzdGF0aWMgaW50Citudl9j cnRjX2dhbW1hX3NldChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHUxNiAqciwgdTE2ICpnLCB1MTYg KmIsCiAJCSAgdWludDMyX3Qgc2l6ZSkKIHsKLQlpbnQgZW5kID0gKHN0YXJ0ICsgc2l6ZSA+IDI1 NikgPyAyNTYgOiBzdGFydCArIHNpemUsIGk7CiAJc3RydWN0IG5vdXZlYXVfY3J0YyAqbnZfY3J0 YyA9IG5vdXZlYXVfY3J0YyhjcnRjKTsKKwlpbnQgaTsKIAotCWZvciAoaSA9IHN0YXJ0OyBpIDwg ZW5kOyBpKyspIHsKKwlmb3IgKGkgPSAwOyBpIDwgc2l6ZTsgaSsrKSB7CiAJCW52X2NydGMtPmx1 dC5yW2ldID0gcltpXTsKIAkJbnZfY3J0Yy0+bHV0LmdbaV0gPSBnW2ldOwogCQludl9jcnRjLT5s dXQuYltpXSA9IGJbaV07CkBAIC04MDUsMTAgKzgwNSwxMiBAQCBudl9jcnRjX2dhbW1hX3NldChz dHJ1Y3QgZHJtX2NydGMgKmNydGMsIHUxNiAqciwgdTE2ICpnLCB1MTYgKmIsIHVpbnQzMl90IHN0 YXJ0LAogCSAqLwogCWlmICghbnZfY3J0Yy0+YmFzZS5wcmltYXJ5LT5mYikgewogCQludl9jcnRj LT5sdXQuZGVwdGggPSAwOwotCQlyZXR1cm47CisJCXJldHVybiAwOwogCX0KIAogCW52X2NydGNf Z2FtbWFfbG9hZChjcnRjKTsKKworCXJldHVybiAwOwogfQogCiBzdGF0aWMgaW50CmRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udjUwX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1 L2RybS9ub3V2ZWF1L252NTBfZGlzcGxheS5jCmluZGV4IDNmZmMyYjAwNTdiZi4uN2E3Nzg4MjEy ZGY3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udjUwX2Rpc3BsYXkuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udjUwX2Rpc3BsYXkuYwpAQCAtMTM0NiwyMSAr MTM0NiwyMiBAQCBudjUwX2NydGNfY3Vyc29yX21vdmUoc3RydWN0IGRybV9jcnRjICpjcnRjLCBp bnQgeCwgaW50IHkpCiAJcmV0dXJuIDA7CiB9CiAKLXN0YXRpYyB2b2lkCitzdGF0aWMgaW50CiBu djUwX2NydGNfZ2FtbWFfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgdTE2ICpyLCB1MTYgKmcs IHUxNiAqYiwKLQkJICAgIHVpbnQzMl90IHN0YXJ0LCB1aW50MzJfdCBzaXplKQorCQkgICAgdWlu dDMyX3Qgc2l6ZSkKIHsKIAlzdHJ1Y3Qgbm91dmVhdV9jcnRjICpudl9jcnRjID0gbm91dmVhdV9j cnRjKGNydGMpOwotCXUzMiBlbmQgPSBtaW5fdCh1MzIsIHN0YXJ0ICsgc2l6ZSwgMjU2KTsKIAl1 MzIgaTsKIAotCWZvciAoaSA9IHN0YXJ0OyBpIDwgZW5kOyBpKyspIHsKKwlmb3IgKGkgPSAwOyBp IDwgc2l6ZTsgaSsrKSB7CiAJCW52X2NydGMtPmx1dC5yW2ldID0gcltpXTsKIAkJbnZfY3J0Yy0+ bHV0LmdbaV0gPSBnW2ldOwogCQludl9jcnRjLT5sdXQuYltpXSA9IGJbaV07CiAJfQogCiAJbnY1 MF9jcnRjX2x1dF9sb2FkKGNydGMpOworCisJcmV0dXJuIDA7CiB9CiAKIHN0YXRpYyB2b2lkCmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kaXNwbGF5LmMgYi9kcml2 ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kaXNwbGF5LmMKaW5kZXggNmE0MWI0OTgyNjQ3Li44 MGYwNmRiMWRkMzQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yYWRlb24vcmFkZW9uX2Rp c3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcmFkZW9uL3JhZGVvbl9kaXNwbGF5LmMKQEAg LTIzMSwxOSArMjMxLDIxIEBAIHZvaWQgcmFkZW9uX2NydGNfZmJfZ2FtbWFfZ2V0KHN0cnVjdCBk cm1fY3J0YyAqY3J0YywgdTE2ICpyZWQsIHUxNiAqZ3JlZW4sCiAJKmJsdWUgPSByYWRlb25fY3J0 Yy0+bHV0X2JbcmVnbm9dIDw8IDY7CiB9CiAKLXN0YXRpYyB2b2lkIHJhZGVvbl9jcnRjX2dhbW1h X3NldChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHUxNiAqcmVkLCB1MTYgKmdyZWVuLAotCQkJCSAg dTE2ICpibHVlLCB1aW50MzJfdCBzdGFydCwgdWludDMyX3Qgc2l6ZSkKK3N0YXRpYyBpbnQgcmFk ZW9uX2NydGNfZ2FtbWFfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywgdTE2ICpyZWQsIHUxNiAq Z3JlZW4sCisJCQkJIHUxNiAqYmx1ZSwgdWludDMyX3Qgc2l6ZSkKIHsKIAlzdHJ1Y3QgcmFkZW9u X2NydGMgKnJhZGVvbl9jcnRjID0gdG9fcmFkZW9uX2NydGMoY3J0Yyk7Ci0JaW50IGVuZCA9IChz dGFydCArIHNpemUgPiAyNTYpID8gMjU2IDogc3RhcnQgKyBzaXplLCBpOworCWludCBpOwogCiAJ LyogdXNlcnNwYWNlIHBhbGV0dGVzIGFyZSBhbHdheXMgY29ycmVjdCBhcyBpcyAqLwotCWZvciAo aSA9IHN0YXJ0OyBpIDwgZW5kOyBpKyspIHsKKwlmb3IgKGkgPSAwOyBpIDwgc2l6ZTsgaSsrKSB7 CiAJCXJhZGVvbl9jcnRjLT5sdXRfcltpXSA9IHJlZFtpXSA+PiA2OwogCQlyYWRlb25fY3J0Yy0+ bHV0X2dbaV0gPSBncmVlbltpXSA+PiA2OwogCQlyYWRlb25fY3J0Yy0+bHV0X2JbaV0gPSBibHVl W2ldID4+IDY7CiAJfQogCXJhZGVvbl9jcnRjX2xvYWRfbHV0KGNydGMpOworCisJcmV0dXJuIDA7 CiB9CiAKIHN0YXRpYyB2b2lkIHJhZGVvbl9jcnRjX2Rlc3Ryb3koc3RydWN0IGRybV9jcnRjICpj cnRjKQpAQCAtNjg4LDYgKzY5MCw3IEBAIHJhZGVvbl9jcnRjX3NldF9jb25maWcoc3RydWN0IGRy bV9tb2RlX3NldCAqc2V0KQogCXBtX3J1bnRpbWVfcHV0X2F1dG9zdXNwZW5kKGRldi0+ZGV2KTsK IAlyZXR1cm4gcmV0OwogfQorCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRybV9jcnRjX2Z1bmNzIHJh ZGVvbl9jcnRjX2Z1bmNzID0gewogCS5jdXJzb3Jfc2V0MiA9IHJhZGVvbl9jcnRjX2N1cnNvcl9z ZXQyLAogCS5jdXJzb3JfbW92ZSA9IHJhZGVvbl9jcnRjX2N1cnNvcl9tb3ZlLApkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfY3J0Yy5jIGIvZHJpdmVycy9ncHUvZHJtL3ZjNC92 YzRfY3J0Yy5jCmluZGV4IDkwNGQwNzU0YWQ3OC4uNGUzNGYwNTRkYTVjIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vdmM0L3ZjNF9jcnRjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3ZjNC92 YzRfY3J0Yy5jCkBAIC0xNzUsMjAgKzE3NSwyMiBAQCB2YzRfY3J0Y19sdXRfbG9hZChzdHJ1Y3Qg ZHJtX2NydGMgKmNydGMpCiAJCUhWU19XUklURShTQ0FMRVJfR0FNREFUQSwgdmM0X2NydGMtPmx1 dF9iW2ldKTsKIH0KIAotc3RhdGljIHZvaWQKK3N0YXRpYyBpbnQKIHZjNF9jcnRjX2dhbW1hX3Nl dChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsIHUxNiAqciwgdTE2ICpnLCB1MTYgKmIsCi0JCSAgIHVp bnQzMl90IHN0YXJ0LCB1aW50MzJfdCBzaXplKQorCQkgICB1aW50MzJfdCBzaXplKQogewogCXN0 cnVjdCB2YzRfY3J0YyAqdmM0X2NydGMgPSB0b192YzRfY3J0YyhjcnRjKTsKIAl1MzIgaTsKIAot CWZvciAoaSA9IHN0YXJ0OyBpIDwgc3RhcnQgKyBzaXplOyBpKyspIHsKKwlmb3IgKGkgPSAwOyBp IDwgc2l6ZTsgaSsrKSB7CiAJCXZjNF9jcnRjLT5sdXRfcltpXSA9IHJbaV0gPj4gODsKIAkJdmM0 X2NydGMtPmx1dF9nW2ldID0gZ1tpXSA+PiA4OwogCQl2YzRfY3J0Yy0+bHV0X2JbaV0gPSBiW2ld ID4+IDg7CiAJfQogCiAJdmM0X2NydGNfbHV0X2xvYWQoY3J0Yyk7CisKKwlyZXR1cm4gMDsKIH0K IAogc3RhdGljIHUzMiB2YzRfZ2V0X2ZpZm9fZnVsbF9sZXZlbCh1MzIgZm9ybWF0KQpkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfa21zLmMgYi9kcml2ZXJzL2dwdS9k cm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYwppbmRleCA1NTIzMWNjZTczYTAuLjhhNjlkNGRhNDBiNSAx MDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfa21zLmMKKysrIGIvZHJp dmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfa21zLmMKQEAgLTE0MDQsOSArMTQwNCw5IEBAIHN0 YXRpYyBpbnQgdm13X2R1X3VwZGF0ZV9sYXlvdXQoc3RydWN0IHZtd19wcml2YXRlICpkZXZfcHJp diwgdW5zaWduZWQgbnVtLAogCXJldHVybiAwOwogfQogCi12b2lkIHZtd19kdV9jcnRjX2dhbW1h X3NldChzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCi0JCQkgICB1MTYgKnIsIHUxNiAqZywgdTE2ICpi LAotCQkJICAgdWludDMyX3Qgc3RhcnQsIHVpbnQzMl90IHNpemUpCitpbnQgdm13X2R1X2NydGNf Z2FtbWFfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKKwkJCSAgdTE2ICpyLCB1MTYgKmcsIHUx NiAqYiwKKwkJCSAgdWludDMyX3Qgc2l6ZSkKIHsKIAlzdHJ1Y3Qgdm13X3ByaXZhdGUgKmRldl9w cml2ID0gdm13X3ByaXYoY3J0Yy0+ZGV2KTsKIAlpbnQgaTsKQEAgLTE0MTgsNiArMTQxOCw4IEBA IHZvaWQgdm13X2R1X2NydGNfZ2FtbWFfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKIAkJdm13 X3dyaXRlKGRldl9wcml2LCBTVkdBX1BBTEVUVEVfQkFTRSArIGkgKiAzICsgMSwgZ1tpXSA+PiA4 KTsKIAkJdm13X3dyaXRlKGRldl9wcml2LCBTVkdBX1BBTEVUVEVfQkFTRSArIGkgKiAzICsgMiwg YltpXSA+PiA4KTsKIAl9CisKKwlyZXR1cm4gMDsKIH0KIAogaW50IHZtd19kdV9jb25uZWN0b3Jf ZHBtcyhzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9yLCBpbnQgbW9kZSkKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2ttcy5oIGIvZHJpdmVycy9ncHUvZHJt L3Ztd2dmeC92bXdnZnhfa21zLmgKaW5kZXggNTcyMDMyMTJjNTAxLi5mZjQ4MDNjMTA3YmMgMTAw NjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2ttcy5oCisrKyBiL2RyaXZl cnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2ttcy5oCkBAIC0xOTUsOSArMTk1LDkgQEAgc3RydWN0 IHZtd19kaXNwbGF5X3VuaXQgewogdm9pZCB2bXdfZHVfY2xlYW51cChzdHJ1Y3Qgdm13X2Rpc3Bs YXlfdW5pdCAqZHUpOwogdm9pZCB2bXdfZHVfY3J0Y19zYXZlKHN0cnVjdCBkcm1fY3J0YyAqY3J0 Yyk7CiB2b2lkIHZtd19kdV9jcnRjX3Jlc3RvcmUoc3RydWN0IGRybV9jcnRjICpjcnRjKTsKLXZv aWQgdm13X2R1X2NydGNfZ2FtbWFfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0YywKK2ludCB2bXdf ZHVfY3J0Y19nYW1tYV9zZXQoc3RydWN0IGRybV9jcnRjICpjcnRjLAogCQkJICAgdTE2ICpyLCB1 MTYgKmcsIHUxNiAqYiwKLQkJCSAgIHVpbnQzMl90IHN0YXJ0LCB1aW50MzJfdCBzaXplKTsKKwkJ CSAgIHVpbnQzMl90IHNpemUpOwogaW50IHZtd19kdV9jcnRjX2N1cnNvcl9zZXQyKHN0cnVjdCBk cm1fY3J0YyAqY3J0Yywgc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYsCiAJCQkgICAgdWludDMy X3QgaGFuZGxlLCB1aW50MzJfdCB3aWR0aCwgdWludDMyX3QgaGVpZ2h0LAogCQkJICAgIGludDMy X3QgaG90X3gsIGludDMyX3QgaG90X3kpOwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vZHJtX2F0 b21pY19oZWxwZXIuaCBiL2luY2x1ZGUvZHJtL2RybV9hdG9taWNfaGVscGVyLmgKaW5kZXggZDQ3 M2RjYzkxZjU0Li4xMTg5NmM4NGM0ZjggMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9hdG9t aWNfaGVscGVyLmgKKysrIGIvaW5jbHVkZS9kcm0vZHJtX2F0b21pY19oZWxwZXIuaApAQCAtMTQ3 LDkgKzE0Nyw5IEBAIHZvaWQKIF9fZHJtX2F0b21pY19oZWxwZXJfY29ubmVjdG9yX2Rlc3Ryb3lf c3RhdGUoc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKnN0YXRlKTsKIHZvaWQgZHJtX2F0b21p Y19oZWxwZXJfY29ubmVjdG9yX2Rlc3Ryb3lfc3RhdGUoc3RydWN0IGRybV9jb25uZWN0b3IgKmNv bm5lY3RvciwKIAkJCQkJICBzdHJ1Y3QgZHJtX2Nvbm5lY3Rvcl9zdGF0ZSAqc3RhdGUpOwotdm9p ZCBkcm1fYXRvbWljX2hlbHBlcl9sZWdhY3lfZ2FtbWFfc2V0KHN0cnVjdCBkcm1fY3J0YyAqY3J0 YywKLQkJCQkJdTE2ICpyZWQsIHUxNiAqZ3JlZW4sIHUxNiAqYmx1ZSwKLQkJCQkJdWludDMyX3Qg c3RhcnQsIHVpbnQzMl90IHNpemUpOworaW50IGRybV9hdG9taWNfaGVscGVyX2xlZ2FjeV9nYW1t YV9zZXQoc3RydWN0IGRybV9jcnRjICpjcnRjLAorCQkJCSAgICAgICB1MTYgKnJlZCwgdTE2ICpn cmVlbiwgdTE2ICpibHVlLAorCQkJCSAgICAgICB1aW50MzJfdCBzaXplKTsKIAogLyoqCiAgKiBk cm1fYXRvbWljX2NydGNfZm9yX2VhY2hfcGxhbmUgLSBpdGVyYXRlIG92ZXIgcGxhbmVzIGN1cnJl bnRseSBhdHRhY2hlZCB0byBDUlRDCmRpZmYgLS1naXQgYS9pbmNsdWRlL2RybS9kcm1fY3J0Yy5o IGIvaW5jbHVkZS9kcm0vZHJtX2NydGMuaAppbmRleCBkMTU1OWNkMDRlM2QuLjg2MjJiYjJmNGYy NSAxMDA2NDQKLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2NydGMuaAorKysgYi9pbmNsdWRlL2RybS9k cm1fY3J0Yy5oCkBAIC00NzgsOCArNDc4LDggQEAgc3RydWN0IGRybV9jcnRjX2Z1bmNzIHsKIAkg KiBnb2luZyBvbiwgd2hpY2ggc2hvdWxkIGV2ZW50dWFsbHkgYmUgdW5pZmllZCB0byBqdXN0IG9u ZSBzZXQgb2YKIAkgKiBob29rcy4KIAkgKi8KLQl2b2lkICgqZ2FtbWFfc2V0KShzdHJ1Y3QgZHJt X2NydGMgKmNydGMsIHUxNiAqciwgdTE2ICpnLCB1MTYgKmIsCi0JCQkgIHVpbnQzMl90IHN0YXJ0 LCB1aW50MzJfdCBzaXplKTsKKwlpbnQgKCpnYW1tYV9zZXQpKHN0cnVjdCBkcm1fY3J0YyAqY3J0 YywgdTE2ICpyLCB1MTYgKmcsIHUxNiAqYiwKKwkJCSB1aW50MzJfdCBzaXplKTsKIAogCS8qKgog CSAqIEBkZXN0cm95OgotLSAKMi41LjUKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZy ZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2RyaS1kZXZlbAo=