From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joonas Lahtinen Subject: [PATCH 1/2] Revert "drm/i915/perf: add a parameter to control the size of OA buffer" Date: Fri, 16 Nov 2018 15:55:09 +0200 Message-ID: <20181116135510.13807-1-joonas.lahtinen@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id D19AF6E704 for ; Fri, 16 Nov 2018 13:55:16 +0000 (UTC) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Intel graphics driver community testing & development Cc: Matthew Auld List-Id: intel-gfx@lists.freedesktop.org VXNlcnNwYWNlIHBvcnRpb24gaXMgc3RpbGwgbWlzc2luZy4KClRoaXMgcmV2ZXJ0cyBjb21taXQg Y2Q5NTZiZmNkMGY1OGQyMDQ4NWFjMGE3ODU0MTVmN2Q5MzI3YTk1Zi4KCkNjOiBMaW9uZWwgTGFu ZHdlcmxpbiA8bGlvbmVsLmcubGFuZHdlcmxpbkBpbnRlbC5jb20+CkNjOiBNYXR0aGV3IEF1bGQg PG1hdHRoZXcuYXVsZEBpbnRlbC5jb20+ClNpZ25lZC1vZmYtYnk6IEpvb25hcyBMYWh0aW5lbiA8 am9vbmFzLmxhaHRpbmVuQGxpbnV4LmludGVsLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2Rydi5oICB8ICAxIC0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcGVyZi5jIHwg OTkgKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfcmVnLmggIHwgIDIgLQogaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oICAgICAgfCAg NyAtLS0KIDQgZmlsZXMgY2hhbmdlZCwgMzMgaW5zZXJ0aW9ucygrKSwgNzYgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaCBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKaW5kZXggZDY5YjcxZDM2OGQzLi4wMTdmODUxYTU4NmEg MTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZHJ2LmgKKysrIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9kcnYuaApAQCAtMjAwNCw3ICsyMDA0LDYgQEAgc3RydWN0IGRy bV9pOTE1X3ByaXZhdGUgewogCQkJCXUzMiBsYXN0X2N0eF9pZDsKIAkJCQlpbnQgZm9ybWF0Owog CQkJCWludCBmb3JtYXRfc2l6ZTsKLQkJCQlpbnQgc2l6ZV9leHBvbmVudDsKIAogCQkJCS8qKgog CQkJCSAqIExvY2tzIHJlYWRzIGFuZCB3cml0ZXMgdG8gYWxsIGhlYWQvdGFpbCBzdGF0ZQpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wZXJmLmMgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X3BlcmYuYwppbmRleCAyYzJiNjNiZTdhNmMuLmM3NjI0MThkM2IwMSAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9wZXJmLmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9wZXJmLmMKQEAgLTIxMiw3ICsyMTIsMTMgQEAKICNpbmNsdWRlICJp OTE1X29hX2ljbC5oIgogI2luY2x1ZGUgImludGVsX2xyY19yZWcuaCIKIAotI2RlZmluZSBPQV9U QUtFTih0YWlsLCBoZWFkKQkoKCh0YWlsKSAtIChoZWFkKSkgJiAoZGV2X3ByaXYtPnBlcmYub2Eu b2FfYnVmZmVyLnZtYS0+c2l6ZSAtIDEpKQorLyogSFcgcmVxdWlyZXMgdGhpcyB0byBiZSBhIHBv d2VyIG9mIHR3bywgYmV0d2VlbiAxMjhrIGFuZCAxNk0sIHRob3VnaCBkcml2ZXIKKyAqIGlzIGN1 cnJlbnRseSBnZW5lcmFsbHkgZGVzaWduZWQgYXNzdW1pbmcgdGhlIGxhcmdlc3QgMTZNIHNpemUg aXMgdXNlZCBzdWNoCisgKiB0aGF0IHRoZSBvdmVyZmxvdyBjYXNlcyBhcmUgdW5saWtlbHkgaW4g bm9ybWFsIG9wZXJhdGlvbi4KKyAqLworI2RlZmluZSBPQV9CVUZGRVJfU0laRQkJU1pfMTZNCisK KyNkZWZpbmUgT0FfVEFLRU4odGFpbCwgaGVhZCkJKCh0YWlsIC0gaGVhZCkgJiAoT0FfQlVGRkVS X1NJWkUgLSAxKSkKIAogLyoqCiAgKiBET0M6IE9BIFRhaWwgUG9pbnRlciBSYWNlCkBAIC0zNTYs NyArMzYyLDYgQEAgc3RydWN0IHBlcmZfb3Blbl9wcm9wZXJ0aWVzIHsKIAlpbnQgb2FfZm9ybWF0 OwogCWJvb2wgb2FfcGVyaW9kaWM7CiAJaW50IG9hX3BlcmlvZF9leHBvbmVudDsKLQl1MzIgb2Ff YnVmZmVyX3NpemVfZXhwb25lbnQ7CiB9OwogCiBzdGF0aWMgdm9pZCBmcmVlX29hX2NvbmZpZyhz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsCkBAIC01MTksNyArNTI0LDcgQEAgc3Rh dGljIGJvb2wgb2FfYnVmZmVyX2NoZWNrX3VubG9ja2VkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdikKIAkJICogY291bGQgcHV0IHRoZSB0YWlsIG91dCBvZiBib3VuZHMuLi4KIAkJ ICovCiAJCWlmIChod190YWlsID49IGd0dF9vZmZzZXQgJiYKLQkJICAgIGh3X3RhaWwgPCAoZ3R0 X29mZnNldCArIGRldl9wcml2LT5wZXJmLm9hLm9hX2J1ZmZlci52bWEtPnNpemUpKSB7CisJCSAg ICBod190YWlsIDwgKGd0dF9vZmZzZXQgKyBPQV9CVUZGRVJfU0laRSkpIHsKIAkJCWRldl9wcml2 LT5wZXJmLm9hLm9hX2J1ZmZlci50YWlsc1shYWdlZF9pZHhdLm9mZnNldCA9CiAJCQkJYWdpbmdf dGFpbCA9IGh3X3RhaWw7CiAJCQlkZXZfcHJpdi0+cGVyZi5vYS5vYV9idWZmZXIuYWdpbmdfdGlt ZXN0YW1wID0gbm93OwpAQCAtNjQ4LDcgKzY1Myw3IEBAIHN0YXRpYyBpbnQgZ2VuOF9hcHBlbmRf b2FfcmVwb3J0cyhzdHJ1Y3QgaTkxNV9wZXJmX3N0cmVhbSAqc3RyZWFtLAogCWludCByZXBvcnRf c2l6ZSA9IGRldl9wcml2LT5wZXJmLm9hLm9hX2J1ZmZlci5mb3JtYXRfc2l6ZTsKIAl1OCAqb2Ff YnVmX2Jhc2UgPSBkZXZfcHJpdi0+cGVyZi5vYS5vYV9idWZmZXIudmFkZHI7CiAJdTMyIGd0dF9v ZmZzZXQgPSBpOTE1X2dndHRfb2Zmc2V0KGRldl9wcml2LT5wZXJmLm9hLm9hX2J1ZmZlci52bWEp OwotCXUzMiBtYXNrID0gKGRldl9wcml2LT5wZXJmLm9hLm9hX2J1ZmZlci52bWEtPnNpemUgLSAx KTsKKwl1MzIgbWFzayA9IChPQV9CVUZGRVJfU0laRSAtIDEpOwogCXNpemVfdCBzdGFydF9vZmZz ZXQgPSAqb2Zmc2V0OwogCXVuc2lnbmVkIGxvbmcgZmxhZ3M7CiAJdW5zaWduZWQgaW50IGFnZWRf dGFpbF9pZHg7CkBAIC02ODgsOCArNjkzLDggQEAgc3RhdGljIGludCBnZW44X2FwcGVuZF9vYV9y ZXBvcnRzKHN0cnVjdCBpOTE1X3BlcmZfc3RyZWFtICpzdHJlYW0sCiAJICogb25seSBiZSBpbmNy ZW1lbnRlZCBieSBtdWx0aXBsZXMgb2YgdGhlIHJlcG9ydCBzaXplIChub3RhYmx5IGFsc28KIAkg KiBhbGwgYSBwb3dlciBvZiB0d28pLgogCSAqLwotCWlmIChXQVJOX09OQ0UoaGVhZCA+IGRldl9w cml2LT5wZXJmLm9hLm9hX2J1ZmZlci52bWEtPnNpemUgfHwgaGVhZCAlIHJlcG9ydF9zaXplIHx8 Ci0JCSAgICAgIHRhaWwgPiBkZXZfcHJpdi0+cGVyZi5vYS5vYV9idWZmZXIudm1hLT5zaXplIHx8 IHRhaWwgJSByZXBvcnRfc2l6ZSwKKwlpZiAoV0FSTl9PTkNFKGhlYWQgPiBPQV9CVUZGRVJfU0la RSB8fCBoZWFkICUgcmVwb3J0X3NpemUgfHwKKwkJICAgICAgdGFpbCA+IE9BX0JVRkZFUl9TSVpF IHx8IHRhaWwgJSByZXBvcnRfc2l6ZSwKIAkJICAgICAgIkluY29uc2lzdGVudCBPQSBidWZmZXIg cG9pbnRlcnM6IGhlYWQgPSAldSwgdGFpbCA9ICV1XG4iLAogCQkgICAgICBoZWFkLCB0YWlsKSkK IAkJcmV0dXJuIC1FSU87CkBAIC03MTIsNyArNzE3LDcgQEAgc3RhdGljIGludCBnZW44X2FwcGVu ZF9vYV9yZXBvcnRzKHN0cnVjdCBpOTE1X3BlcmZfc3RyZWFtICpzdHJlYW0sCiAJCSAqIGhlcmUg d291bGQgaW1wbHkgYSBkcml2ZXIgYnVnIHRoYXQgd291bGQgcmVzdWx0CiAJCSAqIGluIGFuIG92 ZXJydW4uCiAJCSAqLwotCQlpZiAoV0FSTl9PTigoZGV2X3ByaXYtPnBlcmYub2Eub2FfYnVmZmVy LnZtYS0+c2l6ZSAtIGhlYWQpIDwgcmVwb3J0X3NpemUpKSB7CisJCWlmIChXQVJOX09OKChPQV9C VUZGRVJfU0laRSAtIGhlYWQpIDwgcmVwb3J0X3NpemUpKSB7CiAJCQlEUk1fRVJST1IoIlNwdXJp b3VzIE9BIGhlYWQgcHRyOiBub24taW50ZWdyYWwgcmVwb3J0IG9mZnNldFxuIik7CiAJCQlicmVh azsKIAkJfQpAQCAtODcxLDYgKzg3NiwxMSBAQCBzdGF0aWMgaW50IGdlbjhfb2FfcmVhZChzdHJ1 Y3QgaTkxNV9wZXJmX3N0cmVhbSAqc3RyZWFtLAogCSAqIGF1dG9tYXRpY2FsbHkgdHJpZ2dlcmVk IHJlcG9ydHMgaW4gdGhpcyBjb25kaXRpb24gYW5kIHNvIHdlCiAJICogaGF2ZSB0byBhc3N1bWUg dGhhdCBvbGQgcmVwb3J0cyBhcmUgbm93IGJlaW5nIHRyYW1wbGVkCiAJICogb3Zlci4KKwkgKgor CSAqIENvbnNpZGVyaW5nIGhvdyB3ZSBkb24ndCBjdXJyZW50bHkgZ2l2ZSB1c2Vyc3BhY2UgY29u dHJvbAorCSAqIG92ZXIgdGhlIE9BIGJ1ZmZlciBzaXplIGFuZCBhbHdheXMgY29uZmlndXJlIGEg bGFyZ2UgMTZNQgorCSAqIGJ1ZmZlciwgdGhlbiBhIGJ1ZmZlciBvdmVyZmxvdyBkb2VzIGFueXdh eSBsaWtlbHkgaW5kaWNhdGUKKwkgKiB0aGF0IHNvbWV0aGluZyBoYXMgZ29uZSBxdWl0ZSBiYWRs eSB3cm9uZy4KIAkgKi8KIAlpZiAob2FzdGF0dXMgJiBHRU44X09BU1RBVFVTX09BQlVGRkVSX09W RVJGTE9XKSB7CiAJCXJldCA9IGFwcGVuZF9vYV9zdGF0dXMoc3RyZWFtLCBidWYsIGNvdW50LCBv ZmZzZXQsCkBAIC05MzIsNyArOTQyLDcgQEAgc3RhdGljIGludCBnZW43X2FwcGVuZF9vYV9yZXBv cnRzKHN0cnVjdCBpOTE1X3BlcmZfc3RyZWFtICpzdHJlYW0sCiAJaW50IHJlcG9ydF9zaXplID0g ZGV2X3ByaXYtPnBlcmYub2Eub2FfYnVmZmVyLmZvcm1hdF9zaXplOwogCXU4ICpvYV9idWZfYmFz ZSA9IGRldl9wcml2LT5wZXJmLm9hLm9hX2J1ZmZlci52YWRkcjsKIAl1MzIgZ3R0X29mZnNldCA9 IGk5MTVfZ2d0dF9vZmZzZXQoZGV2X3ByaXYtPnBlcmYub2Eub2FfYnVmZmVyLnZtYSk7Ci0JdTMy IG1hc2sgPSAoZGV2X3ByaXYtPnBlcmYub2Eub2FfYnVmZmVyLnZtYS0+c2l6ZSAtIDEpOworCXUz MiBtYXNrID0gKE9BX0JVRkZFUl9TSVpFIC0gMSk7CiAJc2l6ZV90IHN0YXJ0X29mZnNldCA9ICpv ZmZzZXQ7CiAJdW5zaWduZWQgbG9uZyBmbGFnczsKIAl1bnNpZ25lZCBpbnQgYWdlZF90YWlsX2lk eDsKQEAgLTk2OSw4ICs5NzksOCBAQCBzdGF0aWMgaW50IGdlbjdfYXBwZW5kX29hX3JlcG9ydHMo c3RydWN0IGk5MTVfcGVyZl9zdHJlYW0gKnN0cmVhbSwKIAkgKiBvbmx5IGJlIGluY3JlbWVudGVk IGJ5IG11bHRpcGxlcyBvZiB0aGUgcmVwb3J0IHNpemUgKG5vdGFibHkgYWxzbwogCSAqIGFsbCBh IHBvd2VyIG9mIHR3bykuCiAJICovCi0JaWYgKFdBUk5fT05DRShoZWFkID4gZGV2X3ByaXYtPnBl cmYub2Eub2FfYnVmZmVyLnZtYS0+c2l6ZSB8fCBoZWFkICUgcmVwb3J0X3NpemUgfHwKLQkJICAg ICAgdGFpbCA+IGRldl9wcml2LT5wZXJmLm9hLm9hX2J1ZmZlci52bWEtPnNpemUgfHwgdGFpbCAl IHJlcG9ydF9zaXplLAorCWlmIChXQVJOX09OQ0UoaGVhZCA+IE9BX0JVRkZFUl9TSVpFIHx8IGhl YWQgJSByZXBvcnRfc2l6ZSB8fAorCQkgICAgICB0YWlsID4gT0FfQlVGRkVSX1NJWkUgfHwgdGFp bCAlIHJlcG9ydF9zaXplLAogCQkgICAgICAiSW5jb25zaXN0ZW50IE9BIGJ1ZmZlciBwb2ludGVy czogaGVhZCA9ICV1LCB0YWlsID0gJXVcbiIsCiAJCSAgICAgIGhlYWQsIHRhaWwpKQogCQlyZXR1 cm4gLUVJTzsKQEAgLTk5MCw3ICsxMDAwLDcgQEAgc3RhdGljIGludCBnZW43X2FwcGVuZF9vYV9y ZXBvcnRzKHN0cnVjdCBpOTE1X3BlcmZfc3RyZWFtICpzdHJlYW0sCiAJCSAqIGhlcmUgd291bGQg aW1wbHkgYSBkcml2ZXIgYnVnIHRoYXQgd291bGQgcmVzdWx0CiAJCSAqIGluIGFuIG92ZXJydW4u CiAJCSAqLwotCQlpZiAoV0FSTl9PTigoZGV2X3ByaXYtPnBlcmYub2Eub2FfYnVmZmVyLnZtYS0+ c2l6ZSAtIGhlYWQpIDwgcmVwb3J0X3NpemUpKSB7CisJCWlmIChXQVJOX09OKChPQV9CVUZGRVJf U0laRSAtIGhlYWQpIDwgcmVwb3J0X3NpemUpKSB7CiAJCQlEUk1fRVJST1IoIlNwdXJpb3VzIE9B IGhlYWQgcHRyOiBub24taW50ZWdyYWwgcmVwb3J0IG9mZnNldFxuIik7CiAJCQlicmVhazsKIAkJ fQpAQCAtMTM4NSw5ICsxMzk1LDcgQEAgc3RhdGljIHZvaWQgZ2VuN19pbml0X29hX2J1ZmZlcihz dHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYpCiAKIAlJOTE1X1dSSVRFKEdFTjdfT0FC VUZGRVIsIGd0dF9vZmZzZXQpOwogCi0JSTkxNV9XUklURShHRU43X09BU1RBVFVTMSwgZ3R0X29m ZnNldCB8Ci0JCSAgICgoZGV2X3ByaXYtPnBlcmYub2Eub2FfYnVmZmVyLnNpemVfZXhwb25lbnQg LSAxNykgPDwKLQkJICAgIEdFTjdfT0FTVEFUVVMxX0JVRkZFUl9TSVpFX1NISUZUKSk7IC8qIHRh aWwgKi8KKwlJOTE1X1dSSVRFKEdFTjdfT0FTVEFUVVMxLCBndHRfb2Zmc2V0IHwgT0FCVUZGRVJf U0laRV8xNk0pOyAvKiB0YWlsICovCiAKIAkvKiBNYXJrIHRoYXQgd2UgbmVlZCB1cGRhdGVkIHRh aWwgcG9pbnRlcnMgdG8gcmVhZCBmcm9tLi4uICovCiAJZGV2X3ByaXYtPnBlcmYub2Eub2FfYnVm ZmVyLnRhaWxzWzBdLm9mZnNldCA9IElOVkFMSURfVEFJTF9QVFI7CkBAIC0xNDEyLDggKzE0MjAs NyBAQCBzdGF0aWMgdm9pZCBnZW43X2luaXRfb2FfYnVmZmVyKHN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdikKIAkgKiB0aGUgYXNzdW1wdGlvbiB0aGF0IG5ldyByZXBvcnRzIGFyZSBi ZWluZyB3cml0dGVuIHRvIHplcm9lZAogCSAqIG1lbW9yeS4uLgogCSAqLwotCW1lbXNldChkZXZf cHJpdi0+cGVyZi5vYS5vYV9idWZmZXIudmFkZHIsIDAsCi0JICAgICAgIGRldl9wcml2LT5wZXJm Lm9hLm9hX2J1ZmZlci52bWEtPnNpemUpOworCW1lbXNldChkZXZfcHJpdi0+cGVyZi5vYS5vYV9i dWZmZXIudmFkZHIsIDAsIE9BX0JVRkZFUl9TSVpFKTsKIAogCS8qIE1heWJlIG1ha2UgLT5wb2xs aW4gcGVyLXN0cmVhbSBzdGF0ZSBpZiB3ZSBzdXBwb3J0IG11bHRpcGxlCiAJICogY29uY3VycmVu dCBzdHJlYW1zIGluIHRoZSBmdXR1cmUuCkBAIC0xNDQzLDkgKzE0NTAsNyBAQCBzdGF0aWMgdm9p ZCBnZW44X2luaXRfb2FfYnVmZmVyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdikK IAkgKiAgYml0LiIKIAkgKi8KIAlJOTE1X1dSSVRFKEdFTjhfT0FCVUZGRVIsIGd0dF9vZmZzZXQg fAotCQkgICAoKGRldl9wcml2LT5wZXJmLm9hLm9hX2J1ZmZlci5zaXplX2V4cG9uZW50IC0gMTcp IDw8Ci0JCSAgICBHRU44X09BQlVGRkVSX0JVRkZFUl9TSVpFX1NISUZUKSB8Ci0JCSAgIEdFTjhf T0FCVUZGRVJfTUVNX1NFTEVDVF9HR1RUKTsKKwkJICAgT0FCVUZGRVJfU0laRV8xNk0gfCBHRU44 X09BQlVGRkVSX01FTV9TRUxFQ1RfR0dUVCk7CiAJSTkxNV9XUklURShHRU44X09BVEFJTFBUUiwg Z3R0X29mZnNldCAmIEdFTjhfT0FUQUlMUFRSX01BU0spOwogCiAJLyogTWFyayB0aGF0IHdlIG5l ZWQgdXBkYXRlZCB0YWlsIHBvaW50ZXJzIHRvIHJlYWQgZnJvbS4uLiAqLwpAQCAtMTQ3Myw4ICsx NDc4LDcgQEAgc3RhdGljIHZvaWQgZ2VuOF9pbml0X29hX2J1ZmZlcihzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYpCiAJICogdGhlIGFzc3VtcHRpb24gdGhhdCBuZXcgcmVwb3J0cyBh cmUgYmVpbmcgd3JpdHRlbiB0byB6ZXJvZWQKIAkgKiBtZW1vcnkuLi4KIAkgKi8KLQltZW1zZXQo ZGV2X3ByaXYtPnBlcmYub2Eub2FfYnVmZmVyLnZhZGRyLCAwLAotCSAgICAgICBkZXZfcHJpdi0+ cGVyZi5vYS5vYV9idWZmZXIudm1hLT5zaXplKTsKKwltZW1zZXQoZGV2X3ByaXYtPnBlcmYub2Eu b2FfYnVmZmVyLnZhZGRyLCAwLCBPQV9CVUZGRVJfU0laRSk7CiAKIAkvKgogCSAqIE1heWJlIG1h a2UgLT5wb2xsaW4gcGVyLXN0cmVhbSBzdGF0ZSBpZiB3ZSBzdXBwb3J0IG11bHRpcGxlCkBAIC0x NDgzLDI0ICsxNDg3LDIzIEBAIHN0YXRpYyB2b2lkIGdlbjhfaW5pdF9vYV9idWZmZXIoc3RydWN0 IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCWRldl9wcml2LT5wZXJmLm9hLnBvbGxpbiA9 IGZhbHNlOwogfQogCi1zdGF0aWMgaW50IGFsbG9jX29hX2J1ZmZlcihzdHJ1Y3QgZHJtX2k5MTVf cHJpdmF0ZSAqZGV2X3ByaXYsIGludCBzaXplX2V4cG9uZW50KQorc3RhdGljIGludCBhbGxvY19v YV9idWZmZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogewogCXN0cnVjdCBk cm1faTkxNV9nZW1fb2JqZWN0ICpibzsKIAlzdHJ1Y3QgaTkxNV92bWEgKnZtYTsKLQlzaXplX3Qg c2l6ZSA9IDFVIDw8IHNpemVfZXhwb25lbnQ7CiAJaW50IHJldDsKIAogCWlmIChXQVJOX09OKGRl dl9wcml2LT5wZXJmLm9hLm9hX2J1ZmZlci52bWEpKQogCQlyZXR1cm4gLUVOT0RFVjsKIAotCWlm IChXQVJOX09OKHNpemUgPCBTWl8xMjhLIHx8IHNpemUgPiBTWl8xNk0pKQotCQlyZXR1cm4gLUVJ TlZBTDsKLQogCXJldCA9IGk5MTVfbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKCZkZXZfcHJpdi0+ ZHJtKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCi0JYm8gPSBpOTE1X2dlbV9vYmplY3Rf Y3JlYXRlKGRldl9wcml2LCBzaXplKTsKKwlCVUlMRF9CVUdfT05fTk9UX1BPV0VSX09GXzIoT0Ff QlVGRkVSX1NJWkUpOworCUJVSUxEX0JVR19PTihPQV9CVUZGRVJfU0laRSA8IFNaXzEyOEsgfHwg T0FfQlVGRkVSX1NJWkUgPiBTWl8xNk0pOworCisJYm8gPSBpOTE1X2dlbV9vYmplY3RfY3JlYXRl KGRldl9wcml2LCBPQV9CVUZGRVJfU0laRSk7CiAJaWYgKElTX0VSUihibykpIHsKIAkJRFJNX0VS Uk9SKCJGYWlsZWQgdG8gYWxsb2NhdGUgT0EgYnVmZmVyXG4iKTsKIAkJcmV0ID0gUFRSX0VSUihi byk7CkBAIC0xNTE4LDcgKzE1MjEsNiBAQCBzdGF0aWMgaW50IGFsbG9jX29hX2J1ZmZlcihzdHJ1 Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGludCBzaXplX2V4cG9uZW50KQogCQlnb3Rv IGVycl91bnJlZjsKIAl9CiAJZGV2X3ByaXYtPnBlcmYub2Eub2FfYnVmZmVyLnZtYSA9IHZtYTsK LQlkZXZfcHJpdi0+cGVyZi5vYS5vYV9idWZmZXIuc2l6ZV9leHBvbmVudCA9IHNpemVfZXhwb25l bnQ7CiAKIAlkZXZfcHJpdi0+cGVyZi5vYS5vYV9idWZmZXIudmFkZHIgPQogCQlpOTE1X2dlbV9v YmplY3RfcGluX21hcChibywgSTkxNV9NQVBfV0IpOwpAQCAtMTUyNywxMCArMTUyOSw5IEBAIHN0 YXRpYyBpbnQgYWxsb2Nfb2FfYnVmZmVyKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diwgaW50IHNpemVfZXhwb25lbnQpCiAJCWdvdG8gZXJyX3VucGluOwogCX0KIAotCURSTV9ERUJV R19EUklWRVIoIk9BIEJ1ZmZlciBpbml0aWFsaXplZCwgZ3R0IG9mZnNldCA9IDB4JXgsIHZhZGRy ID0gJXAsIHNpemUgPSAlbGx1XG4iLAorCURSTV9ERUJVR19EUklWRVIoIk9BIEJ1ZmZlciBpbml0 aWFsaXplZCwgZ3R0IG9mZnNldCA9IDB4JXgsIHZhZGRyID0gJXBcbiIsCiAJCQkgaTkxNV9nZ3R0 X29mZnNldChkZXZfcHJpdi0+cGVyZi5vYS5vYV9idWZmZXIudm1hKSwKLQkJCSBkZXZfcHJpdi0+ cGVyZi5vYS5vYV9idWZmZXIudmFkZHIsCi0JCQkgZGV2X3ByaXYtPnBlcmYub2Eub2FfYnVmZmVy LnZtYS0+c2l6ZSk7CisJCQkgZGV2X3ByaXYtPnBlcmYub2Eub2FfYnVmZmVyLnZhZGRyKTsKIAog CWdvdG8gdW5sb2NrOwogCkBAIC0yMDkwLDcgKzIwOTEsNyBAQCBzdGF0aWMgaW50IGk5MTVfb2Ff c3RyZWFtX2luaXQoc3RydWN0IGk5MTVfcGVyZl9zdHJlYW0gKnN0cmVhbSwKIAlpbnRlbF9ydW50 aW1lX3BtX2dldChkZXZfcHJpdik7CiAJaW50ZWxfdW5jb3JlX2ZvcmNld2FrZV9nZXQoZGV2X3By aXYsIEZPUkNFV0FLRV9BTEwpOwogCi0JcmV0ID0gYWxsb2Nfb2FfYnVmZmVyKGRldl9wcml2LCBw cm9wcy0+b2FfYnVmZmVyX3NpemVfZXhwb25lbnQpOworCXJldCA9IGFsbG9jX29hX2J1ZmZlcihk ZXZfcHJpdik7CiAJaWYgKHJldCkKIAkJZ290byBlcnJfb2FfYnVmX2FsbG9jOwogCkBAIC0yNjQ5 LDI2ICsyNjUwLDYgQEAgc3RhdGljIHU2NCBvYV9leHBvbmVudF90b19ucyhzdHJ1Y3QgZHJtX2k5 MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGludCBleHBvbmVudCkKIAkJCSAxMDAwVUxMICogSU5URUxf SU5GTyhkZXZfcHJpdiktPmNzX3RpbWVzdGFtcF9mcmVxdWVuY3lfa2h6KTsKIH0KIAotc3RhdGlj IGludAotc2VsZWN0X29hX2J1ZmZlcl9leHBvbmVudChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq aTkxNSwKLQkJCSAgdTY0IHJlcXVlc3RlZF9zaXplKQotewotCWludCBvcmRlcjsKLQotCS8qCi0J ICogV2hlbiBubyBzaXplIGlzIHNwZWNpZmllZCwgdXNlIHRoZSBsYXJnZXN0IHNpemUgc3VwcG9y dGVkIGJ5IGFsbAotCSAqIGdlbmVyYXRpb25zLgotCSAqLwotCWlmICghcmVxdWVzdGVkX3NpemUp Ci0JCXJldHVybiBvcmRlcl9iYXNlXzIoU1pfMTZNKTsKLQotCW9yZGVyID0gb3JkZXJfYmFzZV8y KGNsYW1wX3QodTY0LCByZXF1ZXN0ZWRfc2l6ZSwgU1pfMTI4SywgU1pfMTZNKSk7Ci0JaWYgKHJl cXVlc3RlZF9zaXplICE9ICgxVUwgPDwgb3JkZXIpKQotCQlyZXR1cm4gLUVJTlZBTDsKLQotCXJl dHVybiBvcmRlcjsKLX0KLQogLyoqCiAgKiByZWFkX3Byb3BlcnRpZXNfdW5sb2NrZWQgLSB2YWxp ZGF0ZSArIGNvcHkgdXNlcnNwYWNlIHN0cmVhbSBvcGVuIHByb3BlcnRpZXMKICAqIEBkZXZfcHJp djogaTkxNSBkZXZpY2UgaW5zdGFuY2UKQEAgLTI3OTYsMTQgKzI3NzcsNiBAQCBzdGF0aWMgaW50 IHJlYWRfcHJvcGVydGllc191bmxvY2tlZChzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3By aXYsCiAJCQlwcm9wcy0+b2FfcGVyaW9kaWMgPSB0cnVlOwogCQkJcHJvcHMtPm9hX3BlcmlvZF9l eHBvbmVudCA9IHZhbHVlOwogCQkJYnJlYWs7Ci0JCWNhc2UgRFJNX0k5MTVfUEVSRl9QUk9QX09B X0JVRkZFUl9TSVpFOgotCQkJcmV0ID0gc2VsZWN0X29hX2J1ZmZlcl9leHBvbmVudChkZXZfcHJp diwgdmFsdWUpOwotCQkJaWYgKHJldCA8IDApIHsKLQkJCQlEUk1fREVCVUcoIk9BIGJ1ZmZlciBz aXplIGludmFsaWQgJWxsdVxuIiwgdmFsdWUpOwotCQkJCXJldHVybiByZXQ7Ci0JCQl9Ci0JCQlw cm9wcy0+b2FfYnVmZmVyX3NpemVfZXhwb25lbnQgPSByZXQ7Ci0JCQlicmVhazsKIAkJY2FzZSBE Uk1fSTkxNV9QRVJGX1BST1BfTUFYOgogCQkJTUlTU0lOR19DQVNFKGlkKTsKIAkJCXJldHVybiAt RUlOVkFMOwpAQCAtMjgxMiwxMiArMjc4NSw2IEBAIHN0YXRpYyBpbnQgcmVhZF9wcm9wZXJ0aWVz X3VubG9ja2VkKHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiwKIAkJdXByb3AgKz0g MjsKIAl9CiAKLQkvKiBJZiBubyBidWZmZXIgc2l6ZSB3YXMgcmVxdWVzdGVkLCBzZWxlY3QgdGhl IGRlZmF1bHQgb25lLiAqLwotCWlmICghcHJvcHMtPm9hX2J1ZmZlcl9zaXplX2V4cG9uZW50KSB7 Ci0JCXByb3BzLT5vYV9idWZmZXJfc2l6ZV9leHBvbmVudCA9Ci0JCQlzZWxlY3Rfb2FfYnVmZmVy X2V4cG9uZW50KGRldl9wcml2LCAwKTsKLQl9Ci0KIAlyZXR1cm4gMDsKIH0KIApkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9yZWcuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfcmVnLmgKaW5kZXggOTRiYTg2MDE4YTRmLi5lZGI1OGFmMWU5MDMgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfcmVnLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9yZWcuaApAQCAtNTg2LDE0ICs1ODYsMTIgQEAgc3RhdGljIGlubGluZSBib29sIGk5 MTVfbW1pb19yZWdfdmFsaWQoaTkxNV9yZWdfdCByZWcpCiAjZGVmaW5lIEdFTjhfT0FCVUZGRVJf VURXIF9NTUlPKDB4MjNiNCkKICNkZWZpbmUgR0VOOF9PQUJVRkZFUiBfTU1JTygweDJiMTQpCiAj ZGVmaW5lICBHRU44X09BQlVGRkVSX01FTV9TRUxFQ1RfR0dUVCAgICAgICgxIDw8IDApICAvKiAw OiBQUEdUVCwgMTogR0dUVCAqLwotI2RlZmluZSAgR0VOOF9PQUJVRkZFUl9CVUZGRVJfU0laRV9T SElGVCAgICAzCiAKICNkZWZpbmUgR0VON19PQVNUQVRVUzEgX01NSU8oMHgyMzY0KQogI2RlZmlu ZSAgR0VON19PQVNUQVRVUzFfVEFJTF9NQVNLCSAgICAweGZmZmZmZmMwCiAjZGVmaW5lICBHRU43 X09BU1RBVFVTMV9DT1VOVEVSX09WRVJGTE9XICAgICgxIDw8IDIpCiAjZGVmaW5lICBHRU43X09B U1RBVFVTMV9PQUJVRkZFUl9PVkVSRkxPVyAgICgxIDw8IDEpCiAjZGVmaW5lICBHRU43X09BU1RB VFVTMV9SRVBPUlRfTE9TVAkgICAgKDEgPDwgMCkKLSNkZWZpbmUgIEdFTjdfT0FTVEFUVVMxX0JV RkZFUl9TSVpFX1NISUZUICAgMwogCiAjZGVmaW5lIEdFTjdfT0FTVEFUVVMyIF9NTUlPKDB4MjM2 OCkKICNkZWZpbmUgIEdFTjdfT0FTVEFUVVMyX0hFQURfTUFTSyAgICAgICAgICAgMHhmZmZmZmZj MApkaWZmIC0tZ2l0IGEvaW5jbHVkZS91YXBpL2RybS9pOTE1X2RybS5oIGIvaW5jbHVkZS91YXBp L2RybS9pOTE1X2RybS5oCmluZGV4IGU0NzdlZjhjNjQ0ZS4uMjk4YjJlMTk3NzQ0IDEwMDY0NAot LS0gYS9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmgKKysrIGIvaW5jbHVkZS91YXBpL2RybS9p OTE1X2RybS5oCkBAIC0xNTQwLDEzICsxNTQwLDYgQEAgZW51bSBkcm1faTkxNV9wZXJmX3Byb3Bl cnR5X2lkIHsKIAkgKi8KIAlEUk1fSTkxNV9QRVJGX1BST1BfT0FfRVhQT05FTlQsCiAKLQkvKioK LQkgKiBTcGVjaWZ5IGEgZ2xvYmFsIE9BIGJ1ZmZlciBzaXplIHRvIGJlIGFsbG9jYXRlZCBpbiBi eXRlcy4gVGhlIHNpemUKLQkgKiBzcGVjaWZpZWQgbXVzdCBiZSBzdXBwb3J0ZWQgYnkgSFcgKGN1 cnJlbnRseSBzdXBwb3J0ZWQgc2l6ZXMgYXJlCi0JICogcG93ZXJzIG9mIDIgcmFuZ2luZyBmcm9t IDEyOEtiIHRvIDE2TWIpLgotCSAqLwotCURSTV9JOTE1X1BFUkZfUFJPUF9PQV9CVUZGRVJfU0la RSwKLQogCURSTV9JOTE1X1BFUkZfUFJPUF9NQVggLyogbm9uLUFCSSAqLwogfTsKIAotLSAKMi4x Ny4yCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRl bC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK