From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville Syrjala Subject: [PATCH 07/13] drm/i915: s/int plane/int color_plane/ Date: Fri, 7 Sep 2018 18:24:07 +0300 Message-ID: <20180907152413.15761-8-ville.syrjala@linux.intel.com> References: <20180907152413.15761-1-ville.syrjala@linux.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 ESMTPS id C64796E981 for ; Fri, 7 Sep 2018 15:24:45 +0000 (UTC) In-Reply-To: <20180907152413.15761-1-ville.syrjala@linux.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 RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KClRv IHJlZHVjZSB0aGUgY29uZnVzaW9uIGJldHdlZW4gYSBkcm0gcGxhbmUgYW5kIHRoZSBwbGFuZXMg b2YKZnJhbWVidWZmZXJzIGxldCdzIGRlc2lnaW5hdGUgdGhlIGxhdHRlciBhcyAiY29sb3IgcGxh bmUiLgoKV2Vhay1SZXZpZXdlZC1ieTogSm9zw6kgUm9iZXJ0byBkZSBTb3V6YSA8am9zZS5zb3V6 YUBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFs YUBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxh eS5jIHwgMTA2ICsrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9kcnYuaCAgICAgfCAgIDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgNTYg aW5zZXJ0aW9ucygrKSwgNTIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlz cGxheS5jCmluZGV4IDEwODY0ODA2ODFlZS4uMTlmYTMxY2ZiMGExIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZGlzcGxheS5jCkBAIC0xOTE2LDEwICsxOTE2LDEwIEBAIHN0YXRpYyB1bnNpZ25l ZCBpbnQgaW50ZWxfdGlsZV9zaXplKGNvbnN0IHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZf cHJpdikKIH0KIAogc3RhdGljIHVuc2lnbmVkIGludAotaW50ZWxfdGlsZV93aWR0aF9ieXRlcyhj b25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwgaW50IHBsYW5lKQoraW50ZWxfdGlsZV93 aWR0aF9ieXRlcyhjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwgaW50IGNvbG9yX3Bs YW5lKQogewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZmIt PmRldik7Ci0JdW5zaWduZWQgaW50IGNwcCA9IGZiLT5mb3JtYXQtPmNwcFtwbGFuZV07CisJdW5z aWduZWQgaW50IGNwcCA9IGZiLT5mb3JtYXQtPmNwcFtjb2xvcl9wbGFuZV07CiAKIAlzd2l0Y2gg KGZiLT5tb2RpZmllcikgewogCWNhc2UgRFJNX0ZPUk1BVF9NT0RfTElORUFSOgpAQCAtMTkzMCw3 ICsxOTMwLDcgQEAgaW50ZWxfdGlsZV93aWR0aF9ieXRlcyhjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1l YnVmZmVyICpmYiwgaW50IHBsYW5lKQogCQllbHNlCiAJCQlyZXR1cm4gNTEyOwogCWNhc2UgSTkx NV9GT1JNQVRfTU9EX1lfVElMRURfQ0NTOgotCQlpZiAocGxhbmUgPT0gMSkKKwkJaWYgKGNvbG9y X3BsYW5lID09IDEpCiAJCQlyZXR1cm4gMTI4OwogCQkvKiBmYWxsIHRocm91Z2ggKi8KIAljYXNl IEk5MTVfRk9STUFUX01PRF9ZX1RJTEVEOgpAQCAtMTkzOSw3ICsxOTM5LDcgQEAgaW50ZWxfdGls ZV93aWR0aF9ieXRlcyhjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwgaW50IHBsYW5l KQogCQllbHNlCiAJCQlyZXR1cm4gNTEyOwogCWNhc2UgSTkxNV9GT1JNQVRfTU9EX1lmX1RJTEVE X0NDUzoKLQkJaWYgKHBsYW5lID09IDEpCisJCWlmIChjb2xvcl9wbGFuZSA9PSAxKQogCQkJcmV0 dXJuIDEyODsKIAkJLyogZmFsbCB0aHJvdWdoICovCiAJY2FzZSBJOTE1X0ZPUk1BVF9NT0RfWWZf VElMRUQ6CkBAIC0xOTY0LDIyICsxOTY0LDIyIEBAIGludGVsX3RpbGVfd2lkdGhfYnl0ZXMoY29u c3Qgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsIGludCBwbGFuZSkKIH0KIAogc3RhdGljIHVu c2lnbmVkIGludAotaW50ZWxfdGlsZV9oZWlnaHQoY29uc3Qgc3RydWN0IGRybV9mcmFtZWJ1ZmZl ciAqZmIsIGludCBwbGFuZSkKK2ludGVsX3RpbGVfaGVpZ2h0KGNvbnN0IHN0cnVjdCBkcm1fZnJh bWVidWZmZXIgKmZiLCBpbnQgY29sb3JfcGxhbmUpCiB7CiAJaWYgKGZiLT5tb2RpZmllciA9PSBE Uk1fRk9STUFUX01PRF9MSU5FQVIpCiAJCXJldHVybiAxOwogCWVsc2UKIAkJcmV0dXJuIGludGVs X3RpbGVfc2l6ZSh0b19pOTE1KGZiLT5kZXYpKSAvCi0JCQlpbnRlbF90aWxlX3dpZHRoX2J5dGVz KGZiLCBwbGFuZSk7CisJCQlpbnRlbF90aWxlX3dpZHRoX2J5dGVzKGZiLCBjb2xvcl9wbGFuZSk7 CiB9CiAKIC8qIFJldHVybiB0aGUgdGlsZSBkaW1lbnNpb25zIGluIHBpeGVsIHVuaXRzICovCi1z dGF0aWMgdm9pZCBpbnRlbF90aWxlX2RpbXMoY29uc3Qgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAq ZmIsIGludCBwbGFuZSwKK3N0YXRpYyB2b2lkIGludGVsX3RpbGVfZGltcyhjb25zdCBzdHJ1Y3Qg ZHJtX2ZyYW1lYnVmZmVyICpmYiwgaW50IGNvbG9yX3BsYW5lLAogCQkJICAgIHVuc2lnbmVkIGlu dCAqdGlsZV93aWR0aCwKIAkJCSAgICB1bnNpZ25lZCBpbnQgKnRpbGVfaGVpZ2h0KQogewotCXVu c2lnbmVkIGludCB0aWxlX3dpZHRoX2J5dGVzID0gaW50ZWxfdGlsZV93aWR0aF9ieXRlcyhmYiwg cGxhbmUpOwotCXVuc2lnbmVkIGludCBjcHAgPSBmYi0+Zm9ybWF0LT5jcHBbcGxhbmVdOworCXVu c2lnbmVkIGludCB0aWxlX3dpZHRoX2J5dGVzID0gaW50ZWxfdGlsZV93aWR0aF9ieXRlcyhmYiwg Y29sb3JfcGxhbmUpOworCXVuc2lnbmVkIGludCBjcHAgPSBmYi0+Zm9ybWF0LT5jcHBbY29sb3Jf cGxhbmVdOwogCiAJKnRpbGVfd2lkdGggPSB0aWxlX3dpZHRoX2J5dGVzIC8gY3BwOwogCSp0aWxl X2hlaWdodCA9IGludGVsX3RpbGVfc2l6ZSh0b19pOTE1KGZiLT5kZXYpKSAvIHRpbGVfd2lkdGhf Ynl0ZXM7CkBAIC0xOTg3LDkgKzE5ODcsOSBAQCBzdGF0aWMgdm9pZCBpbnRlbF90aWxlX2RpbXMo Y29uc3Qgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsIGludCBwbGFuZSwKIAogdW5zaWduZWQg aW50CiBpbnRlbF9mYl9hbGlnbl9oZWlnaHQoY29uc3Qgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAq ZmIsCi0JCSAgICAgIGludCBwbGFuZSwgdW5zaWduZWQgaW50IGhlaWdodCkKKwkJICAgICAgaW50 IGNvbG9yX3BsYW5lLCB1bnNpZ25lZCBpbnQgaGVpZ2h0KQogewotCXVuc2lnbmVkIGludCB0aWxl X2hlaWdodCA9IGludGVsX3RpbGVfaGVpZ2h0KGZiLCBwbGFuZSk7CisJdW5zaWduZWQgaW50IHRp bGVfaGVpZ2h0ID0gaW50ZWxfdGlsZV9oZWlnaHQoZmIsIGNvbG9yX3BsYW5lKTsKIAogCXJldHVy biBBTElHTihoZWlnaHQsIHRpbGVfaGVpZ2h0KTsKIH0KQEAgLTIwNDMsMTIgKzIwNDMsMTIgQEAg c3RhdGljIHVuc2lnbmVkIGludCBpbnRlbF9saW5lYXJfYWxpZ25tZW50KGNvbnN0IHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHIKIH0KIAogc3RhdGljIHVuc2lnbmVkIGludCBpbnRlbF9z dXJmX2FsaWdubWVudChjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwKLQkJCQkJIGlu dCBwbGFuZSkKKwkJCQkJIGludCBjb2xvcl9wbGFuZSkKIHsKIAlzdHJ1Y3QgZHJtX2k5MTVfcHJp dmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGZiLT5kZXYpOwogCiAJLyogQVVYX0RJU1QgbmVlZHMg b25seSA0SyBhbGlnbm1lbnQgKi8KLQlpZiAocGxhbmUgPT0gMSkKKwlpZiAoY29sb3JfcGxhbmUg PT0gMSkKIAkJcmV0dXJuIDQwOTY7CiAKIAlzd2l0Y2ggKGZiLT5tb2RpZmllcikgewpAQCAtMjE3 OCwxMyArMjE3OCwxMyBAQCB2b2lkIGludGVsX3VucGluX2ZiX3ZtYShzdHJ1Y3QgaTkxNV92bWEg KnZtYSwgdW5zaWduZWQgbG9uZyBmbGFncykKIAlpOTE1X3ZtYV9wdXQodm1hKTsKIH0KIAotc3Rh dGljIGludCBpbnRlbF9mYl9waXRjaChjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwg aW50IHBsYW5lLAorc3RhdGljIGludCBpbnRlbF9mYl9waXRjaChjb25zdCBzdHJ1Y3QgZHJtX2Zy YW1lYnVmZmVyICpmYiwgaW50IGNvbG9yX3BsYW5lLAogCQkJICB1bnNpZ25lZCBpbnQgcm90YXRp b24pCiB7CiAJaWYgKGRybV9yb3RhdGlvbl85MF9vcl8yNzAocm90YXRpb24pKQotCQlyZXR1cm4g dG9faW50ZWxfZnJhbWVidWZmZXIoZmIpLT5yb3RhdGVkW3BsYW5lXS5waXRjaDsKKwkJcmV0dXJu IHRvX2ludGVsX2ZyYW1lYnVmZmVyKGZiKS0+cm90YXRlZFtjb2xvcl9wbGFuZV0ucGl0Y2g7CiAJ ZWxzZQotCQlyZXR1cm4gZmItPnBpdGNoZXNbcGxhbmVdOworCQlyZXR1cm4gZmItPnBpdGNoZXNb Y29sb3JfcGxhbmVdOwogfQogCiAvKgpAQCAtMjE5NSwxMSArMjE5NSwxMSBAQCBzdGF0aWMgaW50 IGludGVsX2ZiX3BpdGNoKGNvbnN0IHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiLCBpbnQgcGxh bmUsCiAgKi8KIHUzMiBpbnRlbF9mYl94eV90b19saW5lYXIoaW50IHgsIGludCB5LAogCQkJICBj b25zdCBzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnN0YXRlLAotCQkJICBpbnQgcGxhbmUpCisJ CQkgIGludCBjb2xvcl9wbGFuZSkKIHsKIAljb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpm YiA9IHN0YXRlLT5iYXNlLmZiOwotCXVuc2lnbmVkIGludCBjcHAgPSBmYi0+Zm9ybWF0LT5jcHBb cGxhbmVdOwotCXVuc2lnbmVkIGludCBwaXRjaCA9IHN0YXRlLT5jb2xvcl9wbGFuZVtwbGFuZV0u c3RyaWRlOworCXVuc2lnbmVkIGludCBjcHAgPSBmYi0+Zm9ybWF0LT5jcHBbY29sb3JfcGxhbmVd OworCXVuc2lnbmVkIGludCBwaXRjaCA9IHN0YXRlLT5jb2xvcl9wbGFuZVtjb2xvcl9wbGFuZV0u c3RyaWRlOwogCiAJcmV0dXJuIHkgKiBwaXRjaCArIHggKiBjcHA7CiB9CkBAIC0yMjExLDE4ICsy MjExLDE4IEBAIHUzMiBpbnRlbF9mYl94eV90b19saW5lYXIoaW50IHgsIGludCB5LAogICovCiB2 b2lkIGludGVsX2FkZF9mYl9vZmZzZXRzKGludCAqeCwgaW50ICp5LAogCQkJICBjb25zdCBzdHJ1 Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnN0YXRlLAotCQkJICBpbnQgcGxhbmUpCisJCQkgIGludCBj b2xvcl9wbGFuZSkKIAogewogCWNvbnN0IHN0cnVjdCBpbnRlbF9mcmFtZWJ1ZmZlciAqaW50ZWxf ZmIgPSB0b19pbnRlbF9mcmFtZWJ1ZmZlcihzdGF0ZS0+YmFzZS5mYik7CiAJdW5zaWduZWQgaW50 IHJvdGF0aW9uID0gc3RhdGUtPmJhc2Uucm90YXRpb247CiAKIAlpZiAoZHJtX3JvdGF0aW9uXzkw X29yXzI3MChyb3RhdGlvbikpIHsKLQkJKnggKz0gaW50ZWxfZmItPnJvdGF0ZWRbcGxhbmVdLng7 Ci0JCSp5ICs9IGludGVsX2ZiLT5yb3RhdGVkW3BsYW5lXS55OworCQkqeCArPSBpbnRlbF9mYi0+ cm90YXRlZFtjb2xvcl9wbGFuZV0ueDsKKwkJKnkgKz0gaW50ZWxfZmItPnJvdGF0ZWRbY29sb3Jf cGxhbmVdLnk7CiAJfSBlbHNlIHsKLQkJKnggKz0gaW50ZWxfZmItPm5vcm1hbFtwbGFuZV0ueDsK LQkJKnkgKz0gaW50ZWxfZmItPm5vcm1hbFtwbGFuZV0ueTsKKwkJKnggKz0gaW50ZWxfZmItPm5v cm1hbFtjb2xvcl9wbGFuZV0ueDsKKwkJKnkgKz0gaW50ZWxfZmItPm5vcm1hbFtjb2xvcl9wbGFu ZV0ueTsKIAl9CiB9CiAKQEAgLTIyNTQsMTMgKzIyNTQsMTQgQEAgc3RhdGljIHUzMiBpbnRlbF9h ZGp1c3RfdGlsZV9vZmZzZXQoaW50ICp4LCBpbnQgKnksCiB9CiAKIHN0YXRpYyB1MzIgaW50ZWxf YWRqdXN0X2FsaWduZWRfb2Zmc2V0KGludCAqeCwgaW50ICp5LAotCQkJCSAgICAgICBjb25zdCBz dHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwgaW50IHBsYW5lLAorCQkJCSAgICAgICBjb25zdCBz dHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwKKwkJCQkgICAgICAgaW50IGNvbG9yX3BsYW5lLAog CQkJCSAgICAgICB1bnNpZ25lZCBpbnQgcm90YXRpb24sCiAJCQkJICAgICAgIHVuc2lnbmVkIGlu dCBwaXRjaCwKIAkJCQkgICAgICAgdTMyIG9sZF9vZmZzZXQsIHUzMiBuZXdfb2Zmc2V0KQogewog CXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IHRvX2k5MTUoZmItPmRldik7Ci0J dW5zaWduZWQgaW50IGNwcCA9IGZiLT5mb3JtYXQtPmNwcFtwbGFuZV07CisJdW5zaWduZWQgaW50 IGNwcCA9IGZiLT5mb3JtYXQtPmNwcFtjb2xvcl9wbGFuZV07CiAKIAlXQVJOX09OKG5ld19vZmZz ZXQgPiBvbGRfb2Zmc2V0KTsKIApAQCAtMjI2OSw3ICsyMjcwLDcgQEAgc3RhdGljIHUzMiBpbnRl bF9hZGp1c3RfYWxpZ25lZF9vZmZzZXQoaW50ICp4LCBpbnQgKnksCiAJCXVuc2lnbmVkIGludCBw aXRjaF90aWxlczsKIAogCQl0aWxlX3NpemUgPSBpbnRlbF90aWxlX3NpemUoZGV2X3ByaXYpOwot CQlpbnRlbF90aWxlX2RpbXMoZmIsIHBsYW5lLCAmdGlsZV93aWR0aCwgJnRpbGVfaGVpZ2h0KTsK KwkJaW50ZWxfdGlsZV9kaW1zKGZiLCBjb2xvcl9wbGFuZSwgJnRpbGVfd2lkdGgsICZ0aWxlX2hl aWdodCk7CiAKIAkJaWYgKGRybV9yb3RhdGlvbl85MF9vcl8yNzAocm90YXRpb24pKSB7CiAJCQlw aXRjaF90aWxlcyA9IHBpdGNoIC8gdGlsZV9oZWlnaHQ7CkBAIC0yMjk3LDEyICsyMjk4LDEyIEBA IHN0YXRpYyB1MzIgaW50ZWxfYWRqdXN0X2FsaWduZWRfb2Zmc2V0KGludCAqeCwgaW50ICp5LAog ICovCiBzdGF0aWMgdTMyIGludGVsX3BsYW5lX2FkanVzdF9hbGlnbmVkX29mZnNldChpbnQgKngs IGludCAqeSwKIAkJCQkJICAgICBjb25zdCBzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnN0YXRl LAotCQkJCQkgICAgIGludCBwbGFuZSwKKwkJCQkJICAgICBpbnQgY29sb3JfcGxhbmUsCiAJCQkJ CSAgICAgdTMyIG9sZF9vZmZzZXQsIHUzMiBuZXdfb2Zmc2V0KQogewotCXJldHVybiBpbnRlbF9h ZGp1c3RfYWxpZ25lZF9vZmZzZXQoeCwgeSwgc3RhdGUtPmJhc2UuZmIsIHBsYW5lLAorCXJldHVy biBpbnRlbF9hZGp1c3RfYWxpZ25lZF9vZmZzZXQoeCwgeSwgc3RhdGUtPmJhc2UuZmIsIGNvbG9y X3BsYW5lLAogCQkJCQkgICBzdGF0ZS0+YmFzZS5yb3RhdGlvbiwKLQkJCQkJICAgc3RhdGUtPmNv bG9yX3BsYW5lW3BsYW5lXS5zdHJpZGUsCisJCQkJCSAgIHN0YXRlLT5jb2xvcl9wbGFuZVtjb2xv cl9wbGFuZV0uc3RyaWRlLAogCQkJCQkgICBvbGRfb2Zmc2V0LCBuZXdfb2Zmc2V0KTsKIH0KIApA QCAtMjMyMiwxMyArMjMyMywxNCBAQCBzdGF0aWMgdTMyIGludGVsX3BsYW5lX2FkanVzdF9hbGln bmVkX29mZnNldChpbnQgKngsIGludCAqeSwKICAqLwogc3RhdGljIHUzMiBpbnRlbF9jb21wdXRl X2FsaWduZWRfb2Zmc2V0KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJCQkJ aW50ICp4LCBpbnQgKnksCi0JCQkJCWNvbnN0IHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiLCBp bnQgcGxhbmUsCisJCQkJCWNvbnN0IHN0cnVjdCBkcm1fZnJhbWVidWZmZXIgKmZiLAorCQkJCQlp bnQgY29sb3JfcGxhbmUsCiAJCQkJCXVuc2lnbmVkIGludCBwaXRjaCwKIAkJCQkJdW5zaWduZWQg aW50IHJvdGF0aW9uLAogCQkJCQl1MzIgYWxpZ25tZW50KQogewogCXVpbnQ2NF90IGZiX21vZGlm aWVyID0gZmItPm1vZGlmaWVyOwotCXVuc2lnbmVkIGludCBjcHAgPSBmYi0+Zm9ybWF0LT5jcHBb cGxhbmVdOworCXVuc2lnbmVkIGludCBjcHAgPSBmYi0+Zm9ybWF0LT5jcHBbY29sb3JfcGxhbmVd OwogCXUzMiBvZmZzZXQsIG9mZnNldF9hbGlnbmVkOwogCiAJaWYgKGFsaWdubWVudCkKQEAgLTIz MzksNyArMjM0MSw3IEBAIHN0YXRpYyB1MzIgaW50ZWxfY29tcHV0ZV9hbGlnbmVkX29mZnNldChz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCXVuc2lnbmVkIGludCB0aWxlX3Jv d3MsIHRpbGVzLCBwaXRjaF90aWxlczsKIAogCQl0aWxlX3NpemUgPSBpbnRlbF90aWxlX3NpemUo ZGV2X3ByaXYpOwotCQlpbnRlbF90aWxlX2RpbXMoZmIsIHBsYW5lLCAmdGlsZV93aWR0aCwgJnRp bGVfaGVpZ2h0KTsKKwkJaW50ZWxfdGlsZV9kaW1zKGZiLCBjb2xvcl9wbGFuZSwgJnRpbGVfd2lk dGgsICZ0aWxlX2hlaWdodCk7CiAKIAkJaWYgKGRybV9yb3RhdGlvbl85MF9vcl8yNzAocm90YXRp b24pKSB7CiAJCQlwaXRjaF90aWxlcyA9IHBpdGNoIC8gdGlsZV9oZWlnaHQ7CkBAIC0yMzczLDQx ICsyMzc1LDQyIEBAIHN0YXRpYyB1MzIgaW50ZWxfY29tcHV0ZV9hbGlnbmVkX29mZnNldChzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAKIHN0YXRpYyB1MzIgaW50ZWxfcGxhbmVf Y29tcHV0ZV9hbGlnbmVkX29mZnNldChpbnQgKngsIGludCAqeSwKIAkJCQkJICAgICAgY29uc3Qg c3RydWN0IGludGVsX3BsYW5lX3N0YXRlICpzdGF0ZSwKLQkJCQkJICAgICAgaW50IHBsYW5lKQor CQkJCQkgICAgICBpbnQgY29sb3JfcGxhbmUpCiB7CiAJc3RydWN0IGludGVsX3BsYW5lICppbnRl bF9wbGFuZSA9IHRvX2ludGVsX3BsYW5lKHN0YXRlLT5iYXNlLnBsYW5lKTsKIAlzdHJ1Y3QgZHJt X2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGludGVsX3BsYW5lLT5iYXNlLmRldik7 CiAJY29uc3Qgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIgPSBzdGF0ZS0+YmFzZS5mYjsKIAl1 bnNpZ25lZCBpbnQgcm90YXRpb24gPSBzdGF0ZS0+YmFzZS5yb3RhdGlvbjsKLQlpbnQgcGl0Y2gg PSBzdGF0ZS0+Y29sb3JfcGxhbmVbcGxhbmVdLnN0cmlkZTsKKwlpbnQgcGl0Y2ggPSBzdGF0ZS0+ Y29sb3JfcGxhbmVbY29sb3JfcGxhbmVdLnN0cmlkZTsKIAl1MzIgYWxpZ25tZW50OwogCiAJaWYg KGludGVsX3BsYW5lLT5pZCA9PSBQTEFORV9DVVJTT1IpCiAJCWFsaWdubWVudCA9IGludGVsX2N1 cnNvcl9hbGlnbm1lbnQoZGV2X3ByaXYpOwogCWVsc2UKLQkJYWxpZ25tZW50ID0gaW50ZWxfc3Vy Zl9hbGlnbm1lbnQoZmIsIHBsYW5lKTsKKwkJYWxpZ25tZW50ID0gaW50ZWxfc3VyZl9hbGlnbm1l bnQoZmIsIGNvbG9yX3BsYW5lKTsKIAotCXJldHVybiBpbnRlbF9jb21wdXRlX2FsaWduZWRfb2Zm c2V0KGRldl9wcml2LCB4LCB5LCBmYiwgcGxhbmUsCisJcmV0dXJuIGludGVsX2NvbXB1dGVfYWxp Z25lZF9vZmZzZXQoZGV2X3ByaXYsIHgsIHksIGZiLCBjb2xvcl9wbGFuZSwKIAkJCQkJICAgIHBp dGNoLCByb3RhdGlvbiwgYWxpZ25tZW50KTsKIH0KIAogLyogQ29udmVydCB0aGUgZmItPm9mZnNl dFtdIGludG8geC95IG9mZnNldHMgKi8KIHN0YXRpYyBpbnQgaW50ZWxfZmJfb2Zmc2V0X3RvX3h5 KGludCAqeCwgaW50ICp5LAotCQkJCSBjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwg aW50IHBsYW5lKQorCQkJCSBjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwKKwkJCQkg aW50IGNvbG9yX3BsYW5lKQogewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9 IHRvX2k5MTUoZmItPmRldik7CiAKIAlpZiAoZmItPm1vZGlmaWVyICE9IERSTV9GT1JNQVRfTU9E X0xJTkVBUiAmJgotCSAgICBmYi0+b2Zmc2V0c1twbGFuZV0gJSBpbnRlbF90aWxlX3NpemUoZGV2 X3ByaXYpKQorCSAgICBmYi0+b2Zmc2V0c1tjb2xvcl9wbGFuZV0gJSBpbnRlbF90aWxlX3NpemUo ZGV2X3ByaXYpKQogCQlyZXR1cm4gLUVJTlZBTDsKIAogCSp4ID0gMDsKIAkqeSA9IDA7CiAKIAlp bnRlbF9hZGp1c3RfYWxpZ25lZF9vZmZzZXQoeCwgeSwKLQkJCQkgICAgZmIsIHBsYW5lLCBEUk1f TU9ERV9ST1RBVEVfMCwKLQkJCQkgICAgZmItPnBpdGNoZXNbMF0sCi0JCQkJICAgIGZiLT5vZmZz ZXRzW3BsYW5lXSwgMCk7CisJCQkJICAgIGZiLCBjb2xvcl9wbGFuZSwgRFJNX01PREVfUk9UQVRF XzAsCisJCQkJICAgIGZiLT5waXRjaGVzW2NvbG9yX3BsYW5lXSwKKwkJCQkgICAgZmItPm9mZnNl dHNbY29sb3JfcGxhbmVdLCAwKTsKIAogCXJldHVybiAwOwogfQpAQCAtMjkwNCwxMCArMjkwNywx MSBAQCBpbnRlbF9maW5kX2luaXRpYWxfcGxhbmVfb2JqKHN0cnVjdCBpbnRlbF9jcnRjICppbnRl bF9jcnRjLAogCQkgICZvYmotPmZyb250YnVmZmVyX2JpdHMpOwogfQogCi1zdGF0aWMgaW50IHNr bF9tYXhfcGxhbmVfd2lkdGgoY29uc3Qgc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsIGludCBw bGFuZSwKK3N0YXRpYyBpbnQgc2tsX21heF9wbGFuZV93aWR0aChjb25zdCBzdHJ1Y3QgZHJtX2Zy YW1lYnVmZmVyICpmYiwKKwkJCSAgICAgICBpbnQgY29sb3JfcGxhbmUsCiAJCQkgICAgICAgdW5z aWduZWQgaW50IHJvdGF0aW9uKQogewotCWludCBjcHAgPSBmYi0+Zm9ybWF0LT5jcHBbcGxhbmVd OworCWludCBjcHAgPSBmYi0+Zm9ybWF0LT5jcHBbY29sb3JfcGxhbmVdOwogCiAJc3dpdGNoIChm Yi0+bW9kaWZpZXIpIHsKIAljYXNlIERSTV9GT1JNQVRfTU9EX0xJTkVBUjoKQEAgLTM0NjcsMTIg KzM0NzEsMTIgQEAgc3RhdGljIGJvb2wgaTl4eF9wbGFuZV9nZXRfaHdfc3RhdGUoc3RydWN0IGlu dGVsX3BsYW5lICpwbGFuZSwKIH0KIAogc3RhdGljIHUzMgotaW50ZWxfZmJfc3RyaWRlX2FsaWdu bWVudChjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwgaW50IHBsYW5lKQoraW50ZWxf ZmJfc3RyaWRlX2FsaWdubWVudChjb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwgaW50 IGNvbG9yX3BsYW5lKQogewogCWlmIChmYi0+bW9kaWZpZXIgPT0gRFJNX0ZPUk1BVF9NT0RfTElO RUFSKQogCQlyZXR1cm4gNjQ7CiAJZWxzZQotCQlyZXR1cm4gaW50ZWxfdGlsZV93aWR0aF9ieXRl cyhmYiwgcGxhbmUpOworCQlyZXR1cm4gaW50ZWxfdGlsZV93aWR0aF9ieXRlcyhmYiwgY29sb3Jf cGxhbmUpOwogfQogCiBzdGF0aWMgdm9pZCBza2xfZGV0YWNoX3NjYWxlcihzdHJ1Y3QgaW50ZWxf Y3J0YyAqaW50ZWxfY3J0YywgaW50IGlkKQpAQCAtMzUwMywxMyArMzUwNywxMyBAQCBzdGF0aWMg dm9pZCBza2xfZGV0YWNoX3NjYWxlcnMoc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMpCiB9 CiAKIHUzMiBza2xfcGxhbmVfc3RyaWRlKGNvbnN0IHN0cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAq cGxhbmVfc3RhdGUsCi0JCSAgICAgaW50IHBsYW5lKQorCQkgICAgIGludCBjb2xvcl9wbGFuZSkK IHsKIAljb25zdCBzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiA9IHBsYW5lX3N0YXRlLT5iYXNl LmZiOwogCXVuc2lnbmVkIGludCByb3RhdGlvbiA9IHBsYW5lX3N0YXRlLT5iYXNlLnJvdGF0aW9u OwotCXUzMiBzdHJpZGUgPSBwbGFuZV9zdGF0ZS0+Y29sb3JfcGxhbmVbcGxhbmVdLnN0cmlkZTsK Kwl1MzIgc3RyaWRlID0gcGxhbmVfc3RhdGUtPmNvbG9yX3BsYW5lW2NvbG9yX3BsYW5lXS5zdHJp ZGU7CiAKLQlpZiAocGxhbmUgPj0gZmItPmZvcm1hdC0+bnVtX3BsYW5lcykKKwlpZiAoY29sb3Jf cGxhbmUgPj0gZmItPmZvcm1hdC0+bnVtX3BsYW5lcykKIAkJcmV0dXJuIDA7CiAKIAkvKgpAQCAt MzUxNyw5ICszNTIxLDkgQEAgdTMyIHNrbF9wbGFuZV9zdHJpZGUoY29uc3Qgc3RydWN0IGludGVs X3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZSwKIAkgKiBsaW5lYXIgYnVmZmVycyBvciBpbiBudW1i ZXIgb2YgdGlsZXMgZm9yIHRpbGVkIGJ1ZmZlcnMuCiAJICovCiAJaWYgKGRybV9yb3RhdGlvbl85 MF9vcl8yNzAocm90YXRpb24pKQotCQlzdHJpZGUgLz0gaW50ZWxfdGlsZV9oZWlnaHQoZmIsIHBs YW5lKTsKKwkJc3RyaWRlIC89IGludGVsX3RpbGVfaGVpZ2h0KGZiLCBjb2xvcl9wbGFuZSk7CiAJ ZWxzZQotCQlzdHJpZGUgLz0gaW50ZWxfZmJfc3RyaWRlX2FsaWdubWVudChmYiwgcGxhbmUpOwor CQlzdHJpZGUgLz0gaW50ZWxfZmJfc3RyaWRlX2FsaWdubWVudChmYiwgY29sb3JfcGxhbmUpOwog CiAJcmV0dXJuIHN0cmlkZTsKIH0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rydi5oIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmgKaW5kZXggMmRiYzBl NWVmM2QzLi5lZTA1ZDY5ZTI2NWIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX2Rydi5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rydi5oCkBAIC0xNDQ4 LDcgKzE0NDgsNyBAQCB2b2lkIGljbF91bm1hcF9wbGxzX3RvX3BvcnRzKHN0cnVjdCBkcm1fY3J0 YyAqY3J0YywKIAkJCSAgICAgc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKm9sZF9zdGF0ZSk7CiAK IHVuc2lnbmVkIGludCBpbnRlbF9mYl9hbGlnbl9oZWlnaHQoY29uc3Qgc3RydWN0IGRybV9mcmFt ZWJ1ZmZlciAqZmIsCi0JCQkJICAgaW50IHBsYW5lLCB1bnNpZ25lZCBpbnQgaGVpZ2h0KTsKKwkJ CQkgICBpbnQgY29sb3JfcGxhbmUsIHVuc2lnbmVkIGludCBoZWlnaHQpOwogCiAvKiBpbnRlbF9h dWRpby5jICovCiB2b2lkIGludGVsX2luaXRfYXVkaW9faG9va3Moc3RydWN0IGRybV9pOTE1X3By aXZhdGUgKmRldl9wcml2KTsKLS0gCjIuMTYuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlz dHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4v bGlzdGluZm8vaW50ZWwtZ2Z4Cg==