From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH 1/6] xen/domain: Reduce the quantity of initialisation for system domains Date: Wed, 28 Feb 2018 14:14:23 +0000 Message-ID: <1519827268-18199-2-git-send-email-andrew.cooper3@citrix.com> References: <1519827268-18199-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: <1519827268-18199-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: Stefano Stabellini , Wei Liu , George Dunlap , Andrew Cooper , Tim Deegan , Dario Faggioli , Julien Grall , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= List-Id: xen-devel@lists.xenproject.org ICogU3lzdGVtIGRvbWFpbnMgZG9uJ3QgbmVlZCB3YXRjaGRvZyBpbml0aWFsaXNhdGlvbiBvciBp b21lbS9pcnEgcmFuZ2VzZXRzLAogICBhbmQgd2lsbCBub3QgcGxhdXNpYmx5IGJlIGEgeGVuc3Rv cmUgb3IgaGFyZHdhcmUgZG9tYWluLgogKiBUaGUgaWRsZSBkb21haW4gZG9lc24ndCBuZWVkIHNj aGVkdWxlciBpbml0aWFsaXNhdGlvbiAoYW5kIGluIHBhcnRpY3VsYXIsCiAgIHJlbW92aW5nIHRo aXMgcGF0aCBhbGxvd3MgZm9yIHN1YnN0YW50aWFsIHNjaGVkdWxlciBjbGVhbnVwKSwgYW5kIGlz bid0CiAgIGxpYWJsZSB0byBldmVyIG5lZWQgbGF0ZV9od2RvbV9pbml0KCkuCgpNb3ZlIGFsbCBv ZiB0aGVzZSBpbml0aWFsaXNhdGlvbnMgcGFzcyB0aGUgRE9NQ1JGX2R1bW15IGVhcmx5IGV4aXQs IGFuZCBpbnRvCm5vbi1pZGxlIHBhdGhzLiAgcmFuZ2VzZXRfZG9tYWluX2luaXRpYWxpc2UoKSBy ZW1haW5zIGJlY2F1c2UgaXQgbWFrZXMgbm8KYWxsb2NhdGlvbnMsIGJ1dCBkb2VzIGluaXRpYWxp c2UgYSBsaW5rZWQgbGlzdCBhbmQgc3BpbmxvY2suICBUaGUgcG9vbGlkCnBhcmFtZXRlciBjYW4g YmUgZHJvcHBlZCBhcyBzY2hlZF9pbml0X2RvbWFpbigpJ3MgcGFyYW1ldGVyIGlzIG5vdwp1bmNv bmRpdGlvbmFsbHkgMC4KClNpZ25lZC1vZmYtYnk6IEFuZHJldyBDb29wZXIgPGFuZHJldy5jb29w ZXIzQGNpdHJpeC5jb20+Ci0tLQpDQzogSmFuIEJldWxpY2ggPEpCZXVsaWNoQHN1c2UuY29tPgpD QzogR2VvcmdlIER1bmxhcCA8R2VvcmdlLkR1bmxhcEBldS5jaXRyaXguY29tPgpDQzogS29ucmFk IFJ6ZXN6dXRlayBXaWxrIDxrb25yYWQud2lsa0BvcmFjbGUuY29tPgpDQzogU3RlZmFubyBTdGFi ZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPgpDQzogVGltIERlZWdhbiA8dGltQHhlbi5v cmc+CkNDOiBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXguY29tPgpDQzogSnVsaWVuIEdyYWxsIDxq dWxpZW4uZ3JhbGxAYXJtLmNvbT4KQ0M6IFJvZ2VyIFBhdSBNb25uw6kgPHJvZ2VyLnBhdUBjaXRy aXguY29tPgpDQzogRGFyaW8gRmFnZ2lvbGkgPGRmYWdnaW9saUBzdXNlLmNvbT4KLS0tCiB4ZW4v Y29tbW9uL2RvbWFpbi5jIHwgNjMgKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAzMCBpbnNlcnRpb25zKCspLCAzMyBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vY29tbW9uL2RvbWFpbi5jIGIveGVuL2NvbW1v bi9kb21haW4uYwppbmRleCBlMWMwMDNkLi5lMGIwMjRjIDEwMDY0NAotLS0gYS94ZW4vY29tbW9u L2RvbWFpbi5jCisrKyBiL3hlbi9jb21tb24vZG9tYWluLmMKQEAgLTI2OCw3ICsyNjgsNiBAQCBz dHJ1Y3QgZG9tYWluICpkb21haW5fY3JlYXRlKGRvbWlkX3QgZG9taWQsIHVuc2lnbmVkIGludCBk b21jcl9mbGFncywKICAgICBlbnVtIHsgSU5JVF94c20gPSAxdTw8MCwgSU5JVF93YXRjaGRvZyA9 IDF1PDwxLCBJTklUX3Jhbmdlc2V0ID0gMXU8PDIsCiAgICAgICAgICAgIElOSVRfZXZ0Y2huID0g MXU8PDMsIElOSVRfZ250dGFiID0gMXU8PDQsIElOSVRfYXJjaCA9IDF1PDw1IH07CiAgICAgaW50 IGVyciwgaW5pdF9zdGF0dXMgPSAwOwotICAgIGludCBwb29saWQgPSBDUFVQT09MSURfTk9ORTsK IAogICAgIGlmICggKGQgPSBhbGxvY19kb21haW5fc3RydWN0KCkpID09IE5VTEwgKQogICAgICAg ICByZXR1cm4gRVJSX1BUUigtRU5PTUVNKTsKQEAgLTI4Myw5ICsyODIsNiBAQCBzdHJ1Y3QgZG9t YWluICpkb21haW5fY3JlYXRlKGRvbWlkX3QgZG9taWQsIHVuc2lnbmVkIGludCBkb21jcl9mbGFn cywKICAgICAgICAgZ290byBmYWlsOwogICAgIGluaXRfc3RhdHVzIHw9IElOSVRfeHNtOwogCi0g ICAgd2F0Y2hkb2dfZG9tYWluX2luaXQoZCk7Ci0gICAgaW5pdF9zdGF0dXMgfD0gSU5JVF93YXRj aGRvZzsKLQogICAgIGF0b21pY19zZXQoJmQtPnJlZmNudCwgMSk7CiAgICAgc3Bpbl9sb2NrX2lu aXRfcHJvZihkLCBkb21haW5fbG9jayk7CiAgICAgc3Bpbl9sb2NrX2luaXRfcHJvZihkLCBwYWdl X2FsbG9jX2xvY2spOwpAQCAtMzEzLDM1ICszMDksMzggQEAgc3RydWN0IGRvbWFpbiAqZG9tYWlu X2NyZWF0ZShkb21pZF90IGRvbWlkLCB1bnNpZ25lZCBpbnQgZG9tY3JfZmxhZ3MsCiAgICAgZWxz ZQogICAgICAgICBkLT5ndWVzdF90eXBlID0gZ3Vlc3RfdHlwZV9wdjsKIAotICAgIGlmICggZG9t aWQgPT0gMCB8fCBkb21pZCA9PSBoYXJkd2FyZV9kb21pZCApCi0gICAgewotICAgICAgICBpZiAo IGhhcmR3YXJlX2RvbWlkIDwgMCB8fCBoYXJkd2FyZV9kb21pZCA+PSBET01JRF9GSVJTVF9SRVNF UlZFRCApCi0gICAgICAgICAgICBwYW5pYygiVGhlIHZhbHVlIG9mIGhhcmR3YXJlX2RvbSBtdXN0 IGJlIGEgdmFsaWQgZG9tYWluIElEIik7Ci0gICAgICAgIGQtPmlzX3Bpbm5lZCA9IG9wdF9kb20w X3ZjcHVzX3BpbjsKLSAgICAgICAgZC0+ZGlzYWJsZV9taWdyYXRlID0gMTsKLSAgICAgICAgb2xk X2h3ZG9tID0gaGFyZHdhcmVfZG9tYWluOwotICAgICAgICBoYXJkd2FyZV9kb21haW4gPSBkOwot ICAgIH0KLQotICAgIGlmICggZG9tY3JfZmxhZ3MgJiBET01DUkZfeHNfZG9tYWluICkKLSAgICB7 Ci0gICAgICAgIGQtPmlzX3hlbnN0b3JlID0gMTsKLSAgICAgICAgZC0+ZGlzYWJsZV9taWdyYXRl ID0gMTsKLSAgICB9Ci0KICAgICByYW5nZXNldF9kb21haW5faW5pdGlhbGlzZShkKTsKICAgICBp bml0X3N0YXR1cyB8PSBJTklUX3Jhbmdlc2V0OwogCi0gICAgZC0+aW9tZW1fY2FwcyA9IHJhbmdl c2V0X25ldyhkLCAiSS9PIE1lbW9yeSIsIFJBTkdFU0VURl9wcmV0dHlwcmludF9oZXgpOwotICAg IGQtPmlycV9jYXBzICAgPSByYW5nZXNldF9uZXcoZCwgIkludGVycnVwdHMiLCAwKTsKLSAgICBp ZiAoIChkLT5pb21lbV9jYXBzID09IE5VTEwpIHx8IChkLT5pcnFfY2FwcyA9PSBOVUxMKSApCi0g ICAgICAgIGdvdG8gZmFpbDsKLQogICAgIGlmICggZG9tY3JfZmxhZ3MgJiBET01DUkZfZHVtbXkg KQogICAgICAgICByZXR1cm4gZDsKIAogICAgIGlmICggIWlzX2lkbGVfZG9tYWluKGQpICkKICAg ICB7CisgICAgICAgIHdhdGNoZG9nX2RvbWFpbl9pbml0KGQpOworICAgICAgICBpbml0X3N0YXR1 cyB8PSBJTklUX3dhdGNoZG9nOworCisgICAgICAgIGlmICggZG9taWQgPT0gMCB8fCBkb21pZCA9 PSBoYXJkd2FyZV9kb21pZCApCisgICAgICAgIHsKKyAgICAgICAgICAgIGlmICggaGFyZHdhcmVf ZG9taWQgPCAwIHx8IGhhcmR3YXJlX2RvbWlkID49IERPTUlEX0ZJUlNUX1JFU0VSVkVEICkKKyAg ICAgICAgICAgICAgICBwYW5pYygiVGhlIHZhbHVlIG9mIGhhcmR3YXJlX2RvbSBtdXN0IGJlIGEg dmFsaWQgZG9tYWluIElEIik7CisgICAgICAgICAgICBkLT5pc19waW5uZWQgPSBvcHRfZG9tMF92 Y3B1c19waW47CisgICAgICAgICAgICBkLT5kaXNhYmxlX21pZ3JhdGUgPSAxOworICAgICAgICAg ICAgb2xkX2h3ZG9tID0gaGFyZHdhcmVfZG9tYWluOworICAgICAgICAgICAgaGFyZHdhcmVfZG9t YWluID0gZDsKKyAgICAgICAgfQorCisgICAgICAgIGlmICggZG9tY3JfZmxhZ3MgJiBET01DUkZf eHNfZG9tYWluICkKKyAgICAgICAgeworICAgICAgICAgICAgZC0+aXNfeGVuc3RvcmUgPSAxOwor ICAgICAgICAgICAgZC0+ZGlzYWJsZV9taWdyYXRlID0gMTsKKyAgICAgICAgfQorCisgICAgICAg IGQtPmlvbWVtX2NhcHMgPSByYW5nZXNldF9uZXcoZCwgIkkvTyBNZW1vcnkiLCBSQU5HRVNFVEZf cHJldHR5cHJpbnRfaGV4KTsKKyAgICAgICAgZC0+aXJxX2NhcHMgICA9IHJhbmdlc2V0X25ldyhk LCAiSW50ZXJydXB0cyIsIDApOworICAgICAgICBpZiAoICFkLT5pb21lbV9jYXBzIHx8ICFkLT5p cnFfY2FwcyApCisgICAgICAgICAgICBnb3RvIGZhaWw7CisKICAgICAgICAgaWYgKCAoZXJyID0g eHNtX2RvbWFpbl9jcmVhdGUoWFNNX0hPT0ssIGQsIHNzaWRyZWYpKSAhPSAwICkKICAgICAgICAg ICAgIGdvdG8gZmFpbDsKIApAQCAtMzY2LDggKzM2NSw2IEBAIHN0cnVjdCBkb21haW4gKmRvbWFp bl9jcmVhdGUoZG9taWRfdCBkb21pZCwgdW5zaWduZWQgaW50IGRvbWNyX2ZsYWdzLAogICAgICAg ICAgICAgZ290byBmYWlsOwogICAgICAgICBpbml0X3N0YXR1cyB8PSBJTklUX2dudHRhYjsKIAot ICAgICAgICBwb29saWQgPSAwOwotCiAgICAgICAgIGVyciA9IC1FTk9NRU07CiAKICAgICAgICAg ZC0+cGJ1ZiA9IHh6YWxsb2NfYXJyYXkoY2hhciwgRE9NQUlOX1BCVUZfU0laRSk7CkBAIC0zNzks MTQgKzM3NiwxNCBAQCBzdHJ1Y3QgZG9tYWluICpkb21haW5fY3JlYXRlKGRvbWlkX3QgZG9taWQs IHVuc2lnbmVkIGludCBkb21jcl9mbGFncywKICAgICAgICAgZ290byBmYWlsOwogICAgIGluaXRf c3RhdHVzIHw9IElOSVRfYXJjaDsKIAotICAgIGlmICggKGVyciA9IHNjaGVkX2luaXRfZG9tYWlu KGQsIHBvb2xpZCkpICE9IDAgKQotICAgICAgICBnb3RvIGZhaWw7Ci0KLSAgICBpZiAoIChlcnIg PSBsYXRlX2h3ZG9tX2luaXQoZCkpICE9IDAgKQotICAgICAgICBnb3RvIGZhaWw7Ci0KICAgICBp ZiAoICFpc19pZGxlX2RvbWFpbihkKSApCiAgICAgeworICAgICAgICBpZiAoIChlcnIgPSBzY2hl ZF9pbml0X2RvbWFpbihkLCAwKSkgIT0gMCApCisgICAgICAgICAgICBnb3RvIGZhaWw7CisKKyAg ICAgICAgaWYgKCAoZXJyID0gbGF0ZV9od2RvbV9pbml0KGQpKSAhPSAwICkKKyAgICAgICAgICAg IGdvdG8gZmFpbDsKKwogICAgICAgICBzcGluX2xvY2soJmRvbWxpc3RfdXBkYXRlX2xvY2spOwog ICAgICAgICBwZCA9ICZkb21haW5fbGlzdDsgLyogTkIuIGRvbWFpbl9saXN0IG1haW50YWluZWQg aW4gb3JkZXIgb2YgZG9taWQuICovCiAgICAgICAgIGZvciAoIHBkID0gJmRvbWFpbl9saXN0OyAq cGQgIT0gTlVMTDsgcGQgPSAmKCpwZCktPm5leHRfaW5fbGlzdCApCi0tIAoyLjEuNAoKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWls aW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVu cHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=