From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: Re: [PATCH v2] x86/vMSI-X: also snoop REP MOVS Date: Thu, 28 Apr 2016 16:39:53 +0000 Message-ID: References: <57223FE502000078000E6E8D@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta3.messagelabs.com ([195.245.230.39]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1avoyp-0005dL-MP for xen-devel@lists.xenproject.org; Thu, 28 Apr 2016 16:39:55 +0000 In-Reply-To: <57223FE502000078000E6E8D@prv-mh.provo.novell.com> Content-Language: en-US List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Jan Beulich , xen-devel Cc: Andrew Cooper , Wei Liu List-Id: xen-devel@lists.xenproject.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQo+IEZyb206IEphbiBCZXVsaWNoIFttYWlsdG86 SkJldWxpY2hAc3VzZS5jb21dCj4gU2VudDogMjggQXByaWwgMjAxNiAxNTo1Mwo+IFRvOiB4ZW4t ZGV2ZWwKPiBDYzogQW5kcmV3IENvb3BlcjsgUGF1bCBEdXJyYW50OyBXZWkgTGl1Cj4gU3ViamVj dDogW1BBVENIIHYyXSB4ODYvdk1TSS1YOiBhbHNvIHNub29wIFJFUCBNT1ZTCj4gCj4gLi4uIGFz IGF0IGxlYXN0IGNlcnRhaW4gdmVyc2lvbnMgb2YgV2luZG93cyB1c2Ugc3VjaCB0byB1cGRhdGUg dGhlCj4gTVNJLVggdGFibGUuIEhvd2V2ZXIsIHRvIG5vdCBvdmVybHkgY29tcGxpY2F0ZSB0aGUg bG9naWMgZm9yIG5vdwo+IC0gb25seSBFRkxBR1MuREY9MCBpcyBiZWluZyBoYW5kbGVkLAo+IC0g b25seSB1cGRhdGVzIG5vdCBjcm9zc2luZyBNU0ktWCB0YWJsZSBlbnRyeSBib3VuZGFyaWVzIGFy ZSBoYW5kbGVkLgo+IAo+IFNpZ25lZC1vZmYtYnk6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNl LmNvbT4KClJldmlld2VkLWJ5OiBQYXVsIER1cnJhbnQgPHBhdWwuZHVycmFudEBjaXRyaXguY29t PgoKPiAtLS0KPiB2MjogQ29tbWVudCBjb25kaXRpb25hbCBiZWluZyBhZGRlZCB0byBtc2l4dGJs X3JhbmdlKCkuCj4gCj4gLS0tIGEveGVuL2FyY2gveDg2L2h2bS92bXNpLmMKPiArKysgYi94ZW4v YXJjaC94ODYvaHZtL3Ztc2kuYwo+IEBAIC0zNTEsOSArMzUxLDEwIEBAIHN0YXRpYyBpbnQgbXNp eHRibF9yYW5nZShzdHJ1Y3QgdmNwdSAqdiwKPiAgICAgIEFTU0VSVChyLT50eXBlID09IElPUkVR X1RZUEVfQ09QWSk7Cj4gICAgICBpZiAoIHItPmRpciA9PSBJT1JFUV9XUklURSApCj4gICAgICB7 Cj4gKyAgICAgICAgdW5zaWduZWQgaW50IHNpemUgPSByLT5zaXplOwo+ICsKPiAgICAgICAgICBp ZiAoICFyLT5kYXRhX2lzX3B0ciApCj4gICAgICAgICAgewo+IC0gICAgICAgICAgICB1bnNpZ25l ZCBpbnQgc2l6ZSA9IHItPnNpemU7Cj4gICAgICAgICAgICAgIHVpbnQ2NF90IGRhdGEgPSByLT5k YXRhOwo+IAo+ICAgICAgICAgICAgICBpZiAoIHNpemUgPT0gOCApCj4gQEAgLTM2Niw3ICszNjcs MjkgQEAgc3RhdGljIGludCBtc2l4dGJsX3JhbmdlKHN0cnVjdCB2Y3B1ICp2LAo+ICAgICAgICAg ICAgICAgICAgICgoYWRkciAmIChQQ0lfTVNJWF9FTlRSWV9TSVpFIC0gMSkpID09Cj4gICAgICAg ICAgICAgICAgICAgIFBDSV9NU0lYX0VOVFJZX1ZFQ1RPUl9DVFJMX09GRlNFVCkgJiYKPiAgICAg ICAgICAgICAgICAgICAhKGRhdGEgJiBQQ0lfTVNJWF9WRUNUT1JfQklUTUFTSykgKQo+ICsgICAg ICAgICAgICB7Cj4gICAgICAgICAgICAgICAgICB2LT5hcmNoLmh2bV92Y3B1Lmh2bV9pby5tc2l4 X3Nub29wX2FkZHJlc3MgPSBhZGRyOwo+ICsgICAgICAgICAgICAgICAgdi0+YXJjaC5odm1fdmNw dS5odm1faW8ubXNpeF9zbm9vcF9ncGEgPSAwOwo+ICsgICAgICAgICAgICB9Cj4gKyAgICAgICAg fQo+ICsgICAgICAgIGVsc2UgaWYgKCAoc2l6ZSA9PSA0IHx8IHNpemUgPT0gOCkgJiYKPiArICAg ICAgICAgICAgICAgICAgLyogT25seSBzdXBwb3J0IGZvcndhcmQgUkVQIE1PVlMgZm9yIG5vdy4g Ki8KPiArICAgICAgICAgICAgICAgICAgIXItPmRmICYmCj4gKyAgICAgICAgICAgICAgICAgIC8q Cj4gKyAgICAgICAgICAgICAgICAgICAqIE9ubHkgZnVsbHkgc3VwcG9ydCBhY2Nlc3NlcyB0byBh IHNpbmdsZSB0YWJsZSBlbnRyeSBmb3IKPiArICAgICAgICAgICAgICAgICAgICogbm93IChpZiBt dWx0aXBsZSBvbmVzIGdldCB3cml0dGVuIHRvIGluIG9uZSBnbywgb25seSB0aGUKPiArICAgICAg ICAgICAgICAgICAgICogZmluYWwgb25lIGdldHMgZGVhbHQgd2l0aCkuCj4gKyAgICAgICAgICAg ICAgICAgICAqLwo+ICsgICAgICAgICAgICAgICAgICByLT5jb3VudCAmJiByLT5jb3VudCA8PSBQ Q0lfTVNJWF9FTlRSWV9TSVpFIC8gc2l6ZSAmJgo+ICsgICAgICAgICAgICAgICAgICAhKChhZGRy ICsgKHNpemUgKiByLT5jb3VudCkpICYgKFBDSV9NU0lYX0VOVFJZX1NJWkUgLSAxKSkgKQo+ICsg ICAgICAgIHsKPiArICAgICAgICAgICAgQlVJTERfQlVHX09OKChQQ0lfTVNJWF9FTlRSWV9WRUNU T1JfQ1RSTF9PRkZTRVQgKyA0KSAmCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAoUENJX01T SVhfRU5UUllfU0laRSAtIDEpKTsKPiArCj4gKyAgICAgICAgICAgIHYtPmFyY2guaHZtX3ZjcHUu aHZtX2lvLm1zaXhfc25vb3BfYWRkcmVzcyA9Cj4gKyAgICAgICAgICAgICAgICBhZGRyICsgc2l6 ZSAqIHItPmNvdW50IC0gNDsKPiArICAgICAgICAgICAgdi0+YXJjaC5odm1fdmNwdS5odm1faW8u bXNpeF9zbm9vcF9ncGEgPQo+ICsgICAgICAgICAgICAgICAgci0+ZGF0YSArIHNpemUgKiByLT5j b3VudCAtIDQ7Cj4gICAgICAgICAgfQo+ICAgICAgfQo+IAo+IEBAIC00NzEsNiArNDk0LDcgQEAg b3V0Ogo+ICAgICAgICAgIGZvcl9lYWNoX3ZjcHUgKCBkLCB2ICkKPiAgICAgICAgICB7Cj4gICAg ICAgICAgICAgIGlmICggKHYtPnBhdXNlX2ZsYWdzICYgVlBGX2Jsb2NrZWRfaW5feGVuKSAmJgo+ ICsgICAgICAgICAgICAgICAgICF2LT5hcmNoLmh2bV92Y3B1Lmh2bV9pby5tc2l4X3Nub29wX2dw YSAmJgo+ICAgICAgICAgICAgICAgICAgIHYtPmFyY2guaHZtX3ZjcHUuaHZtX2lvLm1zaXhfc25v b3BfYWRkcmVzcyA9PQo+ICAgICAgICAgICAgICAgICAgIChndGFibGUgKyBtc2lfZGVzYy0+bXNp X2F0dHJpYi5lbnRyeV9uciAqCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBDSV9NU0lY X0VOVFJZX1NJWkUgKwo+IEBAIC01NjEsOSArNTg1LDI5IEBAIHZvaWQgbXNpeHRibF9wdF9jbGVh bnVwKHN0cnVjdCBkb21haW4gKmQKPiAgdm9pZCBtc2l4X3dyaXRlX2NvbXBsZXRpb24oc3RydWN0 IHZjcHUgKnYpCj4gIHsKPiAgICAgIHVuc2lnbmVkIGxvbmcgY3RybF9hZGRyZXNzID0gdi0KPiA+ YXJjaC5odm1fdmNwdS5odm1faW8ubXNpeF91bm1hc2tfYWRkcmVzczsKPiArICAgIHVuc2lnbmVk IGxvbmcgc25vb3BfYWRkciA9IHYtCj4gPmFyY2guaHZtX3ZjcHUuaHZtX2lvLm1zaXhfc25vb3Bf YWRkcmVzczsKPiAKPiAgICAgIHYtPmFyY2guaHZtX3ZjcHUuaHZtX2lvLm1zaXhfc25vb3BfYWRk cmVzcyA9IDA7Cj4gCj4gKyAgICBpZiAoICFjdHJsX2FkZHJlc3MgJiYgc25vb3BfYWRkciAmJgo+ ICsgICAgICAgICB2LT5hcmNoLmh2bV92Y3B1Lmh2bV9pby5tc2l4X3Nub29wX2dwYSApCj4gKyAg ICB7Cj4gKyAgICAgICAgY29uc3Qgc3RydWN0IG1zaV9kZXNjICpkZXNjOwo+ICsgICAgICAgIHVp bnQzMl90IGRhdGE7Cj4gKwo+ICsgICAgICAgIHJjdV9yZWFkX2xvY2soJm1zaXh0YmxfcmN1X2xv Y2spOwo+ICsgICAgICAgIGRlc2MgPSBtc2l4dGJsX2FkZHJfdG9fZGVzYyhtc2l4dGJsX2ZpbmRf ZW50cnkodiwgc25vb3BfYWRkciksCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHNub29wX2FkZHIpOwo+ICsgICAgICAgIHJjdV9yZWFkX3VubG9jaygmbXNpeHRibF9yY3Vf bG9jayk7Cj4gKwo+ICsgICAgICAgIGlmICggZGVzYyAmJgo+ICsgICAgICAgICAgICAgaHZtX2Nv cHlfZnJvbV9ndWVzdF9waHlzKCZkYXRhLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHYtPmFyY2guaHZtX3ZjcHUuaHZtX2lvLm1zaXhfc25vb3BfZ3BhLAo+ICsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihkYXRhKSkgPT0gSFZNQ09Q WV9va2F5ICYmCj4gKyAgICAgICAgICAgICAhKGRhdGEgJiBQQ0lfTVNJWF9WRUNUT1JfQklUTUFT SykgKQo+ICsgICAgICAgICAgICBjdHJsX2FkZHJlc3MgPSBzbm9vcF9hZGRyOwo+ICsgICAgfQo+ ICsKPiAgICAgIGlmICggIWN0cmxfYWRkcmVzcyApCj4gICAgICAgICAgcmV0dXJuOwo+IAo+IC0t LSBhL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL3ZjcHUuaAo+ICsrKyBiL3hlbi9pbmNsdWRlL2Fz bS14ODYvaHZtL3ZjcHUuaAo+IEBAIC04Niw2ICs4Niw3IEBAIHN0cnVjdCBodm1fdmNwdV9pbyB7 Cj4gCj4gICAgICB1bnNpZ25lZCBsb25nIG1zaXhfdW5tYXNrX2FkZHJlc3M7Cj4gICAgICB1bnNp Z25lZCBsb25nIG1zaXhfc25vb3BfYWRkcmVzczsKPiArICAgIHVuc2lnbmVkIGxvbmcgbXNpeF9z bm9vcF9ncGE7Cj4gCj4gICAgICBjb25zdCBzdHJ1Y3QgZzJtX2lvcG9ydCAqZzJtX2lvcG9ydDsK PiAgfTsKPiAKPiAKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6 Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=