From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH for-next 2/3] x86/pv: Use DIV_ROUND_UP() when converting between GDT entries and frames Date: Thu, 19 Oct 2017 16:47:11 +0100 Message-ID: <1508428032-23829-2-git-send-email-andrew.cooper3@citrix.com> References: <1508428032-23829-1-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1508428032-23829-1-git-send-email-andrew.cooper3@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Xen-devel Cc: Andrew Cooper , Wei Liu , Jan Beulich List-Id: xen-devel@lists.xenproject.org QWxzbyBjb25zaXN0ZW50bHkgdXNlIHVzZSBucl9mcmFtZXMsIHJhdGhlciB0aGFuIG1peGluZyBu cl9wYWdlcyB3aXRoIGEKZnJhbWVzW10gYXJyYXkuCgpObyBmdW5jdGlvbmFsIGNoYW5nZS4KClNp Z25lZC1vZmYtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+Ci0t LQpDQzogSmFuIEJldWxpY2ggPEpCZXVsaWNoQHN1c2UuY29tPgpDQzogV2VpIExpdSA8d2VpLmxp dTJAY2l0cml4LmNvbT4KLS0tCiB4ZW4vYXJjaC94ODYvZG9tYWluLmMgICAgICAgICAgICAgICB8 ICA4ICsrKysrLS0tCiB4ZW4vYXJjaC94ODYvcHYvZGVzY3JpcHRvci10YWJsZXMuYyB8IDE3ICsr KysrKysrLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDEyIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9kb21haW4uYyBiL3hlbi9hcmNo L3g4Ni9kb21haW4uYwppbmRleCBjMjhhYzM4Li45OGJmYjM1IDEwMDY0NAotLS0gYS94ZW4vYXJj aC94ODYvZG9tYWluLmMKKysrIGIveGVuL2FyY2gveDg2L2RvbWFpbi5jCkBAIC0xMDE3LDEyICsx MDE3LDE0IEBAIGludCBhcmNoX3NldF9pbmZvX2d1ZXN0KAogICAgIGVsc2UKICAgICB7CiAgICAg ICAgIHVuc2lnbmVkIGxvbmcgZ2R0X2ZyYW1lc1tBUlJBWV9TSVpFKHYtPmFyY2gucHZfdmNwdS5n ZHRfZnJhbWVzKV07Ci0gICAgICAgIHVuc2lnbmVkIGludCBuID0gKGMuY21wLT5nZHRfZW50cyAr IDUxMSkgLyA1MTI7CisgICAgICAgIHVuc2lnbmVkIGludCBucl9mcmFtZXMgPSBESVZfUk9VTkRf VVAoYy5jbXAtPmdkdF9lbnRzLCA1MTIpOwogCi0gICAgICAgIGlmICggbiA+IEFSUkFZX1NJWkUo di0+YXJjaC5wdl92Y3B1LmdkdF9mcmFtZXMpICkKKyAgICAgICAgaWYgKCBucl9mcmFtZXMgPiBB UlJBWV9TSVpFKHYtPmFyY2gucHZfdmNwdS5nZHRfZnJhbWVzKSApCiAgICAgICAgICAgICByZXR1 cm4gLUVJTlZBTDsKLSAgICAgICAgZm9yICggaSA9IDA7IGkgPCBuOyArK2kgKQorCisgICAgICAg IGZvciAoIGkgPSAwOyBpIDwgbnJfZnJhbWVzOyArK2kgKQogICAgICAgICAgICAgZ2R0X2ZyYW1l c1tpXSA9IGMuY21wLT5nZHRfZnJhbWVzW2ldOworCiAgICAgICAgIHJjID0gKGludClwdl9zZXRf Z2R0KHYsIGdkdF9mcmFtZXMsIGMuY21wLT5nZHRfZW50cyk7CiAgICAgfQogICAgIGlmICggcmMg IT0gMCApCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvcHYvZGVzY3JpcHRvci10YWJsZXMuYyBi L3hlbi9hcmNoL3g4Ni9wdi9kZXNjcmlwdG9yLXRhYmxlcy5jCmluZGV4IDljOGRlMWQuLmUzMWM5 N2UgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9wdi9kZXNjcmlwdG9yLXRhYmxlcy5jCisrKyBi L3hlbi9hcmNoL3g4Ni9wdi9kZXNjcmlwdG9yLXRhYmxlcy5jCkBAIC01NywxNCArNTcsMTMgQEAg bG9uZyBwdl9zZXRfZ2R0KHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25nICpmcmFtZXMsIHVu c2lnbmVkIGludCBlbnRyaWVzKQogewogICAgIHN0cnVjdCBkb21haW4gKmQgPSB2LT5kb21haW47 CiAgICAgbDFfcGdlbnRyeV90ICpwbDFlOwotICAgIC8qIE5CLiBUaGVyZSBhcmUgNTEyIDgtYnl0 ZSBlbnRyaWVzIHBlciBHRFQgcGFnZS4gKi8KLSAgICB1bnNpZ25lZCBpbnQgaSwgbnJfcGFnZXMg PSAoZW50cmllcyArIDUxMSkgLyA1MTI7CisgICAgdW5zaWduZWQgaW50IGksIG5yX2ZyYW1lcyA9 IERJVl9ST1VORF9VUChlbnRyaWVzLCA1MTIpOwogCiAgICAgaWYgKCBlbnRyaWVzID4gRklSU1Rf UkVTRVJWRURfR0RUX0VOVFJZICkKICAgICAgICAgcmV0dXJuIC1FSU5WQUw7CiAKICAgICAvKiBD aGVjayB0aGUgcGFnZXMgaW4gdGhlIG5ldyBHRFQuICovCi0gICAgZm9yICggaSA9IDA7IGkgPCBu cl9wYWdlczsgaSsrICkKKyAgICBmb3IgKCBpID0gMDsgaSA8IG5yX2ZyYW1lczsgaSsrICkKICAg ICB7CiAgICAgICAgIHN0cnVjdCBwYWdlX2luZm8gKnBhZ2U7CiAKQEAgLTg1LDcgKzg0LDcgQEAg bG9uZyBwdl9zZXRfZ2R0KHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25nICpmcmFtZXMsIHVu c2lnbmVkIGludCBlbnRyaWVzKQogICAgIC8qIEluc3RhbGwgdGhlIG5ldyBHRFQuICovCiAgICAg di0+YXJjaC5wdl92Y3B1LmdkdF9lbnRzID0gZW50cmllczsKICAgICBwbDFlID0gcHZfZ2R0X3B0 ZXModik7Ci0gICAgZm9yICggaSA9IDA7IGkgPCBucl9wYWdlczsgaSsrICkKKyAgICBmb3IgKCBp ID0gMDsgaSA8IG5yX2ZyYW1lczsgaSsrICkKICAgICB7CiAgICAgICAgIHYtPmFyY2gucHZfdmNw dS5nZHRfZnJhbWVzW2ldID0gZnJhbWVzW2ldOwogICAgICAgICBsMWVfd3JpdGUoJnBsMWVbaV0s IGwxZV9mcm9tX3BmbihmcmFtZXNbaV0sIF9fUEFHRV9IWVBFUlZJU09SX1JXKSk7CkBAIC0xMDQs NyArMTAzLDcgQEAgbG9uZyBwdl9zZXRfZ2R0KHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBsb25n ICpmcmFtZXMsIHVuc2lnbmVkIGludCBlbnRyaWVzKQogbG9uZyBkb19zZXRfZ2R0KFhFTl9HVUVT VF9IQU5ETEVfUEFSQU0oeGVuX3Vsb25nX3QpIGZyYW1lX2xpc3QsCiAgICAgICAgICAgICAgICAg dW5zaWduZWQgaW50IGVudHJpZXMpCiB7Ci0gICAgaW50IG5yX3BhZ2VzID0gKGVudHJpZXMgKyA1 MTEpIC8gNTEyOworICAgIHVuc2lnbmVkIGludCBucl9mcmFtZXMgPSBESVZfUk9VTkRfVVAoZW50 cmllcywgNTEyKTsKICAgICB1bnNpZ25lZCBsb25nIGZyYW1lc1sxNl07CiAgICAgc3RydWN0IHZj cHUgKmN1cnIgPSBjdXJyZW50OwogICAgIGxvbmcgcmV0OwpAQCAtMTEzLDcgKzExMiw3IEBAIGxv bmcgZG9fc2V0X2dkdChYRU5fR1VFU1RfSEFORExFX1BBUkFNKHhlbl91bG9uZ190KSBmcmFtZV9s aXN0LAogICAgIGlmICggZW50cmllcyA+IEZJUlNUX1JFU0VSVkVEX0dEVF9FTlRSWSApCiAgICAg ICAgIHJldHVybiAtRUlOVkFMOwogCi0gICAgaWYgKCBjb3B5X2Zyb21fZ3Vlc3QoZnJhbWVzLCBm cmFtZV9saXN0LCBucl9wYWdlcykgKQorICAgIGlmICggY29weV9mcm9tX2d1ZXN0KGZyYW1lcywg ZnJhbWVfbGlzdCwgbnJfZnJhbWVzKSApCiAgICAgICAgIHJldHVybiAtRUZBVUxUOwogCiAgICAg ZG9tYWluX2xvY2soY3Vyci0+ZG9tYWluKTsKQEAgLTEzMCw3ICsxMjksNyBAQCBpbnQgY29tcGF0 X3NldF9nZHQoWEVOX0dVRVNUX0hBTkRMRV9QQVJBTSh1aW50KSBmcmFtZV9saXN0LAogICAgICAg ICAgICAgICAgICAgIHVuc2lnbmVkIGludCBlbnRyaWVzKQogewogICAgIHN0cnVjdCB2Y3B1ICpj dXJyID0gY3VycmVudDsKLSAgICB1bnNpZ25lZCBpbnQgaSwgbnJfcGFnZXMgPSAoZW50cmllcyAr IDUxMSkgLyA1MTI7CisgICAgdW5zaWduZWQgaW50IGksIG5yX2ZyYW1lcyA9IERJVl9ST1VORF9V UChlbnRyaWVzLCA1MTIpOwogICAgIHVuc2lnbmVkIGxvbmcgZnJhbWVzWzE2XTsKICAgICBpbnQg cmV0OwogCkBAIC0xMzgsMTAgKzEzNywxMCBAQCBpbnQgY29tcGF0X3NldF9nZHQoWEVOX0dVRVNU X0hBTkRMRV9QQVJBTSh1aW50KSBmcmFtZV9saXN0LAogICAgIGlmICggZW50cmllcyA+IEZJUlNU X1JFU0VSVkVEX0dEVF9FTlRSWSApCiAgICAgICAgIHJldHVybiAtRUlOVkFMOwogCi0gICAgaWYg KCAhZ3Vlc3RfaGFuZGxlX29rYXkoZnJhbWVfbGlzdCwgbnJfcGFnZXMpICkKKyAgICBpZiAoICFn dWVzdF9oYW5kbGVfb2theShmcmFtZV9saXN0LCBucl9mcmFtZXMpICkKICAgICAgICAgcmV0dXJu IC1FRkFVTFQ7CiAKLSAgICBmb3IgKCBpID0gMDsgaSA8IG5yX3BhZ2VzOyArK2kgKQorICAgIGZv ciAoIGkgPSAwOyBpIDwgbnJfZnJhbWVzOyArK2kgKQogICAgIHsKICAgICAgICAgdW5zaWduZWQg aW50IGZyYW1lOwogCi0tIAoyLjEuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhl bi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=