From mboxrd@z Thu Jan 1 00:00:00 1970 From: Feng Wu Subject: [PATCH v7 3/6] VMX: Make sure PI is in proper state before install the hooks Date: Mon, 7 Nov 2016 16:08:00 +0800 Message-ID: <1478506083-14560-4-git-send-email-feng.wu@intel.com> References: <1478506083-14560-1-git-send-email-feng.wu@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1478506083-14560-1-git-send-email-feng.wu@intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: kevin.tian@intel.com, Feng Wu , george.dunlap@eu.citrix.com, andrew.cooper3@citrix.com, dario.faggioli@citrix.com, jbeulich@suse.com List-Id: xen-devel@lists.xenproject.org V2UgbWF5IGhpdCB0aGUgbGFzdCBBU1NFUlQoKSBpbiB2bXhfdmNwdV9ibG9jayBpbiB0aGUgY3Vy cmVudCBjb2RlLApzaW5jZSB2bXhfdmNwdV9ibG9jaygpIG1heSBnZXQgY2FsbGVkIGJlZm9yZSB2 bXhfcGlfc3dpdGNoX3RvKCkKaGFzIGJlZW4gaW5zdGFsbGVkIG9yIGV4ZWN1dGVkLiBIZXJlIFdl IHVzZSBjbXB4Y2hnIHRvIHVwZGF0ZQp0aGUgTkRTVCBmaWVsZCwgdGhpcyBjYW4gbWFrZSBzdXJl IHdlIG9ubHkgdXBkYXRlIHRoZSBORFNUIHdoZW4Kdm14X3BpX3N3aXRjaF90bygpIGhhcyBub3Qg YmVlbiBjYWxsZWQuIFNvIHRoZSBORFNUIGlzIGluIGEKcHJvcGVyIHN0YXRlIGluIHZteF92Y3B1 X2Jsb2NrKCkuCgpTdWdnZXN0ZWQtYnk6IEphbiBCZXVsaWNoIDxKQmV1bGljaEBzdXNlLmNvbT4K U2lnbmVkLW9mZi1ieTogRmVuZyBXdSA8ZmVuZy53dUBpbnRlbC5jb20+ClJldmlld2VkLWJ5OiBK YW4gQmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+Ci0tLQp2NjoKLSBDb21tZW50cyBjaGFuZ2Vz Ci0gRGVmaW5lIG1hY3JvICdBUElDX0lOVkFMSURfREVTVCcgZm9yICcweGZmZmZmZmZmJwoKdjU6 Ci0gVXNlIDB4ZmZmZmZmZmYgYXMgdGhlIGludmFsaWQgdmFsdWUgZm9yIE5EU1QgZmllbGQuCgp2 NDoKLSBUaGlzIHBhdGNoIGlzIHByZXZpb3VzbHkgY2FsbGVkICJQYXVzZS9VbnBhdXNlIHRoZSBk b21haW4gYmVmb3JlL2FmdGVyIGFzc2lnbmluZyBQSSBob29rcyIKLSBSZW1vdmUgdGhlIHBhdXNl L3VucGF1c2UgbWV0aG9kCi0gVXNlIGNtcHhjaGcgdG8gdXBkYXRlIE5EU1QKCiB4ZW4vYXJjaC94 ODYvaHZtL3ZteC92bWNzLmMgICAgICAgfCAxMyArKysrKy0tLS0tLS0tCiB4ZW4vYXJjaC94ODYv aHZtL3ZteC92bXguYyAgICAgICAgfCAyNyArKysrKysrKysrKysrKysrKysrKysrKysrKy0KIHhl bi9pbmNsdWRlL2FzbS14ODYvaHZtL3ZteC92bXguaCB8ICAyICsrCiAzIGZpbGVzIGNoYW5nZWQs IDMzIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gv eDg2L2h2bS92bXgvdm1jcy5jIGIveGVuL2FyY2gveDg2L2h2bS92bXgvdm1jcy5jCmluZGV4IDFi ZDg3NWEuLmU4ZTM2MTYgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9odm0vdm14L3ZtY3MuYwor KysgYi94ZW4vYXJjaC94ODYvaHZtL3ZteC92bWNzLmMKQEAgLTk1NiwxNiArOTU2LDEzIEBAIHZv aWQgdmlydHVhbF92bWNzX3Ztd3JpdGUoY29uc3Qgc3RydWN0IHZjcHUgKnYsIHUzMiB2bWNzX2Vu Y29kaW5nLCB1NjQgdmFsKQogICovCiBzdGF0aWMgdm9pZCBwaV9kZXNjX2luaXQoc3RydWN0IHZj cHUgKnYpCiB7Ci0gICAgdWludDMyX3QgZGVzdDsKLQogICAgIHYtPmFyY2guaHZtX3ZteC5waV9k ZXNjLm52ID0gcG9zdGVkX2ludHJfdmVjdG9yOwogCi0gICAgZGVzdCA9IGNwdV9waHlzaWNhbF9p ZCh2LT5wcm9jZXNzb3IpOwotCi0gICAgaWYgKCB4MmFwaWNfZW5hYmxlZCApCi0gICAgICAgIHYt PmFyY2guaHZtX3ZteC5waV9kZXNjLm5kc3QgPSBkZXN0OwotICAgIGVsc2UKLSAgICAgICAgdi0+ YXJjaC5odm1fdm14LnBpX2Rlc2MubmRzdCA9IE1BU0tfSU5TUihkZXN0LCBQSV94QVBJQ19ORFNU X01BU0spOworICAgIC8qCisgICAgICogTWFyayBORFNUIGFzIGludmFsaWQsIHRoZW4gd2UgY2Fu IHVzZSB0aGlzIGludmFsaWQgdmFsdWUgYXMgYQorICAgICAqIG1hcmtlciB0byB3aGV0aGVyIHVw ZGF0ZSBORFNUIG9yIG5vdCBpbiB2bXhfcGlfaG9va3NfYXNzaWduKCkuCisgICAgICovCisgICAg di0+YXJjaC5odm1fdm14LnBpX2Rlc2MubmRzdCA9IEFQSUNfSU5WQUxJRF9ERVNUOwogfQogCiBz dGF0aWMgaW50IGNvbnN0cnVjdF92bWNzKHN0cnVjdCB2Y3B1ICp2KQpkaWZmIC0tZ2l0IGEveGVu L2FyY2gveDg2L2h2bS92bXgvdm14LmMgYi94ZW4vYXJjaC94ODYvaHZtL3ZteC92bXguYwppbmRl eCA3ZTdiYzhiLi5kNzBhY2VjIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvaHZtL3ZteC92bXgu YworKysgYi94ZW4vYXJjaC94ODYvaHZtL3ZteC92bXguYwpAQCAtMjA2LDE0ICsyMDYsMzkgQEAg c3RhdGljIHZvaWQgdm14X3BpX2RvX3Jlc3VtZShzdHJ1Y3QgdmNwdSAqdikKIC8qIFRoaXMgZnVu Y3Rpb24gaXMgY2FsbGVkIHdoZW4gcGNpZGV2c19sb2NrIGlzIGhlbGQgKi8KIHZvaWQgdm14X3Bp X2hvb2tzX2Fzc2lnbihzdHJ1Y3QgZG9tYWluICpkKQogeworICAgIHN0cnVjdCB2Y3B1ICp2Owor CiAgICAgaWYgKCAhaW9tbXVfaW50cG9zdCB8fCAhaGFzX2h2bV9jb250YWluZXJfZG9tYWluKGQp ICkKICAgICAgICAgcmV0dXJuOwogCiAgICAgQVNTRVJUKCFkLT5hcmNoLmh2bV9kb21haW4udm14 LnZjcHVfYmxvY2spOwogCi0gICAgZC0+YXJjaC5odm1fZG9tYWluLnZteC52Y3B1X2Jsb2NrID0g dm14X3ZjcHVfYmxvY2s7CisgICAgLyoKKyAgICAgKiBXZSBjYXJlZnVsbHkgaGFuZGxlIHRoZSB0 aW1pbmcgaGVyZToKKyAgICAgKiAtIEluc3RhbGwgdGhlIGNvbnRleHQgc3dpdGNoIGZpcnN0Cisg ICAgICogLSBUaGVuIHNldCB0aGUgTkRTVCBmaWVsZAorICAgICAqIC0gSW5zdGFsbCB0aGUgYmxv Y2sgYW5kIHJlc3VtZSBob29rcyBpbiB0aGUgZW5kCisgICAgICoKKyAgICAgKiBUaGlzIGNhbiBt YWtlIHN1cmUgdGhlIFBJIChlc3BlY2lhbGx5IHRoZSBORFNUIGZlaWxkKSBpcworICAgICAqIGlu IHByb3BlciBzdGF0ZSB3aGVuIHdlIGNhbGwgdm14X3ZjcHVfYmxvY2soKS4KKyAgICAgKi8KICAg ICBkLT5hcmNoLmh2bV9kb21haW4udm14LnBpX3N3aXRjaF9mcm9tID0gdm14X3BpX3N3aXRjaF9m cm9tOwogICAgIGQtPmFyY2guaHZtX2RvbWFpbi52bXgucGlfc3dpdGNoX3RvID0gdm14X3BpX3N3 aXRjaF90bzsKKworICAgIGZvcl9lYWNoX3ZjcHUgKCBkLCB2ICkKKyAgICB7CisgICAgICAgIHVu c2lnbmVkIGludCBkZXN0ID0gY3B1X3BoeXNpY2FsX2lkKHYtPnByb2Nlc3Nvcik7CisgICAgICAg IHN0cnVjdCBwaV9kZXNjICpwaV9kZXNjID0gJnYtPmFyY2guaHZtX3ZteC5waV9kZXNjOworCisg ICAgICAgIC8qCisgICAgICAgICAqIFdlIGRvbid0IG5lZWQgdG8gdXBkYXRlIE5EU1QgaWYgdm14 X3BpX3N3aXRjaF90bygpCisgICAgICAgICAqIGhhcyBhbHJlYWR5IGdvdCBjYWxsZWQuCisgICAg ICAgICAqLworICAgICAgICAodm9pZCljbXB4Y2hnKCZwaV9kZXNjLT5uZHN0LCBBUElDX0lOVkFM SURfREVTVCwKKyAgICAgICAgICAgICAgICB4MmFwaWNfZW5hYmxlZCA/IGRlc3QgOiBNQVNLX0lO U1IoZGVzdCwgUElfeEFQSUNfTkRTVF9NQVNLKSk7CisgICAgfQorCisgICAgZC0+YXJjaC5odm1f ZG9tYWluLnZteC52Y3B1X2Jsb2NrID0gdm14X3ZjcHVfYmxvY2s7CiAgICAgZC0+YXJjaC5odm1f ZG9tYWluLnZteC5waV9kb19yZXN1bWUgPSB2bXhfcGlfZG9fcmVzdW1lOwogfQogCmRpZmYgLS1n aXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L2h2bS92bXgvdm14LmggYi94ZW4vaW5jbHVkZS9hc20t eDg2L2h2bS92bXgvdm14LmgKaW5kZXggNGNkZDliMS4uMmYwNDM1YyAxMDA2NDQKLS0tIGEveGVu L2luY2x1ZGUvYXNtLXg4Ni9odm0vdm14L3ZteC5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYv aHZtL3ZteC92bXguaApAQCAtNTczLDYgKzU3Myw4IEBAIHZvaWQgdm14X3BpX3Blcl9jcHVfaW5p dCh1bnNpZ25lZCBpbnQgY3B1KTsKIHZvaWQgdm14X3BpX2hvb2tzX2Fzc2lnbihzdHJ1Y3QgZG9t YWluICpkKTsKIHZvaWQgdm14X3BpX2hvb2tzX2RlYXNzaWduKHN0cnVjdCBkb21haW4gKmQpOwog CisjZGVmaW5lIEFQSUNfSU5WQUxJRF9ERVNUICAgICAgICAgICAweGZmZmZmZmZmCisKIC8qIEVQ VCB2aW9sYXRpb24gcXVhbGlmaWNhdGlvbnMgZGVmaW5pdGlvbnMgKi8KICNkZWZpbmUgX0VQVF9S RUFEX1ZJT0xBVElPTiAgICAgICAgIDAKICNkZWZpbmUgRVBUX1JFQURfVklPTEFUSU9OICAgICAg ICAgICgxVUw8PF9FUFRfUkVBRF9WSU9MQVRJT04pCi0tIAoyLjEuMAoKCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QK WGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=