From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: [PATCH for-next 4/8] x86/domain: push some code down to hvm_domain_initialise Date: Mon, 10 Apr 2017 14:27:12 +0100 Message-ID: <20170410132716.31610-5-wei.liu2@citrix.com> References: <20170410132716.31610-1-wei.liu2@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cxZxL-000353-I2 for xen-devel@lists.xenproject.org; Mon, 10 Apr 2017 14:06:11 +0000 In-Reply-To: <20170410132716.31610-1-wei.liu2@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 V2Ugd2FudCB0byBoYXZlIGEgc2luZ2xlIGVudHJ5IHBvaW50IHRvIGluaXRpYWxpc2UgaHZtIGd1 ZXN0LiAgVGhlCnRpbWluZyB0byBzZXQgaGFwIGJpdCBhbmQgY3JlYXRlIHBlciBkb21haW4gbWFw cGluZyBpcyBkZWZlcnJlZCwgYnV0CnRoYXQncyBub3QgYSBwcm9ibGVtLgoKTm8gZnVuY3Rpb25h bCBjaGFuZ2UuCgpTaWduZWQtb2ZmLWJ5OiBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXguY29tPgot LS0KIHhlbi9hcmNoL3g4Ni9kb21haW4uYyAgICAgICAgIHwgMTEgKystLS0tLS0tLS0KIHhlbi9h cmNoL3g4Ni9odm0vaHZtLmMgICAgICAgIHwgMjUgKysrKysrKysrKysrKysrKystLS0tLS0tLQog eGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vaHZtLmggfCAgMiArLQogMyBmaWxlcyBjaGFuZ2VkLCAy MCBpbnNlcnRpb25zKCspLCAxOCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94 ODYvZG9tYWluLmMgYi94ZW4vYXJjaC94ODYvZG9tYWluLmMKaW5kZXggZGRlYmZmNjE4Ny4uYWYw NjBkODIzOSAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2RvbWFpbi5jCisrKyBiL3hlbi9hcmNo L3g4Ni9kb21haW4uYwpAQCAtNTg3LDE0ICs1ODcsNyBAQCBpbnQgYXJjaF9kb21haW5fY3JlYXRl KHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGludCBkb21jcl9mbGFncywKICAgICAgICAgZC0+ YXJjaC5lbXVsYXRpb25fZmxhZ3MgPSBlbWZsYWdzOwogICAgIH0KIAotICAgIGlmICggaXNfaHZt X2RvbWFpbihkKSApCi0gICAgewotICAgICAgICBkLT5hcmNoLmh2bV9kb21haW4uaGFwX2VuYWJs ZWQgPQotICAgICAgICAgICAgaHZtX2Z1bmNzLmhhcF9zdXBwb3J0ZWQgJiYgKGRvbWNyX2ZsYWdz ICYgRE9NQ1JGX2hhcCk7Ci0KLSAgICAgICAgcmMgPSBjcmVhdGVfcGVyZG9tYWluX21hcHBpbmco ZCwgUEVSRE9NQUlOX1ZJUlRfU1RBUlQsIDAsIE5VTEwsIE5VTEwpOwotICAgIH0KLSAgICBlbHNl IGlmICggaXNfaWRsZV9kb21haW4oZCkgKQorICAgIGlmICggaXNfaWRsZV9kb21haW4oZCkgKQog ICAgICAgICByYyA9IDA7CiAgICAgZWxzZQogICAgIHsKQEAgLTY2Myw3ICs2NTYsNyBAQCBpbnQg YXJjaF9kb21haW5fY3JlYXRlKHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGludCBkb21jcl9m bGFncywKIAogICAgIGlmICggaXNfaHZtX2RvbWFpbihkKSApCiAgICAgewotICAgICAgICBpZiAo IChyYyA9IGh2bV9kb21haW5faW5pdGlhbGlzZShkKSkgIT0gMCApCisgICAgICAgIGlmICggKHJj ID0gaHZtX2RvbWFpbl9pbml0aWFsaXNlKGQsIGRvbWNyX2ZsYWdzKSkgIT0gMCApCiAgICAgICAg ICAgICBnb3RvIGZhaWw7CiAgICAgfQogICAgIGVsc2UKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4 Ni9odm0vaHZtLmMgYi94ZW4vYXJjaC94ODYvaHZtL2h2bS5jCmluZGV4IGY1MGQxNWZmNTAuLjdm YzQ5YmIwM2QgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9odm0vaHZtLmMKKysrIGIveGVuL2Fy Y2gveDg2L2h2bS9odm0uYwpAQCAtNTk1LDcgKzU5NSw3IEBAIHN0YXRpYyBpbnQgaHZtX3ByaW50 X2xpbmUoCiAgICAgcmV0dXJuIFg4NkVNVUxfT0tBWTsKIH0KIAotaW50IGh2bV9kb21haW5faW5p dGlhbGlzZShzdHJ1Y3QgZG9tYWluICpkKQoraW50IGh2bV9kb21haW5faW5pdGlhbGlzZShzdHJ1 Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBpbnQgZG9tY3JfZmxhZ3MpCiB7CiAgICAgdW5zaWduZWQg aW50IG5yX2dzaXM7CiAgICAgaW50IHJjOwpAQCAtNjE1LDEwICs2MTUsMTcgQEAgaW50IGh2bV9k b21haW5faW5pdGlhbGlzZShzdHJ1Y3QgZG9tYWluICpkKQogCiAgICAgaHZtX2luaXRfY2FjaGVh dHRyX3JlZ2lvbl9saXN0KGQpOwogCi0gICAgcmMgPSBwYWdpbmdfZW5hYmxlKGQsIFBHX3JlZmNv dW50c3xQR190cmFuc2xhdGV8UEdfZXh0ZXJuYWwpOworICAgIGQtPmFyY2guaHZtX2RvbWFpbi5o YXBfZW5hYmxlZCA9CisgICAgICAgIGh2bV9mdW5jcy5oYXBfc3VwcG9ydGVkICYmIChkb21jcl9m bGFncyAmIERPTUNSRl9oYXApOworCisgICAgcmMgPSBjcmVhdGVfcGVyZG9tYWluX21hcHBpbmco ZCwgUEVSRE9NQUlOX1ZJUlRfU1RBUlQsIDAsIE5VTEwsIE5VTEwpOwogICAgIGlmICggcmMgIT0g MCApCiAgICAgICAgIGdvdG8gZmFpbDA7CiAKKyAgICByYyA9IHBhZ2luZ19lbmFibGUoZCwgUEdf cmVmY291bnRzfFBHX3RyYW5zbGF0ZXxQR19leHRlcm5hbCk7CisgICAgaWYgKCByYyAhPSAwICkK KyAgICAgICAgZ290byBmYWlsMTsKKwogICAgIG5yX2dzaXMgPSBpc19oYXJkd2FyZV9kb21haW4o ZCkgPyBucl9pcnFzX2dzaSA6IE5SX0hWTV9ET01VX0lSUVM7CiAgICAgZC0+YXJjaC5odm1fZG9t YWluLnBsX3RpbWUgPSB4emFsbG9jKHN0cnVjdCBwbF90aW1lKTsKICAgICBkLT5hcmNoLmh2bV9k b21haW4ucGFyYW1zID0geHphbGxvY19hcnJheSh1aW50NjRfdCwgSFZNX05SX1BBUkFNUyk7CkBA IC02MjksNyArNjM2LDcgQEAgaW50IGh2bV9kb21haW5faW5pdGlhbGlzZShzdHJ1Y3QgZG9tYWlu ICpkKQogICAgIHJjID0gLUVOT01FTTsKICAgICBpZiAoICFkLT5hcmNoLmh2bV9kb21haW4ucGxf dGltZSB8fCAhZC0+YXJjaC5odm1fZG9tYWluLmlycSB8fAogICAgICAgICAgIWQtPmFyY2guaHZt X2RvbWFpbi5wYXJhbXMgIHx8ICFkLT5hcmNoLmh2bV9kb21haW4uaW9faGFuZGxlciApCi0gICAg ICAgIGdvdG8gZmFpbDE7CisgICAgICAgIGdvdG8gZmFpbDI7CiAKICAgICAvKiBTZXQgdGhlIG51 bWJlciBvZiBHU0lzICovCiAgICAgaHZtX2RvbWFpbl9pcnEoZCktPm5yX2dzaXMgPSBucl9nc2lz OwpAQCAtNjQ3LDcgKzY1NCw3IEBAIGludCBodm1fZG9tYWluX2luaXRpYWxpc2Uoc3RydWN0IGRv bWFpbiAqZCkKICAgICAgICAgaWYgKCBkLT5hcmNoLmh2bV9kb21haW4uaW9fYml0bWFwID09IE5V TEwgKQogICAgICAgICB7CiAgICAgICAgICAgICByYyA9IC1FTk9NRU07Ci0gICAgICAgICAgICBn b3RvIGZhaWwxOworICAgICAgICAgICAgZ290byBmYWlsMjsKICAgICAgICAgfQogICAgICAgICBt ZW1zZXQoZC0+YXJjaC5odm1fZG9tYWluLmlvX2JpdG1hcCwgfjAsIEhWTV9JT0JJVE1BUF9TSVpF KTsKICAgICB9CkBAIC02NjYsNyArNjczLDcgQEAgaW50IGh2bV9kb21haW5faW5pdGlhbGlzZShz dHJ1Y3QgZG9tYWluICpkKQogCiAgICAgcmMgPSB2aW9hcGljX2luaXQoZCk7CiAgICAgaWYgKCBy YyAhPSAwICkKLSAgICAgICAgZ290byBmYWlsMTsKKyAgICAgICAgZ290byBmYWlsMjsKIAogICAg IHN0ZHZnYV9pbml0KGQpOwogCkBAIC02NzksMjEgKzY4NiwyMyBAQCBpbnQgaHZtX2RvbWFpbl9p bml0aWFsaXNlKHN0cnVjdCBkb21haW4gKmQpCiAKICAgICByYyA9IGh2bV9mdW5jcy5kb21haW5f aW5pdGlhbGlzZShkKTsKICAgICBpZiAoIHJjICE9IDAgKQotICAgICAgICBnb3RvIGZhaWwyOwor ICAgICAgICBnb3RvIGZhaWwzOwogCiAgICAgcmV0dXJuIDA7CiAKLSBmYWlsMjoKKyBmYWlsMzoK ICAgICBydGNfZGVpbml0KGQpOwogICAgIHN0ZHZnYV9kZWluaXQoZCk7CiAgICAgdmlvYXBpY19k ZWluaXQoZCk7Ci0gZmFpbDE6CisgZmFpbDI6CiAgICAgaWYgKCBpc19oYXJkd2FyZV9kb21haW4o ZCkgKQogICAgICAgICB4ZnJlZShkLT5hcmNoLmh2bV9kb21haW4uaW9fYml0bWFwKTsKICAgICB4 ZnJlZShkLT5hcmNoLmh2bV9kb21haW4uaW9faGFuZGxlcik7CiAgICAgeGZyZWUoZC0+YXJjaC5o dm1fZG9tYWluLnBhcmFtcyk7CiAgICAgeGZyZWUoZC0+YXJjaC5odm1fZG9tYWluLnBsX3RpbWUp OwogICAgIHhmcmVlKGQtPmFyY2guaHZtX2RvbWFpbi5pcnEpOworIGZhaWwxOgorICAgIGRlc3Ry b3lfcGVyZG9tYWluX21hcHBpbmcoZCwgUEVSRE9NQUlOX1ZJUlRfU1RBUlQsIDApOwogIGZhaWww OgogICAgIGh2bV9kZXN0cm95X2NhY2hlYXR0cl9yZWdpb25fbGlzdChkKTsKICAgICByZXR1cm4g cmM7CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L2h2bS9odm0uaCBiL3hlbi9pbmNs dWRlL2FzbS14ODYvaHZtL2h2bS5oCmluZGV4IDdhODViMmUzYjUuLmQzZmVmOWNhNTIgMTAwNjQ0 Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL2h2bS5oCisrKyBiL3hlbi9pbmNsdWRlL2Fz bS14ODYvaHZtL2h2bS5oCkBAIC0yMzYsNyArMjM2LDcgQEAgZXh0ZXJuIHM4IGh2bV9wb3J0ODBf YWxsb3dlZDsKIGV4dGVybiBjb25zdCBzdHJ1Y3QgaHZtX2Z1bmN0aW9uX3RhYmxlICpzdGFydF9z dm0odm9pZCk7CiBleHRlcm4gY29uc3Qgc3RydWN0IGh2bV9mdW5jdGlvbl90YWJsZSAqc3RhcnRf dm14KHZvaWQpOwogCi1pbnQgaHZtX2RvbWFpbl9pbml0aWFsaXNlKHN0cnVjdCBkb21haW4gKmQp OworaW50IGh2bV9kb21haW5faW5pdGlhbGlzZShzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBp bnQgZG9tY3JfZmxhZ3MpOwogdm9pZCBodm1fZG9tYWluX3JlbGlucXVpc2hfcmVzb3VyY2VzKHN0 cnVjdCBkb21haW4gKmQpOwogdm9pZCBodm1fZG9tYWluX2Rlc3Ryb3koc3RydWN0IGRvbWFpbiAq ZCk7CiB2b2lkIGh2bV9kb21haW5fc29mdF9yZXNldChzdHJ1Y3QgZG9tYWluICpkKTsKLS0gCjIu MTEuMAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhl bi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0 cy54ZW4ub3JnL3hlbi1kZXZlbAo=