From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joao Martins Subject: [PATCH v5 2/5] x86/time: refactor read_platform_stime() Date: Fri, 23 Sep 2016 11:42:44 +0100 Message-ID: <1474627367-8185-3-git-send-email-joao.m.martins@oracle.com> References: <1474627367-8185-1-git-send-email-joao.m.martins@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bnNv3-0007yR-8l for xen-devel@lists.xenproject.org; Fri, 23 Sep 2016 10:41:25 +0000 In-Reply-To: <1474627367-8185-1-git-send-email-joao.m.martins@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.xenproject.org Cc: Andrew Cooper , Joao Martins , Jan Beulich List-Id: xen-devel@lists.xenproject.org VG8gYWxsb3cgdGhlIGNhbGxlciB0byBmZXRjaCB0aGUgbGFzdCByZWFkIGZyb20gdGhlIGNsb2Nr c291cmNlIHdoaWNoCndhcyB1c2VkIHRvIGNhbGN1bGF0ZSBzeXN0ZW1fdGltZS4gVGhpcyBpcyBh IHByZXJlcXVpc2l0ZSBmb3IgYQpzdWJzZXF1ZW50IHBhdGNoIHRoYXQgd2lsbCB1c2UgdGhpcyBs YXN0IHJlYWQuCgpTaWduZWQtb2ZmLWJ5OiBKb2FvIE1hcnRpbnMgPGpvYW8ubS5tYXJ0aW5zQG9y YWNsZS5jb20+CkFja2VkLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+Ci0tLQpD YzogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpDYzogQW5kcmV3IENvb3BlciA8YW5k cmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KCkNoYW5nZXMgc2luY2UgdjQ6CiAtIEFkZCB1bmxpa2Vs eSB3aGVuIGNhbGxlcnMgcHJvdmlkZSBhIHN0YW1wIGFyZ3VtZW50CiAtIEFkZCBBY2tlZC1ieSBm cm9tIEphbgoKQ2hhbmdlcyBzaW5jZSB2MzoKIC0gQWRkIG1lbnRpb24gb2YgdGhpcyBiZWluZyBh IHByZXJlcXVpc2l0ZSB0byBhIGxhdGVyIHBhdGNoLgotLS0KIHhlbi9hcmNoL3g4Ni90aW1lLmMg fCAyMiArKysrKysrKysrKysrLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTMgaW5zZXJ0aW9u cygrKSwgOSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvdGltZS5jIGIv eGVuL2FyY2gveDg2L3RpbWUuYwppbmRleCAwYzFhZDQ1Li42MzA1YTg0IDEwMDY0NAotLS0gYS94 ZW4vYXJjaC94ODYvdGltZS5jCisrKyBiL3hlbi9hcmNoL3g4Ni90aW1lLmMKQEAgLTUzNywxOCAr NTM3LDIyIEBAIHN0YXRpYyB2b2lkIHBsdF9vdmVyZmxvdyh2b2lkICp1bnVzZWQpCiAgICAgc2V0 X3RpbWVyKCZwbHRfb3ZlcmZsb3dfdGltZXIsIE5PVygpICsgcGx0X292ZXJmbG93X3BlcmlvZCk7 CiB9CiAKLXN0YXRpYyBzX3RpbWVfdCByZWFkX3BsYXRmb3JtX3N0aW1lKHZvaWQpCitzdGF0aWMg c190aW1lX3QgcmVhZF9wbGF0Zm9ybV9zdGltZSh1NjQgKnN0YW1wKQogewotICAgIHU2NCBjb3Vu dDsKKyAgICB1NjQgcGx0X2NvdW50ZXIsIGNvdW50OwogICAgIHNfdGltZV90IHN0aW1lOwogCiAg ICAgQVNTRVJUKCFsb2NhbF9pcnFfaXNfZW5hYmxlZCgpKTsKIAogICAgIHNwaW5fbG9jaygmcGxh dGZvcm1fdGltZXJfbG9jayk7Ci0gICAgY291bnQgPSBwbHRfc3RhbXA2NCArICgocGx0X3NyYy5y ZWFkX2NvdW50ZXIoKSAtIHBsdF9zdGFtcCkgJiBwbHRfbWFzayk7CisgICAgcGx0X2NvdW50ZXIg PSBwbHRfc3JjLnJlYWRfY291bnRlcigpOworICAgIGNvdW50ID0gcGx0X3N0YW1wNjQgKyAoKHBs dF9jb3VudGVyIC0gcGx0X3N0YW1wKSAmIHBsdF9tYXNrKTsKICAgICBzdGltZSA9IF9fcmVhZF9w bGF0Zm9ybV9zdGltZShjb3VudCk7CiAgICAgc3Bpbl91bmxvY2soJnBsYXRmb3JtX3RpbWVyX2xv Y2spOwogCisgICAgaWYgKCB1bmxpa2VseShzdGFtcCkgKQorICAgICAgICAqc3RhbXAgPSBwbHRf Y291bnRlcjsKKwogICAgIHJldHVybiBzdGltZTsKIH0KIApAQCAtNjYxLDcgKzY2NSw3IEBAIHZv aWQgY3N0YXRlX3Jlc3RvcmVfdHNjKHZvaWQpCiAgICAgaWYgKCBib290X2NwdV9oYXMoWDg2X0ZF QVRVUkVfTk9OU1RPUF9UU0MpICkKICAgICAgICAgcmV0dXJuOwogCi0gICAgd3JpdGVfdHNjKHN0 aW1lMnRzYyhyZWFkX3BsYXRmb3JtX3N0aW1lKCkpKTsKKyAgICB3cml0ZV90c2Moc3RpbWUydHNj KHJlYWRfcGxhdGZvcm1fc3RpbWUoTlVMTCkpKTsKIH0KIAogLyoqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgpA QCAtOTgwLDcgKzk4NCw3IEBAIGludCBjcHVfZnJlcXVlbmN5X2NoYW5nZSh1NjQgZnJlcSkKIAog ICAgIGxvY2FsX2lycV9kaXNhYmxlKCk7CiAgICAgLyogUGxhdGZvcm0gdGltZSAvZmlyc3QvLCBh cyB3ZSBtYXkgYmUgZGVsYXllZCBieSBwbGF0Zm9ybV90aW1lcl9sb2NrLiAqLwotICAgIHQtPnN0 YW1wLm1hc3Rlcl9zdGltZSA9IHJlYWRfcGxhdGZvcm1fc3RpbWUoKTsKKyAgICB0LT5zdGFtcC5t YXN0ZXJfc3RpbWUgPSByZWFkX3BsYXRmb3JtX3N0aW1lKE5VTEwpOwogICAgIGN1cnJfdHNjID0g cmR0c2Nfb3JkZXJlZCgpOwogICAgIC8qIFRTQy1leHRyYXBvbGF0ZWQgdGltZSBtYXkgYmUgYm9n dXMgYWZ0ZXIgZnJlcXVlbmN5IGNoYW5nZS4gKi8KICAgICAvKnQtPnN0YW1wLmxvY2FsX3N0aW1l ID0gZ2V0X3NfdGltZV9maXhlZChjdXJyX3RzYyk7Ki8KQEAgLTEyODUsNyArMTI4OSw3IEBAIHN0 YXRpYyB2b2lkIHRpbWVfY2FsaWJyYXRpb25fdHNjX3JlbmRlenZvdXModm9pZCAqX3IpCiAKICAg ICAgICAgICAgIGlmICggci0+bWFzdGVyX3N0aW1lID09IDAgKQogICAgICAgICAgICAgewotICAg ICAgICAgICAgICAgIHItPm1hc3Rlcl9zdGltZSA9IHJlYWRfcGxhdGZvcm1fc3RpbWUoKTsKKyAg ICAgICAgICAgICAgICByLT5tYXN0ZXJfc3RpbWUgPSByZWFkX3BsYXRmb3JtX3N0aW1lKE5VTEwp OwogICAgICAgICAgICAgICAgIHItPm1hc3Rlcl90c2Nfc3RhbXAgPSByZHRzY19vcmRlcmVkKCk7 CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBhdG9taWNfaW5jKCZyLT5zZW1hcGhvcmUpOwpA QCAtMTMyNSw3ICsxMzI5LDcgQEAgc3RhdGljIHZvaWQgdGltZV9jYWxpYnJhdGlvbl9zdGRfcmVu ZGV6dm91cyh2b2lkICpfcikKICAgICB7CiAgICAgICAgIHdoaWxlICggYXRvbWljX3JlYWQoJnIt PnNlbWFwaG9yZSkgIT0gKHRvdGFsX2NwdXMgLSAxKSApCiAgICAgICAgICAgICBjcHVfcmVsYXgo KTsKLSAgICAgICAgci0+bWFzdGVyX3N0aW1lID0gcmVhZF9wbGF0Zm9ybV9zdGltZSgpOworICAg ICAgICByLT5tYXN0ZXJfc3RpbWUgPSByZWFkX3BsYXRmb3JtX3N0aW1lKE5VTEwpOwogICAgICAg ICBzbXBfd21iKCk7IC8qIHdyaXRlIHItPm1hc3Rlcl9zdGltZSAvdGhlbi8gc2lnbmFsICovCiAg ICAgICAgIGF0b21pY19pbmMoJnItPnNlbWFwaG9yZSk7CiAgICAgfQpAQCAtMTM2NCw3ICsxMzY4 LDcgQEAgdm9pZCB0aW1lX2xhdGNoX3N0YW1wcyh2b2lkKQogICAgIHVuc2lnbmVkIGxvbmcgZmxh Z3M7CiAKICAgICBsb2NhbF9pcnFfc2F2ZShmbGFncyk7Ci0gICAgYXBfYnJpbmd1cF9yZWYubWFz dGVyX3N0aW1lID0gcmVhZF9wbGF0Zm9ybV9zdGltZSgpOworICAgIGFwX2JyaW5ndXBfcmVmLm1h c3Rlcl9zdGltZSA9IHJlYWRfcGxhdGZvcm1fc3RpbWUoTlVMTCk7CiAgICAgYXBfYnJpbmd1cF9y ZWYubG9jYWxfdHNjID0gcmR0c2Nfb3JkZXJlZCgpOwogICAgIGxvY2FsX2lycV9yZXN0b3JlKGZs YWdzKTsKIApAQCAtMTM4Miw3ICsxMzg2LDcgQEAgdm9pZCBpbml0X3BlcmNwdV90aW1lKHZvaWQp CiAgICAgdC0+dHNjX3NjYWxlID0gcGVyX2NwdShjcHVfdGltZSwgMCkudHNjX3NjYWxlOwogCiAg ICAgbG9jYWxfaXJxX3NhdmUoZmxhZ3MpOwotICAgIG5vdyA9IHJlYWRfcGxhdGZvcm1fc3RpbWUo KTsKKyAgICBub3cgPSByZWFkX3BsYXRmb3JtX3N0aW1lKE5VTEwpOwogICAgIHRzYyA9IHJkdHNj X29yZGVyZWQoKTsKICAgICBsb2NhbF9pcnFfcmVzdG9yZShmbGFncyk7CiAKLS0gCjIuMS40CgoK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVs IG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5v cmcveGVuLWRldmVsCg==