From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Stabellini Subject: [PATCH v5 14/25] xen/arm: introduce create_domUs Date: Mon, 22 Oct 2018 19:02:53 -0700 Message-ID: <1540260184-11294-14-git-send-email-sstabellini@kernel.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: julien.grall@arm.com Cc: Stefano Stabellini , sstabellini@kernel.org, andrii_anisov@epam.com, andrew.cooper3@citrix.com, Achin.Gupta@arm.com, xen-devel@lists.xen.org, jbeulich@suse.com List-Id: xen-devel@lists.xenproject.org Q2FsbCBhIG5ldyBmdW5jdGlvbiwgImNyZWF0ZV9kb21VcyIsIGZyb20gc2V0dXBfeGVuIHRvIHN0 YXJ0IERvbVUgVk1zLgoKSW50cm9kdWNlIHN1cHBvcnQgZm9yIHRoZSAieGVuLGRvbWFpbiIgY29t cGF0aWJsZSBub2RlIG9uIGRldmljZSB0cmVlLgpDcmVhdGUgbmV3IERvbVUgVk1zIGJhc2VkIG9u IHRoZSBpbmZvcm1hdGlvbiBmb3VuZCBvbiBkZXZpY2UgdHJlZSB1bmRlcgoieGVuLGRvbWFpbiIu IENhbGwgY29uc3RydWN0X2RvbVUgZm9yIGVhY2ggZG9tYWluLgoKSW50cm9kdWNlIGEgc2ltcGxl IGdsb2JhbCB2YXJpYWJsZSBuYW1lZCBtYXhfaW5pdF9kb21pZCB0byBrZWVwIHRyYWNrIG9mCnRo ZSBpbml0aWFsIGFsbG9jYXRlZCBkb21pZHMuIEl0IGhvbGRzIHRoZSBtYXggZG9taWQgYW1vbmcg dGhlIGluaXRpYWwKZG9tYWlucy4KCk1vdmUgdGhlIGRpc2NhcmRfaW5pdGlhbF9tb2R1bGVzIGFm dGVyIERvbVVzIGhhdmUgYmVlbiBidWlsdC4KCkZpcnN0IGNyZWF0ZSBkb21VcywgdGhlbiBzdGFy dCBkb20wIC0tIG5vIHBvaW50IGluIHRyeWluZyB0byBzdGFydCBkb20wCndoZW4gdGhlIGNwdSBp cyBidXN5LgoKU2lnbmVkLW9mZi1ieTogU3RlZmFubyBTdGFiZWxsaW5pIDxzdGVmYW5vc0B4aWxp bnguY29tPgpBY2tlZC1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgpDQzogYW5k cmV3LmNvb3BlcjNAY2l0cml4LmNvbQpDQzogamJldWxpY2hAc3VzZS5jb20KLS0tCkNoYW5nZXMg aW4gdjU6Ci0gdXNlIGR0X3Byb3BlcnR5X3JlYWRfYm9vbAotIGltcHJvdmUgY29tbWl0IG1lc3Nh Z2UKLSBjb2RlIHN0eWxlCi0gdXNlIGR0X2ZpbmRfbm9kZV9ieV9wYXRoIGluc3RlYWQgb2YgZHRf ZmluZF9ub2RlX2J5X25hbWUKLSB1c2UgdHJ1ZSB3aXRoIGlzX2NvbnNvbGUKCkNoYW5nZXMgaW4g djQ6Ci0gY29uc3RpZnkgcGFyYW1ldGVycwotIG5yX3NwaXMgdG8gMCBvciAgR1VFU1RfVlBMMDEx X1NQSSAtIDMyICsgMSBkZXBlbmRpbmcgb24gdnBsMDExCi0gcmVtb3ZlIHBvaW50bGVzcyBpbml0 aWFsaXplcgotIHJlbW92ZSBjaGFuZ2UgdG8gZG9tYWluX2NyZWF0ZSBmb3IgZG9tMCAodXNlbGVz cykKLSBtYWtlIGNvbnN0cnVjdF9kb21VIHJldHVybiBlcnJvcgoKQ2hhbmdlcyBpbiB2MzoKLSBt b3ZlIHBhdGNoIGVhcmxpZXIgYW5kIGludHJvZHVjZSBlbXB0eSBjb25zdHJ1Y3RfZG9tVSB0byBm aXggYmlzZWN0aW9uCiAgYnVpbGRzCi0gZml4IG1heF9pbml0X2RvbWlkIHRvIGFjdHVhbGx5IGhv bGQgdGhlIG1heCBkb21pZCBhbW9uZyBpbml0aWFsCiAgZG9tYWlucyAoaW5zdGVhZCBvZiBtYXhf ZG9taWQgKyAxKQotIG1vdmUgZG9tYWluX3VucGF1c2VfYnlfc3lzdGVtY29udHJvbGxlcihkb20w KSBhZnRlciBjcmVhdGluZyBkb21VcwoKQ2hhbmdlcyBpbiB2MjoKLSBjb2Rpbmcgc3R5bGUKLSBz ZXQgbnJfc3BpcyB0byAzMgotIGludHJvZHVjZSBjcmVhdGVfZG9tVXMKLS0tCiB4ZW4vYXJjaC9h cm0vZG9tYWluX2J1aWxkLmMgfCA1MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKy0tLS0KIHhlbi9hcmNoL2FybS9zZXR1cC5jICAgICAgICB8ICA1ICsrKysrCiB4ZW4v aW5jbHVkZS9hc20tYXJtL3NldHVwLmggfCAgMyArKysKIHhlbi9pbmNsdWRlL2FzbS14ODYvc2V0 dXAuaCB8ICAyICsrCiA0IGZpbGVzIGNoYW5nZWQsIDU2IGluc2VydGlvbnMoKyksIDQgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL2RvbWFpbl9idWlsZC5jIGIveGVuL2Fy Y2gvYXJtL2RvbWFpbl9idWlsZC5jCmluZGV4IGQxZGFiNWEuLjkzZTk1MTAgMTAwNjQ0Ci0tLSBh L3hlbi9hcmNoL2FybS9kb21haW5fYnVpbGQuYworKysgYi94ZW4vYXJjaC9hcm0vZG9tYWluX2J1 aWxkLmMKQEAgLTcsNiArNyw3IEBACiAjaW5jbHVkZSA8YXNtL2lycS5oPgogI2luY2x1ZGUgPGFz bS9yZWdzLmg+CiAjaW5jbHVkZSA8eGVuL2Vycm5vLmg+CisjaW5jbHVkZSA8eGVuL2Vyci5oPgog I2luY2x1ZGUgPHhlbi9kZXZpY2VfdHJlZS5oPgogI2luY2x1ZGUgPHhlbi9saWJmZHQvbGliZmR0 Lmg+CiAjaW5jbHVkZSA8eGVuL2d1ZXN0X2FjY2Vzcy5oPgpAQCAtMjMwNCw2ICsyMzA1LDUwIEBA IHN0YXRpYyBpbnQgX19pbml0IGNvbnN0cnVjdF9kb21haW4oc3RydWN0IGRvbWFpbiAqZCwgc3Ry dWN0IGtlcm5lbF9pbmZvICpraW5mbykKICAgICByZXR1cm4gMDsKIH0KIAorc3RhdGljIGludCBf X2luaXQgY29uc3RydWN0X2RvbVUoc3RydWN0IGRvbWFpbiAqZCwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBkdF9kZXZpY2Vfbm9kZSAqbm9kZSkKK3sKKyAg ICByZXR1cm4gLUVOT1NZUzsKK30KKwordm9pZCBfX2luaXQgY3JlYXRlX2RvbVVzKHZvaWQpCit7 CisgICAgc3RydWN0IGR0X2RldmljZV9ub2RlICpub2RlOworICAgIGNvbnN0IHN0cnVjdCBkdF9k ZXZpY2Vfbm9kZSAqY2hvc2VuID0gZHRfZmluZF9ub2RlX2J5X3BhdGgoIi9jaG9zZW4iKTsKKwor ICAgIEJVR19PTihjaG9zZW4gPT0gTlVMTCk7CisgICAgZHRfZm9yX2VhY2hfY2hpbGRfbm9kZShj aG9zZW4sIG5vZGUpCisgICAgeworICAgICAgICBzdHJ1Y3QgZG9tYWluICpkOworICAgICAgICBz dHJ1Y3QgeGVuX2RvbWN0bF9jcmVhdGVkb21haW4gZF9jZmcgPSB7CisgICAgICAgICAgICAuYXJj aC5naWNfdmVyc2lvbiA9IFhFTl9ET01DVExfQ09ORklHX0dJQ19OQVRJVkUsCisgICAgICAgICAg ICAuYXJjaC5ucl9zcGlzID0gMCwKKyAgICAgICAgICAgIC5tYXhfdmNwdXMgPSAxLAorICAgICAg ICAgICAgLm1heF9ldnRjaG5fcG9ydCA9IC0xLAorICAgICAgICAgICAgLm1heF9ncmFudF9mcmFt ZXMgPSA2NCwKKyAgICAgICAgICAgIC5tYXhfbWFwdHJhY2tfZnJhbWVzID0gMTAyNCwKKyAgICAg ICAgfTsKKworICAgICAgICBpZiAoICFkdF9kZXZpY2VfaXNfY29tcGF0aWJsZShub2RlLCAieGVu LGRvbWFpbiIpICkKKyAgICAgICAgICAgIGNvbnRpbnVlOworCisgICAgICAgIGlmICggZHRfcHJv cGVydHlfcmVhZF9ib29sKG5vZGUsICJ2cGwwMTEiKSApCisgICAgICAgICAgICBkX2NmZy5hcmNo Lm5yX3NwaXMgPSBHVUVTVF9WUEwwMTFfU1BJIC0gMzIgKyAxOworICAgICAgICBkdF9wcm9wZXJ0 eV9yZWFkX3UzMihub2RlLCAiY3B1cyIsICZkX2NmZy5tYXhfdmNwdXMpOworCisgICAgICAgIGQg PSBkb21haW5fY3JlYXRlKCsrbWF4X2luaXRfZG9taWQsICZkX2NmZywgZmFsc2UpOworICAgICAg ICBpZiAoIElTX0VSUihkKSApCisgICAgICAgICAgICBwYW5pYygiRXJyb3IgY3JlYXRpbmcgZG9t YWluICVzIiwgZHRfbm9kZV9uYW1lKG5vZGUpKTsKKworICAgICAgICBkLT5pc19jb25zb2xlID0g dHJ1ZTsKKworICAgICAgICBpZiAoIGNvbnN0cnVjdF9kb21VKGQsIG5vZGUpICE9IDAgKQorICAg ICAgICAgICAgcGFuaWMoIkNvdWxkIG5vdCBzZXQgdXAgZG9tYWluICVzIiwgZHRfbm9kZV9uYW1l KG5vZGUpKTsKKworICAgICAgICBkb21haW5fdW5wYXVzZV9ieV9zeXN0ZW1jb250cm9sbGVyKGQp OworICAgIH0KK30KKwogaW50IF9faW5pdCBjb25zdHJ1Y3RfZG9tMChzdHJ1Y3QgZG9tYWluICpk KQogewogICAgIGNvbnN0IHN0cnVjdCBib290Y21kbGluZSAqa2VybmVsID0gYm9vdF9jbWRsaW5l X2ZpbmRfYnlfa2luZChCT09UTU9EX0tFUk5FTCk7CkBAIC0yMzU2LDEwICsyNDAxLDcgQEAgaW50 IF9faW5pdCBjb25zdHJ1Y3RfZG9tMChzdHJ1Y3QgZG9tYWluICpkKQogICAgIGlmICggcmMgPCAw ICkKICAgICAgICAgcmV0dXJuIHJjOwogCi0gICAgcmMgPSBjb25zdHJ1Y3RfZG9tYWluKGQsICZr aW5mbyk7Ci0gICAgZGlzY2FyZF9pbml0aWFsX21vZHVsZXMoKTsKLQotICAgIHJldHVybiByYzsK KyAgICByZXR1cm4gY29uc3RydWN0X2RvbWFpbihkLCAma2luZm8pOwogfQogCiAvKgpkaWZmIC0t Z2l0IGEveGVuL2FyY2gvYXJtL3NldHVwLmMgYi94ZW4vYXJjaC9hcm0vc2V0dXAuYwppbmRleCBm M2RjOTZjLi40M2ViMjA4IDEwMDY0NAotLS0gYS94ZW4vYXJjaC9hcm0vc2V0dXAuYworKysgYi94 ZW4vYXJjaC9hcm0vc2V0dXAuYwpAQCAtNjQsMTEgKzY0LDE0IEBAIHN0YXRpYyB1bnNpZ25lZCBs b25nIG9wdF94ZW5oZWFwX21lZ2FieXRlcyBfX2luaXRkYXRhOwogaW50ZWdlcl9wYXJhbSgieGVu aGVhcF9tZWdhYnl0ZXMiLCBvcHRfeGVuaGVhcF9tZWdhYnl0ZXMpOwogI2VuZGlmCiAKK2RvbWlk X3QgX19yZWFkX21vc3RseSBtYXhfaW5pdF9kb21pZDsKKwogc3RhdGljIF9fdXNlZCB2b2lkIGlu aXRfZG9uZSh2b2lkKQogewogICAgIC8qIE11c3QgYmUgZG9uZSBwYXN0IHNldHRpbmcgc3lzdGVt X3N0YXRlLiAqLwogICAgIHVucmVnaXN0ZXJfaW5pdF92aXJ0dWFsX3JlZ2lvbigpOwogCisgICAg ZGlzY2FyZF9pbml0aWFsX21vZHVsZXMoKTsKICAgICBmcmVlX2luaXRfbWVtb3J5KCk7CiAgICAg c3RhcnR1cF9jcHVfaWRsZV9sb29wKCk7CiB9CkBAIC05NTgsNiArOTYxLDggQEAgdm9pZCBfX2lu aXQgc3RhcnRfeGVuKHVuc2lnbmVkIGxvbmcgYm9vdF9waHlzX29mZnNldCwKIAogICAgIHN5c3Rl bV9zdGF0ZSA9IFNZU19TVEFURV9hY3RpdmU7CiAKKyAgICBjcmVhdGVfZG9tVXMoKTsKKwogICAg IGRvbWFpbl91bnBhdXNlX2J5X3N5c3RlbWNvbnRyb2xsZXIoZG9tMCk7CiAKICAgICAvKiBTd2l0 Y2ggb24gdG8gdGhlIGR5bmFtaWNhbGx5IGFsbG9jYXRlZCBzdGFjayBmb3IgdGhlIGlkbGUgdmNw dQpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUvYXNtLWFybS9zZXR1cC5oIGIveGVuL2luY2x1ZGUv YXNtLWFybS9zZXR1cC5oCmluZGV4IDMzZmIwNGUuLjMwNzFiYTggMTAwNjQ0Ci0tLSBhL3hlbi9p bmNsdWRlL2FzbS1hcm0vc2V0dXAuaAorKysgYi94ZW4vaW5jbHVkZS9hc20tYXJtL3NldHVwLmgK QEAgLTc0LDYgKzc0LDggQEAgc3RydWN0IGJvb3RpbmZvIHsKIAogZXh0ZXJuIHN0cnVjdCBib290 aW5mbyBib290aW5mbzsKIAorZXh0ZXJuIGRvbWlkX3QgbWF4X2luaXRfZG9taWQ7CisKIHZvaWQg YXJjaF9pbml0X21lbW9yeSh2b2lkKTsKIAogdm9pZCBjb3B5X2Zyb21fcGFkZHIodm9pZCAqZHN0 LCBwYWRkcl90IHBhZGRyLCB1bnNpZ25lZCBsb25nIGxlbik7CkBAIC05MCw2ICs5Miw3IEBAIHZv aWQgYWNwaV9jcmVhdGVfZWZpX21tYXBfdGFibGUoc3RydWN0IGRvbWFpbiAqZCwKIGludCBhY3Bp X21ha2VfZWZpX25vZGVzKHZvaWQgKmZkdCwgc3RydWN0IG1lbWJhbmsgdGJsX2FkZFtdKTsKIAog aW50IGNvbnN0cnVjdF9kb20wKHN0cnVjdCBkb21haW4gKmQpOwordm9pZCBfX2luaXQgY3JlYXRl X2RvbVVzKHZvaWQpOwogCiB2b2lkIGRpc2NhcmRfaW5pdGlhbF9tb2R1bGVzKHZvaWQpOwogdm9p ZCBkdF91bnJlc2VydmVkX3JlZ2lvbnMocGFkZHJfdCBzLCBwYWRkcl90IGUsCmRpZmYgLS1naXQg YS94ZW4vaW5jbHVkZS9hc20teDg2L3NldHVwLmggYi94ZW4vaW5jbHVkZS9hc20teDg2L3NldHVw LmgKaW5kZXggNDJmZGRlYi4uMWM4MDc4MyAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4 Ni9zZXR1cC5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvc2V0dXAuaApAQCAtNjYsNCArNjYs NiBAQCBleHRlcm4gYm9vbCBvcHRfZG9tMF9zaGFkb3c7CiAjZW5kaWYKIGV4dGVybiBib29sIGRv bTBfcHZoOwogCisjZGVmaW5lIG1heF9pbml0X2RvbWlkICgwKQorCiAjZW5kaWYKLS0gCjEuOS4x CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRl dmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9s aXN0cy54ZW5wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==