From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH 07/13] libx86: Introduce a helper to serialise msr_{domain, vcpu}_policy objects Date: Tue, 3 Jul 2018 21:55:20 +0100 Message-ID: <1530651326-5320-8-git-send-email-andrew.cooper3@citrix.com> References: <1530651326-5320-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: <1530651326-5320-1-git-send-email-andrew.cooper3@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Xen-devel Cc: Sergey Dyasli , Wei Liu , Andrew Cooper , Ian Jackson , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= List-Id: xen-devel@lists.xenproject.org RnJvbTogUm9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+CgpBcyB3aXRoIENQ VUlELCB0aGUgYW4gYXJjaGl0ZWN0dXJhbCBmb3JtIGlzIHVzZWQgZm9yIHJlcHJlc2VudGluZyB0 aGUgTVNSCmRhdGEuICBJdCBpcyBleHBlY3RlZCBub3QgdG8gY2hhbmdlIG1vdmluZyBmb3J3YXJk cywgYnV0IGRvZXMgaGF2ZSBhIDMyIGJpdApmaWVsZCAoY3VycmVudGx5IHJlc2VydmVkKSB3aGlj aCBjYW4gYmUgdXNlZCBjb21wYXRpYmx5IGlmIG5lZWRzIGJlLgoKU2lnbmVkLW9mZi1ieTogQW5k cmV3IENvb3BlciA8YW5kcmV3LmNvb3BlcjNAY2l0cml4LmNvbT4KU2lnbmVkLW9mZi1ieTogU2Vy Z2V5IER5YXNsaSA8c2VyZ2V5LmR5YXNsaUBjaXRyaXguY29tPgpTaWduZWQtb2ZmLWJ5OiBSb2dl ciBQYXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KLS0tCkNDOiBKYW4gQmV1bGljaCA8 SkJldWxpY2hAc3VzZS5jb20+CkNDOiBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXguY29tPgpDQzog Um9nZXIgUGF1IE1vbm7DqSA8cm9nZXIucGF1QGNpdHJpeC5jb20+CkNDOiBTZXJnZXkgRHlhc2xp IDxzZXJnZXkuZHlhc2xpQGNpdHJpeC5jb20+CkNDOiBJYW4gSmFja3NvbiA8SWFuLkphY2tzb25A ZXUuY2l0cml4LmNvbT4KLS0tCiB0b29scy9pbmNsdWRlL01ha2VmaWxlICAgICAgICAgICAgIHwg IDEgKwogdG9vbHMvbGlieGMvTWFrZWZpbGUgICAgICAgICAgICAgICB8ICAyICstCiB4ZW4vY29t bW9uL2xpYng4Ni9NYWtlZmlsZSAgICAgICAgIHwgIDEgKwogeGVuL2NvbW1vbi9saWJ4ODYvbGli eDg2LXByaXZhdGUuaCB8ICAzICsrCiB4ZW4vY29tbW9uL2xpYng4Ni9tc3IuYyAgICAgICAgICAg IHwgNzEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIHhlbi9pbmNsdWRl L3B1YmxpYy9hcmNoLXg4Ni94ZW4uaCAgfCAgOSArKysrLQogeGVuL2luY2x1ZGUveGVuL2xpYng4 Ni9tc3IuaCAgICAgICB8IDE2ICsrKysrKysrKwogNyBmaWxlcyBjaGFuZ2VkLCAxMDEgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCB4ZW4vY29tbW9uL2xp Yng4Ni9tc3IuYwoKZGlmZiAtLWdpdCBhL3Rvb2xzL2luY2x1ZGUvTWFrZWZpbGUgYi90b29scy9p bmNsdWRlL01ha2VmaWxlCmluZGV4IGZjOTlkYTkuLjFhMGVhZTcgMTAwNjQ0Ci0tLSBhL3Rvb2xz L2luY2x1ZGUvTWFrZWZpbGUKKysrIGIvdG9vbHMvaW5jbHVkZS9NYWtlZmlsZQpAQCAtMjIsNiAr MjIsNyBAQCB4ZW4vLmRpcjoKIAlsbiAtcyAuLi94ZW4tZm9yZWlnbiB4ZW4vZm9yZWlnbgogCWxu IC1zZiAkKFhFTl9ST09UKS94ZW4vaW5jbHVkZS9hY3BpIGFjcGkKIGlmZXEgKCQoQ09ORklHX1g4 NikseSkKKwlsbiAtc2YgJChYRU5fUk9PVCkveGVuL2luY2x1ZGUvYXNtLXg4NiB4ZW4vYXNtCiAJ bG4gLXNmICQoWEVOX1JPT1QpL3hlbi9pbmNsdWRlL3hlbi9saWJ4ODYgeGVuL2xpYng4NgogZW5k aWYKIAl0b3VjaCAkQApkaWZmIC0tZ2l0IGEvdG9vbHMvbGlieGMvTWFrZWZpbGUgYi90b29scy9s aWJ4Yy9NYWtlZmlsZQppbmRleCBmNTM0ZDkwLi40MDdhOWQxIDEwMDY0NAotLS0gYS90b29scy9s aWJ4Yy9NYWtlZmlsZQorKysgYi90b29scy9saWJ4Yy9NYWtlZmlsZQpAQCAtODMsNyArODMsNyBA QCAkKHBhdHN1YnN0ICUuYywlLm9waWMsJChFTEZfU1JDUy15KSk6IENGTEFHUyArPSAtV25vLXBv aW50ZXItc2lnbgogIyBBZGQgbGlieDg2IHRvIHRoZSBidWlsZAogdnBhdGggJS5jIC4uLy4uL3hl bi9jb21tb24vbGlieDg2CiAKLUdVRVNUX1NSQ1MtJChDT05GSUdfWDg2KSAgICAgKz0gY3B1aWQu YworR1VFU1RfU1JDUy0kKENPTkZJR19YODYpICAgICArPSBjcHVpZC5jIG1zci5jCiAKICMgbmV3 IGRvbWFpbiBidWlsZGVyCiBHVUVTVF9TUkNTLXkgICAgICAgICAgICAgICAgICs9IHhjX2RvbV9j b3JlLmMgeGNfZG9tX2Jvb3QuYwpkaWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9saWJ4ODYvTWFrZWZp bGUgYi94ZW4vY29tbW9uL2xpYng4Ni9NYWtlZmlsZQppbmRleCAzZmIyZTBiLi4yZjk2OTFlIDEw MDY0NAotLS0gYS94ZW4vY29tbW9uL2xpYng4Ni9NYWtlZmlsZQorKysgYi94ZW4vY29tbW9uL2xp Yng4Ni9NYWtlZmlsZQpAQCAtMSArMSwyIEBACiBvYmoteSArPSBjcHVpZC5vCitvYmoteSArPSBt c3IubwpkaWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9saWJ4ODYvbGlieDg2LXByaXZhdGUuaCBiL3hl bi9jb21tb24vbGlieDg2L2xpYng4Ni1wcml2YXRlLmgKaW5kZXggYTIwOTg1MC4uZTRlYWQxYSAx MDA2NDQKLS0tIGEveGVuL2NvbW1vbi9saWJ4ODYvbGlieDg2LXByaXZhdGUuaAorKysgYi94ZW4v Y29tbW9uL2xpYng4Ni9saWJ4ODYtcHJpdmF0ZS5oCkBAIC05LDYgKzksNyBAQAogI2luY2x1ZGUg PHhlbi90eXBlcy5oPgogCiAjaW5jbHVkZSA8YXNtL2d1ZXN0X2FjY2Vzcy5oPgorI2luY2x1ZGUg PGFzbS9tc3ItaW5kZXguaD4KIAogI2RlZmluZSBjb3B5X3RvX2J1ZmZlcl9vZmZzZXQgY29weV90 b19ndWVzdF9vZmZzZXQKIApAQCAtMTksNiArMjAsOCBAQAogI2luY2x1ZGUgPHN0ZGJvb2wuaD4K ICNpbmNsdWRlIDxzdGRkZWYuaD4KIAorI2luY2x1ZGUgPHhlbi9hc20vbXNyLWluZGV4Lmg+CisK ICNpbmNsdWRlIDx4ZW4tdG9vbHMvbGlicy5oPgogCiAjZGVmaW5lIE1BWCh4LCB5KSAoKHgpID4g KHkpID8gKHgpIDogKHkpKQpkaWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9saWJ4ODYvbXNyLmMgYi94 ZW4vY29tbW9uL2xpYng4Ni9tc3IuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw Li40NmEzNDU4Ci0tLSAvZGV2L251bGwKKysrIGIveGVuL2NvbW1vbi9saWJ4ODYvbXNyLmMKQEAg LTAsMCArMSw3MSBAQAorI2luY2x1ZGUgImxpYng4Ni1wcml2YXRlLmgiCisKKyNpbmNsdWRlIDx4 ZW4vbGlieDg2L21zci5oPgorCisvKgorICogQ29weSBhIHNpbmdsZSBNU1IgaW50byB0aGUgcHJv dmlkZWQgbXNyX2VudHJ5X2J1ZmZlcl90IGJ1ZmZlciwgcGVyZm9ybWluZyBhCisgKiBib3VuZGFy eSBjaGVjayBhZ2FpbnN0IHRoZSBidWZmZXIgc2l6ZS4KKyAqLworc3RhdGljIGludCBjb3B5X21z cl90b19idWZmZXIodWludDMyX3QgaWR4LCB1aW50NjRfdCB2YWwsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBtc3JfZW50cnlfYnVmZmVyX3QgbXNycywKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHVpbnQzMl90ICpjdXJyX2VudHJ5LCBjb25zdCB1aW50MzJfdCBucl9lbnRy aWVzKQoreworICAgIGNvbnN0IHhlbl9tc3JfZW50cnlfdCBlbnQgPSB7IC5pZHggPSBpZHgsIC52 YWwgPSB2YWwgfTsKKworICAgIGlmICggKmN1cnJfZW50cnkgPT0gbnJfZW50cmllcyApCisgICAg ICAgIHJldHVybiAtRU5PQlVGUzsKKworICAgIGlmICggY29weV90b19idWZmZXJfb2Zmc2V0KG1z cnMsICpjdXJyX2VudHJ5LCAmZW50LCAxKSApCisgICAgICAgIHJldHVybiAtRUZBVUxUOworCisg ICAgKysqY3Vycl9lbnRyeTsKKworICAgIHJldHVybiAwOworfQorCisvKgorICogU2VyaWFsaXNl IG1zcl97ZG9tYWluLHZjcHV9X3BvbGljeSBvYmplY3QgaW50byBhbiBhcnJheS4gIFdyaXRlcyBh dCBtb3N0CisgKiBNU1JfTUFYX1NFUklBTElTRURfRU5UUklFUy4gIFJldHVybnMgLUVOT0JVRlMg aWYgdGhlIGJ1ZmZlciBhcnJheSBpcyB0b28KKyAqIHNob3J0LiAgT24gc3VjY2VzcywgbnJfZW50 cmllc19wIGlzIHVwZGF0ZWQgd2l0aCB0aGUgYWN0dWFsIG51bWJlciBvZgorICogbGVhdmVzIHdy aXR0ZW4uCisgKi8KK2ludCB4ODZfbXNyX2NvcHlfdG9fYnVmZmVyKGNvbnN0IHN0cnVjdCBtc3Jf ZG9tYWluX3BvbGljeSAqZHAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1 Y3QgbXNyX3ZjcHVfcG9saWN5ICp2cCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zcl9l bnRyeV9idWZmZXJfdCBtc3JzLCB1aW50MzJfdCAqbnJfZW50cmllc19wKQoreworICAgIGNvbnN0 IHVpbnQzMl90IG5yX2VudHJpZXMgPSAqbnJfZW50cmllc19wOworICAgIHVpbnQzMl90IGN1cnJf ZW50cnkgPSAwOworCisjZGVmaW5lIENPUFlfTVNSKGlkeCwgdmFsKSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXAorICAgICh7ICBpbnQgcmV0OyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAgICAgaWYgKCAocmV0ID0gY29w eV9tc3JfdG9fYnVmZmVyKCAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAgICAg ICAgICBpZHgsIHZhbCwgbXNycywgJmN1cnJfZW50cnksIG5yX2VudHJpZXMpKSApICAgXAorICAg ICAgICAgICAgcmV0dXJuIHJldDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKKyAgICB9KQorCisgICAgaWYgKCBkcCApCisgICAgICAgIENPUFlfTVNSKE1TUl9JTlRF TF9QTEFURk9STV9JTkZPLCBkcC0+cGxhZm9ybV9pbmZvLnJhdyk7CisKKyAgICBpZiAoIHZwICkK KyAgICB7CisgICAgICAgIENPUFlfTVNSKE1TUl9TUEVDX0NUUkwsIHZwLT5zcGVjX2N0cmwucmF3 KTsKKyAgICAgICAgQ09QWV9NU1IoTVNSX0lOVEVMX01JU0NfRkVBVFVSRVNfRU5BQkxFUywKKyAg ICAgICAgICAgICAgICAgdnAtPm1pc2NfZmVhdHVyZXNfZW5hYmxlcy5yYXcpOworICAgIH0KKwor I3VuZGVmIENPUFlfTVNSCisKKyAgICAqbnJfZW50cmllc19wID0gY3Vycl9lbnRyeTsKKworICAg IHJldHVybiAwOworfQorCisvKgorICogTG9jYWwgdmFyaWFibGVzOgorICogbW9kZTogQworICog Yy1maWxlLXN0eWxlOiAiQlNEIgorICogYy1iYXNpYy1vZmZzZXQ6IDQKKyAqIHRhYi13aWR0aDog NAorICogaW5kZW50LXRhYnMtbW9kZTogbmlsCisgKiBFbmQ6CisgKi8KZGlmZiAtLWdpdCBhL3hl bi9pbmNsdWRlL3B1YmxpYy9hcmNoLXg4Ni94ZW4uaCBiL3hlbi9pbmNsdWRlL3B1YmxpYy9hcmNo LXg4Ni94ZW4uaAppbmRleCBmM2JkZDgzLi41NWExNDlmIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVk ZS9wdWJsaWMvYXJjaC14ODYveGVuLmgKKysrIGIveGVuL2luY2x1ZGUvcHVibGljL2FyY2gteDg2 L3hlbi5oCkBAIC0zMTUsNyArMzE1LDcgQEAgc3RydWN0IHhlbl9hcmNoX2RvbWFpbmNvbmZpZyB7 CiAjZW5kaWYKIAogLyoKLSAqIFJlcHJlc2VudGF0aW9ucyBvZiBhcmNoaXRlY3R1cmFsIENQVUlE IGluZm9ybWF0aW9uLiAgVXNlZCBhcyB0aGUKKyAqIFJlcHJlc2VudGF0aW9ucyBvZiBhcmNoaXRl Y3R1cmFsIENQVUlEIGFuZCBNU1IgaW5mb3JtYXRpb24uICBVc2VkIGFzIHRoZQogICogc2VyaWFs aXNlZCB2ZXJzaW9uIG9mIFhlbidzIGludGVybmFsIHJlcHJlc2VudGF0aW9uLgogICovCiB0eXBl ZGVmIHN0cnVjdCB4ZW5fY3B1aWRfbGVhZiB7CkBAIC0zMjUsNiArMzI1LDEzIEBAIHR5cGVkZWYg c3RydWN0IHhlbl9jcHVpZF9sZWFmIHsKIH0geGVuX2NwdWlkX2xlYWZfdDsKIERFRklORV9YRU5f R1VFU1RfSEFORExFKHhlbl9jcHVpZF9sZWFmX3QpOwogCit0eXBlZGVmIHN0cnVjdCB4ZW5fbXNy X2VudHJ5IHsKKyAgICB1aW50MzJfdCBpZHg7CisgICAgdWludDMyX3QgZmxhZ3M7IC8qIFJlc2Vy dmVkIE1CWi4gKi8KKyAgICB1aW50NjRfdCB2YWw7Cit9IHhlbl9tc3JfZW50cnlfdDsKK0RFRklO RV9YRU5fR1VFU1RfSEFORExFKHhlbl9tc3JfZW50cnlfdCk7CisKICNlbmRpZiAvKiAhX19BU1NF TUJMWV9fICovCiAKIC8qCmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS94ZW4vbGlieDg2L21zci5o IGIveGVuL2luY2x1ZGUveGVuL2xpYng4Ni9tc3IuaAppbmRleCA2YjhiMTBiLi44Nzc2Mzc4IDEw MDY0NAotLS0gYS94ZW4vaW5jbHVkZS94ZW4vbGlieDg2L21zci5oCisrKyBiL3hlbi9pbmNsdWRl L3hlbi9saWJ4ODYvbXNyLmgKQEAgLTIsNiArMiwxMCBAQAogI2lmbmRlZiBYRU5fTElCWDg2X01T Ul9ICiAjZGVmaW5lIFhFTl9MSUJYODZfTVNSX0gKIAorI2RlZmluZSBNU1JfTUFYX1NFUklBTElT RURfRU5UUklFUyAgICAgICAgICAgICAgXAorICAgICgxICsgLyogbXNyX2RvbWFpbl9wb2xpY3kg Ki8gICAgICAgICAgICAgICAgXAorICAgICAyICAgLyogbXNyX3ZjcHVfcG9saWN5Ki8gKQorCiAv KiBNU1IgcG9saWN5IG9iamVjdCBmb3Igc2hhcmVkIHBlci1kb21haW4gTVNScyAqLwogc3RydWN0 IG1zcl9kb21haW5fcG9saWN5CiB7CkBAIC00NSw2ICs0OSwxOCBAQCBzdHJ1Y3QgbXNyX3ZjcHVf cG9saWN5CiAgICAgfSBtaXNjX2ZlYXR1cmVzX2VuYWJsZXM7CiB9OwogCisjaWZkZWYgX19YRU5f XworI2luY2x1ZGUgPHB1YmxpYy9hcmNoLXg4Ni94ZW4uaD4KK3R5cGVkZWYgWEVOX0dVRVNUX0hB TkRMRV82NCh4ZW5fbXNyX2VudHJ5X3QpIG1zcl9lbnRyeV9idWZmZXJfdDsKKyNlbHNlCisjaW5j bHVkZSA8eGVuL2FyY2gteDg2L3hlbi5oPgordHlwZWRlZiB4ZW5fbXNyX2VudHJ5X3QgKm1zcl9l bnRyeV9idWZmZXJfdDsKKyNlbmRpZgorCitpbnQgeDg2X21zcl9jb3B5X3RvX2J1ZmZlcihjb25z dCBzdHJ1Y3QgbXNyX2RvbWFpbl9wb2xpY3kgKmRwLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3Qgc3RydWN0IG1zcl92Y3B1X3BvbGljeSAqdnAsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICBtc3JfZW50cnlfYnVmZmVyX3QgbXNycywgdWludDMyX3QgKm5yX2VudHJpZXNfcCk7 CisKICNlbmRpZiAvKiAhWEVOX0xJQlg4Nl9NU1JfSCAqLwogCiAvKgotLSAKMi4xLjQKCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFp bGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhl bnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs