From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: [PATCH-for-4.9 v1 8/8] x86/hvm: serialize trap injecting producer and consumer Date: Fri, 18 Nov 2016 17:14:04 +0000 Message-ID: <1479489244-2201-9-git-send-email-paul.durrant@citrix.com> References: <1479489244-2201-1-git-send-email-paul.durrant@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1c7n4v-00056d-QW for xen-devel@lists.xenproject.org; Fri, 18 Nov 2016 17:35:57 +0000 In-Reply-To: <1479489244-2201-1-git-send-email-paul.durrant@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Andrew Cooper , Paul Durrant , Jan Beulich List-Id: xen-devel@lists.xenproject.org U2luY2UgaW5qZWN0aW9uIHdvcmtzIG9uIGEgcmVtb3RlIHZDUFUsIGFuZCBzaW5jZSB0aGVyZSdz IG5vCmVuZm9yY2VtZW50IG9mIHRoZSBzdWJqZWN0IHZDUFUgYmVpbmcgcGF1c2VkLCB0aGVyZSdz IGEgcG90ZW50aWFsIHJhY2UKYmV0d2VlbiB0aGUgcHJvZHVjaW5nIGFuZCBjb25zdW1pbmcgc2lk ZXMuIEZpeCB0aGlzIGJ5IGxldmVyYWdpbmcgdGhlCnZlY3RvciBmaWVsZCBhcyBzeW5jaHJvbml6 YXRpb24gdmFyaWFibGUuCgpTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJldWxpY2hAc3Vz ZS5jb20+CltyZS1iYXNlZF0KU2lnbmVkLW9mZi1ieTogUGF1bCBEdXJyYW50IDxwYXVsLmR1cnJh bnRAY2l0cml4LmNvbT4KLS0tCkNjOiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRy aXguY29tPgotLS0KIHhlbi9hcmNoL3g4Ni9odm0vZG0uYyAgICAgICAgIHwgNSArKysrLQogeGVu L2FyY2gveDg2L2h2bS9odm0uYyAgICAgICAgfCA3ICsrKystLS0KIHhlbi9pbmNsdWRlL2FzbS14 ODYvaHZtL2h2bS5oIHwgMiArKwogMyBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCA0 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9odm0vZG0uYyBiL3hlbi9h cmNoL3g4Ni9odm0vZG0uYwppbmRleCBlZTBhZWVkLi40NWUxNjRlIDEwMDY0NAotLS0gYS94ZW4v YXJjaC94ODYvaHZtL2RtLmMKKysrIGIveGVuL2FyY2gveDg2L2h2bS9kbS5jCkBAIC0zMDAsMTMg KzMwMCwxNiBAQCBzdGF0aWMgaW50IGRtX29wX2luamVjdF90cmFwKHN0cnVjdCBkb21haW4gKmQs IHVuc2lnbmVkIGludCB2Y3B1aWQsCiAgICAgaWYgKCB2Y3B1aWQgPj0gZC0+bWF4X3ZjcHVzIHx8 ICh2ID0gZC0+dmNwdVt2Y3B1aWRdKSA9PSBOVUxMICkKICAgICAgICAgcmV0dXJuIC1FSU5WQUw7 CiAKLSAgICBpZiAoIHYtPmFyY2guaHZtX3ZjcHUuaW5qZWN0X3RyYXAudmVjdG9yICE9IC0xICkK KyAgICBpZiAoIGNtcHhjaGcoJnYtPmFyY2guaHZtX3ZjcHUuaW5qZWN0X3RyYXAudmVjdG9yLAor ICAgICAgICAgICAgICAgICBIVk1fVFJBUF9WRUNUT1JfVU5TRVQsIEhWTV9UUkFQX1ZFQ1RPUl9V UERBVElORykgIT0KKyAgICAgICAgIEhWTV9UUkFQX1ZFQ1RPUl9VTlNFVCApCiAgICAgICAgIHJl dHVybiAtRUJVU1k7CiAKICAgICB2LT5hcmNoLmh2bV92Y3B1LmluamVjdF90cmFwLnR5cGUgPSB0 eXBlOwogICAgIHYtPmFyY2guaHZtX3ZjcHUuaW5qZWN0X3RyYXAuaW5zbl9sZW4gPSBpbnNuX2xl bjsKICAgICB2LT5hcmNoLmh2bV92Y3B1LmluamVjdF90cmFwLmVycm9yX2NvZGUgPSBlcnJvcl9j b2RlOwogICAgIHYtPmFyY2guaHZtX3ZjcHUuaW5qZWN0X3RyYXAuY3IyID0gY3IyOworICAgIHNt cF93bWIoKTsKICAgICB2LT5hcmNoLmh2bV92Y3B1LmluamVjdF90cmFwLnZlY3RvciA9IHZlY3Rv cjsKIAogICAgIHJldHVybiAwOwpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L2h2bS9odm0uYyBi L3hlbi9hcmNoL3g4Ni9odm0vaHZtLmMKaW5kZXggOTBjNGI0My4uZjgxN2MzMiAxMDA2NDQKLS0t IGEveGVuL2FyY2gveDg2L2h2bS9odm0uYworKysgYi94ZW4vYXJjaC94ODYvaHZtL2h2bS5jCkBA IC01MzMsMTAgKzUzMywxMSBAQCB2b2lkIGh2bV9kb19yZXN1bWUoc3RydWN0IHZjcHUgKnYpCiAg ICAgfQogCiAgICAgLyogSW5qZWN0IHBlbmRpbmcgaHcvc3cgdHJhcCAqLwotICAgIGlmICggdi0+ YXJjaC5odm1fdmNwdS5pbmplY3RfdHJhcC52ZWN0b3IgIT0gLTEgKQorICAgIGlmICggdi0+YXJj aC5odm1fdmNwdS5pbmplY3RfdHJhcC52ZWN0b3IgPj0gMCApCiAgICAgeworICAgICAgICBzbXBf cm1iKCk7CiAgICAgICAgIGh2bV9pbmplY3RfdHJhcCgmdi0+YXJjaC5odm1fdmNwdS5pbmplY3Rf dHJhcCk7Ci0gICAgICAgIHYtPmFyY2guaHZtX3ZjcHUuaW5qZWN0X3RyYXAudmVjdG9yID0gLTE7 CisgICAgICAgIHYtPmFyY2guaHZtX3ZjcHUuaW5qZWN0X3RyYXAudmVjdG9yID0gSFZNX1RSQVBf VkVDVE9SX1VOU0VUOwogICAgIH0KIH0KIApAQCAtMTU0OCw3ICsxNTQ5LDcgQEAgaW50IGh2bV92 Y3B1X2luaXRpYWxpc2Uoc3RydWN0IHZjcHUgKnYpCiAgICAgICAgICh2b2lkKCopKHVuc2lnbmVk IGxvbmcpKWh2bV9hc3NlcnRfZXZ0Y2huX2lycSwKICAgICAgICAgKHVuc2lnbmVkIGxvbmcpdik7 CiAKLSAgICB2LT5hcmNoLmh2bV92Y3B1LmluamVjdF90cmFwLnZlY3RvciA9IC0xOworICAgIHYt PmFyY2guaHZtX3ZjcHUuaW5qZWN0X3RyYXAudmVjdG9yID0gSFZNX1RSQVBfVkVDVE9SX1VOU0VU OwogCiAgICAgaWYgKCBpc19wdmhfZG9tYWluKGQpICkKICAgICB7CmRpZmYgLS1naXQgYS94ZW4v aW5jbHVkZS9hc20teDg2L2h2bS9odm0uaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL2h2bS5o CmluZGV4IDdlNzQ2MmUuLmU2Yzk1MWYgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYv aHZtL2h2bS5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL2h2bS5oCkBAIC03OCw2ICs3 OCw4IEBAIGVudW0gaHZtX2ludGJsayB7CiAjZGVmaW5lIEhWTV9IQVBfU1VQRVJQQUdFXzFHQiAg IDB4MDAwMDAwMDIKIAogc3RydWN0IGh2bV90cmFwIHsKKyNkZWZpbmUgSFZNX1RSQVBfVkVDVE9S X1VOU0VUICAgICgtMSkKKyNkZWZpbmUgSFZNX1RSQVBfVkVDVE9SX1VQREFUSU5HICgtMikKICAg ICBpbnQxNl90ICAgICAgIHZlY3RvcjsKICAgICB1aW50OF90ICAgICAgIHR5cGU7ICAgICAgICAg LyogWDg2X0VWRU5UVFlQRV8qICovCiAgICAgdWludDhfdCAgICAgICBpbnNuX2xlbjsgICAgIC8q IEluc3RydWN0aW9uIGxlbmd0aCAqLwotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZl bEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK