From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matt Roper Subject: [RFC 3/8] drm/i915/ivb: Move WaCxSRDisabledForSpriteScaling w/a to atomic check Date: Wed, 1 Jul 2015 19:25:56 -0700 Message-ID: <1435803961-30079-4-git-send-email-matthew.d.roper@intel.com> References: <1435803961-30079-1-git-send-email-matthew.d.roper@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id 4C9587213F for ; Wed, 1 Jul 2015 19:26:53 -0700 (PDT) In-Reply-To: <1435803961-30079-1-git-send-email-matthew.d.roper@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 RGV0ZXJtaW5lIHdoZXRoZXIgd2UgbmVlZCB0byBhcHBseSB0aGlzIHdvcmthcm91bmQgYXQgYXRv bWljIGNoZWNrIHRpbWUKYW5kIGp1c3Qgc2V0IGEgZmxhZyB0aGF0IHdpbGwgYmUgdXNlZCBieSB0 aGUgbWFpbiB3YXRlcm1hcmsgdXBkYXRlCnJvdXRpbmUuCgpNb3ZpbmcgdGhpcyB3b3JrYXJvdW5k IGludG8gdGhlIGF0b21pYyBmcmFtZXdvcmsgcmVkdWNlcwppbGtfdXBkYXRlX3Nwcml0ZV93bSgp IHRvIGp1c3QgYSBzdGFuZGFyZCB3YXRlcm1hcmsgdXBkYXRlLCBzbyBkcm9wIGl0CmNvbXBsZXRl bHkgYW5kIGp1c3QgZW5zdXJlIHRoYXQgaWxrX3VwZGF0ZV93bSgpIGlzIGNhbGxlZCB3aGVuZXZl ciBhCnNwcml0ZSBwbGFuZSBpcyB1cGRhdGVkIGluIGEgd2F5IHRoYXQgd291bGQgYWZmZWN0IHdh dGVybWFya3MuCgpTaWduZWQtb2ZmLWJ5OiBNYXR0IFJvcGVyIDxtYXR0aGV3LmQucm9wZXJAaW50 ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F0b21pYy5jICB8ICAxICsK IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyB8IDQwICsrKysrKysrKysrKysr KysrKysrKysrKysrKysrLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2Lmgg ICAgIHwgIDMgKysrCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jICAgICAgfCAzNSAr KysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9zcHJpdGUuYyAgfCAgOCAtLS0tLS0tLQogNSBmaWxlcyBjaGFuZ2VkLCA0OSBpbnNlcnRpb25z KCspLCAzOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9hdG9taWMuYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F0b21pYy5jCmluZGV4 IDBhZWNlZDguLjY2NzM1MTYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVs X2F0b21pYy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2F0b21pYy5jCkBAIC0y MzAsNiArMjMwLDcgQEAgaW50ZWxfY3J0Y19kdXBsaWNhdGVfc3RhdGUoc3RydWN0IGRybV9jcnRj ICpjcnRjKQogCV9fZHJtX2F0b21pY19oZWxwZXJfY3J0Y19kdXBsaWNhdGVfc3RhdGUoY3J0Yywg JmNydGNfc3RhdGUtPmJhc2UpOwogCiAJY3J0Y19zdGF0ZS0+YmFzZS5jcnRjID0gY3J0YzsKKwlj cnRjX3N0YXRlLT5kaXNhYmxlX2xwX3dtID0gZmFsc2U7CiAKIAlyZXR1cm4gJmNydGNfc3RhdGUt PmJhc2U7CiB9CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5 LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMKaW5kZXggNWRlMWRlZC4u NDZlZjk4MSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5j CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYwpAQCAtMTE1NjAsMjMg KzExNTYwLDM4IEBAIHJldHJ5Ogogc3RhdGljIGJvb2wgaW50ZWxfd21fbmVlZF91cGRhdGUoc3Ry dWN0IGRybV9wbGFuZSAqcGxhbmUsCiAJCQkJIHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKnN0YXRl KQogewotCS8qIFVwZGF0ZSB3YXRlcm1hcmtzIG9uIHRpbGluZyBjaGFuZ2VzLiAqLworCXN0cnVj dCBpbnRlbF9wbGFuZV9zdGF0ZSAqbmV3ID0gdG9faW50ZWxfcGxhbmVfc3RhdGUoc3RhdGUpOwor CXN0cnVjdCBpbnRlbF9wbGFuZV9zdGF0ZSAqY3VyID0gdG9faW50ZWxfcGxhbmVfc3RhdGUocGxh bmUtPnN0YXRlKTsKKworCS8qIFVwZGF0ZSB3YXRlcm1hcmtzIG9uIHRpbGluZyBvciBzaXplIGNo YW5nZXMuICovCiAJaWYgKCFwbGFuZS0+c3RhdGUtPmZiIHx8ICFzdGF0ZS0+ZmIgfHwKIAkgICAg cGxhbmUtPnN0YXRlLT5mYi0+bW9kaWZpZXJbMF0gIT0gc3RhdGUtPmZiLT5tb2RpZmllclswXSB8 fAotCSAgICBwbGFuZS0+c3RhdGUtPnJvdGF0aW9uICE9IHN0YXRlLT5yb3RhdGlvbikKLQkJcmV0 dXJuIHRydWU7Ci0KLQlpZiAocGxhbmUtPnN0YXRlLT5jcnRjX3cgIT0gc3RhdGUtPmNydGNfdykK KwkgICAgcGxhbmUtPnN0YXRlLT5yb3RhdGlvbiAhPSBzdGF0ZS0+cm90YXRpb24gfHwKKwkgICAg ZHJtX3JlY3Rfd2lkdGgoJm5ldy0+c3JjKSAhPSBkcm1fcmVjdF93aWR0aCgmY3VyLT5zcmMpIHx8 CisJICAgIGRybV9yZWN0X2hlaWdodCgmbmV3LT5zcmMpICE9IGRybV9yZWN0X2hlaWdodCgmY3Vy LT5zcmMpIHx8CisJICAgIGRybV9yZWN0X3dpZHRoKCZuZXctPmRzdCkgIT0gZHJtX3JlY3Rfd2lk dGgoJmN1ci0+ZHN0KSB8fAorCSAgICBkcm1fcmVjdF9oZWlnaHQoJm5ldy0+ZHN0KSAhPSBkcm1f cmVjdF9oZWlnaHQoJmN1ci0+ZHN0KSkKIAkJcmV0dXJuIHRydWU7CiAKIAlyZXR1cm4gZmFsc2U7 CiB9CiAKK3N0YXRpYyBib29sIG5lZWRzX3NjYWxpbmcoc3RydWN0IGludGVsX3BsYW5lX3N0YXRl ICpzdGF0ZSkKK3sKKwlpbnQgc3JjX3cgPSBkcm1fcmVjdF93aWR0aCgmc3RhdGUtPnNyYykgPj4g MTY7CisJaW50IHNyY19oID0gZHJtX3JlY3RfaGVpZ2h0KCZzdGF0ZS0+c3JjKSA+PiAxNjsKKwlp bnQgZHN0X3cgPSBkcm1fcmVjdF93aWR0aCgmc3RhdGUtPmRzdCk7CisJaW50IGRzdF9oID0gZHJt X3JlY3RfaGVpZ2h0KCZzdGF0ZS0+ZHN0KTsKKworCXJldHVybiAoc3JjX3cgIT0gZHN0X3cgfHwg c3JjX2ggIT0gZHN0X2gpOworfQorCiBpbnQgaW50ZWxfcGxhbmVfYXRvbWljX2NhbGNfY2hhbmdl cyhzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCiAJCQkJICAgIHN0cnVjdCBkcm1f cGxhbmVfc3RhdGUgKnBsYW5lX3N0YXRlKQogewogCXN0cnVjdCBkcm1fY3J0YyAqY3J0YyA9IGNy dGNfc3RhdGUtPmNydGM7CiAJc3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMgPSB0b19pbnRl bF9jcnRjKGNydGMpOworCXN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlICpjc3RhdGUgPSB0b19pbnRl bF9jcnRjX3N0YXRlKGNydGNfc3RhdGUpOwogCXN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lID0gcGxh bmVfc3RhdGUtPnBsYW5lOwogCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBjcnRjLT5kZXY7CiAJ c3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKQEAg LTExNTg3LDcgKzExNjAyLDYgQEAgaW50IGludGVsX3BsYW5lX2F0b21pY19jYWxjX2NoYW5nZXMo c3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLAogCWJvb2wgbW9kZV9jaGFuZ2VkID0g bmVlZHNfbW9kZXNldChjcnRjX3N0YXRlKTsKIAlib29sIHdhc19jcnRjX2VuYWJsZWQgPSBjcnRj LT5zdGF0ZS0+YWN0aXZlOwogCWJvb2wgaXNfY3J0Y19lbmFibGVkID0gY3J0Y19zdGF0ZS0+YWN0 aXZlOwotCiAJYm9vbCB0dXJuX29mZiwgdHVybl9vbiwgdmlzaWJsZSwgd2FzX3Zpc2libGU7CiAJ c3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIgPSBwbGFuZV9zdGF0ZS0+ZmI7CiAKQEAgLTExNzA1 LDExICsxMTcxOSwyMyBAQCBpbnQgaW50ZWxfcGxhbmVfYXRvbWljX2NhbGNfY2hhbmdlcyhzdHJ1 Y3QgZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGUsCiAJY2FzZSBEUk1fUExBTkVfVFlQRV9DVVJT T1I6CiAJCWJyZWFrOwogCWNhc2UgRFJNX1BMQU5FX1RZUEVfT1ZFUkxBWToKLQkJaWYgKHR1cm5f b2ZmICYmICFtb2RlX2NoYW5nZWQpIHsKKwkJLyoKKwkJICogV2FDeFNSRGlzYWJsZWRGb3JTcHJp dGVTY2FsaW5nOml2YgorCQkgKgorCQkgKiBhdG9taWMudXBkYXRlX3dtIHdhcyBhbHJlYWR5IHNl dCBhYm92ZSwgc28gdGhpcyBmbGFnIHdpbGwKKwkJICogdGFrZSBlZmZlY3Qgd2hlbiB3ZSBjb21t aXQgYW5kIHByb2dyYW0gd2F0ZXJtYXJrcy4KKwkJICovCisJCWlmIChJU19JVllCUklER0UoZGV2 KSAmJgorCQkgICAgbmVlZHNfc2NhbGluZyh0b19pbnRlbF9wbGFuZV9zdGF0ZShwbGFuZV9zdGF0 ZSkpICYmCisJCSAgICAhbmVlZHNfc2NhbGluZyhvbGRfcGxhbmVfc3RhdGUpKSB7CisJCQljc3Rh dGUtPmRpc2FibGVfbHBfd20gPSB0cnVlOworCQl9IGVsc2UgaWYgKHR1cm5fb2ZmICYmICFtb2Rl X2NoYW5nZWQpIHsKIAkJCWludGVsX2NydGMtPmF0b21pYy53YWl0X3ZibGFuayA9IHRydWU7CiAJ CQlpbnRlbF9jcnRjLT5hdG9taWMudXBkYXRlX3Nwcml0ZV93YXRlcm1hcmtzIHw9CiAJCQkJMSA8 PCBpOwogCQl9CisKKwkJYnJlYWs7CiAJfQogCXJldHVybiAwOwogfQpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZHJ2LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kcnYuaAppbmRleCA5ZmZhY2MwLi5jZGM3ZDZkIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kcnYuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kcnYu aApAQCAtNDYwLDYgKzQ2MCw5IEBAIHN0cnVjdCBpbnRlbF9jcnRjX3N0YXRlIHsKIAogCS8qIHcv YSBmb3Igd2FpdGluZyAyIHZibGFua3MgZHVyaW5nIGNydGMgZW5hYmxlICovCiAJZW51bSBwaXBl IGhzd193b3JrYXJvdW5kX3BpcGU7CisKKwkvKiBJVkIgc3ByaXRlIHNjYWxpbmcgdy9hIChXYUN4 U1JEaXNhYmxlZEZvclNwcml0ZVNjYWxpbmc6aXZiKSAqLworCWJvb2wgZGlzYWJsZV9scF93bTsK IH07CiAKIHN0cnVjdCB2bHZfd21fc3RhdGUgewpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfcG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3BtLmMKaW5kZXgg YTYzOWNjOS4uZDA2MWZjZCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxf cG0uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9wbS5jCkBAIC0zNzIxLDYgKzM3 MjEsMTggQEAgc3RhdGljIHZvaWQgaWxrX3VwZGF0ZV93bShzdHJ1Y3QgZHJtX2NydGMgKmNydGMp CiAJc3RydWN0IGludGVsX3BpcGVfd20gbHBfd21fMV8yID0ge30sIGxwX3dtXzVfNiA9IHt9LCAq YmVzdF9scF93bTsKIAlzdHJ1Y3QgaW50ZWxfd21fY29uZmlnIGNvbmZpZyA9IHt9OwogCisJLyoK KwkgKiBJVkIgd29ya2Fyb3VuZDogbXVzdCBkaXNhYmxlIGxvdyBwb3dlciB3YXRlcm1hcmtzIGZv ciBhdCBsZWFzdAorCSAqIG9uZSBmcmFtZSBiZWZvcmUgZW5hYmxpbmcgc2NhbGluZy4gIExQIHdh dGVybWFya3MgY2FuIGJlIHJlLWVuYWJsZWQKKwkgKiB3aGVuIHNjYWxpbmcgaXMgZGlzYWJsZWQu CisJICoKKwkgKiBXYUN4U1JEaXNhYmxlZEZvclNwcml0ZVNjYWxpbmc6aXZiCisJICovCisJaWYg KGNzdGF0ZS0+ZGlzYWJsZV9scF93bSkgeworCQlpbGtfZGlzYWJsZV9scF93bShkZXYpOworCQlp bnRlbF93YWl0X2Zvcl92YmxhbmsoZGV2LCBpbnRlbF9jcnRjLT5waXBlKTsKKwl9CisKIAlpbnRl bF9jb21wdXRlX3BpcGVfd20oY3N0YXRlLCAmcGlwZV93bSk7CiAKIAlpZiAoIW1lbWNtcCgmaW50 ZWxfY3J0Yy0+d20uYWN0aXZlLCAmcGlwZV93bSwgc2l6ZW9mKHBpcGVfd20pKSkKQEAgLTM3NTIs MjggKzM3NjQsNiBAQCBzdGF0aWMgdm9pZCBpbGtfdXBkYXRlX3dtKHN0cnVjdCBkcm1fY3J0YyAq Y3J0YykKIAlpbGtfd3JpdGVfd21fdmFsdWVzKGRldl9wcml2LCAmcmVzdWx0cyk7CiB9CiAKLXN0 YXRpYyB2b2lkCi1pbGtfdXBkYXRlX3Nwcml0ZV93bShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwK LQkJICAgICBzdHJ1Y3QgZHJtX2NydGMgKmNydGMsCi0JCSAgICAgdWludDMyX3Qgc3ByaXRlX3dp ZHRoLCB1aW50MzJfdCBzcHJpdGVfaGVpZ2h0LAotCQkgICAgIGludCBwaXhlbF9zaXplLCBib29s IGVuYWJsZWQsIGJvb2wgc2NhbGVkKQotewotCXN0cnVjdCBkcm1fZGV2aWNlICpkZXYgPSBwbGFu ZS0+ZGV2OwotCXN0cnVjdCBpbnRlbF9wbGFuZSAqaW50ZWxfcGxhbmUgPSB0b19pbnRlbF9wbGFu ZShwbGFuZSk7Ci0KLQkvKgotCSAqIElWQiB3b3JrYXJvdW5kOiBtdXN0IGRpc2FibGUgbG93IHBv d2VyIHdhdGVybWFya3MgZm9yIGF0IGxlYXN0Ci0JICogb25lIGZyYW1lIGJlZm9yZSBlbmFibGlu ZyBzY2FsaW5nLiAgTFAgd2F0ZXJtYXJrcyBjYW4gYmUgcmUtZW5hYmxlZAotCSAqIHdoZW4gc2Nh bGluZyBpcyBkaXNhYmxlZC4KLQkgKgotCSAqIFdhQ3hTUkRpc2FibGVkRm9yU3ByaXRlU2NhbGlu ZzppdmIKLQkgKi8KLQlpZiAoSVNfSVZZQlJJREdFKGRldikgJiYgc2NhbGVkICYmIGlsa19kaXNh YmxlX2xwX3dtKGRldikpCi0JCWludGVsX3dhaXRfZm9yX3ZibGFuayhkZXYsIGludGVsX3BsYW5l LT5waXBlKTsKLQotCWlsa191cGRhdGVfd20oY3J0Yyk7Ci19Ci0KIHN0YXRpYyB2b2lkIHNrbF9w aXBlX3dtX2FjdGl2ZV9zdGF0ZSh1aW50MzJfdCB2YWwsCiAJCQkJICAgICBzdHJ1Y3Qgc2tsX3Bp cGVfd20gKmFjdGl2ZSwKIAkJCQkgICAgIGJvb2wgaXNfdHJhbnN3bSwKQEAgLTcwNDUsNyArNzAz NSw2IEBAIHZvaWQgaW50ZWxfaW5pdF9wbShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2KQogCQkgICAg KCFJU19HRU41KGRldikgJiYgZGV2X3ByaXYtPndtLnByaV9sYXRlbmN5WzBdICYmCiAJCSAgICAg ZGV2X3ByaXYtPndtLnNwcl9sYXRlbmN5WzBdICYmIGRldl9wcml2LT53bS5jdXJfbGF0ZW5jeVsw XSkpIHsKIAkJCWRldl9wcml2LT5kaXNwbGF5LnVwZGF0ZV93bSA9IGlsa191cGRhdGVfd207Ci0J CQlkZXZfcHJpdi0+ZGlzcGxheS51cGRhdGVfc3ByaXRlX3dtID0gaWxrX3VwZGF0ZV9zcHJpdGVf d207CiAJCX0gZWxzZSB7CiAJCQlEUk1fREVCVUdfS01TKCJGYWlsZWQgdG8gcmVhZCBkaXNwbGF5 IHBsYW5lIGxhdGVuY3kuICIKIAkJCQkgICAgICAiRGlzYWJsZSBDeFNSXG4iKTsKZGlmZiAtLWdp dCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5jIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfc3ByaXRlLmMKaW5kZXggY2QyMTUyNS4uY2M4M2EyYyAxMDA2NDQKLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMKKysrIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaW50ZWxfc3ByaXRlLmMKQEAgLTUyOSwxMCArNTI5LDYgQEAgaXZiX3VwZGF0ZV9wbGFu ZShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwgc3RydWN0IGRybV9jcnRjICpjcnRjLAogCWlmIChJ U19IQVNXRUxMKGRldikgfHwgSVNfQlJPQURXRUxMKGRldikpCiAJCXNwcmN0bCB8PSBTUFJJVEVf UElQRV9DU0NfRU5BQkxFOwogCi0JaW50ZWxfdXBkYXRlX3Nwcml0ZV93YXRlcm1hcmtzKHBsYW5l LCBjcnRjLCBzcmNfdywgc3JjX2gsIHBpeGVsX3NpemUsCi0JCQkJICAgICAgIHRydWUsCi0JCQkJ ICAgICAgIHNyY193ICE9IGNydGNfdyB8fCBzcmNfaCAhPSBjcnRjX2gpOwotCiAJLyogU2l6ZXMg YXJlIDAgYmFzZWQgKi8KIAlzcmNfdy0tOwogCXNyY19oLS07CkBAIC02NjYsMTAgKzY2Miw2IEBA IGlsa191cGRhdGVfcGxhbmUoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsIHN0cnVjdCBkcm1fY3J0 YyAqY3J0YywKIAlpZiAoSVNfR0VONihkZXYpKQogCQlkdnNjbnRyIHw9IERWU19UUklDS0xFX0ZF RURfRElTQUJMRTsgLyogbXVzdCBkaXNhYmxlICovCiAKLQlpbnRlbF91cGRhdGVfc3ByaXRlX3dh dGVybWFya3MocGxhbmUsIGNydGMsIHNyY193LCBzcmNfaCwKLQkJCQkgICAgICAgcGl4ZWxfc2l6 ZSwgdHJ1ZSwKLQkJCQkgICAgICAgc3JjX3cgIT0gY3J0Y193IHx8IHNyY19oICE9IGNydGNfaCk7 Ci0KIAkvKiBTaXplcyBhcmUgMCBiYXNlZCAqLwogCXNyY193LS07CiAJc3JjX2gtLTsKLS0gCjIu MS40CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRl bC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=