From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Hellstrom Subject: [PATCH -next 03/11] drm/vmwgfx: Fix multiple command buffer context use Date: Thu, 22 Mar 2018 11:23:44 +0100 Message-ID: <20180322102352.2881-3-thellstrom@vmware.com> References: <20180322102352.2881-1-thellstrom@vmware.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from NAM03-CO1-obe.outbound.protection.outlook.com (mail-co1nam03on0045.outbound.protection.outlook.com [104.47.40.45]) by gabe.freedesktop.org (Postfix) with ESMTPS id 80AA86EBCA for ; Thu, 22 Mar 2018 10:24:40 +0000 (UTC) In-Reply-To: <20180322102352.2881-1-thellstrom@vmware.com> 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, linux-graphics-maintainer@vmware.com List-Id: dri-devel@lists.freedesktop.org VGhlIHN0YXJ0IC8gc3RvcCBhbmQgcHJlZW1wdCBjb21tYW5kcyBkb24ndCBob25vciB0aGUgY29u dGV4dCBhcmd1bWVudApidXQgcmF0aGVyIGFjdHMgb24gYWxsIGF2YWlsYWJsZSBjb250ZXh0cy4K CkFsc28gYWRkIGRldGVjdGlvbiBmb3IgY29udGV4dCAxIGF2YWlsYWJpbGl0eS4KCk5vdGUgdGhh dCBjdXJyZW50bHkgdGhlcmUncyBubyBkcml2ZXIgaW50ZXJmYWNlIGZvciBzdWJtaXR0aW5nIGJ1 ZmZlcnMKdXNpbmcgdGhlIGhpZ2gtcHJpb3JpdHkgY29tbWFuZCBxdWV1ZSAoY29udGV4dCAxKS4K ClRlc3RpbmcgZG9uZToKQ2hhbmdlIHRoZSBkZWZhdWx0IGNvbnRleHQgZm9yIGNvbW1hbmQgc3Vi bWlzc2lvbiB0byAxIGluc3RlYWQgb2YgMCwKdmVyaWZ5IGJhc2ljIGRlc2t0b3AgZnVuY3Rpb25h bGl0eSBpbmNsdWRpbmcgZmF1bHR5IGNvbW1hbmQgaW5qZWN0aW9uIGFuZApyZWNvdmVyeS4KClNp Z25lZC1vZmYtYnk6IFRob21hcyBIZWxsc3Ryb20gPHRoZWxsc3Ryb21Adm13YXJlLmNvbT4KUmV2 aWV3ZWQtYnk6IEJyaWFuIFBhdWwgPGJyaWFucEB2bXdhcmUuY29tPgpSZXZpZXdlZC1ieTogRGVl cGFrIFJhd2F0IDxkcmF3YXRAdm13YXJlLmNvbT4KLS0tCiBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4 L2RldmljZV9pbmNsdWRlL3N2Z2FfcmVnLmggfCAxMiArKysrLQogZHJpdmVycy9ncHUvZHJtL3Zt d2dmeC92bXdnZnhfY21kYnVmLmMgICAgICAgICAgIHwgNTcgKysrKysrKysrKystLS0tLS0tLS0t LS0tCiBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuYyAgICAgICAgICAgICAgfCAg MiArCiAzIGZpbGVzIGNoYW5nZWQsIDM4IGluc2VydGlvbnMoKyksIDMzIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvZGV2aWNlX2luY2x1ZGUvc3ZnYV9y ZWcuaCBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvZGV2aWNlX2luY2x1ZGUvc3ZnYV9yZWcuaApp bmRleCA2ZTBjY2I3MGE3MDAuLjg4ZTcyYmY5YTUzNCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL3Ztd2dmeC9kZXZpY2VfaW5jbHVkZS9zdmdhX3JlZy5oCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS92bXdnZngvZGV2aWNlX2luY2x1ZGUvc3ZnYV9yZWcuaApAQCAtMzcyLDYgKzM3MiwxNCBAQCBT VkdBR3Vlc3RQdHI7CiAgKiBQQSwgbm90IGJpYXNlZCBieSB0aGUgb2Zmc2V0LiAgV2hlbiB0aGUg Y29tbWFuZCBidWZmZXIgaXMgZmluaXNoZWQKICAqIHRoZSBndWVzdCBzaG91bGQgbm90IHJlYWQg dGhlIG9mZnNldCBmaWVsZCBhcyB0aGVyZSBpcyBubyBndWFyYW50ZWUKICAqIHdoYXQgaXQgd2ls bCBzZXQgdG8uCisgKgorICogV2hlbiB0aGUgU1ZHQV9DQVBfSFBfQ01EX1FVRVVFIGNhcCBiaXQg aXMgc2V0IGEgbmV3IGNvbW1hbmQgcXVldWUKKyAqIFNWR0FfQ0JfQ09OVEVYVF8xIGlzIGF2YWls YWJsZS4gIENvbW1hbmRzIHN1Ym1pdHRlZCB0byB0aGlzIHF1ZXVlCisgKiB3aWxsIGJlIGV4ZWN1 dGVkIGFzIHF1aWNrbHkgYXMgcG9zc2libGUgYnkgdGhlIFNWR0EgZGV2aWNlCisgKiBwb3RlbnRp YWxseSBiZWZvcmUgYWxyZWFkeSBxdWV1ZWQgY29tbWFuZHMgb24gU1ZHQV9DQl9DT05URVhUXzAu CisgKiBUaGUgU1ZHQSBkZXZpY2UgZ3VhcmFudGVlcyB0aGF0IGFueSBjb21tYW5kIGJ1ZmZlcnMg c3VibWl0dGVkIHRvCisgKiBTVkdBX0NCX0NPTlRFWFRfMCB3aWxsIGJlIGV4ZWN1dGVkIGFmdGVy IGFueSBfYWxyZWFkeV8gc3VibWl0dGVkCisgKiBjb21tYW5kIGJ1ZmZlcnMgdG8gU1ZHQV9DQl9D T05URVhUXzEuCiAgKi8KIAogI2RlZmluZSBTVkdBX0NCX01BWF9TSVpFICg1MTIgKiAxMDI0KSAg LyogNTEyIEtCICovCkBAIC0zODIsNyArMzkwLDggQEAgU1ZHQUd1ZXN0UHRyOwogdHlwZWRlZiBl bnVtIHsKICAgIFNWR0FfQ0JfQ09OVEVYVF9ERVZJQ0UgPSAweDNmLAogICAgU1ZHQV9DQl9DT05U RVhUXzAgICAgICA9IDB4MCwKLSAgIFNWR0FfQ0JfQ09OVEVYVF9NQVggICAgPSAweDEsCisgICBT VkdBX0NCX0NPTlRFWFRfMSAgICAgID0gMHgxLCAvKiBTdXBwb3J0ZWQgd2l0aCBTVkdBX0NBUF9I UF9DTURfUVVFVUUgKi8KKyAgIFNWR0FfQ0JfQ09OVEVYVF9NQVggICAgPSAweDIsCiB9IFNWR0FD QkNvbnRleHQ7CiAKIApAQCAtNjg5LDYgKzY5OCw3IEBAIFNWR0FTaWduZWRQb2ludDsKICNkZWZp bmUgU1ZHQV9DQVBfQ01EX0JVRkZFUlNfMiAgICAgIDB4MDQwMDAwMDAKICNkZWZpbmUgU1ZHQV9D QVBfR0JPQkpFQ1RTICAgICAgICAgIDB4MDgwMDAwMDAKICNkZWZpbmUgU1ZHQV9DQVBfRFggICAg ICAgICAgICAgICAgIDB4MTAwMDAwMDAKKyNkZWZpbmUgU1ZHQV9DQVBfSFBfQ01EX1FVRVVFICAg ICAgIDB4MjAwMDAwMDAKIAogI2RlZmluZSBTVkdBX0NBUF9DTURfUkVTRVJWRUQgICAgICAgMHg4 MDAwMDAwMAogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9jbWRi dWYuYyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2NtZGJ1Zi5jCmluZGV4IGYyODMz MjRjZTU5OC4uOWY0NWQ1MDA0Y2FlIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4 L3Ztd2dmeF9jbWRidWYuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9jbWRi dWYuYwpAQCAtMTAxLDYgKzEwMSw3IEBAIHN0cnVjdCB2bXdfY21kYnVmX2NvbnRleHQgewogICog QGhhbmRsZTogRE1BIGFkZHJlc3MgaGFuZGxlIGZvciB0aGUgY29tbWFuZCBidWZmZXIgc3BhY2Ug aWYgQHVzaW5nX21vYiBpcwogICogZmFsc2UuIEltbXV0YWJsZS4KICAqIEBzaXplOiBUaGUgc2l6 ZSBvZiB0aGUgY29tbWFuZCBidWZmZXIgc3BhY2UuIEltbXV0YWJsZS4KKyAqIEBudW1fY29udGV4 dHM6IE51bWJlciBvZiBjb250ZXh0cyBhY3R1YWxseSBlbmFibGVkLgogICovCiBzdHJ1Y3Qgdm13 X2NtZGJ1Zl9tYW4gewogCXN0cnVjdCBtdXRleCBjdXJfbXV0ZXg7CkBAIC0xMjgsNiArMTI5LDcg QEAgc3RydWN0IHZtd19jbWRidWZfbWFuIHsKIAlib29sIGhhc19wb29sOwogCWRtYV9hZGRyX3Qg aGFuZGxlOwogCXNpemVfdCBzaXplOworCXUzMiBudW1fY29udGV4dHM7CiB9OwogCiAvKioKQEAg LTE4NSw3ICsxODcsNyBAQCBzdHJ1Y3Qgdm13X2NtZGJ1Zl9hbGxvY19pbmZvIHsKIAogLyogTG9v cCBvdmVyIGVhY2ggY29udGV4dCBpbiB0aGUgY29tbWFuZCBidWZmZXIgbWFuYWdlci4gKi8KICNk ZWZpbmUgZm9yX2VhY2hfY21kYnVmX2N0eChfbWFuLCBfaSwgX2N0eCkJCQkJXAotCWZvciAoX2kg PSAwLCBfY3R4ID0gJihfbWFuKS0+Y3R4WzBdOyAoX2kpIDwgU1ZHQV9DQl9DT05URVhUX01BWDsg XAorCWZvciAoX2kgPSAwLCBfY3R4ID0gJihfbWFuKS0+Y3R4WzBdOyAoX2kpIDwgKF9tYW4pLT5u dW1fY29udGV4dHM7IFwKIAkgICAgICsrKF9pKSwgKysoX2N0eCkpCiAKIHN0YXRpYyBpbnQgdm13 X2NtZGJ1Zl9zdGFydHN0b3Aoc3RydWN0IHZtd19jbWRidWZfbWFuICptYW4sIHUzMiBjb250ZXh0 LApAQCAtNTE0LDYgKzUxNiw3IEBAIHN0YXRpYyB2b2lkIHZtd19jbWRidWZfd29ya19mdW5jKHN0 cnVjdCB3b3JrX3N0cnVjdCAqd29yaykKIAlzdHJ1Y3QgbGlzdF9oZWFkIHJlc3RhcnRfaGVhZFtT VkdBX0NCX0NPTlRFWFRfTUFYXTsKIAlpbnQgaTsKIAlzdHJ1Y3Qgdm13X2NtZGJ1Zl9jb250ZXh0 ICpjdHg7CisJYm9vbCBnbG9iYWxfYmxvY2sgPSBmYWxzZTsKIAogCWZvcl9lYWNoX2NtZGJ1Zl9j dHgobWFuLCBpLCBjdHgpIHsKIAkJSU5JVF9MSVNUX0hFQUQoJnJlc3RhcnRfaGVhZFtpXSk7CkBA IC01MzEsNiArNTM0LDcgQEAgc3RhdGljIHZvaWQgdm13X2NtZGJ1Zl93b3JrX2Z1bmMoc3RydWN0 IHdvcmtfc3RydWN0ICp3b3JrKQogCiAJCWxpc3RfZGVsX2luaXQoJmVudHJ5LT5saXN0KTsKIAkJ cmVzdGFydFtlbnRyeS0+Y2JfY29udGV4dF0gPSB0cnVlOworCQlnbG9iYWxfYmxvY2sgPSB0cnVl OwogCiAJCWlmICghdm13X2NtZF9kZXNjcmliZShoZWFkZXIsICZlcnJvcl9jbWRfc2l6ZSwgJmNt ZF9uYW1lKSkgewogCQkJRFJNX0VSUk9SKCJVbmtub3duIGNvbW1hbmQgY2F1c2luZyBkZXZpY2Ug ZXJyb3IuXG4iKTsKQEAgLTU2NCwyMyArNTY4LDIxIEBAIHN0YXRpYyB2b2lkIHZtd19jbWRidWZf d29ya19mdW5jKHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yaykKIAkJY2JfaGRyLT5sZW5ndGggLT0g bmV3X3N0YXJ0X29mZnNldDsKIAkJY2JfaGRyLT5lcnJvck9mZnNldCA9IDA7CiAJCWNiX2hkci0+ b2Zmc2V0ID0gMDsKKwogCQlsaXN0X2FkZF90YWlsKCZlbnRyeS0+bGlzdCwgJnJlc3RhcnRfaGVh ZFtlbnRyeS0+Y2JfY29udGV4dF0pOwotCQltYW4tPmN0eFtlbnRyeS0+Y2JfY29udGV4dF0uYmxv Y2tfc3VibWlzc2lvbiA9IHRydWU7CiAJfQorCisJZm9yX2VhY2hfY21kYnVmX2N0eChtYW4sIGks IGN0eCkKKwkJbWFuLT5jdHhbaV0uYmxvY2tfc3VibWlzc2lvbiA9IHRydWU7CisKIAlzcGluX3Vu bG9jaygmbWFuLT5sb2NrKTsKIAotCS8qIFByZWVtcHQgYWxsIGNvbnRleHRzIHdpdGggZXJyb3Jz ICovCi0JZm9yX2VhY2hfY21kYnVmX2N0eChtYW4sIGksIGN0eCkgewotCQlpZiAoY3R4LT5ibG9j a19zdWJtaXNzaW9uICYmIHZtd19jbWRidWZfcHJlZW1wdChtYW4sIGkpKQotCQkJRFJNX0VSUk9S KCJGYWlsZWQgcHJlZW1wdGluZyBjb21tYW5kIGJ1ZmZlciAiCi0JCQkJICAiY29udGV4dCAldS5c biIsIGkpOwotCX0KKwkvKiBQcmVlbXB0IGFsbCBjb250ZXh0cyAqLworCWlmIChnbG9iYWxfYmxv Y2sgJiYgdm13X2NtZGJ1Zl9wcmVlbXB0KG1hbiwgMCkpCisJCURSTV9FUlJPUigiRmFpbGVkIHBy ZWVtcHRpbmcgY29tbWFuZCBidWZmZXIgY29udGV4dHNcbiIpOwogCiAJc3Bpbl9sb2NrKCZtYW4t PmxvY2spOwogCWZvcl9lYWNoX2NtZGJ1Zl9jdHgobWFuLCBpLCBjdHgpIHsKLQkJaWYgKCFjdHgt PmJsb2NrX3N1Ym1pc3Npb24pCi0JCQljb250aW51ZTsKLQogCQkvKiBNb3ZlIHByZWVtcHRlZCBj b21tYW5kIGJ1ZmZlcnMgdG8gdGhlIHByZWVtcHRlZCBxdWV1ZS4gKi8KIAkJdm13X2NtZGJ1Zl9j dHhfcHJvY2VzcyhtYW4sIGN0eCwgJmR1bW15KTsKIApAQCAtNTk0LDE5ICs1OTYsMTYgQEAgc3Rh dGljIHZvaWQgdm13X2NtZGJ1Zl93b3JrX2Z1bmMoc3RydWN0IHdvcmtfc3RydWN0ICp3b3JrKQog CQkgKiBGaW5hbGx5IGFkZCBhbGwgY29tbWFuZCBidWZmZXJzIGZpcnN0IGluIHRoZSBzdWJtaXR0 ZWQKIAkJICogcXVldWUsIHRvIHJlcnVuIHRoZW0uCiAJCSAqLwotCQlsaXN0X3NwbGljZV9pbml0 KCZyZXN0YXJ0X2hlYWRbaV0sICZjdHgtPnN1Ym1pdHRlZCk7CiAKIAkJY3R4LT5ibG9ja19zdWJt aXNzaW9uID0gZmFsc2U7CisJCWxpc3Rfc3BsaWNlX2luaXQoJnJlc3RhcnRfaGVhZFtpXSwgJmN0 eC0+c3VibWl0dGVkKTsKIAl9CiAKIAl2bXdfY21kYnVmX21hbl9wcm9jZXNzKG1hbik7CiAJc3Bp bl91bmxvY2soJm1hbi0+bG9jayk7CiAKLQlmb3JfZWFjaF9jbWRidWZfY3R4KG1hbiwgaSwgY3R4 KSB7Ci0JCWlmIChyZXN0YXJ0W2ldICYmIHZtd19jbWRidWZfc3RhcnRzdG9wKG1hbiwgaSwgdHJ1 ZSkpCi0JCQlEUk1fRVJST1IoIkZhaWxlZCByZXN0YXJ0aW5nIGNvbW1hbmQgYnVmZmVyICIKLQkJ CQkgICJjb250ZXh0ICV1LlxuIiwgaSk7Ci0JfQorCWlmIChnbG9iYWxfYmxvY2sgJiYgdm13X2Nt ZGJ1Zl9zdGFydHN0b3AobWFuLCAwLCB0cnVlKSkKKwkJRFJNX0VSUk9SKCJGYWlsZWQgcmVzdGFy dGluZyBjb21tYW5kIGJ1ZmZlciBjb250ZXh0c1xuIik7CiAKIAkvKiBTZW5kIGEgbmV3IGZlbmNl IGluIGNhc2Ugb25lIHdhcyByZW1vdmVkICovCiAJaWYgKHNlbmRfZmVuY2UpIHsKQEAgLTEzMDcs NiArMTMwNiw4IEBAIHN0cnVjdCB2bXdfY21kYnVmX21hbiAqdm13X2NtZGJ1Zl9tYW5fY3JlYXRl KHN0cnVjdCB2bXdfcHJpdmF0ZSAqZGV2X3ByaXYpCiAJaWYgKCFtYW4pCiAJCXJldHVybiBFUlJf UFRSKC1FTk9NRU0pOwogCisJbWFuLT5udW1fY29udGV4dHMgPSAoZGV2X3ByaXYtPmNhcGFiaWxp dGllcyAmIFNWR0FfQ0FQX0hQX0NNRF9RVUVVRSkgPworCQkyIDogMTsKIAltYW4tPmhlYWRlcnMg PSBkbWFfcG9vbF9jcmVhdGUoInZtd2dmeCBjbWRidWYiLAogCQkJCSAgICAgICAmZGV2X3ByaXYt PmRldi0+cGRldi0+ZGV2LAogCQkJCSAgICAgICBzaXplb2YoU1ZHQUNCSGVhZGVyKSwKQEAgLTEz NDEsMTQgKzEzNDIsMTEgQEAgc3RydWN0IHZtd19jbWRidWZfbWFuICp2bXdfY21kYnVmX21hbl9j cmVhdGUoc3RydWN0IHZtd19wcml2YXRlICpkZXZfcHJpdikKIAlJTklUX1dPUksoJm1hbi0+d29y aywgJnZtd19jbWRidWZfd29ya19mdW5jKTsKIAl2bXdfZ2VuZXJpY193YWl0ZXJfYWRkKGRldl9w cml2LCBTVkdBX0lSUUZMQUdfRVJST1IsCiAJCQkgICAgICAgJmRldl9wcml2LT5lcnJvcl93YWl0 ZXJzKTsKLQlmb3JfZWFjaF9jbWRidWZfY3R4KG1hbiwgaSwgY3R4KSB7Ci0JCXJldCA9IHZtd19j bWRidWZfc3RhcnRzdG9wKG1hbiwgaSwgdHJ1ZSk7Ci0JCWlmIChyZXQpIHsKLQkJCURSTV9FUlJP UigiRmFpbGVkIHN0YXJ0aW5nIGNvbW1hbmQgYnVmZmVyICIKLQkJCQkgICJjb250ZXh0ICV1Llxu IiwgaSk7Ci0JCQl2bXdfY21kYnVmX21hbl9kZXN0cm95KG1hbik7Ci0JCQlyZXR1cm4gRVJSX1BU UihyZXQpOwotCQl9CisJcmV0ID0gdm13X2NtZGJ1Zl9zdGFydHN0b3AobWFuLCAwLCB0cnVlKTsK KwlpZiAocmV0KSB7CisJCURSTV9FUlJPUigiRmFpbGVkIHN0YXJ0aW5nIGNvbW1hbmQgYnVmZmVy IGNvbnRleHRzXG4iKTsKKwkJdm13X2NtZGJ1Zl9tYW5fZGVzdHJveShtYW4pOworCQlyZXR1cm4g RVJSX1BUUihyZXQpOwogCX0KIAogCXJldHVybiBtYW47CkBAIC0xMzk4LDE2ICsxMzk2LDExIEBA IHZvaWQgdm13X2NtZGJ1Zl9yZW1vdmVfcG9vbChzdHJ1Y3Qgdm13X2NtZGJ1Zl9tYW4gKm1hbikK ICAqLwogdm9pZCB2bXdfY21kYnVmX21hbl9kZXN0cm95KHN0cnVjdCB2bXdfY21kYnVmX21hbiAq bWFuKQogewotCXN0cnVjdCB2bXdfY21kYnVmX2NvbnRleHQgKmN0eDsKLQl1bnNpZ25lZCBpbnQg aTsKLQogCVdBUk5fT05fT05DRShtYW4tPmhhc19wb29sKTsKIAkodm9pZCkgdm13X2NtZGJ1Zl9p ZGxlKG1hbiwgZmFsc2UsIDEwKkhaKTsKIAotCWZvcl9lYWNoX2NtZGJ1Zl9jdHgobWFuLCBpLCBj dHgpCi0JCWlmICh2bXdfY21kYnVmX3N0YXJ0c3RvcChtYW4sIGksIGZhbHNlKSkKLQkJCURSTV9F UlJPUigiRmFpbGVkIHN0b3BwaW5nIGNvbW1hbmQgYnVmZmVyICIKLQkJCQkgICJjb250ZXh0ICV1 LlxuIiwgaSk7CisJaWYgKHZtd19jbWRidWZfc3RhcnRzdG9wKG1hbiwgMCwgZmFsc2UpKQorCQlE Uk1fRVJST1IoIkZhaWxlZCBzdG9wcGluZyBjb21tYW5kIGJ1ZmZlciBjb250ZXh0cy5cbiIpOwog CiAJdm13X2dlbmVyaWNfd2FpdGVyX3JlbW92ZShtYW4tPmRldl9wcml2LCBTVkdBX0lSUUZMQUdf RVJST1IsCiAJCQkJICAmbWFuLT5kZXZfcHJpdi0+ZXJyb3Jfd2FpdGVycyk7CmRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuYyBiL2RyaXZlcnMvZ3B1L2RybS92 bXdnZngvdm13Z2Z4X2Rydi5jCmluZGV4IDE4NDM0MGQ0ODZjMy4uNTA1NWU1ZjY4YzRmIDEwMDY0 NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuYworKysgYi9kcml2ZXJz L2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9kcnYuYwpAQCAtMzAxLDYgKzMwMSw4IEBAIHN0YXRpYyB2 b2lkIHZtd19wcmludF9jYXBhYmlsaXRpZXModWludDMyX3QgY2FwYWJpbGl0aWVzKQogCQlEUk1f SU5GTygiICBHdWVzdCBCYWNrZWQgUmVzb3VyY2VzLlxuIik7CiAJaWYgKGNhcGFiaWxpdGllcyAm IFNWR0FfQ0FQX0RYKQogCQlEUk1fSU5GTygiICBEWCBGZWF0dXJlcy5cbiIpOworCWlmIChjYXBh YmlsaXRpZXMgJiBTVkdBX0NBUF9IUF9DTURfUVVFVUUpCisJCURSTV9JTkZPKCIgIEhQIENvbW1h bmQgUXVldWUuXG4iKTsKIH0KIAogLyoqCi0tIAoyLjE0LjMKCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRl dmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9t YWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=