From mboxrd@z Thu Jan 1 00:00:00 1970 From: Feng Wu Subject: [PATCH v6 4/7] VMX: Make sure PI is in proper state before install the hooks Date: Fri, 28 Oct 2016 10:37:36 +0800 Message-ID: <1477622259-3476-5-git-send-email-feng.wu@intel.com> References: <1477622259-3476-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: <1477622259-3476-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+Ci0tLQp2NjoKLSBDb21t ZW50cyBjaGFuZ2VzCi0gRGVmaW5lIG1hY3JvICdBUElDX0lOVkFMSURfREVTVCcgZm9yICcweGZm ZmZmZmZmJwoKdjU6Ci0gVXNlIDB4ZmZmZmZmZmYgYXMgdGhlIGludmFsaWQgdmFsdWUgZm9yIE5E U1QgZmllbGQuCgp2NDoKLSBUaGlzIHBhdGNoIGlzIHByZXZpb3VzbHkgY2FsbGVkICJQYXVzZS9V bnBhdXNlIHRoZSBkb21haW4gYmVmb3JlL2FmdGVyIGFzc2lnbmluZyBQSSBob29rcyIKLSBSZW1v dmUgdGhlIHBhdXNlL3VucGF1c2UgbWV0aG9kCi0gVXNlIGNtcHhjaGcgdG8gdXBkYXRlIE5EU1QK CiB4ZW4vYXJjaC94ODYvaHZtL3ZteC92bWNzLmMgICAgICAgfCAxMyArKysrKy0tLS0tLS0tCiB4 ZW4vYXJjaC94ODYvaHZtL3ZteC92bXguYyAgICAgICAgfCAyNyArKysrKysrKysrKysrKysrKysr KysrKysrKy0KIHhlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3ZteC92bXguaCB8ICAyICsrCiAzIGZp bGVzIGNoYW5nZWQsIDMzIGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEveGVuL2FyY2gveDg2L2h2bS92bXgvdm1jcy5jIGIveGVuL2FyY2gveDg2L2h2bS92bXgvdm1j cy5jCmluZGV4IDFiZDg3NWEuLmU4ZTM2MTYgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9odm0v dm14L3ZtY3MuYworKysgYi94ZW4vYXJjaC94ODYvaHZtL3ZteC92bWNzLmMKQEAgLTk1NiwxNiAr OTU2LDEzIEBAIHZvaWQgdmlydHVhbF92bWNzX3Ztd3JpdGUoY29uc3Qgc3RydWN0IHZjcHUgKnYs IHUzMiB2bWNzX2VuY29kaW5nLCB1NjQgdmFsKQogICovCiBzdGF0aWMgdm9pZCBwaV9kZXNjX2lu aXQoc3RydWN0IHZjcHUgKnYpCiB7Ci0gICAgdWludDMyX3QgZGVzdDsKLQogICAgIHYtPmFyY2gu aHZtX3ZteC5waV9kZXNjLm52ID0gcG9zdGVkX2ludHJfdmVjdG9yOwogCi0gICAgZGVzdCA9IGNw dV9waHlzaWNhbF9pZCh2LT5wcm9jZXNzb3IpOwotCi0gICAgaWYgKCB4MmFwaWNfZW5hYmxlZCAp Ci0gICAgICAgIHYtPmFyY2guaHZtX3ZteC5waV9kZXNjLm5kc3QgPSBkZXN0OwotICAgIGVsc2UK LSAgICAgICAgdi0+YXJjaC5odm1fdm14LnBpX2Rlc2MubmRzdCA9IE1BU0tfSU5TUihkZXN0LCBQ SV94QVBJQ19ORFNUX01BU0spOworICAgIC8qCisgICAgICogTWFyayBORFNUIGFzIGludmFsaWQs IHRoZW4gd2UgY2FuIHVzZSB0aGlzIGludmFsaWQgdmFsdWUgYXMgYQorICAgICAqIG1hcmtlciB0 byB3aGV0aGVyIHVwZGF0ZSBORFNUIG9yIG5vdCBpbiB2bXhfcGlfaG9va3NfYXNzaWduKCkuCisg ICAgICovCisgICAgdi0+YXJjaC5odm1fdm14LnBpX2Rlc2MubmRzdCA9IEFQSUNfSU5WQUxJRF9E RVNUOwogfQogCiBzdGF0aWMgaW50IGNvbnN0cnVjdF92bWNzKHN0cnVjdCB2Y3B1ICp2KQpkaWZm IC0tZ2l0IGEveGVuL2FyY2gveDg2L2h2bS92bXgvdm14LmMgYi94ZW4vYXJjaC94ODYvaHZtL3Zt eC92bXguYwppbmRleCBlYjQ3NzBjLi41ODY5NGNlIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYv aHZtL3ZteC92bXguYworKysgYi94ZW4vYXJjaC94ODYvaHZtL3ZteC92bXguYwpAQCAtMjA2LDE0 ICsyMDYsMzkgQEAgc3RhdGljIHZvaWQgdm14X3BpX2RvX3Jlc3VtZShzdHJ1Y3QgdmNwdSAqdikK IC8qIFRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkIHdoZW4gcGNpZGV2c19sb2NrIGlzIGhlbGQgKi8K IHZvaWQgdm14X3BpX2hvb2tzX2Fzc2lnbihzdHJ1Y3QgZG9tYWluICpkKQogeworICAgIHN0cnVj dCB2Y3B1ICp2OworCiAgICAgaWYgKCAhaW9tbXVfaW50cG9zdCB8fCAhaGFzX2h2bV9jb250YWlu ZXJfZG9tYWluKGQpICkKICAgICAgICAgcmV0dXJuOwogCiAgICAgQVNTRVJUKCFkLT5hcmNoLmh2 bV9kb21haW4udm14LnZjcHVfYmxvY2spOwogCi0gICAgZC0+YXJjaC5odm1fZG9tYWluLnZteC52 Y3B1X2Jsb2NrID0gdm14X3ZjcHVfYmxvY2s7CisgICAgLyoKKyAgICAgKiBXZSBjYXJlZnVsbHkg aGFuZGxlIHRoZSB0aW1pbmcgaGVyZToKKyAgICAgKiAtIEluc3RhbGwgdGhlIGNvbnRleHQgc3dp dGNoIGZpcnN0CisgICAgICogLSBUaGVuIHNldCB0aGUgTkRTVCBmaWVsZAorICAgICAqIC0gSW5z dGFsbCB0aGUgYmxvY2sgYW5kIHJlc3VtZSBob29rcyBpbiB0aGUgZW5kCisgICAgICoKKyAgICAg KiBUaGlzIGNhbiBtYWtlIHN1cmUgdGhlIFBJIChlc3BlY2lhbGx5IHRoZSBORFNUIGZlaWxkKSBp cworICAgICAqIGluIHByb3BlciBzdGF0ZSB3aGVuIHdlIGNhbGwgdm14X3ZjcHVfYmxvY2soKS4K KyAgICAgKi8KICAgICBkLT5hcmNoLmh2bV9kb21haW4udm14LnBpX3N3aXRjaF9mcm9tID0gdm14 X3BpX3N3aXRjaF9mcm9tOwogICAgIGQtPmFyY2guaHZtX2RvbWFpbi52bXgucGlfc3dpdGNoX3Rv ID0gdm14X3BpX3N3aXRjaF90bzsKKworICAgIGZvcl9lYWNoX3ZjcHUgKCBkLCB2ICkKKyAgICB7 CisgICAgICAgIHVuc2lnbmVkIGludCBkZXN0ID0gY3B1X3BoeXNpY2FsX2lkKHYtPnByb2Nlc3Nv cik7CisgICAgICAgIHN0cnVjdCBwaV9kZXNjICpwaV9kZXNjID0gJnYtPmFyY2guaHZtX3ZteC5w aV9kZXNjOworCisgICAgICAgIC8qCisgICAgICAgICAqIFdlIGRvbid0IG5lZWQgdG8gdXBkYXRl IE5EU1QgaWYgdm14X3BpX3N3aXRjaF90bygpCisgICAgICAgICAqIGhhcyBhbHJlYWR5IGdvdCBj YWxsZWQuCisgICAgICAgICAqLworICAgICAgICAodm9pZCljbXB4Y2hnKCZwaV9kZXNjLT5uZHN0 LCBBUElDX0lOVkFMSURfREVTVCwKKyAgICAgICAgICAgICAgICB4MmFwaWNfZW5hYmxlZCA/IGRl c3QgOiBNQVNLX0lOU1IoZGVzdCwgUElfeEFQSUNfTkRTVF9NQVNLKSk7CisgICAgfQorCisgICAg ZC0+YXJjaC5odm1fZG9tYWluLnZteC52Y3B1X2Jsb2NrID0gdm14X3ZjcHVfYmxvY2s7CiAgICAg ZC0+YXJjaC5odm1fZG9tYWluLnZteC5waV9kb19yZXN1bWUgPSB2bXhfcGlfZG9fcmVzdW1lOwog fQogCmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9hc20teDg2L2h2bS92bXgvdm14LmggYi94ZW4v aW5jbHVkZS9hc20teDg2L2h2bS92bXgvdm14LmgKaW5kZXggNGNkZDliMS4uMmYwNDM1YyAxMDA2 NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vdm14L3ZteC5oCisrKyBiL3hlbi9pbmNs dWRlL2FzbS14ODYvaHZtL3ZteC92bXguaApAQCAtNTczLDYgKzU3Myw4IEBAIHZvaWQgdm14X3Bp X3Blcl9jcHVfaW5pdCh1bnNpZ25lZCBpbnQgY3B1KTsKIHZvaWQgdm14X3BpX2hvb2tzX2Fzc2ln bihzdHJ1Y3QgZG9tYWluICpkKTsKIHZvaWQgdm14X3BpX2hvb2tzX2RlYXNzaWduKHN0cnVjdCBk b21haW4gKmQpOwogCisjZGVmaW5lIEFQSUNfSU5WQUxJRF9ERVNUICAgICAgICAgICAweGZmZmZm ZmZmCisKIC8qIEVQVCB2aW9sYXRpb24gcXVhbGlmaWNhdGlvbnMgZGVmaW5pdGlvbnMgKi8KICNk ZWZpbmUgX0VQVF9SRUFEX1ZJT0xBVElPTiAgICAgICAgIDAKICNkZWZpbmUgRVBUX1JFQURfVklP TEFUSU9OICAgICAgICAgICgxVUw8PF9FUFRfUkVBRF9WSU9MQVRJT04pCi0tIAoyLjEuMAoKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBt YWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3Jn L3hlbi1kZXZlbAo=