From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: [PATCH for-next 6/8] x86/domain: factor out pv_domain_initialise Date: Mon, 10 Apr 2017 14:27:14 +0100 Message-ID: <20170410132716.31610-7-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 1cxZxK-00034h-EW for xen-devel@lists.xenproject.org; Mon, 10 Apr 2017 14:06:10 +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 THVtcCBldmVyeXRoaW5nIFBWIHJlbGF0ZWQgaW4gYXJjaF9kb21haW5fY3JlYXRlIGludG8KcHZf ZG9tYWluX2luaXRpYWxpc2UuCgpUaG91Z2ggZG9tY3JfZmxhZ3MgaXMgbm90IG5lY2Vzc2FyeSwg dGhlIG5ldyBmdW5jdGlvbiBpcyBnaXZlbiBvbmUgdG8KbWF0Y2ggaHZtIGNvdW50ZXJwYXJ0LgoK U2luY2UgaXQgY2xlYW5zIHVwIGFmdGVyIGl0c2VsZiB0aGVyZSBpcyBubyBuZWVkIHRvIGNsZWFu IHVwIGluCmFyY2hfZG9tYWluX2NyZWF0ZSBpbiBjYXNlIG9mIGZhaWx1cmUuCgpObyBmdW5jdGlv bmFsIGNoYW5nZS4KClNpZ25lZC1vZmYtYnk6IFdlaSBMaXUgPHdlaS5saXUyQGNpdHJpeC5jb20+ Ci0tLQogeGVuL2FyY2gveDg2L2RvbWFpbi5jIHwgOTcgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNjAgaW5zZXJ0aW9u cygrKSwgMzcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2RvbWFpbi5j IGIveGVuL2FyY2gveDg2L2RvbWFpbi5jCmluZGV4IDA1ODg1YTEwM2QuLmVkMTZhZGY3N2EgMTAw NjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9kb21haW4uYworKysgYi94ZW4vYXJjaC94ODYvZG9tYWlu LmMKQEAgLTUzMyw2ICs1MzMsNTggQEAgc3RhdGljIHZvaWQgcHZfZG9tYWluX2Rlc3Ryb3koc3Ry dWN0IGRvbWFpbiAqZCkKICAgICBmcmVlX3hlbmhlYXBfcGFnZShkLT5hcmNoLnB2X2RvbWFpbi5n ZHRfbGR0X2wxdGFiKTsKIH0KIAorc3RhdGljIGludCBwdl9kb21haW5faW5pdGlhbGlzZShzdHJ1 Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBpbnQgZG9tY3JfZmxhZ3MpCit7CisgICAgc3RhdGljIGNv bnN0IHN0cnVjdCBhcmNoX2NzdyBwdl9jc3cgPSB7CisgICAgICAgIC5mcm9tID0gcGFyYXZpcnRf Y3R4dF9zd2l0Y2hfZnJvbSwKKyAgICAgICAgLnRvICAgPSBwYXJhdmlydF9jdHh0X3N3aXRjaF90 bywKKyAgICAgICAgLnRhaWwgPSBjb250aW51ZV9ub25pZGxlX2RvbWFpbiwKKyAgICB9OworICAg IGludCByYyA9IC1FTk9NRU07CisKKyAgICBkLT5hcmNoLnB2X2RvbWFpbi5nZHRfbGR0X2wxdGFi ID0KKyAgICAgICAgYWxsb2NfeGVuaGVhcF9wYWdlcygwLCBNRU1GX25vZGUoZG9tYWluX3RvX25v ZGUoZCkpKTsKKyAgICBpZiAoICFkLT5hcmNoLnB2X2RvbWFpbi5nZHRfbGR0X2wxdGFiICkKKyAg ICAgICAgZ290byBmYWlsOworICAgIGNsZWFyX3BhZ2UoZC0+YXJjaC5wdl9kb21haW4uZ2R0X2xk dF9sMXRhYik7CisKKyAgICBpZiAoIGxldmVsbGluZ19jYXBzICYgfkxDQVBfZmF1bHRpbmcgKQor ICAgIHsKKyAgICAgICAgZC0+YXJjaC5wdl9kb21haW4uY3B1aWRtYXNrcyA9IHhtYWxsb2Moc3Ry dWN0IGNwdWlkbWFza3MpOworICAgICAgICBpZiAoICFkLT5hcmNoLnB2X2RvbWFpbi5jcHVpZG1h c2tzICkKKyAgICAgICAgICAgIGdvdG8gZmFpbDsKKyAgICAgICAgKmQtPmFyY2gucHZfZG9tYWlu LmNwdWlkbWFza3MgPSBjcHVpZG1hc2tfZGVmYXVsdHM7CisgICAgfQorCisgICAgcmMgPSBjcmVh dGVfcGVyZG9tYWluX21hcHBpbmcoZCwgR0RUX0xEVF9WSVJUX1NUQVJULAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIEdEVF9MRFRfTUJZVEVTIDw8ICgyMCAtIFBBR0VfU0hJRlQp LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIE5VTEwpOworICAgIGlm ICggcmMgKQorICAgICAgICBnb3RvIGZhaWw7CisKKyAgICBkLT5hcmNoLmN0eHRfc3dpdGNoID0g JnB2X2NzdzsKKworICAgIC8qIDY0LWJpdCBQViBndWVzdCBieSBkZWZhdWx0LiAqLworICAgIGQt PmFyY2guaXNfMzJiaXRfcHYgPSBkLT5hcmNoLmhhc18zMmJpdF9zaGluZm8gPSAwOworCisgICAg cmV0dXJuIDA7CisKK2ZhaWw6CisgICAgaWYgKCBkLT5hcmNoLnB2X2RvbWFpbi5nZHRfbGR0X2wx dGFiICkKKyAgICB7CisgICAgICAgIGZyZWVfeGVuaGVhcF9wYWdlKGQtPmFyY2gucHZfZG9tYWlu LmdkdF9sZHRfbDF0YWIpOworICAgICAgICBkLT5hcmNoLnB2X2RvbWFpbi5nZHRfbGR0X2wxdGFi ID0gTlVMTDsKKyAgICB9CisKKyAgICBpZiAoIGQtPmFyY2gucHZfZG9tYWluLmNwdWlkbWFza3Mg KQorICAgIHsKKyAgICAgICAgeGZyZWUoZC0+YXJjaC5wdl9kb21haW4uY3B1aWRtYXNrcyk7Cisg ICAgICAgIGQtPmFyY2gucHZfZG9tYWluLmNwdWlkbWFza3MgPSBOVUxMOworICAgIH0KKworICAg IHJldHVybiByYzsKK30KKwogaW50IGFyY2hfZG9tYWluX2NyZWF0ZShzdHJ1Y3QgZG9tYWluICpk LCB1bnNpZ25lZCBpbnQgZG9tY3JfZmxhZ3MsCiAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVj dCB4ZW5fYXJjaF9kb21haW5jb25maWcgKmNvbmZpZykKIHsKQEAgLTU5MywzMCArNjQ1LDcgQEAg aW50IGFyY2hfZG9tYWluX2NyZWF0ZShzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBpbnQgZG9t Y3JfZmxhZ3MsCiAgICAgICAgIGQtPmFyY2guZW11bGF0aW9uX2ZsYWdzID0gZW1mbGFnczsKICAg ICB9CiAKLSAgICBpZiAoIGlzX2lkbGVfZG9tYWluKGQpICkKLSAgICAgICAgcmMgPSAwOwotICAg IGVsc2UKLSAgICB7Ci0gICAgICAgIGQtPmFyY2gucHZfZG9tYWluLmdkdF9sZHRfbDF0YWIgPQot ICAgICAgICAgICAgYWxsb2NfeGVuaGVhcF9wYWdlcygwLCBNRU1GX25vZGUoZG9tYWluX3RvX25v ZGUoZCkpKTsKLSAgICAgICAgaWYgKCAhZC0+YXJjaC5wdl9kb21haW4uZ2R0X2xkdF9sMXRhYiAp Ci0gICAgICAgICAgICBnb3RvIGZhaWw7Ci0gICAgICAgIGNsZWFyX3BhZ2UoZC0+YXJjaC5wdl9k b21haW4uZ2R0X2xkdF9sMXRhYik7Ci0KLSAgICAgICAgaWYgKCBsZXZlbGxpbmdfY2FwcyAmIH5M Q0FQX2ZhdWx0aW5nICkKLSAgICAgICAgewotICAgICAgICAgICAgZC0+YXJjaC5wdl9kb21haW4u Y3B1aWRtYXNrcyA9IHhtYWxsb2Moc3RydWN0IGNwdWlkbWFza3MpOwotICAgICAgICAgICAgaWYg KCAhZC0+YXJjaC5wdl9kb21haW4uY3B1aWRtYXNrcyApCi0gICAgICAgICAgICAgICAgZ290byBm YWlsOwotICAgICAgICAgICAgKmQtPmFyY2gucHZfZG9tYWluLmNwdWlkbWFza3MgPSBjcHVpZG1h c2tfZGVmYXVsdHM7Ci0gICAgICAgIH0KLQotICAgICAgICByYyA9IGNyZWF0ZV9wZXJkb21haW5f bWFwcGluZyhkLCBHRFRfTERUX1ZJUlRfU1RBUlQsCi0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEdEVF9MRFRfTUJZVEVTIDw8ICgyMCAtIFBBR0VfU0hJRlQpLAotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMKTsKLSAgICB9Ci0gICAg aWYgKCByYyApCi0gICAgICAgIGdvdG8gZmFpbDsKKyAgICByYyA9IDA7CiAKICAgICBtYXBjYWNo ZV9kb21haW5faW5pdChkKTsKIApAQCAtNjY1LDIzICs2OTQsMjAgQEAgaW50IGFyY2hfZG9tYWlu X2NyZWF0ZShzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBpbnQgZG9tY3JfZmxhZ3MsCiAgICAg ICAgIGlmICggKHJjID0gaHZtX2RvbWFpbl9pbml0aWFsaXNlKGQsIGRvbWNyX2ZsYWdzKSkgIT0g MCApCiAgICAgICAgICAgICBnb3RvIGZhaWw7CiAgICAgfQotICAgIGVsc2UKKyAgICBlbHNlIGlm ICggaXNfaWRsZV9kb21haW4oZCkgKQogICAgIHsKLSAgICAgICAgc3RhdGljIGNvbnN0IHN0cnVj dCBhcmNoX2NzdyBwdl9jc3cgPSB7Ci0gICAgICAgICAgICAuZnJvbSA9IHBhcmF2aXJ0X2N0eHRf c3dpdGNoX2Zyb20sCi0gICAgICAgICAgICAudG8gICA9IHBhcmF2aXJ0X2N0eHRfc3dpdGNoX3Rv LAotICAgICAgICAgICAgLnRhaWwgPSBjb250aW51ZV9ub25pZGxlX2RvbWFpbiwKLSAgICAgICAg fTsKICAgICAgICAgc3RhdGljIGNvbnN0IHN0cnVjdCBhcmNoX2NzdyBpZGxlX2NzdyA9IHsKICAg ICAgICAgICAgIC5mcm9tID0gcGFyYXZpcnRfY3R4dF9zd2l0Y2hfZnJvbSwKICAgICAgICAgICAg IC50byAgID0gcGFyYXZpcnRfY3R4dF9zd2l0Y2hfdG8sCiAgICAgICAgICAgICAudGFpbCA9IGNv bnRpbnVlX2lkbGVfZG9tYWluLAogICAgICAgICB9OwogCi0gICAgICAgIGQtPmFyY2guY3R4dF9z d2l0Y2ggPSBpc19pZGxlX2RvbWFpbihkKSA/ICZpZGxlX2NzdyA6ICZwdl9jc3c7Ci0KLSAgICAg ICAgLyogNjQtYml0IFBWIGd1ZXN0IGJ5IGRlZmF1bHQuICovCi0gICAgICAgIGQtPmFyY2guaXNf MzJiaXRfcHYgPSBkLT5hcmNoLmhhc18zMmJpdF9zaGluZm8gPSAwOworICAgICAgICBkLT5hcmNo LmN0eHRfc3dpdGNoID0gJmlkbGVfY3N3OworICAgIH0KKyAgICBlbHNlCisgICAgeworICAgICAg ICBpZiAoIChyYyA9IHB2X2RvbWFpbl9pbml0aWFsaXNlKGQsIGRvbWNyX2ZsYWdzKSkgIT0gMCAp CisgICAgICAgICAgICBnb3RvIGZhaWw7CiAgICAgfQogCiAgICAgLyogaW5pdGlhbGl6ZSBkZWZh dWx0IHRzYyBiZWhhdmlvciBpbiBjYXNlIHRvb2xzIGRvbid0ICovCkBAIC03MDksOSArNzM1LDYg QEAgaW50IGFyY2hfZG9tYWluX2NyZWF0ZShzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBpbnQg ZG9tY3JfZmxhZ3MsCiAgICAgaWYgKCBwYWdpbmdfaW5pdGlhbGlzZWQgKQogICAgICAgICBwYWdp bmdfZmluYWxfdGVhcmRvd24oZCk7CiAgICAgZnJlZV9wZXJkb21haW5fbWFwcGluZ3MoZCk7Ci0g ICAgaWYgKCBpc19wdl9kb21haW4oZCkgKQotICAgICAgICBwdl9kb21haW5fZGVzdHJveShkKTsK LQogICAgIHJldHVybiByYzsKIH0KIAotLSAKMi4xMS4wCgoKX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2 ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==