From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joao Martins Subject: [PATCH 5/5] x86/time: implement PVCLOCK_TSC_STABLE_BIT Date: Thu, 17 Mar 2016 09:12:16 -0700 (PDT) Message-ID: <1458231136-13457-6-git-send-email-joao.m.martins@oracle.com> References: <1458231136-13457-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: In-Reply-To: <1458231136-13457-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.xen.org Cc: Andrew Cooper , Joao Martins , Keir Fraser , Jan Beulich List-Id: xen-devel@lists.xenproject.org V2hlbiB1c2luZyBUU0MgYXMgY2xvY2tzb3VyY2Ugd2Ugd2lsbCBzb2xlbHkgcmVseSBvbiBUU0Mg Zm9yIHVwZGF0aW5nCnZjcHUgdGltZSBpbmZvcyAocHZ0aSkuIFJpZ2h0IG5vdywgZWFjaCB2Q1BV IHRha2VzIHRoZSB0c2NfdGltZXN0YW1wIGF0CmRpZmZlcmVudCBpbnN0YW50cyBtZWFuaW5nIGV2 ZXJ5IEVQT0NIICsgZGVsdGEuIFRoaXMgZGVsdGEgaXMgdmFyaWFibGUKZGVwZW5kaW5nIG9uIHRo ZSB0aW1lIHRoZSBDUFUgY2FsaWJyYXRlcyB3aXRoIENQVSAwIChtYXN0ZXIpLCBhbmQgd2lsbAps aWtlbHkgYmUgZGlmZmVyZW50IGFuZCB2YXJpYWJsZSBhY3Jvc3MgdkNQVVMuIFRoaXMgbWVhbnMg dGhhdCBlYWNoIFZDUFUKcHZ0aSB3b24ndCBhY2NvdW50IHRvIGl0cyBjYWxpYnJhdGlvbiBlcnJv ciB3aGljaCBjb3VsZCBsZWFkIHRvIHRpbWUKZ29pbmcgYmFja3dhcmRzLCBhbmQgYWxsb3dpbmcg YSBzaXR1YXRpb24gd2hlcmUgdGltZSByZWFkIG9uIFZDUFUgQgppbW1lZGlhdGVseSBhZnRlciBB IGJlaW5nIHNtYWxsZXIuIFdoaWxlIHRoaXMgZG9lc24ndCBoYXBwZW4gYSBsb3QsIEkKd2FzIGFi bGUgdG8gb2JzZXJ2ZSAoZm9yIGNsb2Nrc291cmNlPXRzYykgYXJvdW5kIDUwIHRpbWVzIGluIGFu IGhvdXIKaGF2aW5nIHdhcnBzIG9mIDwgMTAwIG5zLgoKVGhpcyBwYXRjaCBwcm9wb3NlcyByZWx5 aW5nIG9uIGhvc3QgVFNDIHN5bmNocm9uaXphdGlvbiBhbmQgcGFzc3Rocm91Z2gKb2YgdGhlIG1h c3RlciB0c2MgdG8gdGhlIGd1ZXN0LCB3aGVuIHJ1bm5pbmcgb24gYSBUU0Mtc2FmZSBwbGF0Zm9y bS4gIE9uCnRoZSByZW5kZXp2b3VzIGZ1bmN0aW9uIHdlIHdpbGwgcmV0cmlldmUgdGhlIHBsYXRm b3JtIHRpbWUgaW4gbnMgYW5kIHRoZQpsYXN0IGNvdW50IHJlYWQgYnkgdGhlIGNsb2Nrc291cmNl IHRoYXQgd2FzIHVzZWQgdG8gY29tcHV0ZSBzeXN0ZW0gdGltZS4KbWFzdGVyIHdpbGwgd3JpdGUg Ym90aCBtYXN0ZXJfdHNjX3N0YW1wIGFuZCBtYXN0ZXJfc3RpbWUsIGFuZCB0aGUgb3RoZXIKdkNQ VVMgKHNsYXZlKSB3aWxsIHVzZSBpdCB0byB1cGRhdGUgdGhlaXIgY29ycmVzcG9uZGVudCB0aW1l IGluZm9zLgpUaGlzIHdheSB3ZSBjYW4gZ3VhcmFudGVlIHRoYXQgb24gYSBwbGF0Zm9ybSB3aXRo IGEgY29uc3RhbnQgYW5kCnJlbGlhYmxlIFRTQywgdGhhdCB0aGUgdGltZSByZWFkIG9uIHZjcHUg QiByaWdodCBhZnRlciBBIGlzIGJpZ2dlcgppbmRlcGVuZGVudGx5IG9mIHRoZSBWQ1BVIGNhbGli cmF0aW9uIGVycm9yLiBTaW5jZSBwdmNsb2NrIHRpbWUgaW5mb3MKYXJlIG1vbm90b25pYyBhcyBz ZWVuIGJ5IGFueSB2Q1BVIHNldCBQVkNMT0NLX1RTQ19TVEFCTEVfQklULCB3aGljaCB0aGVuCmVu YWJsZXMgdXNhZ2Ugb2YgVkRTTyBvbiBMaW51eC4gIElJVUMsIHRoaXMgaXMgc2ltaWxhciB0byBo b3cgaXQncwppbXBsZW1lbnRlZCBvbiBLVk0uCgpTaWduZWQtb2ZmLWJ5OiBKb2FvIE1hcnRpbnMg PGpvYW8ubS5tYXJ0aW5zQG9yYWNsZS5jb20+Ci0tLQpDYzogS2VpciBGcmFzZXIgPGtlaXJAeGVu Lm9yZz4KQ2M6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KQ2M6IEFuZHJldyBDb29w ZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Ci0tLQogeGVuL2FyY2gveDg2L3RpbWUuYyB8 IDEyICsrKysrKysrKystLQogMSBmaWxlIGNoYW5nZWQsIDEwIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3RpbWUuYyBiL3hlbi9hcmNoL3g4 Ni90aW1lLmMKaW5kZXggODljMzVkMC4uYTE3NTI5YyAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2 L3RpbWUuYworKysgYi94ZW4vYXJjaC94ODYvdGltZS5jCkBAIC05MTcsNiArOTE3LDggQEAgc3Rh dGljIHZvaWQgX191cGRhdGVfdmNwdV9zeXN0ZW1fdGltZShzdHJ1Y3QgdmNwdSAqdiwgaW50IGZv cmNlKQogCiAgICAgX3UudHNjX3RpbWVzdGFtcCA9IHRzY19zdGFtcDsKICAgICBfdS5zeXN0ZW1f dGltZSAgID0gdC0+c3RpbWVfbG9jYWxfc3RhbXA7CisgICAgaWYgKCBjbG9ja3NvdXJjZV9pc190 c2MgKQorICAgICAgICBfdS5mbGFncyAgICB8PSBQVkNMT0NLX1RTQ19TVEFCTEVfQklUOwogCiAg ICAgaWYgKCBpc19odm1fZG9tYWluKGQpICkKICAgICAgICAgX3UudHNjX3RpbWVzdGFtcCArPSB2 LT5hcmNoLmh2bV92Y3B1LmNhY2hlX3RzY19vZmZzZXQ7CkBAIC0xMzc3LDkgKzEzNzksMTIgQEAg c3RhdGljIHZvaWQgdGltZV9jYWxpYnJhdGlvbl9zdGRfcmVuZGV6dm91cyh2b2lkICpfcikKIAog ICAgIGlmICggc21wX3Byb2Nlc3Nvcl9pZCgpID09IDAgKQogICAgIHsKKyAgICAgICAgdTY0IGxh c3RfY291bnRlcjsKICAgICAgICAgd2hpbGUgKCBhdG9taWNfcmVhZCgmci0+c2VtYXBob3JlKSAh PSAodG90YWxfY3B1cyAtIDEpICkKICAgICAgICAgICAgIGNwdV9yZWxheCgpOwotICAgICAgICBy LT5tYXN0ZXJfc3RpbWUgPSByZWFkX3BsYXRmb3JtX3N0aW1lKCk7CisgICAgICAgIHItPm1hc3Rl cl9zdGltZSA9IHJlYWRfcGxhdGZvcm1fc3RpbWUoJmxhc3RfY291bnRlcik7CisgICAgICAgIGlm ICggY2xvY2tzb3VyY2VfaXNfdHNjICkKKyAgICAgICAgICAgIHItPm1hc3Rlcl90c2Nfc3RhbXAg PSBsYXN0X2NvdW50ZXI7CiAgICAgICAgIG1iKCk7IC8qIHdyaXRlIHItPm1hc3Rlcl9zdGltZSAv dGhlbi8gc2lnbmFsICovCiAgICAgICAgIGF0b21pY19pbmMoJnItPnNlbWFwaG9yZSk7CiAgICAg fQpAQCAtMTM5MSw3ICsxMzk2LDEwIEBAIHN0YXRpYyB2b2lkIHRpbWVfY2FsaWJyYXRpb25fc3Rk X3JlbmRlenZvdXModm9pZCAqX3IpCiAgICAgICAgIG1iKCk7IC8qIHJlY2VpdmUgc2lnbmFsIC90 aGVuLyByZWFkIHItPm1hc3Rlcl9zdGltZSAqLwogICAgIH0KIAotICAgIGMtPmxvY2FsX3RzY19z dGFtcCA9IHJkdHNjKCk7CisgICAgaWYgKCBjbG9ja3NvdXJjZV9pc190c2MgKQorICAgICAgICBj LT5sb2NhbF90c2Nfc3RhbXAgPSByLT5tYXN0ZXJfdHNjX3N0YW1wOworICAgIGVsc2UKKyAgICAg ICAgYy0+bG9jYWxfdHNjX3N0YW1wID0gcmR0c2MoKTsKICAgICBjLT5zdGltZV9sb2NhbF9zdGFt cCA9IGdldF9zX3RpbWUoKTsKICAgICBjLT5zdGltZV9tYXN0ZXJfc3RhbXAgPSByLT5tYXN0ZXJf c3RpbWU7CiAKLS0gCjIuMS40CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9y ZwpodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK