From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: [PATCH v2 10/23] x86/pt: split out HVM functions from vtd.c Date: Sun, 26 Aug 2018 13:19:43 +0100 Message-ID: <5a5c836b22273391c7f4d55bd6bb3edba4b989eb.1535285866.git-series.wei.liu2@citrix.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1ftu9j-0000VP-Ms for xen-devel@lists.xenproject.org; Sun, 26 Aug 2018 12:28:35 +0000 In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Kevin Tian , Wei Liu List-Id: xen-devel@lists.xenproject.org RnVuY3Rpb25zIGFyZSBtb3ZlZCB0byBodm0uYy4gUmVvcmRlciBtYWtlZmlsZSBpdGVtcyB3aGls ZSBhdCBpdC4KClNpZ25lZC1vZmYtYnk6IFdlaSBMaXUgPHdlaS5saXUyQGNpdHJpeC5jb20+Ci0t LQp2MjogcmVkdWNlIGFuZCBzb3J0IGlubGN1ZGVzCi0tLQogeGVuL2RyaXZlcnMvcGFzc3Rocm91 Z2gvdnRkL3g4Ni9NYWtlZmlsZSB8ICAzICstCiB4ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC92dGQv eDg2L2h2bS5jICAgIHwgNjcgKysrKysrKysrKysrKysrKysrKysrKysrKy0KIHhlbi9kcml2ZXJz L3Bhc3N0aHJvdWdoL3Z0ZC94ODYvdnRkLmMgICAgfCA0NSArLS0tLS0tLS0tLS0tLS0tLS0KIDMg ZmlsZXMgY2hhbmdlZCwgNjkgaW5zZXJ0aW9ucygrKSwgNDYgZGVsZXRpb25zKC0pCiBjcmVhdGUg bW9kZSAxMDA2NDQgeGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL3g4Ni9odm0uYwoKZGlmZiAt LWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC94ODYvTWFrZWZpbGUgYi94ZW4vZHJp dmVycy9wYXNzdGhyb3VnaC92dGQveDg2L01ha2VmaWxlCmluZGV4IGRmNDUwOWQuLjRlZjAwYTQg MTAwNjQ0Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC94ODYvTWFrZWZpbGUKKysr IGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL3g4Ni9NYWtlZmlsZQpAQCAtMSwyICsxLDMg QEAKLW9iai15ICs9IHZ0ZC5vCiBvYmoteSArPSBhdHMubworb2JqLSQoQ09ORklHX0hWTSkgKz0g aHZtLm8KK29iai15ICs9IHZ0ZC5vCmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhyb3Vn aC92dGQveDg2L2h2bS5jIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL3g4Ni9odm0uYwpu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42Njc1ZGNhCi0tLSAvZGV2L251bGwK KysrIGIveGVuL2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL3g4Ni9odm0uYwpAQCAtMCwwICsxLDY3 IEBACisvKgorICogQ29weXJpZ2h0IChjKSAyMDA4LCBJbnRlbCBDb3Jwb3JhdGlvbi4KKyAqCisg KiBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQg YW5kL29yIG1vZGlmeSBpdAorICogdW5kZXIgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIHRo ZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSwKKyAqIHZlcnNpb24gMiwgYXMgcHVibGlzaGVk IGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24uCisgKgorICogVGhpcyBwcm9ncmFtIGlz IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIGl0IHdpbGwgYmUgdXNlZnVsLCBidXQgV0lUSE9VVAor ICogQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YgTUVS Q0hBTlRBQklMSVRZIG9yCisgKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNl ZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yCisgKiBtb3JlIGRldGFpbHMuCisg KgorICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwg UHVibGljIExpY2Vuc2UgYWxvbmcgd2l0aAorICogdGhpcyBwcm9ncmFtOyBJZiBub3QsIHNlZSA8 aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisgKgorICogQ29weXJpZ2h0IChDKSBBbGxl biBLYXkgPGFsbGVuLm0ua2F5QGludGVsLmNvbT4KKyAqIENvcHlyaWdodCAoQykgV2VpZG9uZyBI YW4gPHdlaWRvbmcuaGFuQGludGVsLmNvbT4KKyAqLworCisjaW5jbHVkZSA8eGVuL2lvbW11Lmg+ CisjaW5jbHVkZSA8eGVuL2lycS5oPgorI2luY2x1ZGUgPHhlbi9zY2hlZC5oPgorCitzdGF0aWMg aW50IF9odm1fZHBjaV9pc2FpcnFfZW9pKHN0cnVjdCBkb21haW4gKmQsCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHN0cnVjdCBodm1fcGlycV9kcGNpICpwaXJxX2RwY2ksIHZvaWQg KmFyZykKK3sKKyAgICBzdHJ1Y3QgaHZtX2lycSAqaHZtX2lycSA9IGh2bV9kb21haW5faXJxKGQp OworICAgIHVuc2lnbmVkIGludCBpc2FpcnEgPSAobG9uZylhcmc7CisgICAgY29uc3Qgc3RydWN0 IGRldl9pbnR4X2dzaV9saW5rICpkaWdsOworCisgICAgbGlzdF9mb3JfZWFjaF9lbnRyeSAoIGRp Z2wsICZwaXJxX2RwY2ktPmRpZ2xfbGlzdCwgbGlzdCApCisgICAgeworICAgICAgICB1bnNpZ25l ZCBpbnQgbGluayA9IGh2bV9wY2lfaW50eF9saW5rKGRpZ2wtPmRldmljZSwgZGlnbC0+aW50eCk7 CisKKyAgICAgICAgaWYgKCBodm1faXJxLT5wY2lfbGluay5yb3V0ZVtsaW5rXSA9PSBpc2FpcnEg KQorICAgICAgICB7CisgICAgICAgICAgICBodm1fcGNpX2ludHhfZGVhc3NlcnQoZCwgZGlnbC0+ ZGV2aWNlLCBkaWdsLT5pbnR4KTsKKyAgICAgICAgICAgIGlmICggLS1waXJxX2RwY2ktPnBlbmRp bmcgPT0gMCApCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgc3RvcF90aW1lcigmcGly cV9kcGNpLT50aW1lcik7CisgICAgICAgICAgICAgICAgcGlycV9ndWVzdF9lb2koZHBjaV9waXJx KHBpcnFfZHBjaSkpOworICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgfQorCisgICAgcmV0 dXJuIDA7Cit9CisKK3ZvaWQgaHZtX2RwY2lfaXNhaXJxX2VvaShzdHJ1Y3QgZG9tYWluICpkLCB1 bnNpZ25lZCBpbnQgaXNhaXJxKQoreworICAgIHN0cnVjdCBodm1faXJxX2RwY2kgKmRwY2kgPSBO VUxMOworCisgICAgQVNTRVJUKGlzYWlycSA8IE5SX0lTQUlSUVMpOworICAgIGlmICggIWlvbW11 X2VuYWJsZWQgKQorICAgICAgICByZXR1cm47CisKKyAgICBzcGluX2xvY2soJmQtPmV2ZW50X2xv Y2spOworCisgICAgZHBjaSA9IGRvbWFpbl9nZXRfaXJxX2RwY2koZCk7CisKKyAgICBpZiAoIGRw Y2kgJiYgdGVzdF9iaXQoaXNhaXJxLCBkcGNpLT5pc2FpcnFfbWFwKSApCisgICAgeworICAgICAg ICAvKiBNdWx0aXBsZSBtaXJxIG1heSBiZSBtYXBwZWQgdG8gb25lIGlzYSBpcnEgKi8KKyAgICAg ICAgcHRfcGlycV9pdGVyYXRlKGQsIF9odm1fZHBjaV9pc2FpcnFfZW9pLCAodm9pZCAqKShsb25n KWlzYWlycSk7CisgICAgfQorICAgIHNwaW5fdW5sb2NrKCZkLT5ldmVudF9sb2NrKTsKK30KZGlm ZiAtLWdpdCBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC94ODYvdnRkLmMgYi94ZW4vZHJp dmVycy9wYXNzdGhyb3VnaC92dGQveDg2L3Z0ZC5jCmluZGV4IDAwYTk4OTEuLmFjNjUzZWUgMTAw NjQ0Ci0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL3Z0ZC94ODYvdnRkLmMKKysrIGIveGVu L2RyaXZlcnMvcGFzc3Rocm91Z2gvdnRkL3g4Ni92dGQuYwpAQCAtNjMsNTEgKzYzLDYgQEAgdm9p ZCBmbHVzaF9hbGxfY2FjaGUoKQogICAgIHdiaW52ZCgpOwogfQogCi1zdGF0aWMgaW50IF9odm1f ZHBjaV9pc2FpcnFfZW9pKHN0cnVjdCBkb21haW4gKmQsCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHN0cnVjdCBodm1fcGlycV9kcGNpICpwaXJxX2RwY2ksIHZvaWQgKmFyZykKLXsK LSAgICBzdHJ1Y3QgaHZtX2lycSAqaHZtX2lycSA9IGh2bV9kb21haW5faXJxKGQpOwotICAgIHVu c2lnbmVkIGludCBpc2FpcnEgPSAobG9uZylhcmc7Ci0gICAgY29uc3Qgc3RydWN0IGRldl9pbnR4 X2dzaV9saW5rICpkaWdsOwotCi0gICAgbGlzdF9mb3JfZWFjaF9lbnRyeSAoIGRpZ2wsICZwaXJx X2RwY2ktPmRpZ2xfbGlzdCwgbGlzdCApCi0gICAgewotICAgICAgICB1bnNpZ25lZCBpbnQgbGlu ayA9IGh2bV9wY2lfaW50eF9saW5rKGRpZ2wtPmRldmljZSwgZGlnbC0+aW50eCk7Ci0KLSAgICAg ICAgaWYgKCBodm1faXJxLT5wY2lfbGluay5yb3V0ZVtsaW5rXSA9PSBpc2FpcnEgKQotICAgICAg ICB7Ci0gICAgICAgICAgICBodm1fcGNpX2ludHhfZGVhc3NlcnQoZCwgZGlnbC0+ZGV2aWNlLCBk aWdsLT5pbnR4KTsKLSAgICAgICAgICAgIGlmICggLS1waXJxX2RwY2ktPnBlbmRpbmcgPT0gMCAp Ci0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgICAgc3RvcF90aW1lcigmcGlycV9kcGNpLT50 aW1lcik7Ci0gICAgICAgICAgICAgICAgcGlycV9ndWVzdF9lb2koZHBjaV9waXJxKHBpcnFfZHBj aSkpOwotICAgICAgICAgICAgfQotICAgICAgICB9Ci0gICAgfQotCi0gICAgcmV0dXJuIDA7Ci19 Ci0KLXZvaWQgaHZtX2RwY2lfaXNhaXJxX2VvaShzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBp bnQgaXNhaXJxKQotewotICAgIHN0cnVjdCBodm1faXJxX2RwY2kgKmRwY2kgPSBOVUxMOwotCi0g ICAgQVNTRVJUKGlzYWlycSA8IE5SX0lTQUlSUVMpOwotICAgIGlmICggIWlvbW11X2VuYWJsZWQp Ci0gICAgICAgIHJldHVybjsKLQotICAgIHNwaW5fbG9jaygmZC0+ZXZlbnRfbG9jayk7Ci0KLSAg ICBkcGNpID0gZG9tYWluX2dldF9pcnFfZHBjaShkKTsKLQotICAgIGlmICggZHBjaSAmJiB0ZXN0 X2JpdChpc2FpcnEsIGRwY2ktPmlzYWlycV9tYXApICkKLSAgICB7Ci0gICAgICAgIC8qIE11bHRp cGxlIG1pcnEgbWF5IGJlIG1hcHBlZCB0byBvbmUgaXNhIGlycSAqLwotICAgICAgICBwdF9waXJx X2l0ZXJhdGUoZCwgX2h2bV9kcGNpX2lzYWlycV9lb2ksICh2b2lkICopKGxvbmcpaXNhaXJxKTsK LSAgICB9Ci0gICAgc3Bpbl91bmxvY2soJmQtPmV2ZW50X2xvY2spOwotfQotCiB2b2lkIF9faHdk b21faW5pdCB2dGRfc2V0X2h3ZG9tX21hcHBpbmcoc3RydWN0IGRvbWFpbiAqZCkKIHsKICAgICB1 bnNpZ25lZCBsb25nIGksIHRvcCwgbWF4X3BmbjsKLS0gCmdpdC1zZXJpZXMgMC45LjEKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWls aW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVu cHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=