From mboxrd@z Thu Jan 1 00:00:00 1970 From: Feng Wu Subject: [PATCH v4 4/6] VMX: Make sure PI is in proper state before install the hooks Date: Wed, 21 Sep 2016 10:37:48 +0800 Message-ID: <1474425470-3629-5-git-send-email-feng.wu@intel.com> References: <1474425470-3629-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: <1474425470-3629-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 V2UgbWF5IGhpdCB0aGUgQVNTRVJUKCkgaW4gdm14X3ZjcHVfYmxvY2sgaW4gdGhlIGN1cnJlbnQg Y29kZSwKc2luY2Ugdm14X3ZjcHVfYmxvY2soKSBtYXkgZ2V0IGNhbGxlZCBiZWZvcmUgdm14X3Bp X3N3aXRjaF90bygpCmhhcyBiZWVuIGluc3RhbGxlZCBvciBleGVjdXRlZC4gSGVyZSBXZSB1c2Ug Y21weGNoZyB0byB1cGRhdGUKdGhlIE5EU1QgZmllbGQsIHRoaXMgY2FuIG1ha2Ugc3VyZSB3ZSBv bmx5IHVwZGF0ZSB0aGUgTkRTVCB3aGVuCnZteF9waV9zd2l0Y2hfdG8oKSBoYXMgbm90IGJlZW4g Y2FsbGVkLiBTbyB0aGUgTkRTVCBpcyBpbiBhCnByb3BlciBzdGF0ZSBpbiB2bXhfdmNwdV9ibG9j aygpLgoKU3VnZ2VzdGVkLWJ5OiBKYW4gQmV1bGljaCA8SkJldWxpY2hAc3VzZS5jb20+ClNpZ25l ZC1vZmYtYnk6IEZlbmcgV3UgPGZlbmcud3VAaW50ZWwuY29tPgotLS0KdjQ6Ci0gVGhpcyBwYXRj aCBpcyBwcmV2aW91c2x5IGNhbGxlZCAiUGF1c2UvVW5wYXVzZSB0aGUgZG9tYWluIGJlZm9yZS9h ZnRlciBhc3NpZ25pbmcgUEkgaG9va3MiCi0gUmVtb3ZlIHRoZSBwYXVzZS91bnBhdXNlIG1ldGhv ZAotIFVzZSBjbXB4Y2hnIHRvIHVwZGF0ZSBORFNUCgogeGVuL2FyY2gveDg2L2h2bS92bXgvdm1j cy5jIHwgMTMgKysrKystLS0tLS0tLQogeGVuL2FyY2gveDg2L2h2bS92bXgvdm14LmMgIHwgMjcg KysrKysrKysrKysrKysrKysrKysrKysrKystCiAyIGZpbGVzIGNoYW5nZWQsIDMxIGluc2VydGlv bnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2h2bS92bXgv dm1jcy5jIGIveGVuL2FyY2gveDg2L2h2bS92bXgvdm1jcy5jCmluZGV4IDFiZDg3NWEuLmU3MzM3 NTMgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9odm0vdm14L3ZtY3MuYworKysgYi94ZW4vYXJj aC94ODYvaHZtL3ZteC92bWNzLmMKQEAgLTk1NiwxNiArOTU2LDEzIEBAIHZvaWQgdmlydHVhbF92 bWNzX3Ztd3JpdGUoY29uc3Qgc3RydWN0IHZjcHUgKnYsIHUzMiB2bWNzX2VuY29kaW5nLCB1NjQg dmFsKQogICovCiBzdGF0aWMgdm9pZCBwaV9kZXNjX2luaXQoc3RydWN0IHZjcHUgKnYpCiB7Ci0g ICAgdWludDMyX3QgZGVzdDsKLQogICAgIHYtPmFyY2guaHZtX3ZteC5waV9kZXNjLm52ID0gcG9z dGVkX2ludHJfdmVjdG9yOwogCi0gICAgZGVzdCA9IGNwdV9waHlzaWNhbF9pZCh2LT5wcm9jZXNz b3IpOwotCi0gICAgaWYgKCB4MmFwaWNfZW5hYmxlZCApCi0gICAgICAgIHYtPmFyY2guaHZtX3Zt eC5waV9kZXNjLm5kc3QgPSBkZXN0OwotICAgIGVsc2UKLSAgICAgICAgdi0+YXJjaC5odm1fdm14 LnBpX2Rlc2MubmRzdCA9IE1BU0tfSU5TUihkZXN0LCBQSV94QVBJQ19ORFNUX01BU0spOworICAg IC8qCisgICAgICogTWFyayBORFNUIGFzIGludmFsaWQsIHRoZW4gd2UgY2FuIHVzZSB0aGlzIGlu dmFsaWQgdmFsdWUgYXMgYQorICAgICAqIG1hcmtlciB0byB3aGV0aGVyIHVwZGF0ZSBORFNUIG9y IG5vdCBpbiB2bXhfcGlfaG9va3NfYXNzaWduKCkuCisgICAgICovCisgICAgdi0+YXJjaC5odm1f dm14LnBpX2Rlc2MubmRzdCA9IDB4ZmY7CiB9CiAKIHN0YXRpYyBpbnQgY29uc3RydWN0X3ZtY3Mo c3RydWN0IHZjcHUgKnYpCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvaHZtL3ZteC92bXguYyBi L3hlbi9hcmNoL3g4Ni9odm0vdm14L3ZteC5jCmluZGV4IDgyMWNiYTIuLjA5MjYyZDUgMTAwNjQ0 Ci0tLSBhL3hlbi9hcmNoL3g4Ni9odm0vdm14L3ZteC5jCisrKyBiL3hlbi9hcmNoL3g4Ni9odm0v dm14L3ZteC5jCkBAIC0yMTEsMTQgKzIxMSwzOSBAQCBzdGF0aWMgdm9pZCB2bXhfcGlfbGlzdF9j bGVhbnVwKHN0cnVjdCB2Y3B1ICp2KQogLyogVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiBw Y2lkZXZzX2xvY2sgaXMgaGVsZCAqLwogdm9pZCB2bXhfcGlfaG9va3NfYXNzaWduKHN0cnVjdCBk b21haW4gKmQpCiB7CisgICAgc3RydWN0IHZjcHUgKnY7CisKICAgICBpZiAoICFpb21tdV9pbnRw b3N0IHx8ICFoYXNfaHZtX2NvbnRhaW5lcl9kb21haW4oZCkgKQogICAgICAgICByZXR1cm47CiAK ICAgICBBU1NFUlQoIWQtPmFyY2guaHZtX2RvbWFpbi52bXgudmNwdV9ibG9jayk7CiAKLSAgICBk LT5hcmNoLmh2bV9kb21haW4udm14LnZjcHVfYmxvY2sgPSB2bXhfdmNwdV9ibG9jazsKKyAgICAv KgorICAgICAqIFdlIGNhcmVmdWxseSBoYW5kbGUgdGhlIHRpbWluZyBoZXJlOgorICAgICAqIC0g SW5zdGFsbCB0aGUgY29udGV4dCBzd2l0Y2ggZmlyc3QKKyAgICAgKiAtIFRoZW4gc2V0IHRoZSBO RFNUIGZpZWxkCisgICAgICogLSBJbnN0YWxsIHRoZSBibG9jayBhbmQgcmVzdW1lIGhvb2tzIGlu IHRoZSBlbmQKKyAgICAgKgorICAgICAqIFRoaXMgY2FuIG1ha2Ugc3VyZSB0aGUgUEkgKGVzcGVj aWFsbHkgdGhlIE5EU1QgZmVpbGQpIGlzCisgICAgICogaW4gcHJvcGVyIHN0YXRlIHdoZW4gd2Ug Y2FsbCB2bXhfdmNwdV9ibG9jaygpLgorICAgICAqLwogICAgIGQtPmFyY2guaHZtX2RvbWFpbi52 bXgucGlfc3dpdGNoX2Zyb20gPSB2bXhfcGlfc3dpdGNoX2Zyb207CiAgICAgZC0+YXJjaC5odm1f ZG9tYWluLnZteC5waV9zd2l0Y2hfdG8gPSB2bXhfcGlfc3dpdGNoX3RvOworCisgICAgZm9yX2Vh Y2hfdmNwdSAoIGQsIHYgKQorICAgIHsKKyAgICAgICAgdW5zaWduZWQgaW50IGRlc3QgPSBjcHVf cGh5c2ljYWxfaWQodi0+cHJvY2Vzc29yKTsKKyAgICAgICAgc3RydWN0IHBpX2Rlc2MgKnBpX2Rl c2MgPSAmdi0+YXJjaC5odm1fdm14LnBpX2Rlc2M7CisKKwkvKgorCSAqIFdlIGRvbid0IG5lZWQg dG8gdXBkYXRlIE5EU1QgaWYgJ2FyY2guaHZtX2RvbWFpbi52bXgucGlfc3dpdGNoX3RvJworCSAq IGFscmVhZHkgZ2V0cyBjYWxsZWQKKwkgKi8KKyAgICAgICAgKHZvaWQpY21weGNoZygmcGlfZGVz Yy0+bmRzdCwgMHhmZiwKKyAgICAgICAgICAgICAgICB4MmFwaWNfZW5hYmxlZCA/IGRlc3QgOiBN QVNLX0lOU1IoZGVzdCwgUElfeEFQSUNfTkRTVF9NQVNLKSk7CisgICAgfQorCisgICAgZC0+YXJj aC5odm1fZG9tYWluLnZteC52Y3B1X2Jsb2NrID0gdm14X3ZjcHVfYmxvY2s7CiAgICAgZC0+YXJj aC5odm1fZG9tYWluLnZteC5waV9kb19yZXN1bWUgPSB2bXhfcGlfZG9fcmVzdW1lOwogfQogCi0t IAoyLjEuMAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Clhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9s aXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=