From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yi Sun Subject: [PATCH v15 16/23] x86: L2 CAT: implement CPU init flow. Date: Tue, 1 Aug 2017 16:48:47 +0800 Message-ID: <1501577334-7431-17-git-send-email-yi.y.sun@linux.intel.com> References: <1501577334-7431-1-git-send-email-yi.y.sun@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dcT6n-0005Uh-VF for xen-devel@lists.xenproject.org; Tue, 01 Aug 2017 09:04:58 +0000 In-Reply-To: <1501577334-7431-1-git-send-email-yi.y.sun@linux.intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: kevin.tian@intel.com, wei.liu2@citrix.com, andrew.cooper3@citrix.com, dario.faggioli@citrix.com, ian.jackson@eu.citrix.com, Yi Sun , mengxu@cis.upenn.edu, jbeulich@suse.com, chao.p.peng@linux.intel.com, roger.pau@citrix.com List-Id: xen-devel@lists.xenproject.org VGhpcyBwYXRjaCBpbXBsZW1lbnRzIHRoZSBDUFUgaW5pdCBmbG93IGZvciBMMiBDQVQuCgpTaWdu ZWQtb2ZmLWJ5OiBZaSBTdW4gPHlpLnkuc3VuQGxpbnV4LmludGVsLmNvbT4KUmV2aWV3ZWQtYnk6 IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KLS0tCnYxNToKICAgIC0gcmVtb3ZlIGEg YmxhbmsuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAtIHVzZSBkZXNpZ25h dGVkIGluaXRpYWxpemVycyB0byBpbml0aWFsaXplIHRoZSAnY2F0X2ZlYXRfbmFtZScuCiAgICAg IChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCnYxNDoKICAgIC0gcmVtb3ZlIHRoZSAnTm90ZXMn IGluIGNvbW1pdCBtZXNzYWdlIGJlY2F1c2UgYSBzdHViIGZ1bmN0aW9uIGlzCiAgICAgIGltcGxl bWVudGVkIHRvIGF2b2lkIHRoZSBwb3RlbnRpYWwgaXNzdWUuCiAgICAgIChzdWdnZXN0ZWQgYnkg SmFuIEJldWxpY2gpCiAgICAtIHB1dCBhZGRyZXNzIG9mICdmZWF0X2wyX2NhdCcgYmFjayB0byBp dCBpZiAnY2F0X2luaXRfZmVhdHVyZSgpJyBmYWlscwogICAgICB0byBhdm9pZCBsZWFrYWdlLgog ICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBjaGFuZ2UgJ2ZlYXRfbmFtZScg dG8gJ2NhdF9mZWF0X25hbWUnIGFuZCBtb3ZlIGl0IGludG8KICAgICAgJ2NhdF9pbml0X2ZlYXR1 cmUoKScgd2hpY2ggaXMgdGhlIG9ubHkgY2FsbGVyLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBC ZXVsaWNoKQogICAgLSByZWdpc3RlciB0aGUgY2FsbGJhY2sgZnVuY3Rpb25zIGludG8gJ2wyX2Nh dF9wcm9wcycgdG8gYXZvaWQgY3Jhc2ggaWYKICAgICAgdXNlciBkb2VzIG5vdCBhcHBseSBsYXRl ciBwYXRjaGVzLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQp2MTM6CiAgICAtIGFk ZCBjb21taXQgbWVzc2FnZS4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0g c2V0ICdhbHRfdHlwZScgZm9yIEwyIENBVC4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGlj aCkKICAgIC0gZGVmaW5lIGEgc3RhdGljIHN0cmluZyBhcnJheSB0byBzaG93IHdoaWNoIGZlYXR1 cmUncyBpbmZvIGlzIHByaW50aW5nLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQp2 MTI6CiAgICAtIG1vdmUgJ3R5cGVbXScgYXNzaWdubWVudCBpbnRvIGwyX2NhdF9wcm9wcyBkZWNs YXJhdGlvbiB0byBtYWtlIGl0IGJlCiAgICAgICdjb25zdCcuCiAgICAgIChzdWdnZXN0ZWQgYnkg SmFuIEJldWxpY2gpCiAgICAtIGFkZCAiTDIgQ0FUIiBpbmRpY2F0b3IgaW4gcHJpbnRrLgogICAg ICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSByZXN0b3JlIG1hc2soMCkgTVNSIHRv IGRlZmF1bHQgdmFsdWUuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCnYxMToKICAg IC0gbW92ZSBsMiBjYXQgJ3R5cGVbXScgYXNzaWduZW1lbnQgaW50byAncHNyX2NwdV9pbml0Jy4K ICAgIC0gcmVtb3ZlIENPUyBNU1IgcmVzdG9yZSBhY3Rpb24gaW4gJ2NwdV9pbml0X2ZlYXR1cmUn LgogICAgLSBzZXQgJ2ZlYXRfaW5pdCcgdG8gdHJ1ZSBhZnRlciBDUFUgaW5pdC4KICAgIC0gbW9k aWZ5IGNvbW1pdCBtZXNzYWdlLgp2MTA6CiAgICAtIGltcGxlbWVudCBMMiBDQVQgY2FzZSBpbiAn Y2F0X2luaXRfZmVhdHVyZScuCiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAt IGNoYW5nZXMgYWJvdXQgJ3Byb3BzJy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkK ICAgIC0gaW50cm9kdWNlICdQU1JfQ0JNX1RZUEVfTDInLgp2OToKICAgIC0gbW9kaWZ5IGVycm9y IGhhbmRsaW5nIHByb2Nlc3MgaW4gJ3Bzcl9jcHVfcHJlcGFyZScgdG8gcmVkdWNlIHJlZHVuZGFu dAogICAgICBjb2Rlcy4KICAgIC0gcmV1c2UgJ2NhdF9pbml0X2ZlYXR1cmUnIGFuZCAnY2F0X2dl dF9jb3NfbWF4JyBmb3IgTDIgQ0FUIHRvIHJlZHVjZQogICAgICByZWR1bmRhbnQgY29kZXMuCiAg ICAgIChzdWdnZXN0ZWQgYnkgUm9nZXIgUGF1KQogICAgLSByZW1vdmUgdW5uZWNlc3NhcnkgY29t bWVudC4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0gbW92ZSBMMiBDQVQg cmVsYXRlZCBjb2RlcyBmcm9tICdjcHVfaW5pdF93b3JrJyBpbnRvICdwc3JfY3B1X2luaXQnLgog ICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBkbyBub3QgZnJlZSByZXNvdXJj ZSB3aGVuIGFsbG9jYXRpb24gZmFpbHMgaW4gJ3Bzcl9jcHVfcHJlcGFyZScuCiAgICAgIChzdWdn ZXN0ZWQgYnkgSmFuIEJldWxpY2gpCnY3OgogICAgLSBpbml0aWFsaXplICdsMl9jYXQnLgogICAg ICAoc3VnZ2VzdGVkIGJ5IEtvbnJhZCBSemVzenV0ZWsgV2lsaykKdjY6CiAgICAtIHVzZSAnc3Ry dWN0IGNwdWlkX2xlYWYnLgogICAgICAoc3VnZ2VzdGVkIGJ5IEtvbnJhZCBSemVzenV0ZWsgV2ls ayBhbmQgSmFuIEJldWxpY2gpCnY1OgogICAgLSByZW1vdmUgJ2ZlYXRfbDJfY2F0JyBmcmVlIGlu ICdmcmVlX2ZlYXR1cmUnLgogICAgICAoc3VnZ2VzdGVkIGJ5IEphbiBCZXVsaWNoKQogICAgLSBl bmNhcHN1bGF0ZSBjcHVpZCByZWdpc3RlcnMgaW50byAnc3RydWN0IGNwdWlkX2xlYWZfcmVncycu CiAgICAgIChzdWdnZXN0ZWQgYnkgSmFuIEJldWxpY2gpCiAgICAtIHByaW50IHNvY2tldCBpbmZv IHdoZW4gJ29wdF9jcHVfaW5mbycgaXMgdHJ1ZS4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1 bGljaCkKICAgIC0gcmVuYW1lICdsMl9jYXRfZ2V0X21heF9jb3NfbWF4JyB0byAnbDJfY2F0X2dl dF9jb3NfbWF4Jy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAgIC0gcmVuYW1l ICdkYXRbXScgdG8gJ2RhdGFbXScKICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKICAg IC0gbW92ZSAnY3B1X3ByZXBhcmVfd29yaycgY29udGVudHMgaW50byAncHNyX2NwdV9wcmVwYXJl Jy4KICAgICAgKHN1Z2dlc3RlZCBieSBKYW4gQmV1bGljaCkKdjQ6CiAgICAtIGNyZWF0ZSB0aGlz IHBhdGNoIGJlY2F1c2Ugb2YgY29kZXMgYXJjaGl0ZWN0dXJlIGNoYW5nZS4KICAgICAgKHN1Z2dl c3RlZCBieSBKYW4gQmV1bGljaCkKLS0tCiB4ZW4vYXJjaC94ODYvcHNyLmMgICAgICAgICAgICAg IHwgNDggKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0KIHhlbi9pbmNs dWRlL2FzbS14ODYvbXNyLWluZGV4LmggfCAgMSArCiB4ZW4vaW5jbHVkZS9hc20teDg2L3Bzci5o ICAgICAgIHwgIDIgKysKIDMgZmlsZXMgY2hhbmdlZCwgNDggaW5zZXJ0aW9ucygrKSwgMyBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvcHNyLmMgYi94ZW4vYXJjaC94ODYv cHNyLmMKaW5kZXggNzE1MGU3Zi4uZGY4NWQ5NCAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L3Bz ci5jCisrKyBiL3hlbi9hcmNoL3g4Ni9wc3IuYwpAQCAtNjMsNiArNjMsNyBAQAogZW51bSBwc3Jf ZmVhdF90eXBlIHsKICAgICBGRUFUX1RZUEVfTDNfQ0FULAogICAgIEZFQVRfVFlQRV9MM19DRFAs CisgICAgRkVBVF9UWVBFX0wyX0NBVCwKICAgICBGRUFUX1RZUEVfTlVNLAogICAgIEZFQVRfVFlQ RV9VTktOT1dOLAogfTsKQEAgLTE1OSw2ICsxNjAsNyBAQCBzdGF0aWMgREVGSU5FX1BFUl9DUFUo c3RydWN0IHBzcl9hc3NvYywgcHNyX2Fzc29jKTsKICAqIGFycmF5IGNyZWF0aW9uLiBJdCBpcyB1 c2VkIHRvIHRyYW5zaWVudGx5IHN0b3JlIGEgc3BhcmUgbm9kZS4KICAqLwogc3RhdGljIHN0cnVj dCBmZWF0X25vZGUgKmZlYXRfbDM7CitzdGF0aWMgc3RydWN0IGZlYXRfbm9kZSAqZmVhdF9sMl9j YXQ7CiAKIC8qIENvbW1vbiBmdW5jdGlvbnMgKi8KICNkZWZpbmUgY2F0X2RlZmF1bHRfdmFsKGxl bikgKDB4ZmZmZmZmZmYgPj4gKDMyIC0gKGxlbikpKQpAQCAtMjczLDYgKzI3NSwxMiBAQCBzdGF0 aWMgaW50IGNhdF9pbml0X2ZlYXR1cmUoY29uc3Qgc3RydWN0IGNwdWlkX2xlYWYgKnJlZ3MsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHBzcl9zb2NrZXRfaW5mbyAqaW5mbywK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnVtIHBzcl9mZWF0X3R5cGUgdHlwZSkKIHsK KyAgICBjb25zdCBjaGFyICpjb25zdCBjYXRfZmVhdF9uYW1lW0ZFQVRfVFlQRV9OVU1dID0gewor ICAgICAgICBbRkVBVF9UWVBFX0wzX0NBVF0gPSAiTDMgQ0FUIiwKKyAgICAgICAgW0ZFQVRfVFlQ RV9MM19DRFBdID0gIkwzIENEUCIsCisgICAgICAgIFtGRUFUX1RZUEVfTDJfQ0FUXSA9ICJMMiBD QVQiLAorICAgIH07CisKICAgICAvKiBObyB2YWxpZCB2YWx1ZSBzbyBkbyBub3QgZW5hYmxlIGZl YXR1cmUuICovCiAgICAgaWYgKCAhcmVncy0+YSB8fCAhcmVncy0+ZCApCiAgICAgICAgIHJldHVy biAtRU5PRU5UOwpAQCAtMjgzLDEzICsyOTEsMTcgQEAgc3RhdGljIGludCBjYXRfaW5pdF9mZWF0 dXJlKGNvbnN0IHN0cnVjdCBjcHVpZF9sZWFmICpyZWdzLAogICAgIHN3aXRjaCAoIHR5cGUgKQog ICAgIHsKICAgICBjYXNlIEZFQVRfVFlQRV9MM19DQVQ6CisgICAgY2FzZSBGRUFUX1RZUEVfTDJf Q0FUOgogICAgICAgICBpZiAoIGZlYXQtPmNvc19tYXggPCAxICkKICAgICAgICAgICAgIHJldHVy biAtRU5PRU5UOwogCiAgICAgICAgIC8qIFdlIHJlc2VydmUgY29zPTAgYXMgZGVmYXVsdCBjYm0g KGFsbCBiaXRzIHdpdGhpbiBjYm1fbGVuIGFyZSAxKS4gKi8KICAgICAgICAgZmVhdC0+Y29zX3Jl Z192YWxbMF0gPSBjYXRfZGVmYXVsdF92YWwoZmVhdC0+Y2JtX2xlbik7CiAKLSAgICAgICAgd3Jt c3JsKE1TUl9JQTMyX1BTUl9MM19NQVNLKDApLCBjYXRfZGVmYXVsdF92YWwoZmVhdC0+Y2JtX2xl bikpOworICAgICAgICB3cm1zcmwoKHR5cGUgPT0gRkVBVF9UWVBFX0wzX0NBVCA/CisgICAgICAg ICAgICAgICAgTVNSX0lBMzJfUFNSX0wzX01BU0soMCkgOgorICAgICAgICAgICAgICAgIE1TUl9J QTMyX1BTUl9MMl9NQVNLKDApKSwKKyAgICAgICAgICAgICAgIGNhdF9kZWZhdWx0X3ZhbChmZWF0 LT5jYm1fbGVuKSk7CiAKICAgICAgICAgYnJlYWs7CiAKQEAgLTMyNyw4ICszMzksOCBAQCBzdGF0 aWMgaW50IGNhdF9pbml0X2ZlYXR1cmUoY29uc3Qgc3RydWN0IGNwdWlkX2xlYWYgKnJlZ3MsCiAg ICAgICAgIHJldHVybiAwOwogCiAgICAgcHJpbnRrKFhFTkxPR19JTkZPICIlczogZW5hYmxlZCBv biBzb2NrZXQgJXUsIGNvc19tYXg6JXUsIGNibV9sZW46JXVcbiIsCi0gICAgICAgICAgICgodHlw ZSA9PSBGRUFUX1RZUEVfTDNfQ0RQKSA/ICJMMyBDRFAiIDogIkwzIENBVCIpLAotICAgICAgICAg ICBjcHVfdG9fc29ja2V0KHNtcF9wcm9jZXNzb3JfaWQoKSksIGZlYXQtPmNvc19tYXgsIGZlYXQt PmNibV9sZW4pOworICAgICAgICAgICBjYXRfZmVhdF9uYW1lW3R5cGVdLCBjcHVfdG9fc29ja2V0 KHNtcF9wcm9jZXNzb3JfaWQoKSksCisgICAgICAgICAgIGZlYXQtPmNvc19tYXgsIGZlYXQtPmNi bV9sZW4pOwogCiAgICAgcmV0dXJuIDA7CiB9CkBAIC0zODksNiArNDAxLDE5IEBAIHN0YXRpYyBj b25zdCBzdHJ1Y3QgZmVhdF9wcm9wcyBsM19jZHBfcHJvcHMgPSB7CiAgICAgLndyaXRlX21zciA9 IGwzX2NkcF93cml0ZV9tc3IsCiB9OwogCisvKiBMMiBDQVQgcHJvcHMgKi8KK3N0YXRpYyB2b2lk IGwyX2NhdF93cml0ZV9tc3IodW5zaWduZWQgaW50IGNvcywgdWludDMyX3QgdmFsLCBlbnVtIGNi bV90eXBlIHR5cGUpCit7Cit9CisKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZmVhdF9wcm9wcyBsMl9j YXRfcHJvcHMgPSB7CisgICAgLmNvc19udW0gPSAxLAorICAgIC50eXBlWzBdID0gUFNSX0NCTV9U WVBFX0wyLAorICAgIC5hbHRfdHlwZSA9IFBTUl9DQk1fVFlQRV9VTktOT1dOLAorICAgIC5nZXRf ZmVhdF9pbmZvID0gY2F0X2dldF9mZWF0X2luZm8sCisgICAgLndyaXRlX21zciA9IGwyX2NhdF93 cml0ZV9tc3IsCit9OworCiBzdGF0aWMgdm9pZCBfX2luaXQgcGFyc2VfcHNyX2Jvb2woY2hhciAq cywgY2hhciAqdmFsdWUsIGNoYXIgKmZlYXR1cmUsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdW5zaWduZWQgaW50IG1hc2spCiB7CkBAIC0xMzQzLDYgKzEzNjgsMTAgQEAgc3Rh dGljIGludCBwc3JfY3B1X3ByZXBhcmUodm9pZCkKICAgICAgICAgIChmZWF0X2wzID0geHphbGxv YyhzdHJ1Y3QgZmVhdF9ub2RlKSkgPT0gTlVMTCApCiAgICAgICAgIHJldHVybiAtRU5PTUVNOwog CisgICAgaWYgKCBmZWF0X2wyX2NhdCA9PSBOVUxMICYmCisgICAgICAgICAoZmVhdF9sMl9jYXQg PSB4emFsbG9jKHN0cnVjdCBmZWF0X25vZGUpKSA9PSBOVUxMICkKKyAgICAgICAgcmV0dXJuIC1F Tk9NRU07CisKICAgICByZXR1cm4gMDsKIH0KIApAQCAtMTM5OSw2ICsxNDI4LDE5IEBAIHN0YXRp YyB2b2lkIHBzcl9jcHVfaW5pdCh2b2lkKQogICAgICAgICB9CiAgICAgfQogCisgICAgY3B1aWRf Y291bnRfbGVhZihQU1JfQ1BVSURfTEVWRUxfQ0FULCAwLCAmcmVncyk7CisgICAgaWYgKCByZWdz LmIgJiBQU1JfUkVTT1VSQ0VfVFlQRV9MMiApCisgICAgeworICAgICAgICBjcHVpZF9jb3VudF9s ZWFmKFBTUl9DUFVJRF9MRVZFTF9DQVQsIDIsICZyZWdzKTsKKworICAgICAgICBmZWF0ID0gZmVh dF9sMl9jYXQ7CisgICAgICAgIGZlYXRfbDJfY2F0ID0gTlVMTDsKKyAgICAgICAgaWYgKCAhY2F0 X2luaXRfZmVhdHVyZSgmcmVncywgZmVhdCwgaW5mbywgRkVBVF9UWVBFX0wyX0NBVCkgKQorICAg ICAgICAgICAgZmVhdF9wcm9wc1tGRUFUX1RZUEVfTDJfQ0FUXSA9ICZsMl9jYXRfcHJvcHM7Cisg ICAgICAgIGVsc2UKKyAgICAgICAgICAgIGZlYXRfbDJfY2F0ID0gZmVhdDsKKyAgICB9CisKICAg ICBpbmZvLT5mZWF0X2luaXQgPSB0cnVlOwogCiAgYXNzb2NfaW5pdDoKZGlmZiAtLWdpdCBhL3hl bi9pbmNsdWRlL2FzbS14ODYvbXNyLWluZGV4LmggYi94ZW4vaW5jbHVkZS9hc20teDg2L21zci1p bmRleC5oCmluZGV4IDc1NmIyM2QuLjRlMDhkZTYgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2Fz bS14ODYvbXNyLWluZGV4LmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9tc3ItaW5kZXguaApA QCAtMzQ3LDYgKzM0Nyw3IEBACiAjZGVmaW5lIE1TUl9JQTMyX1BTUl9MM19NQVNLKG4pCSgweDAw MDAwYzkwICsgKG4pKQogI2RlZmluZSBNU1JfSUEzMl9QU1JfTDNfTUFTS19DT0RFKG4pCSgweDAw MDAwYzkwICsgKG4pICogMiArIDEpCiAjZGVmaW5lIE1TUl9JQTMyX1BTUl9MM19NQVNLX0RBVEEo bikJKDB4MDAwMDBjOTAgKyAobikgKiAyKQorI2RlZmluZSBNU1JfSUEzMl9QU1JfTDJfTUFTSyhu KQkJKDB4MDAwMDBkMTAgKyAobikpCiAKIC8qIEludGVsIE1vZGVsIDYgKi8KICNkZWZpbmUgTVNS X1A2X1BFUkZDVFIobikJCSgweDAwMDAwMGMxICsgKG4pKQpkaWZmIC0tZ2l0IGEveGVuL2luY2x1 ZGUvYXNtLXg4Ni9wc3IuaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvcHNyLmgKaW5kZXggNTBiODc1 Ny4uMThhNDJmMyAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9wc3IuaAorKysgYi94 ZW4vaW5jbHVkZS9hc20teDg2L3Bzci5oCkBAIC0yMyw2ICsyMyw3IEBACiAKIC8qIFJlc291cmNl IFR5cGUgRW51bWVyYXRpb24gKi8KICNkZWZpbmUgUFNSX1JFU09VUkNFX1RZUEVfTDMgICAgICAg ICAgICAweDIKKyNkZWZpbmUgUFNSX1JFU09VUkNFX1RZUEVfTDIgICAgICAgICAgICAweDQKIAog LyogTDMgTW9uaXRvcmluZyBGZWF0dXJlcyAqLwogI2RlZmluZSBQU1JfQ01UX0wzX09DQ1VQQU5D WSAgICAgICAgICAgIDB4MQpAQCAtNTYsNiArNTcsNyBAQCBlbnVtIGNibV90eXBlIHsKICAgICBQ U1JfQ0JNX1RZUEVfTDMsCiAgICAgUFNSX0NCTV9UWVBFX0wzX0NPREUsCiAgICAgUFNSX0NCTV9U WVBFX0wzX0RBVEEsCisgICAgUFNSX0NCTV9UWVBFX0wyLAogICAgIFBTUl9DQk1fVFlQRV9VTktO T1dOLAogfTsKIAotLSAKMS45LjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4u b3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK