From mboxrd@z Thu Jan 1 00:00:00 1970 From: Oscar Mateo Subject: [05/11 v2] drm/i915/guc: Break out the GuC log extras into their own "runtime" struct Date: Fri, 10 Mar 2017 08:28:52 -0800 Message-ID: <1489163337-36080-6-git-send-email-oscar.mateo@intel.com> References: <1489163337-36080-1-git-send-email-oscar.mateo@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1483A6E11A for ; Sat, 11 Mar 2017 00:28:49 +0000 (UTC) In-Reply-To: <1489163337-36080-1-git-send-email-oscar.mateo@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 V2hlbiBpbml0aWFsaXppbmcgdGhlIEd1QyBsb2cgc3RydWN0LCB0aGVyZSBpcyBhbiBvYmplY3Qg d2UgbmVlZCB0bwphbGxvY2F0ZSBhbHdheXMsIHNpbmNlIHRoZSBHdUMgbmVlZHMgaXRzIGFkZHJl c3MgYXQgZncgbG9hZCB0aW1lLgpUaGUgcmVzdCBpcyBvbmx5IG5lZWRlZCBkdXJpbmcgcnVudGlt ZSwgaW4gdGhlIHNlbnNlIHRoYXQgd2Ugb25seQpjcmVhdGUgaWYgd2UgYWN0dWFsbHkgZW5hYmxl IEd1QyBsb2dnaW5nLiBNYWtlIHRoYXQgZGlzdGluY3Rpb24KZXhwbGljaXQgYnkgc3ViZGl2aWRp bmcgZnVydGhlciB0aGUgaW50ZWxfZ3VjX2xvZyBzdHJ1Y3QuCgp2MjogQ2FsbCB0aGUgbmV3IHN0 cnVjdCAicnVudGltZSIsIGluc3RlYWQgb2YgImV4dHJhcyIgKEpvb25hcykuCgpDYzogRGFuaWVs ZSBDZXJhb2xvIFNwdXJpbyA8ZGFuaWVsZS5jZXJhb2xvc3B1cmlvQGludGVsLmNvbT4KQ2M6IEpv b25hcyBMYWh0aW5lbiA8am9vbmFzLmxhaHRpbmVuQGxpbnV4LmludGVsLmNvbT4KUmV2aWV3ZWQt Ynk6IE1pY2hhbCBXYWpkZWN6a28gPG1pY2hhbC53YWpkZWN6a29AaW50ZWwuY29tPgpTaWduZWQt b2ZmLWJ5OiBPc2NhciBNYXRlbyA8b3NjYXIubWF0ZW9AaW50ZWwuY29tPgotLS0KIGRyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfaXJxLmMgICAgICB8ICA0ICstLQogZHJpdmVycy9ncHUvZHJtL2k5 MTUvaW50ZWxfZ3VjX2xvZy5jIHwgNzAgKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0t LS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF91Yy5oICAgICAgfCAxMiArKysrLS0tCiAz IGZpbGVzIGNoYW5nZWQsIDQ0IGluc2VydGlvbnMoKyksIDQyIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2lycS5jCmluZGV4IGNlNDQ1YmMuLmU1NDYxZjEgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2k5MTVfaXJxLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkx NV9pcnEuYwpAQCAtMTc0MCw4ICsxNzQwLDggQEAgc3RhdGljIHZvaWQgZ2VuOV9ndWNfaXJxX2hh bmRsZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2LCB1MzIgZ3RfaWlyKQogCQkJ STkxNV9XUklURShTT0ZUX1NDUkFUQ0goMTUpLCBtc2cgJiB+Zmx1c2gpOwogCiAJCQkvKiBIYW5k bGUgZmx1c2ggaW50ZXJydXB0IGluIGJvdHRvbSBoYWxmICovCi0JCQlxdWV1ZV93b3JrKGRldl9w cml2LT5ndWMubG9nLmZsdXNoX3dxLAotCQkJCSAgICZkZXZfcHJpdi0+Z3VjLmxvZy5mbHVzaF93 b3JrKTsKKwkJCXF1ZXVlX3dvcmsoZGV2X3ByaXYtPmd1Yy5sb2cucnVudGltZS5mbHVzaF93cSwK KwkJCQkgICAmZGV2X3ByaXYtPmd1Yy5sb2cucnVudGltZS5mbHVzaF93b3JrKTsKIAogCQkJZGV2 X3ByaXYtPmd1Yy5sb2cuZmx1c2hfaW50ZXJydXB0X2NvdW50Kys7CiAJCX0gZWxzZSB7CmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9ndWNfbG9nLmMgYi9kcml2ZXJzL2dw dS9kcm0vaTkxNS9pbnRlbF9ndWNfbG9nLmMKaW5kZXggM2IxNjQ0Yi4uMTIyNDgwMyAxMDA2NDQK LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZ3VjX2xvZy5jCisrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2d1Y19sb2cuYwpAQCAtMTY2LDcgKzE2Niw3IEBAIHN0YXRpYyBp bnQgZ3VjX2xvZ19yZWxheV9maWxlX2NyZWF0ZShzdHJ1Y3QgaW50ZWxfZ3VjICpndWMpCiAJCXJl dHVybiAtRU5PREVWOwogCX0KIAotCXJldCA9IHJlbGF5X2xhdGVfc2V0dXBfZmlsZXMoZ3VjLT5s b2cucmVsYXlfY2hhbiwgImd1Y19sb2ciLCBsb2dfZGlyKTsKKwlyZXQgPSByZWxheV9sYXRlX3Nl dHVwX2ZpbGVzKGd1Yy0+bG9nLnJ1bnRpbWUucmVsYXlfY2hhbiwgImd1Y19sb2ciLCBsb2dfZGly KTsKIAlpZiAocmV0IDwgMCAmJiByZXQgIT0gLUVFWElTVCkgewogCQlEUk1fRVJST1IoIkNvdWxk bid0IGFzc29jaWF0ZSByZWxheSBjaGFuIHdpdGggZmlsZSAlZFxuIiwgcmV0KTsKIAkJcmV0dXJu IHJldDsKQEAgLTE4MywxNSArMTgzLDE1IEBAIHN0YXRpYyB2b2lkIGd1Y19tb3ZlX3RvX25leHRf YnVmKHN0cnVjdCBpbnRlbF9ndWMgKmd1YykKIAlzbXBfd21iKCk7CiAKIAkvKiBBbGwgZGF0YSBo YXMgYmVlbiB3cml0dGVuLCBzbyBub3cgbW92ZSB0aGUgb2Zmc2V0IG9mIHN1YiBidWZmZXIuICov Ci0JcmVsYXlfcmVzZXJ2ZShndWMtPmxvZy5yZWxheV9jaGFuLCBndWMtPmxvZy52bWEtPm9iai0+ YmFzZS5zaXplKTsKKwlyZWxheV9yZXNlcnZlKGd1Yy0+bG9nLnJ1bnRpbWUucmVsYXlfY2hhbiwg Z3VjLT5sb2cudm1hLT5vYmotPmJhc2Uuc2l6ZSk7CiAKIAkvKiBTd2l0Y2ggdG8gdGhlIG5leHQg c3ViIGJ1ZmZlciAqLwotCXJlbGF5X2ZsdXNoKGd1Yy0+bG9nLnJlbGF5X2NoYW4pOworCXJlbGF5 X2ZsdXNoKGd1Yy0+bG9nLnJ1bnRpbWUucmVsYXlfY2hhbik7CiB9CiAKIHN0YXRpYyB2b2lkICpn dWNfZ2V0X3dyaXRlX2J1ZmZlcihzdHJ1Y3QgaW50ZWxfZ3VjICpndWMpCiB7Ci0JaWYgKCFndWMt PmxvZy5yZWxheV9jaGFuKQorCWlmICghZ3VjLT5sb2cucnVudGltZS5yZWxheV9jaGFuKQogCQly ZXR1cm4gTlVMTDsKIAogCS8qIEp1c3QgZ2V0IHRoZSBiYXNlIGFkZHJlc3Mgb2YgYSBuZXcgc3Vi IGJ1ZmZlciBhbmQgY29weSBkYXRhIGludG8gaXQKQEAgLTIwMiw3ICsyMDIsNyBAQCBzdGF0aWMg dm9pZCAqZ3VjX2dldF93cml0ZV9idWZmZXIoc3RydWN0IGludGVsX2d1YyAqZ3VjKQogCSAqIGRv bmUgd2l0aG91dCB1c2luZyByZWxheV9yZXNlcnZlKCkgYWxvbmcgd2l0aCByZWxheV93cml0ZSgp LiBTbyBpdHMKIAkgKiBiZXR0ZXIgdG8gdXNlIHJlbGF5X3Jlc2VydmUoKSBhbG9uZS4KIAkgKi8K LQlyZXR1cm4gcmVsYXlfcmVzZXJ2ZShndWMtPmxvZy5yZWxheV9jaGFuLCAwKTsKKwlyZXR1cm4g cmVsYXlfcmVzZXJ2ZShndWMtPmxvZy5ydW50aW1lLnJlbGF5X2NoYW4sIDApOwogfQogCiBzdGF0 aWMgYm9vbCBndWNfY2hlY2tfbG9nX2J1Zl9vdmVyZmxvdyhzdHJ1Y3QgaW50ZWxfZ3VjICpndWMs CkBAIC0yNTMsMTEgKzI1MywxMSBAQCBzdGF0aWMgdm9pZCBndWNfcmVhZF91cGRhdGVfbG9nX2J1 ZmZlcihzdHJ1Y3QgaW50ZWxfZ3VjICpndWMpCiAJdm9pZCAqc3JjX2RhdGEsICpkc3RfZGF0YTsK IAlib29sIG5ld19vdmVyZmxvdzsKIAotCWlmIChXQVJOX09OKCFndWMtPmxvZy5idWZfYWRkcikp CisJaWYgKFdBUk5fT04oIWd1Yy0+bG9nLnJ1bnRpbWUuYnVmX2FkZHIpKQogCQlyZXR1cm47CiAK IAkvKiBHZXQgdGhlIHBvaW50ZXIgdG8gc2hhcmVkIEd1QyBsb2cgYnVmZmVyICovCi0JbG9nX2J1 Zl9zdGF0ZSA9IHNyY19kYXRhID0gZ3VjLT5sb2cuYnVmX2FkZHI7CisJbG9nX2J1Zl9zdGF0ZSA9 IHNyY19kYXRhID0gZ3VjLT5sb2cucnVudGltZS5idWZfYWRkcjsKIAogCS8qIEdldCB0aGUgcG9p bnRlciB0byBsb2NhbCBidWZmZXIgdG8gc3RvcmUgdGhlIGxvZ3MgKi8KIAlsb2dfYnVmX3NuYXBz aG90X3N0YXRlID0gZHN0X2RhdGEgPSBndWNfZ2V0X3dyaXRlX2J1ZmZlcihndWMpOwpAQCAtMzQz LDE3ICszNDMsMTcgQEAgc3RhdGljIHZvaWQgZ3VjX3JlYWRfdXBkYXRlX2xvZ19idWZmZXIoc3Ry dWN0IGludGVsX2d1YyAqZ3VjKQogc3RhdGljIHZvaWQgY2FwdHVyZV9sb2dzX3dvcmsoc3RydWN0 IHdvcmtfc3RydWN0ICp3b3JrKQogewogCXN0cnVjdCBpbnRlbF9ndWMgKmd1YyA9Ci0JCWNvbnRh aW5lcl9vZih3b3JrLCBzdHJ1Y3QgaW50ZWxfZ3VjLCBsb2cuZmx1c2hfd29yayk7CisJCWNvbnRh aW5lcl9vZih3b3JrLCBzdHJ1Y3QgaW50ZWxfZ3VjLCBsb2cucnVudGltZS5mbHVzaF93b3JrKTsK IAogCWd1Y19sb2dfY2FwdHVyZV9sb2dzKGd1Yyk7CiB9CiAKLXN0YXRpYyBib29sIGd1Y19sb2df aGFzX2V4dHJhcyhzdHJ1Y3QgaW50ZWxfZ3VjICpndWMpCitzdGF0aWMgYm9vbCBndWNfbG9nX2hh c19ydW50aW1lKHN0cnVjdCBpbnRlbF9ndWMgKmd1YykKIHsKLQlyZXR1cm4gZ3VjLT5sb2cuYnVm X2FkZHIgIT0gTlVMTDsKKwlyZXR1cm4gZ3VjLT5sb2cucnVudGltZS5idWZfYWRkciAhPSBOVUxM OwogfQogCi1zdGF0aWMgaW50IGd1Y19sb2dfY3JlYXRlX2V4dHJhcyhzdHJ1Y3QgaW50ZWxfZ3Vj ICpndWMpCitzdGF0aWMgaW50IGd1Y19sb2dfcnVudGltZV9jcmVhdGUoc3RydWN0IGludGVsX2d1 YyAqZ3VjKQogewogCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJpdiA9IGd1Y190b19p OTE1KGd1Yyk7CiAJdm9pZCAqdmFkZHI7CkBAIC0zNjMsNyArMzYzLDcgQEAgc3RhdGljIGludCBn dWNfbG9nX2NyZWF0ZV9leHRyYXMoc3RydWN0IGludGVsX2d1YyAqZ3VjKQogCiAJbG9ja2RlcF9h c3NlcnRfaGVsZCgmZGV2X3ByaXYtPmRybS5zdHJ1Y3RfbXV0ZXgpOwogCi0JR0VNX0JVR19PTihn dWNfbG9nX2hhc19leHRyYXMoZ3VjKSk7CisJR0VNX0JVR19PTihndWNfbG9nX2hhc19ydW50aW1l KGd1YykpOwogCiAJLyogQ3JlYXRlIGEgV0MgKFVuY2FjaGVkIGZvciByZWFkKSB2bWFsbG9jIG1h cHBpbmcgb2YgbG9nCiAJICogYnVmZmVyIHBhZ2VzLCBzbyB0aGF0IHdlIGNhbiBkaXJlY3RseSBn ZXQgdGhlIGRhdGEKQEAgLTM3NSw3ICszNzUsNyBAQCBzdGF0aWMgaW50IGd1Y19sb2dfY3JlYXRl X2V4dHJhcyhzdHJ1Y3QgaW50ZWxfZ3VjICpndWMpCiAJCXJldHVybiBQVFJfRVJSKHZhZGRyKTsK IAl9CiAKLQlndWMtPmxvZy5idWZfYWRkciA9IHZhZGRyOworCWd1Yy0+bG9nLnJ1bnRpbWUuYnVm X2FkZHIgPSB2YWRkcjsKIAogCSAvKiBLZWVwIHRoZSBzaXplIG9mIHN1YiBidWZmZXJzIHNhbWUg YXMgc2hhcmVkIGxvZyBidWZmZXIgKi8KIAlzdWJidWZfc2l6ZSA9IGd1Yy0+bG9nLnZtYS0+b2Jq LT5iYXNlLnNpemU7CkBAIC00MDEsOSArNDAxLDkgQEAgc3RhdGljIGludCBndWNfbG9nX2NyZWF0 ZV9leHRyYXMoc3RydWN0IGludGVsX2d1YyAqZ3VjKQogCX0KIAogCUdFTV9CVUdfT04oZ3VjX2xv Z19yZWxheV9jaGFuLT5zdWJidWZfc2l6ZSA8IHN1YmJ1Zl9zaXplKTsKLQlndWMtPmxvZy5yZWxh eV9jaGFuID0gZ3VjX2xvZ19yZWxheV9jaGFuOworCWd1Yy0+bG9nLnJ1bnRpbWUucmVsYXlfY2hh biA9IGd1Y19sb2dfcmVsYXlfY2hhbjsKIAotCUlOSVRfV09SSygmZ3VjLT5sb2cuZmx1c2hfd29y aywgY2FwdHVyZV9sb2dzX3dvcmspOworCUlOSVRfV09SSygmZ3VjLT5sb2cucnVudGltZS5mbHVz aF93b3JrLCBjYXB0dXJlX2xvZ3Nfd29yayk7CiAKIAkvKgogCSAqIEd1QyBsb2cgYnVmZmVyIGZs dXNoIHdvcmsgaXRlbSBoYXMgdG8gZG8gcmVnaXN0ZXIgYWNjZXNzIHRvCkBAIC00MTYsOSArNDE2 LDkgQEAgc3RhdGljIGludCBndWNfbG9nX2NyZWF0ZV9leHRyYXMoc3RydWN0IGludGVsX2d1YyAq Z3VjKQogCSAqIG9yIHNjaGVkdWxlZCBsYXRlciBvbiByZXN1bWUuIFRoaXMgd2F5IHRoZSBoYW5k bGluZyBvZiB3b3JrCiAJICogaXRlbSBjYW4gYmUga2VwdCBzYW1lIGJldHdlZW4gc3lzdGVtIHN1 c3BlbmQgJiBycG0gc3VzcGVuZC4KIAkgKi8KLQlndWMtPmxvZy5mbHVzaF93cSA9IGFsbG9jX29y ZGVyZWRfd29ya3F1ZXVlKCJpOTE1LWd1Y19sb2ciLAorCWd1Yy0+bG9nLnJ1bnRpbWUuZmx1c2hf d3EgPSBhbGxvY19vcmRlcmVkX3dvcmtxdWV1ZSgiaTkxNS1ndWNfbG9nIiwKIAkJCQkJCSAgICBX UV9ISUdIUFJJIHwgV1FfRlJFRVpBQkxFKTsKLQlpZiAoIWd1Yy0+bG9nLmZsdXNoX3dxKSB7CisJ aWYgKCFndWMtPmxvZy5ydW50aW1lLmZsdXNoX3dxKSB7CiAJCURSTV9FUlJPUigiQ291bGRuJ3Qg YWxsb2NhdGUgdGhlIHdxIGZvciBHdUMgbG9nZ2luZ1xuIik7CiAJCXJldCA9IC1FTk9NRU07CiAJ CWdvdG8gZXJyX3JlbGF5Y2hhbjsKQEAgLTQyNywyNiArNDI3LDI2IEBAIHN0YXRpYyBpbnQgZ3Vj X2xvZ19jcmVhdGVfZXh0cmFzKHN0cnVjdCBpbnRlbF9ndWMgKmd1YykKIAlyZXR1cm4gMDsKIAog ZXJyX3JlbGF5Y2hhbjoKLQlyZWxheV9jbG9zZShndWMtPmxvZy5yZWxheV9jaGFuKTsKKwlyZWxh eV9jbG9zZShndWMtPmxvZy5ydW50aW1lLnJlbGF5X2NoYW4pOwogZXJyX3ZhZGRyOgogCWk5MTVf Z2VtX29iamVjdF91bnBpbl9tYXAoZ3VjLT5sb2cudm1hLT5vYmopOwotCWd1Yy0+bG9nLmJ1Zl9h ZGRyID0gTlVMTDsKKwlndWMtPmxvZy5ydW50aW1lLmJ1Zl9hZGRyID0gTlVMTDsKIAlyZXR1cm4g cmV0OwogfQogCi1zdGF0aWMgdm9pZCBndWNfbG9nX2Rlc3Ryb3lfZXh0cmFzKHN0cnVjdCBpbnRl bF9ndWMgKmd1YykKK3N0YXRpYyB2b2lkIGd1Y19sb2dfcnVudGltZV9kZXN0cm95KHN0cnVjdCBp bnRlbF9ndWMgKmd1YykKIHsKIAkvKgotCSAqIEl0J3MgcG9zc2libGUgdGhhdCBleHRyYXMgd2Vy ZSBuZXZlciBhbGxvY2F0ZWQgYmVjYXVzZSBndWNfbG9nX2xldmVsCi0JICogd2FzIDwgMCBhdCB0 aGUgdGltZQorCSAqIEl0J3MgcG9zc2libGUgdGhhdCB0aGUgcnVudGltZSBzdHVmZiB3YXMgbmV2 ZXIgYWxsb2NhdGVkIGJlY2F1c2UKKwkgKiBndWNfbG9nX2xldmVsIHdhcyA8IDAgYXQgdGhlIHRp bWUKIAkgKiovCi0JaWYgKCFndWNfbG9nX2hhc19leHRyYXMoZ3VjKSkKKwlpZiAoIWd1Y19sb2df aGFzX3J1bnRpbWUoZ3VjKSkKIAkJcmV0dXJuOwogCi0JZGVzdHJveV93b3JrcXVldWUoZ3VjLT5s b2cuZmx1c2hfd3EpOwotCXJlbGF5X2Nsb3NlKGd1Yy0+bG9nLnJlbGF5X2NoYW4pOworCWRlc3Ry b3lfd29ya3F1ZXVlKGd1Yy0+bG9nLnJ1bnRpbWUuZmx1c2hfd3EpOworCXJlbGF5X2Nsb3NlKGd1 Yy0+bG9nLnJ1bnRpbWUucmVsYXlfY2hhbik7CiAJaTkxNV9nZW1fb2JqZWN0X3VucGluX21hcChn dWMtPmxvZy52bWEtPm9iaik7Ci0JZ3VjLT5sb2cuYnVmX2FkZHIgPSBOVUxMOworCWd1Yy0+bG9n LnJ1bnRpbWUuYnVmX2FkZHIgPSBOVUxMOwogfQogCiBzdGF0aWMgaW50IGd1Y19sb2dfbGF0ZV9z ZXR1cChzdHJ1Y3QgaW50ZWxfZ3VjICpndWMpCkBAIC00NTYsMjQgKzQ1NiwyNCBAQCBzdGF0aWMg aW50IGd1Y19sb2dfbGF0ZV9zZXR1cChzdHJ1Y3QgaW50ZWxfZ3VjICpndWMpCiAKIAlsb2NrZGVw X2Fzc2VydF9oZWxkKCZkZXZfcHJpdi0+ZHJtLnN0cnVjdF9tdXRleCk7CiAKLQlpZiAoIWd1Y19s b2dfaGFzX2V4dHJhcyhndWMpKSB7CisJaWYgKCFndWNfbG9nX2hhc19ydW50aW1lKGd1YykpIHsK IAkJLyogSWYgbG9nX2xldmVsIHdhcyBzZXQgYXMgLTEgYXQgYm9vdCB0aW1lLCB0aGVuIHNldHVw IG5lZWRlZCB0bwogCQkgKiBoYW5kbGUgbG9nIGJ1ZmZlciBmbHVzaCBpbnRlcnJ1cHRzIHdvdWxk IG5vdCBoYXZlIGJlZW4gZG9uZSB5ZXQsCiAJCSAqIHNvIGRvIHRoYXQgbm93LgogCQkgKi8KLQkJ cmV0ID0gZ3VjX2xvZ19jcmVhdGVfZXh0cmFzKGd1Yyk7CisJCXJldCA9IGd1Y19sb2dfcnVudGlt ZV9jcmVhdGUoZ3VjKTsKIAkJaWYgKHJldCkKIAkJCWdvdG8gZXJyOwogCX0KIAogCXJldCA9IGd1 Y19sb2dfcmVsYXlfZmlsZV9jcmVhdGUoZ3VjKTsKIAlpZiAocmV0KQotCQlnb3RvIGVycl9leHRy YXM7CisJCWdvdG8gZXJyX3J1bnRpbWU7CiAKIAlyZXR1cm4gMDsKIAotZXJyX2V4dHJhczoKLQln dWNfbG9nX2Rlc3Ryb3lfZXh0cmFzKGd1Yyk7CitlcnJfcnVudGltZToKKwlndWNfbG9nX3J1bnRp bWVfZGVzdHJveShndWMpOwogZXJyOgogCS8qIGxvZ2dpbmcgd2lsbCByZW1haW4gb2ZmICovCiAJ aTkxNS5ndWNfbG9nX2xldmVsID0gLTE7CkBAIC01MDcsNyArNTA3LDcgQEAgc3RhdGljIHZvaWQg Z3VjX2ZsdXNoX2xvZ3Moc3RydWN0IGludGVsX2d1YyAqZ3VjKQogCS8qIEJlZm9yZSBpbml0aWF0 aW5nIHRoZSBmb3JjZWZ1bCBmbHVzaCwgd2FpdCBmb3IgYW55IHBlbmRpbmcvb25nb2luZwogCSAq IGZsdXNoIHRvIGNvbXBsZXRlIG90aGVyd2lzZSBmb3JjZWZ1bCBmbHVzaCBtYXkgbm90IGFjdHVh bGx5IGhhcHBlbi4KIAkgKi8KLQlmbHVzaF93b3JrKCZndWMtPmxvZy5mbHVzaF93b3JrKTsKKwlm bHVzaF93b3JrKCZndWMtPmxvZy5ydW50aW1lLmZsdXNoX3dvcmspOwogCiAJLyogQXNrIEd1QyB0 byB1cGRhdGUgdGhlIGxvZyBidWZmZXIgc3RhdGUgKi8KIAlndWNfbG9nX2ZsdXNoKGd1Yyk7CkBA IC01NTIsNyArNTUyLDcgQEAgaW50IGludGVsX2d1Y19sb2dfY3JlYXRlKHN0cnVjdCBpbnRlbF9n dWMgKmd1YykKIAlndWMtPmxvZy52bWEgPSB2bWE7CiAKIAlpZiAoaTkxNS5ndWNfbG9nX2xldmVs ID49IDApIHsKLQkJcmV0ID0gZ3VjX2xvZ19jcmVhdGVfZXh0cmFzKGd1Yyk7CisJCXJldCA9IGd1 Y19sb2dfcnVudGltZV9jcmVhdGUoZ3VjKTsKIAkJaWYgKHJldCA8IDApCiAJCQlnb3RvIGVycl92 bWE7CiAJfQpAQCAtNTc4LDcgKzU3OCw3IEBAIGludCBpbnRlbF9ndWNfbG9nX2NyZWF0ZShzdHJ1 Y3QgaW50ZWxfZ3VjICpndWMpCiAKIHZvaWQgaW50ZWxfZ3VjX2xvZ19kZXN0cm95KHN0cnVjdCBp bnRlbF9ndWMgKmd1YykKIHsKLQlndWNfbG9nX2Rlc3Ryb3lfZXh0cmFzKGd1Yyk7CisJZ3VjX2xv Z19ydW50aW1lX2Rlc3Ryb3koZ3VjKTsKIAlpOTE1X3ZtYV91bnBpbl9hbmRfcmVsZWFzZSgmZ3Vj LT5sb2cudm1hKTsKIH0KIApAQCAtNjUxLDYgKzY1MSw2IEBAIHZvaWQgaTkxNV9ndWNfbG9nX3Vu cmVnaXN0ZXIoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCiAJbXV0ZXhfbG9j aygmZGV2X3ByaXYtPmRybS5zdHJ1Y3RfbXV0ZXgpOwogCWdlbjlfZGlzYWJsZV9ndWNfaW50ZXJy dXB0cyhkZXZfcHJpdik7Ci0JZ3VjX2xvZ19kZXN0cm95X2V4dHJhcygmZGV2X3ByaXYtPmd1Yyk7 CisJZ3VjX2xvZ19ydW50aW1lX2Rlc3Ryb3koJmRldl9wcml2LT5ndWMpOwogCW11dGV4X3VubG9j aygmZGV2X3ByaXYtPmRybS5zdHJ1Y3RfbXV0ZXgpOwogfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfdWMuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3VjLmgK aW5kZXggNmM0ZDE4OS4uMTU2N2MzZTMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2ludGVsX3VjLmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfdWMuaApAQCAtMTMy LDExICsxMzIsMTMgQEAgc3RydWN0IGludGVsX3VjX2Z3IHsKIHN0cnVjdCBpbnRlbF9ndWNfbG9n IHsKIAl1aW50MzJfdCBmbGFnczsKIAlzdHJ1Y3QgaTkxNV92bWEgKnZtYTsKLQl2b2lkICpidWZf YWRkcjsKLQlzdHJ1Y3Qgd29ya3F1ZXVlX3N0cnVjdCAqZmx1c2hfd3E7Ci0Jc3RydWN0IHdvcmtf c3RydWN0IGZsdXNoX3dvcms7Ci0Jc3RydWN0IHJjaGFuICpyZWxheV9jaGFuOwotCisJLyogVGhl IHJ1bnRpbWUgc3R1ZmYgZ2V0cyBjcmVhdGVkIG9ubHkgd2hlbiBHdUMgbG9nZ2luZyBnZXRzIGVu YWJsZWQgKi8KKwlzdHJ1Y3QgeworCQl2b2lkICpidWZfYWRkcjsKKwkJc3RydWN0IHdvcmtxdWV1 ZV9zdHJ1Y3QgKmZsdXNoX3dxOworCQlzdHJ1Y3Qgd29ya19zdHJ1Y3QgZmx1c2hfd29yazsKKwkJ c3RydWN0IHJjaGFuICpyZWxheV9jaGFuOworCX0gcnVudGltZTsKIAkvKiBsb2dnaW5nIHJlbGF0 ZWQgc3RhdHMgKi8KIAl1MzIgY2FwdHVyZV9taXNzX2NvdW50OwogCXUzMiBmbHVzaF9pbnRlcnJ1 cHRfY291bnQ7Ci0tIAoxLjkuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRl c2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8v aW50ZWwtZ2Z4Cg==