From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michel Thierry Subject: [PATCH v4 02/18] drm/i915/gen8: Make pdp allocation more dynamic Date: Tue, 7 Jul 2015 16:14:47 +0100 Message-ID: <1436282103-5854-3-git-send-email-michel.thierry@intel.com> References: <1436282103-5854-1-git-send-email-michel.thierry@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTP id 43B3D6EA3C for ; Tue, 7 Jul 2015 08:15:07 -0700 (PDT) In-Reply-To: <1436282103-5854-1-git-send-email-michel.thierry@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 Cc: akash.goel@intel.com List-Id: intel-gfx@lists.freedesktop.org VGhpcyB0cmFuc2l0aW9uYWwgcGF0Y2ggZG9lc24ndCBkbyBtdWNoIGZvciB0aGUgZXhpc3Rpbmcg Y29kZS4gSG93ZXZlciwKaXQgc2hvdWxkIG1ha2UgdXBjb21pbmcgcGF0Y2hlcyB0byB1c2UgdGhl IGZ1bGwgNDhiIGFkZHJlc3Mgc3BhY2UgYSBiaXQKZWFzaWVyLgoKdjI6IFJlbmFtZWQgIHBkcF9m cmVlIHRvIGJlIHNpbWlsYXIgdG8gIHBkL3B0ICh1bm1hcF9hbmRfZnJlZV9wZHApLgp2MzogVG8g ZmFjaWxpdGF0ZSB0ZXN0aW5nLCA0OGIgbW9kZSB3aWxsIGJlIGF2YWlsYWJsZSBvbiBCcm9hZHdl bGwgYW5kCkdFTjkrLCB3aGVuIGk5MTUuZW5hYmxlX3BwZ3R0ID0gMy4KdjQ6IFJlYmFzZSBhZnRl ciBzL3BhZ2VfdGFibGVzL3BhZ2VfdGFibGUvLCBhZGRlZCBleHRyYSBpbmZvcm1hdGlvbgphYm91 dCA0LWxldmVsIHBhZ2UgdGFibGUgZm9ybWF0cyBhbmQgdXNlIElTX0VOQUJMRUQgbWFjcm8uCnY1 OiBDaGVjayBDT05GSUdfWDg2XzY0IGluc3RlYWQgb2YgQ09ORklHXzY0QklULgp2NjogUmViYXNl IGFmdGVyIE1pa2EncyBwcGd0dCBjbGVhbnVwIC8gc2NyYXRjaCBtZXJnZSBwYXRjaCBzZXJpZXMs IGFuZApmb2xsb3cKaGlzIG5vbWVuY2xhdHVyZSBpbiBwZHAgZnVuY3Rpb25zICh0aGVyZSBpcyBu byBhbGxvY19wZHAgeWV0KS4Kdjc6IFJlYmFzZSBhZnRlciBtZXJnZWQgdmVyc2lvbiBvZiBNaWth J3MgcHBndHQgY2xlYW51cCBwYXRjaCBzZXJpZXMuCnY4OiBSZWJhc2UgYWZ0ZXIgZmluYWwgbWVy Z2VkIHZlcnNpb24gb2YgTWlrYSdzIHBwZ3R0L3NjcmF0Y2ggcGF0Y2hlcy4Kdjk6IEludHJvZHVj ZSBQTUw0IChhbmQgNDgtYml0IGNoZWNrcykgdW50aWwgbmV4dCBwYXRjaCAoQWthc2gpLgoKU2ln bmVkLW9mZi1ieTogQmVuIFdpZGF3c2t5IDxiZW5AYndpZGF3c2submV0PgpTaWduZWQtb2ZmLWJ5 OiBNaWNoZWwgVGhpZXJyeSA8bWljaGVsLnRoaWVycnlAaW50ZWwuY29tPiAodjIrKQotLS0KIGRy aXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jIHwgODIgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrLS0tLS0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0Lmgg fCAxMCArKystLQogMiBmaWxlcyBjaGFuZ2VkLCA3NCBpbnNlcnRpb25zKCspLCAxOCBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jCmluZGV4IDcxMmNhMzQuLjRlMTUw MWEgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jCkBAIC01MjIsNiArNTIyLDQzIEBA IHN0YXRpYyB2b2lkIGdlbjhfaW5pdGlhbGl6ZV9wZChzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNl ICp2bSwKIAlmaWxsX3B4KHZtLT5kZXYsIHBkLCBzY3JhdGNoX3BkZSk7CiB9CiAKK3N0YXRpYyBp bnQgX19wZHBfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAorCQkgICAgICBzdHJ1Y3QgaTkx NV9wYWdlX2RpcmVjdG9yeV9wb2ludGVyICpwZHApCit7CisJc2l6ZV90IHBkcGVzID0gSTkxNV9Q RFBFU19QRVJfUERQKGRldik7CisKKwlwZHAtPnVzZWRfcGRwZXMgPSBrY2FsbG9jKEJJVFNfVE9f TE9OR1MocGRwZXMpLAorCQkJCSAgc2l6ZW9mKHVuc2lnbmVkIGxvbmcpLAorCQkJCSAgR0ZQX0tF Uk5FTCk7CisJaWYgKCFwZHAtPnVzZWRfcGRwZXMpCisJCXJldHVybiAtRU5PTUVNOworCisJcGRw LT5wYWdlX2RpcmVjdG9yeSA9IGtjYWxsb2MocGRwZXMsIHNpemVvZigqcGRwLT5wYWdlX2RpcmVj dG9yeSksCisJCQkJICAgICAgR0ZQX0tFUk5FTCk7CisJaWYgKCFwZHAtPnBhZ2VfZGlyZWN0b3J5 KSB7CisJCWtmcmVlKHBkcC0+dXNlZF9wZHBlcyk7CisJCS8qIHRoZSBQRFAgbWlnaHQgYmUgdGhl IHN0YXRpY2FsbHkgYWxsb2NhdGVkIHRvcCBsZXZlbC4gS2VlcCBpdAorCQkgKiBhcyBjbGVhbiBh cyBwb3NzaWJsZSAqLworCQlwZHAtPnVzZWRfcGRwZXMgPSBOVUxMOworCQlyZXR1cm4gLUVOT01F TTsKKwl9CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQgX19wZHBfZmluaShzdHJ1Y3Qg aTkxNV9wYWdlX2RpcmVjdG9yeV9wb2ludGVyICpwZHApCit7CisJa2ZyZWUocGRwLT51c2VkX3Bk cGVzKTsKKwlrZnJlZShwZHAtPnBhZ2VfZGlyZWN0b3J5KTsKKwlwZHAtPnBhZ2VfZGlyZWN0b3J5 ID0gTlVMTDsKK30KKworc3RhdGljIHZvaWQgZnJlZV9wZHAoc3RydWN0IGRybV9kZXZpY2UgKmRl diwKKwkJICAgICBzdHJ1Y3QgaTkxNV9wYWdlX2RpcmVjdG9yeV9wb2ludGVyICpwZHApCit7CisJ X19wZHBfZmluaShwZHApOworfQorCiAvKiBCcm9hZHdlbGwgUGFnZSBEaXJlY3RvcnkgUG9pbnRl ciBEZXNjcmlwdG9ycyAqLwogc3RhdGljIGludCBnZW44X3dyaXRlX3BkcChzdHJ1Y3QgZHJtX2k5 MTVfZ2VtX3JlcXVlc3QgKnJlcSwKIAkJCSAgdW5zaWduZWQgZW50cnksCkBAIC03MjAsNyArNzU3 LDggQEAgc3RhdGljIHZvaWQgZ2VuOF9wcGd0dF9jbGVhbnVwKHN0cnVjdCBpOTE1X2FkZHJlc3Nf c3BhY2UgKnZtKQogCQljb250YWluZXJfb2Yodm0sIHN0cnVjdCBpOTE1X2h3X3BwZ3R0LCBiYXNl KTsKIAlpbnQgaTsKIAotCWZvcl9lYWNoX3NldF9iaXQoaSwgcHBndHQtPnBkcC51c2VkX3BkcGVz LCBHRU44X0xFR0FDWV9QRFBFUykgeworCWZvcl9lYWNoX3NldF9iaXQoaSwgcHBndHQtPnBkcC51 c2VkX3BkcGVzLAorCQkJIEk5MTVfUERQRVNfUEVSX1BEUChwcGd0dC0+YmFzZS5kZXYpKSB7CiAJ CWlmIChXQVJOX09OKCFwcGd0dC0+cGRwLnBhZ2VfZGlyZWN0b3J5W2ldKSkKIAkJCWNvbnRpbnVl OwogCkBAIC03MjksNiArNzY3LDcgQEAgc3RhdGljIHZvaWQgZ2VuOF9wcGd0dF9jbGVhbnVwKHN0 cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtKQogCQlmcmVlX3BkKHBwZ3R0LT5iYXNlLmRldiwg cHBndHQtPnBkcC5wYWdlX2RpcmVjdG9yeVtpXSk7CiAJfQogCisJZnJlZV9wZHAocHBndHQtPmJh c2UuZGV2LCAmcHBndHQtPnBkcCk7CiAJZ2VuOF9mcmVlX3NjcmF0Y2godm0pOwogfQogCkBAIC04 MjAsOCArODU5LDkgQEAgc3RhdGljIGludCBnZW44X3BwZ3R0X2FsbG9jX3BhZ2VfZGlyZWN0b3Jp ZXMoc3RydWN0IGk5MTVfaHdfcHBndHQgKnBwZ3R0LAogCXN0cnVjdCBpOTE1X3BhZ2VfZGlyZWN0 b3J5ICpwZDsKIAl1aW50NjRfdCB0ZW1wOwogCXVpbnQzMl90IHBkcGU7CisJdWludDMyX3QgcGRw ZXMgPSBJOTE1X1BEUEVTX1BFUl9QRFAoZGV2KTsKIAotCVdBUk5fT04oIWJpdG1hcF9lbXB0eShu ZXdfcGRzLCBHRU44X0xFR0FDWV9QRFBFUykpOworCVdBUk5fT04oIWJpdG1hcF9lbXB0eShuZXdf cGRzLCBwZHBlcykpOwogCiAJZ2VuOF9mb3JfZWFjaF9wZHBlKHBkLCBwZHAsIHN0YXJ0LCBsZW5n dGgsIHRlbXAsIHBkcGUpIHsKIAkJaWYgKHBkKQpAQCAtODM5LDE4ICs4NzksMTkgQEAgc3RhdGlj IGludCBnZW44X3BwZ3R0X2FsbG9jX3BhZ2VfZGlyZWN0b3JpZXMoc3RydWN0IGk5MTVfaHdfcHBn dHQgKnBwZ3R0LAogCXJldHVybiAwOwogCiB1bndpbmRfb3V0OgotCWZvcl9lYWNoX3NldF9iaXQo cGRwZSwgbmV3X3BkcywgR0VOOF9MRUdBQ1lfUERQRVMpCisJZm9yX2VhY2hfc2V0X2JpdChwZHBl LCBuZXdfcGRzLCBwZHBlcykKIAkJZnJlZV9wZChkZXYsIHBkcC0+cGFnZV9kaXJlY3RvcnlbcGRw ZV0pOwogCiAJcmV0dXJuIC1FTk9NRU07CiB9CiAKIHN0YXRpYyB2b2lkCi1mcmVlX2dlbjhfdGVt cF9iaXRtYXBzKHVuc2lnbmVkIGxvbmcgKm5ld19wZHMsIHVuc2lnbmVkIGxvbmcgKipuZXdfcHRz KQorZnJlZV9nZW44X3RlbXBfYml0bWFwcyh1bnNpZ25lZCBsb25nICpuZXdfcGRzLCB1bnNpZ25l ZCBsb25nICoqbmV3X3B0cywKKwkJICAgICAgIHVpbnQzMl90IHBkcGVzKQogewogCWludCBpOwog Ci0JZm9yIChpID0gMDsgaSA8IEdFTjhfTEVHQUNZX1BEUEVTOyBpKyspCisJZm9yIChpID0gMDsg aSA8IHBkcGVzOyBpKyspCiAJCWtmcmVlKG5ld19wdHNbaV0pOwogCWtmcmVlKG5ld19wdHMpOwog CWtmcmVlKG5ld19wZHMpOwpAQCAtODYxLDIzICs5MDIsMjQgQEAgZnJlZV9nZW44X3RlbXBfYml0 bWFwcyh1bnNpZ25lZCBsb25nICpuZXdfcGRzLCB1bnNpZ25lZCBsb25nICoqbmV3X3B0cykKICAq Lwogc3RhdGljCiBpbnQgX19tdXN0X2NoZWNrIGFsbG9jX2dlbjhfdGVtcF9iaXRtYXBzKHVuc2ln bmVkIGxvbmcgKipuZXdfcGRzLAotCQkJCQkgdW5zaWduZWQgbG9uZyAqKipuZXdfcHRzKQorCQkJ CQkgdW5zaWduZWQgbG9uZyAqKipuZXdfcHRzLAorCQkJCQkgdWludDMyX3QgcGRwZXMpCiB7CiAJ aW50IGk7CiAJdW5zaWduZWQgbG9uZyAqcGRzOwogCXVuc2lnbmVkIGxvbmcgKipwdHM7CiAKLQlw ZHMgPSBrY2FsbG9jKEJJVFNfVE9fTE9OR1MoR0VOOF9MRUdBQ1lfUERQRVMpLCBzaXplb2YodW5z aWduZWQgbG9uZyksIEdGUF9LRVJORUwpOworCXBkcyA9IGtjYWxsb2MoQklUU19UT19MT05HUyhw ZHBlcyksIHNpemVvZih1bnNpZ25lZCBsb25nKSwgR0ZQX0tFUk5FTCk7CiAJaWYgKCFwZHMpCiAJ CXJldHVybiAtRU5PTUVNOwogCi0JcHRzID0ga2NhbGxvYyhHRU44X0xFR0FDWV9QRFBFUywgc2l6 ZW9mKHVuc2lnbmVkIGxvbmcgKiksIEdGUF9LRVJORUwpOworCXB0cyA9IGtjYWxsb2MocGRwZXMs IHNpemVvZih1bnNpZ25lZCBsb25nICopLCBHRlBfS0VSTkVMKTsKIAlpZiAoIXB0cykgewogCQlr ZnJlZShwZHMpOwogCQlyZXR1cm4gLUVOT01FTTsKIAl9CiAKLQlmb3IgKGkgPSAwOyBpIDwgR0VO OF9MRUdBQ1lfUERQRVM7IGkrKykgeworCWZvciAoaSA9IDA7IGkgPCBwZHBlczsgaSsrKSB7CiAJ CXB0c1tpXSA9IGtjYWxsb2MoQklUU19UT19MT05HUyhJOTE1X1BERVMpLAogCQkJCSBzaXplb2Yo dW5zaWduZWQgbG9uZyksIEdGUF9LRVJORUwpOwogCQlpZiAoIXB0c1tpXSkKQEAgLTg5MCw3ICs5 MzIsNyBAQCBpbnQgX19tdXN0X2NoZWNrIGFsbG9jX2dlbjhfdGVtcF9iaXRtYXBzKHVuc2lnbmVk IGxvbmcgKipuZXdfcGRzLAogCXJldHVybiAwOwogCiBlcnJfb3V0OgotCWZyZWVfZ2VuOF90ZW1w X2JpdG1hcHMocGRzLCBwdHMpOworCWZyZWVfZ2VuOF90ZW1wX2JpdG1hcHMocGRzLCBwdHMsIHBk cGVzKTsKIAlyZXR1cm4gLUVOT01FTTsKIH0KIApAQCAtOTE2LDYgKzk1OCw3IEBAIHN0YXRpYyBp bnQgZ2VuOF9hbGxvY192YV9yYW5nZShzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKIAlj b25zdCB1aW50NjRfdCBvcmlnX2xlbmd0aCA9IGxlbmd0aDsKIAl1aW50NjRfdCB0ZW1wOwogCXVp bnQzMl90IHBkcGU7CisJdWludDMyX3QgcGRwZXMgPSBJOTE1X1BEUEVTX1BFUl9QRFAocHBndHQt PmJhc2UuZGV2KTsKIAlpbnQgcmV0OwogCiAJLyogV3JhcCBpcyBuZXZlciBva2F5IHNpbmNlIHdl IGNhbiBvbmx5IHJlcHJlc2VudCA0OGIsIGFuZCB3ZSBkb24ndApAQCAtOTI3LDcgKzk3MCw3IEBA IHN0YXRpYyBpbnQgZ2VuOF9hbGxvY192YV9yYW5nZShzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNl ICp2bSwKIAlpZiAoV0FSTl9PTihzdGFydCArIGxlbmd0aCA+IHBwZ3R0LT5iYXNlLnRvdGFsKSkK IAkJcmV0dXJuIC1FTk9ERVY7CiAKLQlyZXQgPSBhbGxvY19nZW44X3RlbXBfYml0bWFwcygmbmV3 X3BhZ2VfZGlycywgJm5ld19wYWdlX3RhYmxlcyk7CisJcmV0ID0gYWxsb2NfZ2VuOF90ZW1wX2Jp dG1hcHMoJm5ld19wYWdlX2RpcnMsICZuZXdfcGFnZV90YWJsZXMsIHBkcGVzKTsKIAlpZiAocmV0 KQogCQlyZXR1cm4gcmV0OwogCkBAIC05MzUsNyArOTc4LDcgQEAgc3RhdGljIGludCBnZW44X2Fs bG9jX3ZhX3JhbmdlKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAogCXJldCA9IGdlbjhf cHBndHRfYWxsb2NfcGFnZV9kaXJlY3RvcmllcyhwcGd0dCwgJnBwZ3R0LT5wZHAsIHN0YXJ0LCBs ZW5ndGgsCiAJCQkJCW5ld19wYWdlX2RpcnMpOwogCWlmIChyZXQpIHsKLQkJZnJlZV9nZW44X3Rl bXBfYml0bWFwcyhuZXdfcGFnZV9kaXJzLCBuZXdfcGFnZV90YWJsZXMpOworCQlmcmVlX2dlbjhf dGVtcF9iaXRtYXBzKG5ld19wYWdlX2RpcnMsIG5ld19wYWdlX3RhYmxlcywgcGRwZXMpOwogCQly ZXR1cm4gcmV0OwogCX0KIApAQCAtOTg5LDcgKzEwMzIsNyBAQCBzdGF0aWMgaW50IGdlbjhfYWxs b2NfdmFfcmFuZ2Uoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCiAJCV9fc2V0X2JpdChw ZHBlLCBwcGd0dC0+cGRwLnVzZWRfcGRwZXMpOwogCX0KIAotCWZyZWVfZ2VuOF90ZW1wX2JpdG1h cHMobmV3X3BhZ2VfZGlycywgbmV3X3BhZ2VfdGFibGVzKTsKKwlmcmVlX2dlbjhfdGVtcF9iaXRt YXBzKG5ld19wYWdlX2RpcnMsIG5ld19wYWdlX3RhYmxlcywgcGRwZXMpOwogCW1hcmtfdGxic19k aXJ0eShwcGd0dCk7CiAJcmV0dXJuIDA7CiAKQEAgLTk5OSwxMCArMTA0MiwxMCBAQCBlcnJfb3V0 OgogCQkJZnJlZV9wdCh2bS0+ZGV2LCBwcGd0dC0+cGRwLnBhZ2VfZGlyZWN0b3J5W3BkcGVdLT5w YWdlX3RhYmxlW3RlbXBdKTsKIAl9CiAKLQlmb3JfZWFjaF9zZXRfYml0KHBkcGUsIG5ld19wYWdl X2RpcnMsIEdFTjhfTEVHQUNZX1BEUEVTKQorCWZvcl9lYWNoX3NldF9iaXQocGRwZSwgbmV3X3Bh Z2VfZGlycywgcGRwZXMpCiAJCWZyZWVfcGQodm0tPmRldiwgcHBndHQtPnBkcC5wYWdlX2RpcmVj dG9yeVtwZHBlXSk7CiAKLQlmcmVlX2dlbjhfdGVtcF9iaXRtYXBzKG5ld19wYWdlX2RpcnMsIG5l d19wYWdlX3RhYmxlcyk7CisJZnJlZV9nZW44X3RlbXBfYml0bWFwcyhuZXdfcGFnZV9kaXJzLCBu ZXdfcGFnZV90YWJsZXMsIHBkcGVzKTsKIAltYXJrX3RsYnNfZGlydHkocHBndHQpOwogCXJldHVy biByZXQ7CiB9CkBAIC0xMDQwLDcgKzEwODMsMTYgQEAgc3RhdGljIGludCBnZW44X3BwZ3R0X2lu aXQoc3RydWN0IGk5MTVfaHdfcHBndHQgKnBwZ3R0KQogCiAJcHBndHQtPnN3aXRjaF9tbSA9IGdl bjhfbW1fc3dpdGNoOwogCisJcmV0ID0gX19wZHBfaW5pdChmYWxzZSwgJnBwZ3R0LT5wZHApOwor CisJaWYgKHJldCkKKwkJZ290byBmcmVlX3NjcmF0Y2g7CisKIAlyZXR1cm4gMDsKKworZnJlZV9z Y3JhdGNoOgorCWdlbjhfZnJlZV9zY3JhdGNoKCZwcGd0dC0+YmFzZSk7CisJcmV0dXJuIHJldDsK IH0KIAogc3RhdGljIHZvaWQgZ2VuNl9kdW1wX3BwZ3R0KHN0cnVjdCBpOTE1X2h3X3BwZ3R0ICpw cGd0dCwgc3RydWN0IHNlcV9maWxlICptKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW1fZ3R0LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaApp bmRleCBkNWJmOTUzLi5mNTkyOGRiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbV9ndHQuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuaApA QCAtOTgsNiArOTgsOSBAQCB0eXBlZGVmIHVpbnQ2NF90IGdlbjhfcGRlX3Q7CiAjZGVmaW5lIEdF TjhfTEVHQUNZX1BEUEVTCQk0CiAjZGVmaW5lIEdFTjhfUFRFUwkJCUk5MTVfUFRFUyhzaXplb2Yo Z2VuOF9wdGVfdCkpCiAKKy8qIEZJWE1FOiBOZXh0IHBhdGNoIHdpbGwgdXNlIGRldiAqLworI2Rl ZmluZSBJOTE1X1BEUEVTX1BFUl9QRFAoZGV2KQkJR0VOOF9MRUdBQ1lfUERQRVMKKwogI2RlZmlu ZSBQUEFUX1VOQ0FDSEVEX0lOREVYCQkoX1BBR0VfUFdUIHwgX1BBR0VfUENEKQogI2RlZmluZSBQ UEFUX0NBQ0hFRF9QREVfSU5ERVgJCTAgLyogV0IgTExDICovCiAjZGVmaW5lIFBQQVRfQ0FDSEVE X0lOREVYCQlfUEFHRV9QQVQgLyogV0IgTExDZUxMQyAqLwpAQCAtMjQxLDkgKzI0NCwxMCBAQCBz dHJ1Y3QgaTkxNV9wYWdlX2RpcmVjdG9yeSB7CiB9OwogCiBzdHJ1Y3QgaTkxNV9wYWdlX2RpcmVj dG9yeV9wb2ludGVyIHsKLQkvKiBzdHJ1Y3QgcGFnZSAqcGFnZTsgKi8KLQlERUNMQVJFX0JJVE1B UCh1c2VkX3BkcGVzLCBHRU44X0xFR0FDWV9QRFBFUyk7Ci0Jc3RydWN0IGk5MTVfcGFnZV9kaXJl Y3RvcnkgKnBhZ2VfZGlyZWN0b3J5W0dFTjhfTEVHQUNZX1BEUEVTXTsKKwlzdHJ1Y3QgaTkxNV9w YWdlX2RtYSBiYXNlOworCisJdW5zaWduZWQgbG9uZyAqdXNlZF9wZHBlczsKKwlzdHJ1Y3QgaTkx NV9wYWdlX2RpcmVjdG9yeSAqKnBhZ2VfZGlyZWN0b3J5OwogfTsKIAogc3RydWN0IGk5MTVfYWRk cmVzc19zcGFjZSB7Ci0tIAoyLjQuNQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJl ZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5m by9pbnRlbC1nZngK