From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Durrant Subject: Re: [PATCH v2] x86/HVM: fix forwarding of internally cached requests Date: Tue, 29 Mar 2016 10:43:57 +0000 Message-ID: References: <56FA779702000078000E0D0B@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 1akr7w-0002lJ-Cw for xen-devel@lists.xenproject.org; Tue, 29 Mar 2016 10:44:00 +0000 In-Reply-To: <56FA779702000078000E0D0B@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 , "Keir (Xen.org)" , Chang Jianzhong List-Id: xen-devel@lists.xenproject.org PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQo+IEZyb206IEphbiBCZXVsaWNoIFttYWlsdG86 SkJldWxpY2hAc3VzZS5jb21dCj4gU2VudDogMjkgTWFyY2ggMjAxNiAxMTo0MAo+IFRvOiB4ZW4t ZGV2ZWwKPiBDYzogQW5kcmV3IENvb3BlcjsgUGF1bCBEdXJyYW50OyBDaGFuZyBKaWFuemhvbmc7 IEtlaXIgKFhlbi5vcmcpCj4gU3ViamVjdDogW1BBVENIIHYyXSB4ODYvSFZNOiBmaXggZm9yd2Fy ZGluZyBvZiBpbnRlcm5hbGx5IGNhY2hlZCByZXF1ZXN0cwo+IAo+IEZvcndhcmRpbmcgZW50aXJl IGJhdGNoZXMgdG8gdGhlIGRldmljZSBtb2RlbCB3aGVuIGFuIGluZGl2aWR1YWwKPiBpdGVyYXRp b24gb2YgdGhlbSBnb3QgcmVqZWN0ZWQgYnkgaW50ZXJuYWwgZGV2aWNlIGVtdWxhdGlvbiBoYW5k bGVycwo+IHdpdGggWDg2RU1VTF9VTkhBTkRMRUFCTEUgaXMgd3Jvbmc6IFRoZSBkZXZpY2UgbW9k ZWwgd291bGQgdGhlbgo+IGhhbmRsZQo+IGFsbCBpdGVyYXRpb25zLCB3aXRob3V0IHRoZSBpbnRl cm5hbCBoYW5kbGVyIGdldHRpbmcgdG8gc2VlIGFueSBwYXN0Cj4gdGhlIG9uZSBpdCByZXR1cm5l ZCBmYWlsdXJlIGZvci4gVGhpcyBjYXVzZXMgbWlzYmVoYXZpb3IgaW4gYXQgbGVhc3QKPiB0aGUg TVNJLVggYW5kIFZHQSBjb2RlLCB3aGljaCB3YW50IHRvIHNlZSBhbGwgc3VjaCByZXF1ZXN0cyBm b3IKPiBpbnRlcm5hbCB0cmFja2luZy9jYWNoaW5nIHB1cnBvc2VzLiBCdXQgbm90ZSB0aGF0IHRo aXMgZG9lcyBub3QgYXBwbHkKPiB0byBidWZmZXJlZCBJL08gcmVxdWVzdHMuCj4gCj4gVGhpcyBp biB0dXJuIG1lYW5zIHRoYXQgdGhlIGNvbmRpdGlvbiBpbiBodm1fcHJvY2Vzc19pb19pbnRlcmNl cHQoKSBvZgo+IHdoZW4gdG8gY3Jhc2ggdGhlIGRvbWFpbiB3YXMgd3Jvbmc6IFNpbmNlIFg4NkVN VUxfVU5IQU5ETEVBQkxFIGNhbgo+IHZhbGlkbHkgYmUgcmV0dXJuZWQgYnkgdGhlIGluZGl2aWR1 YWwgZGV2aWNlIGhhbmRsZXJzLCB3ZSBtdXN0bid0Cj4gYmxpbmRseSBjcmFzaCB0aGUgZG9tYWlu IGlmIHN1Y2ggb2NjdXJzIG9uIG90aGVyIHRoYW4gdGhlIGluaXRpYWwKPiBpdGVyYXRpb24uIElu c3RlYWQgd2UgbmVlZCB0byBkaXN0aW5ndWlzaCBodm1fY29weV8qX2d1ZXN0X3BoeXMoKQo+IGZh aWx1cmVzIGZyb20gZGV2aWNlIHNwZWNpZmljIG9uZXMsIGFuZCB0aGVuIHRoZSBmb3JtZXIgbmVl ZCB0byBhbHdheXMKPiBiZSBmYXRhbCB0byB0aGUgZG9tYWluIChpLmUuIGFsc28gb24gdGhlIGZp cnN0IGl0ZXJhdGlvbiksIHNpbmNlCj4gb3RoZXJ3aXNlIHdlIGFnYWluIHdvdWxkIGVuZCB1cCBm b3J3YXJkaW5nIGEgcmVxdWVzdCB0byBxZW11IHdoaWNoIHRoZQo+IGludGVybmFsIGhhbmRsZXIg ZGlkbid0IGdldCB0byBzZWUuCj4gCj4gVGhlIGFkanVzdG1lbnQgc2hvdWxkIGJlIG9rYXkgZXZl biBmb3Igc3RkdmdhJ3MgTU1JTyBoYW5kbGluZzoKPiAtIGlmIGl0IGlzIG5vdCBjYWNoaW5nIHRo ZW4gdGhlIGFjY2VwdCBmdW5jdGlvbiB3b3VsZCBoYXZlIGZhaWxlZCBzbyB3ZQo+ICAgd29uJ3Qg Z2V0IGludG8gaHZtX3Byb2Nlc3NfaW9faW50ZXJjZXB0KCksCj4gLSBpZiBpdCBpc3N1ZWQgdGhl IGJ1ZmZlcmVkIGlvcmVxIHRoZW4gd2Ugb25seSBnZXQgdG8gdGhlIHAtPmNvdW50Cj4gICByZWR1 Y3Rpb24gaWYgaHZtX3NlbmRfaW9yZXEoKSBhY3R1YWxseSBlbmNvdW50ZXJlZCBhbiBlcnJvciAo aW4gd2hpY2gKPiAgIHdlIGRvbid0IGNhcmUgYWJvdXQgdGhlIHJlcXVlc3QgZ2V0dGluZyBzcGxp dCB1cCkuCj4gCj4gQWxzbyBjb21taXQgNGZhZmZjNDFkICgieDg2L2h2bTogbGltaXQgcmVwcyB0 byBhdm9pZCB0aGUgbmVlZCB0byBoYW5kbGUKPiByZXRyeSIpIHdlbnQgdG9vIGZhciBpbiByZW1v dmluZyBjb2RlIGZyb20gaHZtX3Byb2Nlc3NfaW9faW50ZXJjZXB0KCk6Cj4gV2hlbiB0aGVyZSB3 ZXJlIHN1Y2Nlc3NmdWxseSBoYW5kbGVkIGl0ZXJhdGlvbnMsIHRoZSBmdW5jdGlvbiBzaG91bGQK PiBjb250aW51ZSB0byByZXR1cm4gc3VjY2VzcyB3aXRoIGEgY2xpcHBlZCByZXBlYXQgY291bnQu Cj4gCj4gU2lnbmVkLW9mZi1ieTogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPgoKUmV2 aWV3ZWQtYnk6IFBhdWwgRHVycmFudCA8cGF1bC5kdXJyYW50QGNpdHJpeC5jb20+Cgo+IENjOiBD aGFuZyBKaWFuemhvbmcgPGNoYW5nanpoQGdtYWlsLmNvbT4KPiAtLS0KPiB2MjogTWFrZSBodm1f cHJvY2Vzc19pb19pbnRlcmNlcHQoKSBhbHdheXMgcmV0dXJuIGEgdmFsaWQgWDg2RU1VTF8qCj4g ICAgIGNvZGUgYnkgbW92aW5nIHRoZSBkb21haW5fY3Jhc2goKSBpbnZvY2F0aW9ucyB1cC4gQWRk IGEgc3RkdmdhCj4gICAgIHJlbGF0ZWQgcGFyYWdyYXBoIHRvIHRoZSBjb21taXQgbWVzc2FnZS4K PiAtLS0KPiBJIGFzc3VtZSB0aGlzIGFsc28gYWRkcmVzc2VzIHRoZSBpc3N1ZSB3aGljaAo+IGh0 dHA6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9hcmNoaXZlcy9odG1sL3hlbi1kZXZlbC8yMDE2LTAx L21zZzAzMTg5Lmh0bWwKPiBhdHRlbXB0ZWQgdG8gZGVhbCB3aXRoIGluIGEgbm90IHJlYWxseSBh Y2NlcHRhYmxlIHdheS4KPiAKPiAtLS0gYS94ZW4vYXJjaC94ODYvaHZtL2VtdWxhdGUuYwo+ICsr KyBiL3hlbi9hcmNoL3g4Ni9odm0vZW11bGF0ZS5jCj4gQEAgLTk1LDcgKzk1LDcgQEAgc3RhdGlj IGNvbnN0IHN0cnVjdCBodm1faW9faGFuZGxlciBudWxsXwo+ICB9Owo+IAo+ICBzdGF0aWMgaW50 IGh2bWVtdWxfZG9faW8oCj4gLSAgICBib29sX3QgaXNfbW1pbywgcGFkZHJfdCBhZGRyLCB1bnNp Z25lZCBsb25nIHJlcHMsIHVuc2lnbmVkIGludCBzaXplLAo+ICsgICAgYm9vbF90IGlzX21taW8s IHBhZGRyX3QgYWRkciwgdW5zaWduZWQgbG9uZyAqcmVwcywgdW5zaWduZWQgaW50IHNpemUsCj4g ICAgICB1aW50OF90IGRpciwgYm9vbF90IGRmLCBib29sX3QgZGF0YV9pc19hZGRyLCB1aW50cHRy X3QgZGF0YSkKPiAgewo+ICAgICAgc3RydWN0IHZjcHUgKmN1cnIgPSBjdXJyZW50Owo+IEBAIC0x MDQsNyArMTA0LDcgQEAgc3RhdGljIGludCBodm1lbXVsX2RvX2lvKAo+ICAgICAgICAgIC50eXBl ID0gaXNfbW1pbyA/IElPUkVRX1RZUEVfQ09QWSA6IElPUkVRX1RZUEVfUElPLAo+ICAgICAgICAg IC5hZGRyID0gYWRkciwKPiAgICAgICAgICAuc2l6ZSA9IHNpemUsCj4gLSAgICAgICAgLmNvdW50 ID0gcmVwcywKPiArICAgICAgICAuY291bnQgPSAqcmVwcywKPiAgICAgICAgICAuZGlyID0gZGly LAo+ICAgICAgICAgIC5kZiA9IGRmLAo+ICAgICAgICAgIC5kYXRhID0gZGF0YSwKPiBAQCAtMTM2 LDcgKzEzNiw3IEBAIHN0YXRpYyBpbnQgaHZtZW11bF9kb19pbygKPiAgICAgICAgICBpZiAoIChw LnR5cGUgIT0gaXNfbW1pbyA/IElPUkVRX1RZUEVfQ09QWSA6IElPUkVRX1RZUEVfUElPKSB8fAo+ ICAgICAgICAgICAgICAgKHAuYWRkciAhPSBhZGRyKSB8fAo+ICAgICAgICAgICAgICAgKHAuc2l6 ZSAhPSBzaXplKSB8fAo+IC0gICAgICAgICAgICAgKHAuY291bnQgIT0gcmVwcykgfHwKPiArICAg ICAgICAgICAgIChwLmNvdW50ICE9ICpyZXBzKSB8fAo+ICAgICAgICAgICAgICAgKHAuZGlyICE9 IGRpcikgfHwKPiAgICAgICAgICAgICAgIChwLmRmICE9IGRmKSB8fAo+ICAgICAgICAgICAgICAg KHAuZGF0YV9pc19wdHIgIT0gZGF0YV9pc19hZGRyKSApCj4gQEAgLTIxNCw3ICsyMTQsNyBAQCBz dGF0aWMgaW50IGh2bWVtdWxfZG9faW9fYnVmZmVyKAo+IAo+ICAgICAgQlVHX09OKGJ1ZmZlciA9 PSBOVUxMKTsKPiAKPiAtICAgIHJjID0gaHZtZW11bF9kb19pbyhpc19tbWlvLCBhZGRyLCAqcmVw cywgc2l6ZSwgZGlyLCBkZiwgMCwKPiArICAgIHJjID0gaHZtZW11bF9kb19pbyhpc19tbWlvLCBh ZGRyLCByZXBzLCBzaXplLCBkaXIsIGRmLCAwLAo+ICAgICAgICAgICAgICAgICAgICAgICAgICh1 aW50cHRyX3QpYnVmZmVyKTsKPiAgICAgIGlmICggcmMgPT0gWDg2RU1VTF9VTkhBTkRMRUFCTEUg JiYgZGlyID09IElPUkVRX1JFQUQgKQo+ICAgICAgICAgIG1lbXNldChidWZmZXIsIDB4ZmYsIHNp emUpOwo+IEBAIC0zMDUsMTMgKzMwNSwxMyBAQCBzdGF0aWMgaW50IGh2bWVtdWxfZG9faW9fYWRk cigKPiAgICAgICAgICBjb3VudCA9IDE7Cj4gICAgICB9Cj4gCj4gLSAgICByYyA9IGh2bWVtdWxf ZG9faW8oaXNfbW1pbywgYWRkciwgY291bnQsIHNpemUsIGRpciwgZGYsIDEsCj4gKyAgICByYyA9 IGh2bWVtdWxfZG9faW8oaXNfbW1pbywgYWRkciwgJmNvdW50LCBzaXplLCBkaXIsIGRmLCAxLAo+ ICAgICAgICAgICAgICAgICAgICAgICAgIHJhbV9ncGEpOwo+ICsKPiAgICAgIGlmICggcmMgPT0g WDg2RU1VTF9PS0FZICkKPiAtICAgIHsKPiAgICAgICAgICB2LT5hcmNoLmh2bV92Y3B1Lmh2bV9p by5tbWlvX3JldHJ5ID0gKGNvdW50IDwgKnJlcHMpOwo+IC0gICAgICAgICpyZXBzID0gY291bnQ7 Cj4gLSAgICB9Cj4gKwo+ICsgICAgKnJlcHMgPSBjb3VudDsKPiAKPiAgIG91dDoKPiAgICAgIHdo aWxlICggbnJfcGFnZXMgKQo+IC0tLSBhL3hlbi9hcmNoL3g4Ni9odm0vaW50ZXJjZXB0LmMKPiAr KysgYi94ZW4vYXJjaC94ODYvaHZtL2ludGVyY2VwdC5jCj4gQEAgLTE0OCw4ICsxNDgsOCBAQCBp bnQgaHZtX3Byb2Nlc3NfaW9faW50ZXJjZXB0KGNvbnN0IHN0cnVjCj4gICAgICAgICAgICAgICAg ICAgICAgQVNTRVJUX1VOUkVBQ0hBQkxFKCk7Cj4gICAgICAgICAgICAgICAgICAgICAgLyogZmFs bCB0aHJvdWdoICovCj4gICAgICAgICAgICAgICAgICBkZWZhdWx0Ogo+IC0gICAgICAgICAgICAg ICAgICAgIHJjID0gWDg2RU1VTF9VTkhBTkRMRUFCTEU7Cj4gLSAgICAgICAgICAgICAgICAgICAg YnJlYWs7Cj4gKyAgICAgICAgICAgICAgICAgICAgZG9tYWluX2NyYXNoKGN1cnJlbnQtPmRvbWFp bik7Cj4gKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFg4NkVNVUxfVU5IQU5ETEVBQkxFOwo+ ICAgICAgICAgICAgICAgICAgfQo+ICAgICAgICAgICAgICAgICAgaWYgKCByYyAhPSBYODZFTVVM X09LQVkgKQo+ICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwo+IEBAIC0xNzgsOCArMTc4LDgg QEAgaW50IGh2bV9wcm9jZXNzX2lvX2ludGVyY2VwdChjb25zdCBzdHJ1Ywo+ICAgICAgICAgICAg ICAgICAgICAgIEFTU0VSVF9VTlJFQUNIQUJMRSgpOwo+ICAgICAgICAgICAgICAgICAgICAgIC8q IGZhbGwgdGhyb3VnaCAqLwo+ICAgICAgICAgICAgICAgICAgZGVmYXVsdDoKPiAtICAgICAgICAg ICAgICAgICAgICByYyA9IFg4NkVNVUxfVU5IQU5ETEVBQkxFOwo+IC0gICAgICAgICAgICAgICAg ICAgIGJyZWFrOwo+ICsgICAgICAgICAgICAgICAgICAgIGRvbWFpbl9jcmFzaChjdXJyZW50LT5k b21haW4pOwo+ICsgICAgICAgICAgICAgICAgICAgIHJldHVybiBYODZFTVVMX1VOSEFORExFQUJM RTsKPiAgICAgICAgICAgICAgICAgIH0KPiAgICAgICAgICAgICAgICAgIGlmICggcmMgIT0gWDg2 RU1VTF9PS0FZICkKPiAgICAgICAgICAgICAgICAgICAgICBicmVhazsKPiBAQCAtMTk2LDggKzE5 NiwyMCBAQCBpbnQgaHZtX3Byb2Nlc3NfaW9faW50ZXJjZXB0KGNvbnN0IHN0cnVjCj4gICAgICAg ICAgfQo+ICAgICAgfQo+IAo+IC0gICAgaWYgKCBpICE9IDAgJiYgcmMgPT0gWDg2RU1VTF9VTkhB TkRMRUFCTEUgKQo+IC0gICAgICAgIGRvbWFpbl9jcmFzaChjdXJyZW50LT5kb21haW4pOwo+ICsg ICAgaWYgKCBpICkKPiArICAgIHsKPiArICAgICAgICBwLT5jb3VudCA9IGk7Cj4gKyAgICAgICAg cmMgPSBYODZFTVVMX09LQVk7Cj4gKyAgICB9Cj4gKyAgICBlbHNlIGlmICggcmMgPT0gWDg2RU1V TF9VTkhBTkRMRUFCTEUgKQo+ICsgICAgewo+ICsgICAgICAgIC8qCj4gKyAgICAgICAgICogRG9u J3QgZm9yd2FyZCBlbnRpcmUgYmF0Y2hlcyB0byB0aGUgZGV2aWNlIG1vZGVsOiBUaGlzIHdvdWxk Cj4gKyAgICAgICAgICogcHJldmVudCB0aGUgaW50ZXJuYWwgaGFuZGxlcnMgdG8gc2VlIHN1YnNl cXVlbnQgaXRlcmF0aW9ucyBvZgo+ICsgICAgICAgICAqIHRoZSByZXF1ZXN0Lgo+ICsgICAgICAg ICAqLwo+ICsgICAgICAgIHAtPmNvdW50ID0gMTsKPiArICAgIH0KPiAKPiAgICAgIHJldHVybiBy YzsKPiAgfQo+IAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cDov L2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==