From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4320FC47095 for ; Wed, 9 Jun 2021 08:56:49 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 09D5B610A1 for ; Wed, 9 Jun 2021 08:56:49 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 09D5B610A1 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id A947C6E4AA; Wed, 9 Jun 2021 08:56:48 +0000 (UTC) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by gabe.freedesktop.org (Postfix) with ESMTPS id E0EAC6E4AA for ; Wed, 9 Jun 2021 08:56:46 +0000 (UTC) IronPort-SDR: AC5Rk8uKDjfDnF63vWDaiwRDr5j6pb5rGcIjwDeNBlBMcvCwEKku03X21Uo7RcNPmAz6Hmvzby rHOvtWwaoG3A== X-IronPort-AV: E=McAfee;i="6200,9189,10009"; a="185407140" X-IronPort-AV: E=Sophos;i="5.83,260,1616482800"; d="scan'208";a="185407140" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Jun 2021 01:56:46 -0700 IronPort-SDR: S4wit9/tD7sS5/M+QqLJ5Fo7gX0zYFGJlWQMzRNGnlmCYlUlwEXxeBRqqG5MygaKeKsUGcLuiB Qu0kaRCxqjzg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,260,1616482800"; d="scan'208";a="440777733" Received: from stinkbox.fi.intel.com (HELO stinkbox) ([10.237.72.171]) by orsmga007.jf.intel.com with SMTP; 09 Jun 2021 01:56:44 -0700 Received: by stinkbox (sSMTP sendmail emulation); Wed, 09 Jun 2021 11:56:44 +0300 From: Ville Syrjala To: intel-gfx@lists.freedesktop.org Date: Wed, 9 Jun 2021 11:56:30 +0300 Message-Id: <20210609085632.22026-5-ville.syrjala@linux.intel.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210609085632.22026-1-ville.syrjala@linux.intel.com> References: <20210609085632.22026-1-ville.syrjala@linux.intel.com> MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH 4/6] drm/i915: Clean up pre-skl wm calling convention X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" RnJvbTogVmlsbGUgU3lyasOkbMOkIDx2aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbT4KCkp1 c3QgcGFzcyB0aGUgZnVsbCBhdG9taWMgc3RhdGUrY3J0YyB0byB0aGUgcHJlLXNrbCB3YXRlcm1h cmsKZnVuY3Rpb25zLCBhbmQgY2xlYW4gdXAgdGhlIHR5cGVzL3ZhcmlhYmxlIG5hbWVzIGFyb3Vu ZCB0aGUgYXJlYS4KCk5vdGUgdGhhdCBoYXZpbmcgYm90aCAuY29tcHV0ZV9waXBlX3dtKCkgYW5k IC5jb21wdXRlX2ludGVybWVkaWF0ZV93bSgpCmlzIGVudGlyZWx5IHJlZHVuZGFudCBub3cuIFdl IGNvdWxkIHVuaWZ5IHRoZW0gdG8gYSBzaW5nbGUgdmZ1bmMuCkJ1dCBsZXQncyBkbyB0aGlzIG9u ZSBzdGVwIGF0IGEgdGltZS4KClNpZ25lZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUu c3lyamFsYUBsaW51eC5pbnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZGlzcGxh eS9pbnRlbF9kaXNwbGF5LmMgfCAgNSArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYu aCAgICAgICAgICAgICAgfCAgNiArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfcG0uYyAg ICAgICAgICAgICAgfCA5NyArKysrKysrKysrLS0tLS0tLS0tLQogMyBmaWxlcyBjaGFuZ2VkLCA1 OCBpbnNlcnRpb25zKCspLCA1MCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2Rpc3BsYXkvaW50ZWxfZGlzcGxheS5jCmluZGV4IDE2MTU1MDE2ODVjOS4uNjIyMjEyNDNmY2E5 IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXku YworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9kaXNwbGF5L2ludGVsX2Rpc3BsYXkuYwpAQCAt NzI4OCwxMiArNzI4OCwxMyBAQCBzdGF0aWMgaW50IGludGVsX2NydGNfYXRvbWljX2NoZWNrKHN0 cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRlLAogCX0KIAogCWlmIChkZXZfcHJpdi0+ZGlz cGxheS5jb21wdXRlX3BpcGVfd20pIHsKLQkJcmV0ID0gZGV2X3ByaXYtPmRpc3BsYXkuY29tcHV0 ZV9waXBlX3dtKGNydGNfc3RhdGUpOworCQlyZXQgPSBkZXZfcHJpdi0+ZGlzcGxheS5jb21wdXRl X3BpcGVfd20oc3RhdGUsIGNydGMpOwogCQlpZiAocmV0KSB7CiAJCQlkcm1fZGJnX2ttcygmZGV2 X3ByaXYtPmRybSwKIAkJCQkgICAgIlRhcmdldCBwaXBlIHdhdGVybWFya3MgYXJlIGludmFsaWRc biIpOwogCQkJcmV0dXJuIHJldDsKIAkJfQorCiAJfQogCiAJaWYgKGRldl9wcml2LT5kaXNwbGF5 LmNvbXB1dGVfaW50ZXJtZWRpYXRlX3dtKSB7CkBAIC03MzA2LDcgKzczMDcsNyBAQCBzdGF0aWMg aW50IGludGVsX2NydGNfYXRvbWljX2NoZWNrKHN0cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0 YXRlLAogCQkgKiBvbGQgc3RhdGUgYW5kIHRoZSBuZXcgc3RhdGUuICBXZSBjYW4gcHJvZ3JhbSB0 aGVzZQogCQkgKiBpbW1lZGlhdGVseS4KIAkJICovCi0JCXJldCA9IGRldl9wcml2LT5kaXNwbGF5 LmNvbXB1dGVfaW50ZXJtZWRpYXRlX3dtKGNydGNfc3RhdGUpOworCQlyZXQgPSBkZXZfcHJpdi0+ ZGlzcGxheS5jb21wdXRlX2ludGVybWVkaWF0ZV93bShzdGF0ZSwgY3J0Yyk7CiAJCWlmIChyZXQp IHsKIAkJCWRybV9kYmdfa21zKCZkZXZfcHJpdi0+ZHJtLAogCQkJCSAgICAiTm8gdmFsaWQgaW50 ZXJtZWRpYXRlIHBpcGUgd2F0ZXJtYXJrcyBhcmUgcG9zc2libGVcbiIpOwpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZHJ2LmgKaW5kZXggMzhmZjJmYjg5NzQ0Li5lOWNmMGVhYWQ3ZjggMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aTkxNV9kcnYuaApAQCAtMjcwLDggKzI3MCwxMCBAQCBzdHJ1Y3QgZHJtX2k5MTVfZGlzcGxheV9m dW5jcyB7CiAJaW50ICgqYndfY2FsY19taW5fY2RjbGspKHN0cnVjdCBpbnRlbF9hdG9taWNfc3Rh dGUgKnN0YXRlKTsKIAlpbnQgKCpnZXRfZmlmb19zaXplKShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0 ZSAqZGV2X3ByaXYsCiAJCQkgICAgIGVudW0gaTl4eF9wbGFuZV9pZCBpOXh4X3BsYW5lKTsKLQlp bnQgKCpjb21wdXRlX3BpcGVfd20pKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjcnRjX3N0YXRl KTsKLQlpbnQgKCpjb21wdXRlX2ludGVybWVkaWF0ZV93bSkoc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKmNydGNfc3RhdGUpOworCWludCAoKmNvbXB1dGVfcGlwZV93bSkoc3RydWN0IGludGVsX2F0 b21pY19zdGF0ZSAqc3RhdGUsCisJCQkgICAgICAgc3RydWN0IGludGVsX2NydGMgKmNydGMpOwor CWludCAoKmNvbXB1dGVfaW50ZXJtZWRpYXRlX3dtKShzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRl ICpzdGF0ZSwKKwkJCQkgICAgICAgc3RydWN0IGludGVsX2NydGMgKmNydGMpOwogCXZvaWQgKCpp bml0aWFsX3dhdGVybWFya3MpKHN0cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRlLAogCQkJ CSAgIHN0cnVjdCBpbnRlbF9jcnRjICpjcnRjKTsKIAl2b2lkICgqYXRvbWljX3VwZGF0ZV93YXRl cm1hcmtzKShzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRlICpzdGF0ZSwKZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9wbS5jCmluZGV4IDdjZTk1MzdmYTJjNy4uZGQ2ODJjNjRkYWYwIDEwMDY0NAotLS0gYS9kcml2 ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2lu dGVsX3BtLmMKQEAgLTEzNzAsMTEgKzEzNzAsMTEgQEAgc3RhdGljIGJvb2wgZzR4X2NvbXB1dGVf ZmJjX2VuKGNvbnN0IHN0cnVjdCBnNHhfd21fc3RhdGUgKndtX3N0YXRlLAogCXJldHVybiB0cnVl OwogfQogCi1zdGF0aWMgaW50IGc0eF9jb21wdXRlX3BpcGVfd20oc3RydWN0IGludGVsX2NydGNf c3RhdGUgKmNydGNfc3RhdGUpCitzdGF0aWMgaW50IGc0eF9jb21wdXRlX3BpcGVfd20oc3RydWN0 IGludGVsX2F0b21pY19zdGF0ZSAqc3RhdGUsCisJCQkgICAgICAgc3RydWN0IGludGVsX2NydGMg KmNydGMpCiB7Ci0Jc3RydWN0IGludGVsX2NydGMgKmNydGMgPSB0b19pbnRlbF9jcnRjKGNydGNf c3RhdGUtPnVhcGkuY3J0Yyk7Ci0Jc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqc3RhdGUgPQot CQl0b19pbnRlbF9hdG9taWNfc3RhdGUoY3J0Y19zdGF0ZS0+dWFwaS5zdGF0ZSk7CisJc3RydWN0 IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUgPQorCQlpbnRlbF9hdG9taWNfZ2V0X25ld19j cnRjX3N0YXRlKHN0YXRlLCBjcnRjKTsKIAlzdHJ1Y3QgZzR4X3dtX3N0YXRlICp3bV9zdGF0ZSA9 ICZjcnRjX3N0YXRlLT53bS5nNHgub3B0aW1hbDsKIAlpbnQgbnVtX2FjdGl2ZV9wbGFuZXMgPSBo d2VpZ2h0OChjcnRjX3N0YXRlLT5hY3RpdmVfcGxhbmVzICYKIAkJCQkJIH5CSVQoUExBTkVfQ1VS U09SKSk7CkBAIC0xNDUxLDIwICsxNDUxLDIxIEBAIHN0YXRpYyBpbnQgZzR4X2NvbXB1dGVfcGlw ZV93bShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKIAlyZXR1cm4gMDsKIH0K IAotc3RhdGljIGludCBnNHhfY29tcHV0ZV9pbnRlcm1lZGlhdGVfd20oc3RydWN0IGludGVsX2Ny dGNfc3RhdGUgKm5ld19jcnRjX3N0YXRlKQorc3RhdGljIGludCBnNHhfY29tcHV0ZV9pbnRlcm1l ZGlhdGVfd20oc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqc3RhdGUsCisJCQkJICAgICAgIHN0 cnVjdCBpbnRlbF9jcnRjICpjcnRjKQogewotCXN0cnVjdCBpbnRlbF9jcnRjICpjcnRjID0gdG9f aW50ZWxfY3J0YyhuZXdfY3J0Y19zdGF0ZS0+dWFwaS5jcnRjKTsKIAlzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNydGMtPmJhc2UuZGV2KTsKKwlzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqbmV3X2NydGNfc3RhdGUgPQorCQlpbnRlbF9hdG9taWNfZ2V0X25ld19j cnRjX3N0YXRlKHN0YXRlLCBjcnRjKTsKKwljb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq b2xkX2NydGNfc3RhdGUgPQorCQlpbnRlbF9hdG9taWNfZ2V0X29sZF9jcnRjX3N0YXRlKHN0YXRl LCBjcnRjKTsKIAlzdHJ1Y3QgZzR4X3dtX3N0YXRlICppbnRlcm1lZGlhdGUgPSAmbmV3X2NydGNf c3RhdGUtPndtLmc0eC5pbnRlcm1lZGlhdGU7CiAJY29uc3Qgc3RydWN0IGc0eF93bV9zdGF0ZSAq b3B0aW1hbCA9ICZuZXdfY3J0Y19zdGF0ZS0+d20uZzR4Lm9wdGltYWw7Ci0Jc3RydWN0IGludGVs X2F0b21pY19zdGF0ZSAqaW50ZWxfc3RhdGUgPQotCQl0b19pbnRlbF9hdG9taWNfc3RhdGUobmV3 X2NydGNfc3RhdGUtPnVhcGkuc3RhdGUpOwotCWNvbnN0IHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRl ICpvbGRfY3J0Y19zdGF0ZSA9Ci0JCWludGVsX2F0b21pY19nZXRfb2xkX2NydGNfc3RhdGUoaW50 ZWxfc3RhdGUsIGNydGMpOwogCWNvbnN0IHN0cnVjdCBnNHhfd21fc3RhdGUgKmFjdGl2ZSA9ICZv bGRfY3J0Y19zdGF0ZS0+d20uZzR4Lm9wdGltYWw7CiAJZW51bSBwbGFuZV9pZCBwbGFuZV9pZDsK IAotCWlmICghbmV3X2NydGNfc3RhdGUtPmh3LmFjdGl2ZSB8fCBkcm1fYXRvbWljX2NydGNfbmVl ZHNfbW9kZXNldCgmbmV3X2NydGNfc3RhdGUtPnVhcGkpKSB7CisJaWYgKCFuZXdfY3J0Y19zdGF0 ZS0+aHcuYWN0aXZlIHx8CisJICAgIGRybV9hdG9taWNfY3J0Y19uZWVkc19tb2Rlc2V0KCZuZXdf Y3J0Y19zdGF0ZS0+dWFwaSkpIHsKIAkJKmludGVybWVkaWF0ZSA9ICpvcHRpbWFsOwogCiAJCWlu dGVybWVkaWF0ZS0+Y3hzciA9IGZhbHNlOwpAQCAtMTg5MCwxMiArMTg5MSwxMiBAQCBzdGF0aWMg Ym9vbCB2bHZfcmF3X2NydGNfd21faXNfdmFsaWQoY29uc3Qgc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKmNydGNfc3RhdGUsCiAJCXZsdl9yYXdfcGxhbmVfd21faXNfdmFsaWQoY3J0Y19zdGF0ZSwg UExBTkVfQ1VSU09SLCBsZXZlbCk7CiB9CiAKLXN0YXRpYyBpbnQgdmx2X2NvbXB1dGVfcGlwZV93 bShzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSkKK3N0YXRpYyBpbnQgdmx2X2Nv bXB1dGVfcGlwZV93bShzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRlICpzdGF0ZSwKKwkJCSAgICAg ICBzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YykKIHsKLQlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YyA9 IHRvX2ludGVsX2NydGMoY3J0Y19zdGF0ZS0+dWFwaS5jcnRjKTsKIAlzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNydGMtPmJhc2UuZGV2KTsKLQlzdHJ1Y3QgaW50 ZWxfYXRvbWljX3N0YXRlICpzdGF0ZSA9Ci0JCXRvX2ludGVsX2F0b21pY19zdGF0ZShjcnRjX3N0 YXRlLT51YXBpLnN0YXRlKTsKKwlzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSA9 CisJCWludGVsX2F0b21pY19nZXRfbmV3X2NydGNfc3RhdGUoc3RhdGUsIGNydGMpOwogCXN0cnVj dCB2bHZfd21fc3RhdGUgKndtX3N0YXRlID0gJmNydGNfc3RhdGUtPndtLnZsdi5vcHRpbWFsOwog CWNvbnN0IHN0cnVjdCB2bHZfZmlmb19zdGF0ZSAqZmlmb19zdGF0ZSA9CiAJCSZjcnRjX3N0YXRl LT53bS52bHYuZmlmb19zdGF0ZTsKQEAgLTIwOTUsMTkgKzIwOTYsMjAgQEAgc3RhdGljIHZvaWQg dmx2X2F0b21pY191cGRhdGVfZmlmbyhzdHJ1Y3QgaW50ZWxfYXRvbWljX3N0YXRlICpzdGF0ZSwK IAogI3VuZGVmIFZMVl9GSUZPCiAKLXN0YXRpYyBpbnQgdmx2X2NvbXB1dGVfaW50ZXJtZWRpYXRl X3dtKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpuZXdfY3J0Y19zdGF0ZSkKK3N0YXRpYyBpbnQg dmx2X2NvbXB1dGVfaW50ZXJtZWRpYXRlX3dtKHN0cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0 YXRlLAorCQkJCSAgICAgICBzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YykKIHsKLQlzdHJ1Y3QgaW50 ZWxfY3J0YyAqY3J0YyA9IHRvX2ludGVsX2NydGMobmV3X2NydGNfc3RhdGUtPnVhcGkuY3J0Yyk7 CisJc3RydWN0IGludGVsX2NydGNfc3RhdGUgKm5ld19jcnRjX3N0YXRlID0KKwkJaW50ZWxfYXRv bWljX2dldF9uZXdfY3J0Y19zdGF0ZShzdGF0ZSwgY3J0Yyk7CisJY29uc3Qgc3RydWN0IGludGVs X2NydGNfc3RhdGUgKm9sZF9jcnRjX3N0YXRlID0KKwkJaW50ZWxfYXRvbWljX2dldF9vbGRfY3J0 Y19zdGF0ZShzdGF0ZSwgY3J0Yyk7CiAJc3RydWN0IHZsdl93bV9zdGF0ZSAqaW50ZXJtZWRpYXRl ID0gJm5ld19jcnRjX3N0YXRlLT53bS52bHYuaW50ZXJtZWRpYXRlOwogCWNvbnN0IHN0cnVjdCB2 bHZfd21fc3RhdGUgKm9wdGltYWwgPSAmbmV3X2NydGNfc3RhdGUtPndtLnZsdi5vcHRpbWFsOwot CXN0cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKmludGVsX3N0YXRlID0KLQkJdG9faW50ZWxfYXRv bWljX3N0YXRlKG5ld19jcnRjX3N0YXRlLT51YXBpLnN0YXRlKTsKLQljb25zdCBzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqb2xkX2NydGNfc3RhdGUgPQotCQlpbnRlbF9hdG9taWNfZ2V0X29sZF9j cnRjX3N0YXRlKGludGVsX3N0YXRlLCBjcnRjKTsKIAljb25zdCBzdHJ1Y3Qgdmx2X3dtX3N0YXRl ICphY3RpdmUgPSAmb2xkX2NydGNfc3RhdGUtPndtLnZsdi5vcHRpbWFsOwogCWludCBsZXZlbDsK IAotCWlmICghbmV3X2NydGNfc3RhdGUtPmh3LmFjdGl2ZSB8fCBkcm1fYXRvbWljX2NydGNfbmVl ZHNfbW9kZXNldCgmbmV3X2NydGNfc3RhdGUtPnVhcGkpKSB7CisJaWYgKCFuZXdfY3J0Y19zdGF0 ZS0+aHcuYWN0aXZlIHx8CisJICAgIGRybV9hdG9taWNfY3J0Y19uZWVkc19tb2Rlc2V0KCZuZXdf Y3J0Y19zdGF0ZS0+dWFwaSkpIHsKIAkJKmludGVybWVkaWF0ZSA9ICpvcHRpbWFsOwogCiAJCWlu dGVybWVkaWF0ZS0+Y3hzciA9IGZhbHNlOwpAQCAtMzE0NCwxMCArMzE0NiwxMiBAQCBzdGF0aWMg Ym9vbCBpbGtfdmFsaWRhdGVfcGlwZV93bShjb25zdCBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYsCiB9CiAKIC8qIENvbXB1dGUgbmV3IHdhdGVybWFya3MgZm9yIHRoZSBwaXBlICov Ci1zdGF0aWMgaW50IGlsa19jb21wdXRlX3BpcGVfd20oc3RydWN0IGludGVsX2NydGNfc3RhdGUg KmNydGNfc3RhdGUpCitzdGF0aWMgaW50IGlsa19jb21wdXRlX3BpcGVfd20oc3RydWN0IGludGVs X2F0b21pY19zdGF0ZSAqc3RhdGUsCisJCQkgICAgICAgc3RydWN0IGludGVsX2NydGMgKmNydGMp CiB7Ci0Jc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShjcnRjX3N0 YXRlLT51YXBpLmNydGMtPmRldik7Ci0Jc3RydWN0IGludGVsX2NydGMgKmNydGMgPSB0b19pbnRl bF9jcnRjKGNydGNfc3RhdGUtPnVhcGkuY3J0Yyk7CisJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUg KmRldl9wcml2ID0gdG9faTkxNShzdGF0ZS0+YmFzZS5kZXYpOworCXN0cnVjdCBpbnRlbF9jcnRj X3N0YXRlICpjcnRjX3N0YXRlID0KKwkJaW50ZWxfYXRvbWljX2dldF9uZXdfY3J0Y19zdGF0ZShz dGF0ZSwgY3J0Yyk7CiAJc3RydWN0IGludGVsX3BpcGVfd20gKnBpcGVfd207CiAJc3RydWN0IGlu dGVsX3BsYW5lICpwbGFuZTsKIAljb25zdCBzdHJ1Y3QgaW50ZWxfcGxhbmVfc3RhdGUgKnBsYW5l X3N0YXRlOwpAQCAtMzIyMCwxNiArMzIyNCwxNiBAQCBzdGF0aWMgaW50IGlsa19jb21wdXRlX3Bp cGVfd20oc3RydWN0IGludGVsX2NydGNfc3RhdGUgKmNydGNfc3RhdGUpCiAgKiBzdGF0ZSBhbmQg dGhlIG5ldyBzdGF0ZS4gIFRoZXNlIGNhbiBiZSBwcm9ncmFtbWVkIHRvIHRoZSBoYXJkd2FyZQog ICogaW1tZWRpYXRlbHkuCiAgKi8KLXN0YXRpYyBpbnQgaWxrX2NvbXB1dGVfaW50ZXJtZWRpYXRl X3dtKHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpuZXdzdGF0ZSkKK3N0YXRpYyBpbnQgaWxrX2Nv bXB1dGVfaW50ZXJtZWRpYXRlX3dtKHN0cnVjdCBpbnRlbF9hdG9taWNfc3RhdGUgKnN0YXRlLAor CQkJCSAgICAgICBzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YykKIHsKLQlzdHJ1Y3QgaW50ZWxfY3J0 YyAqaW50ZWxfY3J0YyA9IHRvX2ludGVsX2NydGMobmV3c3RhdGUtPnVhcGkuY3J0Yyk7Ci0Jc3Ry dWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gdG9faTkxNShpbnRlbF9jcnRjLT5iYXNl LmRldik7Ci0Jc3RydWN0IGludGVsX3BpcGVfd20gKmEgPSAmbmV3c3RhdGUtPndtLmlsay5pbnRl cm1lZGlhdGU7Ci0Jc3RydWN0IGludGVsX2F0b21pY19zdGF0ZSAqaW50ZWxfc3RhdGUgPQotCQl0 b19pbnRlbF9hdG9taWNfc3RhdGUobmV3c3RhdGUtPnVhcGkuc3RhdGUpOwotCWNvbnN0IHN0cnVj dCBpbnRlbF9jcnRjX3N0YXRlICpvbGRzdGF0ZSA9Ci0JCWludGVsX2F0b21pY19nZXRfb2xkX2Ny dGNfc3RhdGUoaW50ZWxfc3RhdGUsIGludGVsX2NydGMpOwotCWNvbnN0IHN0cnVjdCBpbnRlbF9w aXBlX3dtICpiID0gJm9sZHN0YXRlLT53bS5pbGsub3B0aW1hbDsKKwlzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19pOTE1KGNydGMtPmJhc2UuZGV2KTsKKwlzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqbmV3X2NydGNfc3RhdGUgPQorCQlpbnRlbF9hdG9taWNfZ2V0X25ld19j cnRjX3N0YXRlKHN0YXRlLCBjcnRjKTsKKwljb25zdCBzdHJ1Y3QgaW50ZWxfY3J0Y19zdGF0ZSAq b2xkX2NydGNfc3RhdGUgPQorCQlpbnRlbF9hdG9taWNfZ2V0X29sZF9jcnRjX3N0YXRlKHN0YXRl LCBjcnRjKTsKKwlzdHJ1Y3QgaW50ZWxfcGlwZV93bSAqYSA9ICZuZXdfY3J0Y19zdGF0ZS0+d20u aWxrLmludGVybWVkaWF0ZTsKKwljb25zdCBzdHJ1Y3QgaW50ZWxfcGlwZV93bSAqYiA9ICZvbGRf Y3J0Y19zdGF0ZS0+d20uaWxrLm9wdGltYWw7CiAJaW50IGxldmVsLCBtYXhfbGV2ZWwgPSBpbGtf d21fbWF4X2xldmVsKGRldl9wcml2KTsKIAogCS8qCkBAIC0zMjM3LDkgKzMyNDEsMTAgQEAgc3Rh dGljIGludCBpbGtfY29tcHV0ZV9pbnRlcm1lZGlhdGVfd20oc3RydWN0IGludGVsX2NydGNfc3Rh dGUgKm5ld3N0YXRlKQogCSAqIGN1cnJlbnRseSBhY3RpdmUgd2F0ZXJtYXJrcyB0byBnZXQgdmFs dWVzIHRoYXQgYXJlIHNhZmUgYm90aCBiZWZvcmUKIAkgKiBhbmQgYWZ0ZXIgdGhlIHZibGFuay4K IAkgKi8KLQkqYSA9IG5ld3N0YXRlLT53bS5pbGsub3B0aW1hbDsKLQlpZiAoIW5ld3N0YXRlLT5o dy5hY3RpdmUgfHwgZHJtX2F0b21pY19jcnRjX25lZWRzX21vZGVzZXQoJm5ld3N0YXRlLT51YXBp KSB8fAotCSAgICBpbnRlbF9zdGF0ZS0+c2tpcF9pbnRlcm1lZGlhdGVfd20pCisJKmEgPSBuZXdf Y3J0Y19zdGF0ZS0+d20uaWxrLm9wdGltYWw7CisJaWYgKCFuZXdfY3J0Y19zdGF0ZS0+aHcuYWN0 aXZlIHx8CisJICAgIGRybV9hdG9taWNfY3J0Y19uZWVkc19tb2Rlc2V0KCZuZXdfY3J0Y19zdGF0 ZS0+dWFwaSkgfHwKKwkgICAgc3RhdGUtPnNraXBfaW50ZXJtZWRpYXRlX3dtKQogCQlyZXR1cm4g MDsKIAogCWEtPnBpcGVfZW5hYmxlZCB8PSBiLT5waXBlX2VuYWJsZWQ7CkBAIC0zMjcwLDggKzMy NzUsOCBAQCBzdGF0aWMgaW50IGlsa19jb21wdXRlX2ludGVybWVkaWF0ZV93bShzdHJ1Y3QgaW50 ZWxfY3J0Y19zdGF0ZSAqbmV3c3RhdGUpCiAJICogSWYgb3VyIGludGVybWVkaWF0ZSBXTSBhcmUg aWRlbnRpY2FsIHRvIHRoZSBmaW5hbCBXTSwgdGhlbiB3ZSBjYW4KIAkgKiBvbWl0IHRoZSBwb3N0 LXZibGFuayBwcm9ncmFtbWluZzsgb25seSB1cGRhdGUgaWYgaXQncyBkaWZmZXJlbnQuCiAJICov Ci0JaWYgKG1lbWNtcChhLCAmbmV3c3RhdGUtPndtLmlsay5vcHRpbWFsLCBzaXplb2YoKmEpKSAh PSAwKQotCQluZXdzdGF0ZS0+d20ubmVlZF9wb3N0dmJsX3VwZGF0ZSA9IHRydWU7CisJaWYgKG1l bWNtcChhLCAmbmV3X2NydGNfc3RhdGUtPndtLmlsay5vcHRpbWFsLCBzaXplb2YoKmEpKSAhPSAw KQorCQluZXdfY3J0Y19zdGF0ZS0+d20ubmVlZF9wb3N0dmJsX3VwZGF0ZSA9IHRydWU7CiAKIAly ZXR1cm4gMDsKIH0KQEAgLTMyODMsMTIgKzMyODgsMTIgQEAgc3RhdGljIHZvaWQgaWxrX21lcmdl X3dtX2xldmVsKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJCSAgICAgICBp bnQgbGV2ZWwsCiAJCQkgICAgICAgc3RydWN0IGludGVsX3dtX2xldmVsICpyZXRfd20pCiB7Ci0J Y29uc3Qgc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGM7CisJY29uc3Qgc3RydWN0IGludGVs X2NydGMgKmNydGM7CiAKIAlyZXRfd20tPmVuYWJsZSA9IHRydWU7CiAKLQlmb3JfZWFjaF9pbnRl bF9jcnRjKCZkZXZfcHJpdi0+ZHJtLCBpbnRlbF9jcnRjKSB7Ci0JCWNvbnN0IHN0cnVjdCBpbnRl bF9waXBlX3dtICphY3RpdmUgPSAmaW50ZWxfY3J0Yy0+d20uYWN0aXZlLmlsazsKKwlmb3JfZWFj aF9pbnRlbF9jcnRjKCZkZXZfcHJpdi0+ZHJtLCBjcnRjKSB7CisJCWNvbnN0IHN0cnVjdCBpbnRl bF9waXBlX3dtICphY3RpdmUgPSAmY3J0Yy0+d20uYWN0aXZlLmlsazsKIAkJY29uc3Qgc3RydWN0 IGludGVsX3dtX2xldmVsICp3bSA9ICZhY3RpdmUtPndtW2xldmVsXTsKIAogCQlpZiAoIWFjdGl2 ZS0+cGlwZV9lbmFibGVkKQpAQCAtMzM4OCw3ICszMzkzLDcgQEAgc3RhdGljIHZvaWQgaWxrX2Nv bXB1dGVfd21fcmVzdWx0cyhzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCiAJCQkJ ICAgZW51bSBpbnRlbF9kZGJfcGFydGl0aW9uaW5nIHBhcnRpdGlvbmluZywKIAkJCQkgICBzdHJ1 Y3QgaWxrX3dtX3ZhbHVlcyAqcmVzdWx0cykKIHsKLQlzdHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxf Y3J0YzsKKwlzdHJ1Y3QgaW50ZWxfY3J0YyAqY3J0YzsKIAlpbnQgbGV2ZWwsIHdtX2xwOwogCiAJ cmVzdWx0cy0+ZW5hYmxlX2ZiY193bSA9IG1lcmdlZC0+ZmJjX3dtX2VuYWJsZWQ7CkBAIC0zNDMz LDkgKzM0MzgsOSBAQCBzdGF0aWMgdm9pZCBpbGtfY29tcHV0ZV93bV9yZXN1bHRzKHN0cnVjdCBk cm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAl9CiAKIAkvKiBMUDAgcmVnaXN0ZXIgdmFsdWVz ICovCi0JZm9yX2VhY2hfaW50ZWxfY3J0YygmZGV2X3ByaXYtPmRybSwgaW50ZWxfY3J0Yykgewot CQllbnVtIHBpcGUgcGlwZSA9IGludGVsX2NydGMtPnBpcGU7Ci0JCWNvbnN0IHN0cnVjdCBpbnRl bF9waXBlX3dtICpwaXBlX3dtID0gJmludGVsX2NydGMtPndtLmFjdGl2ZS5pbGs7CisJZm9yX2Vh Y2hfaW50ZWxfY3J0YygmZGV2X3ByaXYtPmRybSwgY3J0YykgeworCQllbnVtIHBpcGUgcGlwZSA9 IGNydGMtPnBpcGU7CisJCWNvbnN0IHN0cnVjdCBpbnRlbF9waXBlX3dtICpwaXBlX3dtID0gJmNy dGMtPndtLmFjdGl2ZS5pbGs7CiAJCWNvbnN0IHN0cnVjdCBpbnRlbF93bV9sZXZlbCAqciA9ICZw aXBlX3dtLT53bVswXTsKIAogCQlpZiAoZHJtX1dBUk5fT04oJmRldl9wcml2LT5kcm0sICFyLT5l bmFibGUpKQotLSAKMi4zMS4xCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9p bnRlbC1nZngK