From mboxrd@z Thu Jan 1 00:00:00 1970 From: Anthony PERARD Subject: [PATCH 2/2] Add vlapic timer checks Date: Mon, 20 Mar 2017 14:38:46 +0000 Message-ID: <20170320143846.21234-3-anthony.perard@citrix.com> References: <20170320143846.21234-1-anthony.perard@citrix.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 1cpySZ-0001Li-W4 for xen-devel@lists.xenproject.org; Mon, 20 Mar 2017 14:39:00 +0000 In-Reply-To: <20170320143846.21234-1-anthony.perard@citrix.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: Anthony PERARD , Andrew Cooper List-Id: xen-devel@lists.xenproject.org U2lnbmVkLW9mZi1ieTogQW50aG9ueSBQRVJBUkQgPGFudGhvbnkucGVyYXJkQGNpdHJpeC5jb20+ Ci0tLQogdGVzdHMvdmxhcGljLXRpbWVyL01ha2VmaWxlIHwgICA5ICsrKwogdGVzdHMvdmxhcGlj LXRpbWVyL21haW4uYyAgIHwgMTMxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrCiAyIGZpbGVzIGNoYW5nZWQsIDE0MCBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9k ZSAxMDA2NDQgdGVzdHMvdmxhcGljLXRpbWVyL01ha2VmaWxlCiBjcmVhdGUgbW9kZSAxMDA2NDQg dGVzdHMvdmxhcGljLXRpbWVyL21haW4uYwoKZGlmZiAtLWdpdCBhL3Rlc3RzL3ZsYXBpYy10aW1l ci9NYWtlZmlsZSBiL3Rlc3RzL3ZsYXBpYy10aW1lci9NYWtlZmlsZQpuZXcgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMDAwMDAwLi4wMWZhNGVhCi0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvdmxh cGljLXRpbWVyL01ha2VmaWxlCkBAIC0wLDAgKzEsOSBAQAoraW5jbHVkZSAkKFJPT1QpL2J1aWxk L2NvbW1vbi5taworCitOQU1FICAgICAgOj0gdmxhcGljLXRpbWVyCitDQVRFR09SWSAgOj0gZnVu Y3Rpb25hbAorVEVTVC1FTlZTIDo9ICQoSFZNX0VOVklST05NRU5UUykKKworb2JqLXBlcmVudiAr PSBtYWluLm8KKworaW5jbHVkZSAkKFJPT1QpL2J1aWxkL2dlbi5tawpkaWZmIC0tZ2l0IGEvdGVz dHMvdmxhcGljLXRpbWVyL21haW4uYyBiL3Rlc3RzL3ZsYXBpYy10aW1lci9tYWluLmMKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjA4MTY2MQotLS0gL2Rldi9udWxsCisrKyBi L3Rlc3RzL3ZsYXBpYy10aW1lci9tYWluLmMKQEAgLTAsMCArMSwxMzEgQEAKKy8qKgorICogQGZp bGUgdGVzdHMvdmxhcGljLXRpbWVyL21haW4uYworICogQHJlZiB0ZXN0LXZsYXBpYy10aW1lciAt IExBUElDIFRpbWVyIEVtdWxhdGlvbgorICoKKyAqIEBwYWdlIHRlc3QtdmxhcGljLXRpbWVyIExB UElDIFRpbWVyIEVtdWxhdGlvbgorICoKKyAqIFRlc3RzIHRoZSBiZWhhdmlvciBvZiB0aGUgdmxh cGljIHRpbWVyIGVtdWxhdGlvbiBieSBYZW4uCisgKgorICogVGhpcyB0ZXN0cyBzaG91bGQgd29y ayBvbiBiYXJlbWV0YWwuCisgKgorICogSXQgaXMgdGVzdGluZyBzd2l0Y2ggYmV0d2VlbiBkaWZm ZXJlbnQgbW9kZSwgb25lLXNob3QgYW5kIHBlcmlvZGljLgorICoKKyAqIEBzZWUgdGVzdHMvdmxh cGljLXRpbWVyL21haW4uYworICovCisjaW5jbHVkZSA8c3RkYm9vbC5oPgorI2luY2x1ZGUgPHh0 Zi5oPgorI2luY2x1ZGUgPGFyY2gvYXBpY2RlZi5oPgorCitjb25zdCBjaGFyIHRlc3RfdGl0bGVb XSA9ICJUZXN0IHZsYXBpYy10aW1lciI7CisKK3N0YXRpYyBpbmxpbmUgdm9pZCBhcGljX3dyaXRl KHVuc2lnbmVkIGxvbmcgcmVnLCB1aW50MzJfdCB2KQoreworICAgICooKHZvbGF0aWxlIHVpbnQz Ml90ICopKEFQSUNfQkFTRSArIHJlZykpID0gdjsKK30KKworc3RhdGljIGlubGluZSB1aW50MzJf dCBhcGljX3JlYWQodW5zaWduZWQgbG9uZyByZWcpCit7CisgICAgcmV0dXJuICooKHZvbGF0aWxl IHVpbnQzMl90ICopKEFQSUNfQkFTRSArIHJlZykpOworfQorCitzdGF0aWMgaW5saW5lIHZvaWQg Y2hhbmdlX21vZGUodW5zaWduZWQgbG9uZyBuZXdfbW9kZSkKK3sKKyAgICB1aW50MzJfdCBsdnR0 OworCisgICAgbHZ0dCA9IGFwaWNfcmVhZChBUElDX0xWVFQpOworICAgIGFwaWNfd3JpdGUoQVBJ Q19MVlRULCAobHZ0dCAmIH5BUElDX1RJTUVSX01PREVfTUFTSykgfCBuZXdfbW9kZSk7Cit9CisK K3ZvaWQgd2FpdF91bnRpbF90bWNjdF9pc196ZXJvKHVpbnQzMl90IGluaXRpYWxfY291bnQsIGJv b2wgc3RvcF93aGVuX2hhbGYpCit7CisgICAgdWludDMyX3QgdG1jY3QgPSBhcGljX3JlYWQoQVBJ Q19UTUNDVCk7CisKKyAgICBpZiAoIHRtY2N0ICkKKyAgICB7CisgICAgICAgIHdoaWxlICggdG1j Y3QgPiAoaW5pdGlhbF9jb3VudCAvIDIpICkKKyAgICAgICAgICAgIHRtY2N0ID0gYXBpY19yZWFk KEFQSUNfVE1DQ1QpOworCisgICAgICAgIGlmICggc3RvcF93aGVuX2hhbGYgKQorICAgICAgICAg ICAgcmV0dXJuOworCisgICAgICAgIC8qIFdhaXQgdW50aWwgdGhlIGNvdW50ZXIgcmVhY2ggMCBv ciB3cmFwLWFyb3VuZCAqLworICAgICAgICB3aGlsZSAoIHRtY2N0IDw9IChpbml0aWFsX2NvdW50 IC8gMikgJiYgdG1jY3QgPiAwICkKKyAgICAgICAgICAgIHRtY2N0ID0gYXBpY19yZWFkKEFQSUNf VE1DQ1QpOworICAgIH0KK30KKwordm9pZCB0ZXN0X21haW4odm9pZCkKK3sKKyAgICB1aW50MzJf dCB0bWljdCA9IDB4OTk5OTk5OworCisgICAgYXBpY193cml0ZShBUElDX1RNSUNULCB0bWljdCk7 CisgICAgLyoKKyAgICAgKiBBc3N1bWluZyB0aGF0IHRoZSBpbml0aWFsIG1vZGUgaXMgb25lLXNo b3QsIGNoYW5nZSBpdCB0byBwZXJpb2RpYy4gVE1JQ1QKKyAgICAgKiBzaG91bGQgbm90IGJlIHJl c2V0LgorICAgICAqLworICAgIGNoYW5nZV9tb2RlKEFQSUNfVElNRVJfTU9ERV9QRVJJT0RJQyk7 CisgICAgaWYgKCBhcGljX3JlYWQoQVBJQ19UTUlDVCkgIT0gdG1pY3QgKQorICAgICAgICB4dGZf ZmFpbHVyZSgiRmFpbDogVE1JQ1QgdmFsdWUgcmVzZXRcbiIpOworCisgICAgLyogVGVzdGluZyBv bmUtc2hvdCAqLworICAgIHByaW50aygiVGVzdGluZyBvbmUtc2hvdCBtb2RlXG4iKTsKKyAgICBj aGFuZ2VfbW9kZShBUElDX1RJTUVSX01PREVfT05FU0hPVCk7CisgICAgYXBpY193cml0ZShBUElD X1RNSUNULCB0bWljdCk7CisgICAgaWYgKCAhYXBpY19yZWFkKEFQSUNfVE1DQ1QpICkKKyAgICAg ICAgeHRmX2ZhaWx1cmUoIkZhaWw6IFRNQ0NUIHNob3VsZCBoYXZlIGEgbm9uLXplcm8gdmFsdWVc biIpOworICAgIHdhaXRfdW50aWxfdG1jY3RfaXNfemVybyh0bWljdCwgZmFsc2UpOworICAgIGlm ICggYXBpY19yZWFkKEFQSUNfVE1DQ1QpICkKKyAgICAgICAgeHRmX2ZhaWx1cmUoIkZhaWw6IFRN Q0NUIHNob3VsZCBoYXZlIHJlYWNoZWQgMFxuIik7CisKKyAgICAvKgorICAgICAqIFdyaXRlIFRN SUNUIGJlZm9yZSBjaGFuZ2luZyBtb2RlIGZyb20gb25lLXNob3QgdG8gcGVyaW9kaWMgVE1DQ1Qg c2hvdWxkCisgICAgICogYmUgcmVzZXQgdG8gVE1JQ1QgcGVyaW9kaWNseQorICAgICAqLworICAg IGFwaWNfd3JpdGUoQVBJQ19UTUlDVCwgdG1pY3QpOworICAgIHdhaXRfdW50aWxfdG1jY3RfaXNf emVybyh0bWljdCwgdHJ1ZSk7CisgICAgcHJpbnRrKCJUZXN0aW5nIHBlcmlvZGljIG1vZGVcbiIp OworICAgIGNoYW5nZV9tb2RlKEFQSUNfVElNRVJfTU9ERV9QRVJJT0RJQyk7CisgICAgaWYgKCAh YXBpY19yZWFkKEFQSUNfVE1DQ1QpICkKKyAgICAgICAgeHRmX2ZhaWx1cmUoIkZhaWw6IFRNQ0NU IHNob3VsZCBoYXZlIGEgbm9uLXplcm8gdmFsdWVcbiIpOworICAgIC8qCisgICAgICogQWZ0ZXIg dGhlIGNoYW5nZSBvZiBtb2RlLCB0aGUgY291bnRlciBzaG91bGQgbm90IGJlIHJlc2V0IGFuZCBj b250aW51ZQorICAgICAqIGNvdW50aW5nIGRvd24gZnJvbSB3aGVyZSBpdCB3YXMKKyAgICAgKi8K KyAgICBpZiAoIGFwaWNfcmVhZChBUElDX1RNQ0NUKSA+ICh0bWljdCAvIDIpICkKKyAgICAgICAg eHRmX2ZhaWx1cmUoIkZhaWw6IFRNQ0NUIHNob3VsZCBub3QgYmUgcmVzZXQgdG8gVE1JQ1QgdmFs dWVcbiIpOworICAgIHdhaXRfdW50aWxfdG1jY3RfaXNfemVybyh0bWljdCwgZmFsc2UpOworICAg IGlmICggYXBpY19yZWFkKEFQSUNfVE1DQ1QpIDwgKHRtaWN0IC8gMikgKQorICAgICAgICB4dGZf ZmFpbHVyZSgiRmFpbDogVE1DQ1Qgc2hvdWxkIGJlIHJlc2V0IHRvIHRoZSBpbml0aWFsLWNvdW50 XG4iKTsKKworICAgIHdhaXRfdW50aWxfdG1jY3RfaXNfemVybyh0bWljdCwgdHJ1ZSk7CisgICAg LyoKKyAgICAgKiBLZWVwIHRoZSBzYW1lIFRNSUNUIGFuZCBjaGFuZ2UgdGltZXIgbW9kZSB0byBv bmUtc2hvdAorICAgICAqIFRNQ0NUIHNob3VsZCBiZSA+IDAgYW5kIGNvdW50LWRvd24gdG8gMAor ICAgICAqLworICAgIHByaW50aygiVGVzdGluZyBvbmUtc2hvdCBhZnRlciBwZXJpb2RpYyAobm8g dG1pY3QgcmVzZXQpXG4iKTsKKyAgICBjaGFuZ2VfbW9kZShBUElDX1RJTUVSX01PREVfT05FU0hP VCk7CisgICAgaWYgKCAhYXBpY19yZWFkKEFQSUNfVE1DQ1QpICkKKyAgICAgICAgeHRmX2ZhaWx1 cmUoIkZhaWw6IFRNQ0NUIHNob3VsZCBoYXZlIGEgbm9uLXplcm8gdmFsdWVcbiIpOworICAgIGlm ICggYXBpY19yZWFkKEFQSUNfVE1DQ1QpID4gKHRtaWN0IC8gMikgKQorICAgICAgICB4dGZfZmFp bHVyZSgiRmFpbDogVE1DQ1Qgc2hvdWxkIG5vdCBiZSByZXNldCB0byBpbml0XG4iKTsKKyAgICB3 YWl0X3VudGlsX3RtY2N0X2lzX3plcm8odG1pY3QsIGZhbHNlKTsKKyAgICBpZiAoIGFwaWNfcmVh ZChBUElDX1RNQ0NUKSApCisgICAgICAgIHh0Zl9mYWlsdXJlKCJGYWlsOiBUTUNDVCBzaG91bGQg aGF2ZSByZWFjaCB6ZXJvXG4iKTsKKworICAgIC8qIG5vdyB0bWNjdCA9PSAwIGFuZCB0bWljdCAh PSAwICovCisgICAgY2hhbmdlX21vZGUoQVBJQ19USU1FUl9NT0RFX1BFUklPRElDKTsKKyAgICBp ZiAoIGFwaWNfcmVhZChBUElDX1RNQ0NUKSApCisgICAgICAgIHh0Zl9mYWlsdXJlKCJGYWlsOiBU TUNDVCBzaG91bGQgc3RheSBhdCB6ZXJvXG4iKTsKKworICAgIHh0Zl9zdWNjZXNzKE5VTEwpOwor fQorCisvKgorICogTG9jYWwgdmFyaWFibGVzOgorICogbW9kZTogQworICogYy1maWxlLXN0eWxl OiAiQlNEIgorICogYy1iYXNpYy1vZmZzZXQ6IDQKKyAqIHRhYi13aWR0aDogNAorICogaW5kZW50 LXRhYnMtbW9kZTogbmlsCisgKiBFbmQ6CisgKi8KLS0gCkFudGhvbnkgUEVSQVJECgoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxp bmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVu LWRldmVsCg==