From mboxrd@z Thu Jan 1 00:00:00 1970 From: Boris Ostrovsky Subject: [PATCH v5 01/13] x86/pmtimer: Move ACPI registers from PMTState to hvm_domain Date: Fri, 16 Dec 2016 18:18:27 -0500 Message-ID: <1481930319-4796-2-git-send-email-boris.ostrovsky@oracle.com> References: <1481930319-4796-1-git-send-email-boris.ostrovsky@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1481930319-4796-1-git-send-email-boris.ostrovsky@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: wei.liu2@citrix.com, andrew.cooper3@citrix.com, ian.jackson@eu.citrix.com, jbeulich@suse.com, Boris Ostrovsky , roger.pau@citrix.com List-Id: xen-devel@lists.xenproject.org VGhlc2UgcmVnaXN0ZXJzIChwbTFhIHNwZWNpZmljYWxseSkgYXJlIG5vdCBhbGwgc3BlY2lmaWMg dG8gcG0gdGltZXIKYW5kIGFyZSBhY2Nlc3NlZCBieSBub24tcG10aW1lciBjb2RlIChmb3IgZXhh bXBsZSwgc2xlZXAvcG93ZXIgYnV0dG9uCmVtdWxhdGlvbikuCgpUaGUgcHVibGljIG5hbWUgZm9y IHNhdmUgc3RhdGUgc3RydWN0dXJlIGlzIGtlcHQgYXMgJ3BtdGltZXInIHRvIGF2b2lkCmNvZGUg Y2h1cm4gd2l0aCB0aGUgZXhwZWN0ZWQgY2hhbmdlcyBpbiBtaWdyYXRpb24gY29kZS4gaHZtX2h3 X2FjcGkKbmFtZSBpcyBpbnRyb2R1Y2VkIGZvciBpbnRlcm5hbCB1c2UgYnV0IHdoZW4gbWlncmF0 aW9uIGNvZGUgaXMgdXBkYXRlZApodm1faHdfcG10aW1lciB3aWxsIGJlIHJlbmFtZWQgdG8gaHZt X2h3X2FjcGkuCgpObyBmdW5jdGlvbmFsIGNoYW5nZXMgYXJlIGludHJvZHVjZWQuCgooV2hpbGUg dGhpcyBmaWxlIGlzIGJlaW5nIG1vZGlmaWVkLCBhbHNvIGFkZCBlbWFjcyBtb2RlIHN0eWxlIHJ1 bmUpCgpTaWduZWQtb2ZmLWJ5OiBCb3JpcyBPc3Ryb3Zza3kgPGJvcmlzLm9zdHJvdnNreUBvcmFj bGUuY29tPgotLS0KQ2hhbmdlcyBpbiB2NToKKiBLZWVwIFBNVElNRVIgbmFtZSBmb3IgdGhlIHNh dmUgZGF0YXN0cnVjdHVyZSAoaS5lLiBodm1faHdfcG10aW1lcikKKiBSZXBsYWNlIHRtcl92YWwg cG9pbnRlciB3ZXJpdGUgd2l0aCB3cml0ZV9hdG9taWMoKQoqIENvZGUgc3R5bGUgY2xlYW51cAoK IHhlbi9hcmNoL3g4Ni9odm0vcG10aW1lci5jICAgICAgIHwgNjcgKysrKysrKysrKysrKysrKysr KysrKysrKy0tLS0tLS0tLS0tLS0tLQogeGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vZG9tYWluLmgg fCAxMCArKysrKysKIHhlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3ZwdC5oICAgIHwgIDEgLQogMyBm aWxlcyBjaGFuZ2VkLCA1MiBpbnNlcnRpb25zKCspLCAyNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS94ZW4vYXJjaC94ODYvaHZtL3BtdGltZXIuYyBiL3hlbi9hcmNoL3g4Ni9odm0vcG10aW1l ci5jCmluZGV4IDk5ZDFlODYuLmI3MGMyOTkgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9odm0v cG10aW1lci5jCisrKyBiL3hlbi9hcmNoL3g4Ni9odm0vcG10aW1lci5jCkBAIC01Niw5ICs1Niwx MSBAQAogLyogRGlzcGF0Y2ggU0NJcyBiYXNlZCBvbiB0aGUgUE0xYV9TVFMgYW5kIFBNMWFfRU4g cmVnaXN0ZXJzICovCiBzdGF0aWMgdm9pZCBwbXRfdXBkYXRlX3NjaShQTVRTdGF0ZSAqcykKIHsK KyAgICBzdHJ1Y3QgaHZtX2h3X2FjcGkgKmFjcGkgPSAmcy0+dmNwdS0+ZG9tYWluLT5hcmNoLmh2 bV9kb21haW4uYWNwaTsKKwogICAgIEFTU0VSVChzcGluX2lzX2xvY2tlZCgmcy0+bG9jaykpOwog Ci0gICAgaWYgKCBzLT5wbS5wbTFhX2VuICYgcy0+cG0ucG0xYV9zdHMgJiBTQ0lfTUFTSyApCisg ICAgaWYgKCBhY3BpLT5wbTFhX2VuICYgYWNwaS0+cG0xYV9zdHMgJiBTQ0lfTUFTSyApCiAgICAg ICAgIGh2bV9pc2FfaXJxX2Fzc2VydChzLT52Y3B1LT5kb21haW4sIFNDSV9JUlEpOwogICAgIGVs c2UKICAgICAgICAgaHZtX2lzYV9pcnFfZGVhc3NlcnQocy0+dmNwdS0+ZG9tYWluLCBTQ0lfSVJR KTsKQEAgLTcyLDcgKzc0LDcgQEAgdm9pZCBodm1fYWNwaV9wb3dlcl9idXR0b24oc3RydWN0IGRv bWFpbiAqZCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgc3Bpbl9sb2NrKCZzLT5sb2NrKTsKLSAg ICBzLT5wbS5wbTFhX3N0cyB8PSBQV1JCVE5fU1RTOworICAgIGQtPmFyY2guaHZtX2RvbWFpbi5h Y3BpLnBtMWFfc3RzIHw9IFBXUkJUTl9TVFM7CiAgICAgcG10X3VwZGF0ZV9zY2kocyk7CiAgICAg c3Bpbl91bmxvY2soJnMtPmxvY2spOwogfQpAQCAtODUsNyArODcsNyBAQCB2b2lkIGh2bV9hY3Bp X3NsZWVwX2J1dHRvbihzdHJ1Y3QgZG9tYWluICpkKQogICAgICAgICByZXR1cm47CiAKICAgICBz cGluX2xvY2soJnMtPmxvY2spOwotICAgIHMtPnBtLnBtMWFfc3RzIHw9IFNMUEJUTl9TVFM7Cisg ICAgZC0+YXJjaC5odm1fZG9tYWluLmFjcGkucG0xYV9zdHMgfD0gUFdSQlROX1NUUzsKICAgICBw bXRfdXBkYXRlX3NjaShzKTsKICAgICBzcGluX3VubG9jaygmcy0+bG9jayk7CiB9CkBAIC05NSw3 ICs5Nyw4IEBAIHZvaWQgaHZtX2FjcGlfc2xlZXBfYnV0dG9uKHN0cnVjdCBkb21haW4gKmQpCiBz dGF0aWMgdm9pZCBwbXRfdXBkYXRlX3RpbWUoUE1UU3RhdGUgKnMpCiB7CiAgICAgdWludDY0X3Qg Y3Vycl9ndGltZSwgdG1wOwotICAgIHVpbnQzMl90IHRtcl92YWwgPSBzLT5wbS50bXJfdmFsLCBt c2IgPSB0bXJfdmFsICYgVE1SX1ZBTF9NU0I7CisgICAgc3RydWN0IGh2bV9od19hY3BpICphY3Bp ID0gJnMtPnZjcHUtPmRvbWFpbi0+YXJjaC5odm1fZG9tYWluLmFjcGk7CisgICAgdWludDMyX3Qg dG1yX3ZhbCA9IGFjcGktPnRtcl92YWwsIG1zYiA9IHRtcl92YWwgJiBUTVJfVkFMX01TQjsKICAg ICAKICAgICBBU1NFUlQoc3Bpbl9pc19sb2NrZWQoJnMtPmxvY2spKTsKIApAQCAtMTA4LDEyICsx MTEsMTIgQEAgc3RhdGljIHZvaWQgcG10X3VwZGF0ZV90aW1lKFBNVFN0YXRlICpzKQogICAgIHMt Pmxhc3RfZ3RpbWUgPSBjdXJyX2d0aW1lOwogCiAgICAgLyogVXBkYXRlIHRpbWVyIHZhbHVlIGF0 b21pY2FsbHkgd3J0IGxvY2stZnJlZSByZWFkcyBpbiBoYW5kbGVfcG10X2lvKCkuICovCi0gICAg Kih2b2xhdGlsZSB1aW50MzJfdCAqKSZzLT5wbS50bXJfdmFsID0gdG1yX3ZhbDsKKyAgICB3cml0 ZV9hdG9taWMoJmFjcGktPnRtcl92YWwsIHRtcl92YWwpOwogCiAgICAgLyogSWYgdGhlIGNvdW50 ZXIncyBNU0IgaGFzIGNoYW5nZWQsIHNldCB0aGUgc3RhdHVzIGJpdCAqLwogICAgIGlmICggKHRt cl92YWwgJiBUTVJfVkFMX01TQikgIT0gbXNiICkKICAgICB7Ci0gICAgICAgIHMtPnBtLnBtMWFf c3RzIHw9IFRNUl9TVFM7CisgICAgICAgIGFjcGktPnBtMWFfc3RzIHw9IFRNUl9TVFM7CiAgICAg ICAgIHBtdF91cGRhdGVfc2NpKHMpOwogICAgIH0KIH0KQEAgLTEzMyw3ICsxMzYsOCBAQCBzdGF0 aWMgdm9pZCBwbXRfdGltZXJfY2FsbGJhY2sodm9pZCAqb3BhcXVlKQogICAgIHBtdF91cGRhdGVf dGltZShzKTsKIAogICAgIC8qIEhvdyBjbG9zZSBhcmUgd2UgdG8gdGhlIG5leHQgTVNCIGZsaXA/ ICovCi0gICAgcG10X2N5Y2xlc191bnRpbF9mbGlwID0gVE1SX1ZBTF9NU0IgLSAocy0+cG0udG1y X3ZhbCAmIChUTVJfVkFMX01TQiAtIDEpKTsKKyAgICBwbXRfY3ljbGVzX3VudGlsX2ZsaXAgPSBU TVJfVkFMX01TQiAtCisgICAgICAgIChzLT52Y3B1LT5kb21haW4tPmFyY2guaHZtX2RvbWFpbi5h Y3BpLnRtcl92YWwgJiAoVE1SX1ZBTF9NU0IgLSAxKSk7CiAKICAgICAvKiBPdmVyYWxsIHRpbWUg YmV0d2VlbiBNU0IgZmxpcHMgKi8KICAgICB0aW1lX3VudGlsX2ZsaXAgPSAoMTAwMDAwMDAwMFVM TCA8PCAyMykgLyBGUkVRVUVOQ0VfUE1USU1FUjsKQEAgLTE1Miw2ICsxNTYsNyBAQCBzdGF0aWMg aW50IGhhbmRsZV9ldnRfaW8oCiAgICAgaW50IGRpciwgdW5zaWduZWQgaW50IHBvcnQsIHVuc2ln bmVkIGludCBieXRlcywgdWludDMyX3QgKnZhbCkKIHsKICAgICBzdHJ1Y3QgdmNwdSAqdiA9IGN1 cnJlbnQ7CisgICAgc3RydWN0IGh2bV9od19hY3BpICphY3BpID0gJnYtPmRvbWFpbi0+YXJjaC5o dm1fZG9tYWluLmFjcGk7CiAgICAgUE1UU3RhdGUgKnMgPSAmdi0+ZG9tYWluLT5hcmNoLmh2bV9k b21haW4ucGxfdGltZS0+dnBtdDsKICAgICB1aW50MzJfdCBhZGRyLCBkYXRhLCBieXRlOwogICAg IGludCBpOwpAQCAtMTc1LDE2ICsxODAsMTYgQEAgc3RhdGljIGludCBoYW5kbGVfZXZ0X2lvKAog ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIC8qIFBNMWFfU1RTIHJlZ2lzdGVyIGJpdHMg YXJlIHdyaXRlLXRvLWNsZWFyICovCiAgICAgICAgICAgICBjYXNlIDAgLyogUE0xYV9TVFNfQURE UiAqLzoKLSAgICAgICAgICAgICAgICBzLT5wbS5wbTFhX3N0cyAmPSB+Ynl0ZTsKKyAgICAgICAg ICAgICAgICBhY3BpLT5wbTFhX3N0cyAmPSB+Ynl0ZTsKICAgICAgICAgICAgICAgICBicmVhazsK ICAgICAgICAgICAgIGNhc2UgMSAvKiBQTTFhX1NUU19BRERSICsgMSAqLzoKLSAgICAgICAgICAg ICAgICBzLT5wbS5wbTFhX3N0cyAmPSB+KGJ5dGUgPDwgOCk7CisgICAgICAgICAgICAgICAgYWNw aS0+cG0xYV9zdHMgJj0gfihieXRlIDw8IDgpOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAg ICAgICAgICAgY2FzZSAyIC8qIFBNMWFfRU5fQUREUiAqLzoKLSAgICAgICAgICAgICAgICBzLT5w bS5wbTFhX2VuID0gKHMtPnBtLnBtMWFfZW4gJiAweGZmMDApIHwgYnl0ZTsKKyAgICAgICAgICAg ICAgICBhY3BpLT5wbTFhX2VuID0gKGFjcGktPnBtMWFfZW4gJiAweGZmMDApIHwgYnl0ZTsKICAg ICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgIGNhc2UgMyAvKiBQTTFhX0VOX0FERFIg KyAxICovOgotICAgICAgICAgICAgICAgIHMtPnBtLnBtMWFfZW4gPSAocy0+cG0ucG0xYV9lbiAm IDB4ZmYpIHwgKGJ5dGUgPDwgOCk7CisgICAgICAgICAgICAgICAgYWNwaS0+cG0xYV9lbiA9IChh Y3BpLT5wbTFhX2VuICYgMHhmZikgfCAoYnl0ZSA8PCA4KTsKICAgICAgICAgICAgICAgICBicmVh azsKICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICAgICAgZ2RwcmludGsoWEVOTE9H X1dBUk5JTkcsIApAQCAtMTk3LDcgKzIwMiw3IEBAIHN0YXRpYyBpbnQgaGFuZGxlX2V2dF9pbygK ICAgICB9CiAgICAgZWxzZSAvKiBwLT5kaXIgPT0gSU9SRVFfUkVBRCAqLwogICAgIHsKLSAgICAg ICAgZGF0YSA9IHMtPnBtLnBtMWFfc3RzIHwgKCgodWludDMyX3QpIHMtPnBtLnBtMWFfZW4pIDw8 IDE2KTsKKyAgICAgICAgZGF0YSA9IGFjcGktPnBtMWFfc3RzIHwgKCh1aW50MzJfdClhY3BpLT5w bTFhX2VuIDw8IDE2KTsKICAgICAgICAgZGF0YSA+Pj0gOCAqIGFkZHI7CiAgICAgICAgIGlmICgg Ynl0ZXMgPT0gMSApIGRhdGEgJj0gMHhmZjsKICAgICAgICAgZWxzZSBpZiAoIGJ5dGVzID09IDIg KSBkYXRhICY9IDB4ZmZmZjsKQEAgLTIxNSw2ICsyMjAsNyBAQCBzdGF0aWMgaW50IGhhbmRsZV9w bXRfaW8oCiAgICAgaW50IGRpciwgdW5zaWduZWQgaW50IHBvcnQsIHVuc2lnbmVkIGludCBieXRl cywgdWludDMyX3QgKnZhbCkKIHsKICAgICBzdHJ1Y3QgdmNwdSAqdiA9IGN1cnJlbnQ7CisgICAg c3RydWN0IGh2bV9od19hY3BpICphY3BpID0gJnYtPmRvbWFpbi0+YXJjaC5odm1fZG9tYWluLmFj cGk7CiAgICAgUE1UU3RhdGUgKnMgPSAmdi0+ZG9tYWluLT5hcmNoLmh2bV9kb21haW4ucGxfdGlt ZS0+dnBtdDsKIAogICAgIGlmICggYnl0ZXMgIT0gNCB8fCBkaXIgIT0gSU9SRVFfUkVBRCApCkBA IC0yMjYsNyArMjMyLDcgQEAgc3RhdGljIGludCBoYW5kbGVfcG10X2lvKAogICAgIHsKICAgICAg ICAgLyogV2UgaG9sZCB0aGUgbG9jazogdXBkYXRlIHRpbWVyIHZhbHVlIGFuZCByZXR1cm4gaXQu ICovCiAgICAgICAgIHBtdF91cGRhdGVfdGltZShzKTsKLSAgICAgICAgKnZhbCA9IHMtPnBtLnRt cl92YWw7CisgICAgICAgICp2YWwgPSBhY3BpLT50bXJfdmFsOwogICAgICAgICBzcGluX3VubG9j aygmcy0+bG9jayk7CiAgICAgfQogICAgIGVsc2UKQEAgLTIzNywxNiArMjQzLDE3IEBAIHN0YXRp YyBpbnQgaGFuZGxlX3BtdF9pbygKICAgICAgICAgICogdXBkYXRlZCB2YWx1ZSB3aXRoIGEgbG9j ay1mcmVlIGF0b21pYyByZWFkLgogICAgICAgICAgKi8KICAgICAgICAgc3Bpbl9iYXJyaWVyKCZz LT5sb2NrKTsKLSAgICAgICAgKnZhbCA9IHJlYWRfYXRvbWljKCZzLT5wbS50bXJfdmFsKTsKKyAg ICAgICAgKnZhbCA9IHJlYWRfYXRvbWljKCZhY3BpLT50bXJfdmFsKTsKICAgICB9CiAKICAgICBy ZXR1cm4gWDg2RU1VTF9PS0FZOwogfQogCi1zdGF0aWMgaW50IHBtdGltZXJfc2F2ZShzdHJ1Y3Qg ZG9tYWluICpkLCBodm1fZG9tYWluX2NvbnRleHRfdCAqaCkKK3N0YXRpYyBpbnQgYWNwaV9zYXZl KHN0cnVjdCBkb21haW4gKmQsIGh2bV9kb21haW5fY29udGV4dF90ICpoKQogeworICAgIHN0cnVj dCBodm1faHdfYWNwaSAqYWNwaSA9ICZkLT5hcmNoLmh2bV9kb21haW4uYWNwaTsKICAgICBQTVRT dGF0ZSAqcyA9ICZkLT5hcmNoLmh2bV9kb21haW4ucGxfdGltZS0+dnBtdDsKLSAgICB1aW50MzJf dCB4LCBtc2IgPSBzLT5wbS50bXJfdmFsICYgVE1SX1ZBTF9NU0I7CisgICAgdWludDMyX3QgeCwg bXNiID0gYWNwaS0+dG1yX3ZhbCAmIFRNUl9WQUxfTVNCOwogICAgIGludCByYzsKIAogICAgIGlm ICggIWhhc192cG0oZCkgKQpAQCAtMjYxLDIxICsyNjgsMjEgQEAgc3RhdGljIGludCBwbXRpbWVy X3NhdmUoc3RydWN0IGRvbWFpbiAqZCwgaHZtX2RvbWFpbl9jb250ZXh0X3QgKmgpCiAgICAgeCA9 ICgoKHMtPnZjcHUtPmFyY2guaHZtX3ZjcHUuZ3Vlc3RfdGltZSA/OiBodm1fZ2V0X2d1ZXN0X3Rp bWUocy0+dmNwdSkpIC0KICAgICAgICAgICBzLT5sYXN0X2d0aW1lKSAqIHMtPnNjYWxlKSA+PiAz MjsKICAgICBpZiAoIHggPCAxVUw8PDMxICkKLSAgICAgICAgcy0+cG0udG1yX3ZhbCArPSB4Owot ICAgIGlmICggKHMtPnBtLnRtcl92YWwgJiBUTVJfVkFMX01TQikgIT0gbXNiICkKLSAgICAgICAg cy0+cG0ucG0xYV9zdHMgfD0gVE1SX1NUUzsKKyAgICAgICAgYWNwaS0+dG1yX3ZhbCArPSB4Owor ICAgIGlmICggKGFjcGktPnRtcl92YWwgJiBUTVJfVkFMX01TQikgIT0gbXNiICkKKyAgICAgICAg YWNwaS0+cG0xYV9zdHMgfD0gVE1SX1NUUzsKICAgICAvKiBObyBwb2ludCBpbiBzZXR0aW5nIHRo ZSBTQ0kgaGVyZSBiZWNhdXNlIHdlJ2xsIGFscmVhZHkgaGF2ZSBzYXZlZCB0aGUgCiAgICAgICog SVJRIGFuZCAqUElDIHN0YXRlOyB3ZSdsbCBmaXggaXQgdXAgd2hlbiB3ZSByZXN0b3JlIHRoZSBk b21haW4gKi8KLQotICAgIHJjID0gaHZtX3NhdmVfZW50cnkoUE1USU1FUiwgMCwgaCwgJnMtPnBt KTsKKyAgICByYyA9IGh2bV9zYXZlX2VudHJ5KFBNVElNRVIsIDAsIGgsIGFjcGkpOwogCiAgICAg c3Bpbl91bmxvY2soJnMtPmxvY2spOwogCiAgICAgcmV0dXJuIHJjOwogfQogCi1zdGF0aWMgaW50 IHBtdGltZXJfbG9hZChzdHJ1Y3QgZG9tYWluICpkLCBodm1fZG9tYWluX2NvbnRleHRfdCAqaCkK K3N0YXRpYyBpbnQgYWNwaV9sb2FkKHN0cnVjdCBkb21haW4gKmQsIGh2bV9kb21haW5fY29udGV4 dF90ICpoKQogeworICAgIHN0cnVjdCBodm1faHdfYWNwaSAqYWNwaSA9ICZkLT5hcmNoLmh2bV9k b21haW4uYWNwaTsKICAgICBQTVRTdGF0ZSAqcyA9ICZkLT5hcmNoLmh2bV9kb21haW4ucGxfdGlt ZS0+dnBtdDsKIAogICAgIGlmICggIWhhc192cG0oZCkgKQpAQCAtMjg0LDcgKzI5MSw3IEBAIHN0 YXRpYyBpbnQgcG10aW1lcl9sb2FkKHN0cnVjdCBkb21haW4gKmQsIGh2bV9kb21haW5fY29udGV4 dF90ICpoKQogICAgIHNwaW5fbG9jaygmcy0+bG9jayk7CiAKICAgICAvKiBSZWxvYWQgdGhlIHJl Z2lzdGVycyAqLwotICAgIGlmICggaHZtX2xvYWRfZW50cnkoUE1USU1FUiwgaCwgJnMtPnBtKSAp CisgICAgaWYgKCBodm1fbG9hZF9lbnRyeShQTVRJTUVSLCBoLCBhY3BpKSApCiAgICAgewogICAg ICAgICBzcGluX3VubG9jaygmcy0+bG9jayk7CiAgICAgICAgIHJldHVybiAtRUlOVkFMOwpAQCAt MzAyLDcgKzMwOSw3IEBAIHN0YXRpYyBpbnQgcG10aW1lcl9sb2FkKHN0cnVjdCBkb21haW4gKmQs IGh2bV9kb21haW5fY29udGV4dF90ICpoKQogICAgIHJldHVybiAwOwogfQogCi1IVk1fUkVHSVNU RVJfU0FWRV9SRVNUT1JFKFBNVElNRVIsIHBtdGltZXJfc2F2ZSwgcG10aW1lcl9sb2FkLCAKK0hW TV9SRUdJU1RFUl9TQVZFX1JFU1RPUkUoUE1USU1FUiwgYWNwaV9zYXZlLCBhY3BpX2xvYWQsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgIDEsIEhWTVNSX1BFUl9ET00pOwogCiBpbnQgcG10aW1l cl9jaGFuZ2VfaW9wb3J0KHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGludCB2ZXJzaW9uKQpA QCAtMzc3LDUgKzM4NCwxNSBAQCB2b2lkIHBtdGltZXJfcmVzZXQoc3RydWN0IGRvbWFpbiAqZCkK ICAgICAgICAgcmV0dXJuOwogCiAgICAgLyogUmVzZXQgdGhlIGNvdW50ZXIuICovCi0gICAgZC0+ YXJjaC5odm1fZG9tYWluLnBsX3RpbWUtPnZwbXQucG0udG1yX3ZhbCA9IDA7CisgICAgZC0+YXJj aC5odm1fZG9tYWluLmFjcGkudG1yX3ZhbCA9IDA7CiB9CisKKy8qCisgKiBMb2NhbCB2YXJpYWJs ZXM6CisgKiBtb2RlOiBDCisgKiBjLWZpbGUtc3R5bGU6ICJCU0QiCisgKiBjLWJhc2ljLW9mZnNl dDogNAorICogdGFiLXdpZHRoOiA0CisgKiBpbmRlbnQtdGFicy1tb2RlOiBuaWwKKyAqIEVuZDoK KyAqLwpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vZG9tYWluLmggYi94ZW4v aW5jbHVkZS9hc20teDg2L2h2bS9kb21haW4uaAppbmRleCBmMzRkNzg0Li5kNTVkMTgwIDEwMDY0 NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2L2h2bS9kb21haW4uaAorKysgYi94ZW4vaW5jbHVk ZS9hc20teDg2L2h2bS9kb21haW4uaApAQCAtMTAyLDYgKzEwMiwxNiBAQCBzdHJ1Y3QgaHZtX2Rv bWFpbiB7CiAgICAgc3RydWN0IGh2bV92aW9hcGljICAgICp2aW9hcGljOwogICAgIHN0cnVjdCBo dm1faHdfc3RkdmdhICAgc3RkdmdhOwogCisgICAgLyoKKyAgICAgKiBodm1faHdfcG10aW1lciBp cyBhIHB1YmxpY2x5LXZpc2libGUgbmFtZS4gV2Ugd2lsbCBkZWZlciByZW5hbWluZworICAgICAq IGl0IHRvIHRoZSBtb3JlIGFwcHJvcHJpYXRlIGh2bV9od19hY3BpIHVudGlsIHRoZSBleHBlY3Rl ZAorICAgICAqIGNvbXByZWhlbnNpdmUgcmV3cnRlIG9mIG1pZ3JhdGlvbiBjb2RlLCB0aHVzIGF2 b2lkaW5nIGNvZGUgY2h1cm4KKyAgICAgKiBpbiBwdWJsaWMgaGVhZGVyIGZpbGVzLgorICAgICAq IEludGVybmFsbHksIGhvd2V2ZXIsIHdlIHdpbGwgYmUgdXNpbmcgaHZtX2h3X2FjcGkuCisgICAg ICovCisjZGVmaW5lIGh2bV9od19hY3BpIGh2bV9od19wbXRpbWVyCisgICAgc3RydWN0IGh2bV9o d19hY3BpICAgICBhY3BpOworCiAgICAgLyogVkNQVSB3aGljaCBpcyBjdXJyZW50IHRhcmdldCBm b3IgODI1OSBpbnRlcnJ1cHRzLiAqLwogICAgIHN0cnVjdCB2Y3B1ICAgICAgICAgICAqaTgyNTlf dGFyZ2V0OwogCmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L2h2bS92cHQuaCBiL3hl bi9pbmNsdWRlL2FzbS14ODYvaHZtL3ZwdC5oCmluZGV4IGEyN2JlYTQuLjFiNzIxM2QgMTAwNjQ0 Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3ZwdC5oCisrKyBiL3hlbi9pbmNsdWRlL2Fz bS14ODYvaHZtL3ZwdC5oCkBAIC0xMjEsNyArMTIxLDYgQEAgdHlwZWRlZiBzdHJ1Y3QgUlRDU3Rh dGUgewogCiAjZGVmaW5lIEZSRVFVRU5DRV9QTVRJTUVSICAzNTc5NTQ1ICAvKiBUaW1lciBzaG91 bGQgcnVuIGF0IDMuNTc5NTQ1IE1IeiAqLwogdHlwZWRlZiBzdHJ1Y3QgUE1UU3RhdGUgewotICAg IHN0cnVjdCBodm1faHdfcG10aW1lciBwbTsgICAvKiAzMmJpdCB0aW1lciB2YWx1ZSAqLwogICAg IHN0cnVjdCB2Y3B1ICp2Y3B1OyAgICAgICAgICAvKiBLZWVwcyBzeW5jIHdpdGggdGhpcyB2Y3B1 J3MgZ3Vlc3QtdGltZSAqLwogICAgIHVpbnQ2NF90IGxhc3RfZ3RpbWU7ICAgICAgICAvKiBMYXN0 IChndWVzdCkgdGltZSB3ZSB1cGRhdGVkIHRoZSB0aW1lciAqLwogICAgIHVpbnQzMl90IG5vdF9h Y2NvdW50ZWQ7ICAgICAvKiB0aW1lIG5vdCBhY2NvdW50ZWQgYXQgbGFzdCB1cGRhdGUgKi8KLS0g CjIuNy40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K WGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xp c3RzLnhlbi5vcmcveGVuLWRldmVsCg==