From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: Re: [PATCH v4.1 3/4] x86/pt: enable binding of GSIs to a PVH Dom0 Date: Wed, 07 Jun 2017 07:17:16 -0600 Message-ID: <593818FC0200007800160622@prv-mh.provo.novell.com> References: <20170602135844.25286-1-roger.pau@citrix.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 1dIaqB-0000cj-Nl for xen-devel@lists.xenproject.org; Wed, 07 Jun 2017 13:17:39 +0000 In-Reply-To: <20170602135844.25286-1-roger.pau@citrix.com> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Roger Pau Monne Cc: Andrew Cooper , boris.ostrovsky@oracle.com, xen-devel@lists.xenproject.org List-Id: xen-devel@lists.xenproject.org Pj4+IE9uIDAyLjA2LjE3IGF0IDE1OjU4LCA8cm9nZXIucGF1QGNpdHJpeC5jb20+IHdyb3RlOgo+ IC0tLSBhL3hlbi9kcml2ZXJzL3Bhc3N0aHJvdWdoL2lvLmMKPiArKysgYi94ZW4vZHJpdmVycy9w YXNzdGhyb3VnaC9pby5jCj4gQEAgLTE2NCw2ICsxNjQsMjUgQEAgc3RhdGljIHZvaWQgcHRfaXJx X3RpbWVfb3V0KHZvaWQgKmRhdGEpCj4gIAo+ICAgICAgc3Bpbl9sb2NrKCZpcnFfbWFwLT5kb20t PmV2ZW50X2xvY2spOwo+ICAKPiArICAgIGlmICggaXJxX21hcC0+ZmxhZ3MgJiBIVk1fSVJRX0RQ Q0lfSURFTlRJVFlfR1NJICkKPiArICAgIHsKPiArICAgICAgICBzdHJ1Y3QgcGlycSAqcGlycSA9 IGRwY2lfcGlycShpcnFfbWFwKTsKClRoaXMgY291bGQgKGFuZCBoZW5jZSBzaG91bGQpIGJlIGNv bnN0LiBIb3dldmVyLCAuLi4KCj4gKyAgICAgICAgQVNTRVJUKGlzX2hhcmR3YXJlX2RvbWFpbihp cnFfbWFwLT5kb20pKTsKPiArICAgICAgICAvKgo+ICsgICAgICAgICAqIElkZW50aXR5IG1hcHBl ZCwgbm8gbmVlZCB0byBpdGVyYXRlIG92ZXIgdGhlIGd1ZXN0IEdTSSBsaXN0IHRvIGZpbmQKPiAr ICAgICAgICAgKiBvdGhlciBwaXJxcyBzaGFyaW5nIHRoZSBzYW1lIGd1ZXN0IEdTSS4KPiArICAg ICAgICAgKgo+ICsgICAgICAgICAqIEluIHRoZSBpZGVudGl0eSBtYXBwZWQgY2FzZSB0aGUgRU9J IGNhbiBhbHNvIGJlIGRvbmUgbm93LCB0aGlzIHdheQo+ICsgICAgICAgICAqIHRoZSBpdGVyYXRp b24gb3ZlciB0aGUgbGlzdCBvZiBkb21haW4gcGlycXMgaXMgYXZvaWRlZC4KPiArICAgICAgICAg Ki8KPiArICAgICAgICBodm1fZ3NpX2RlYXNzZXJ0KGlycV9tYXAtPmRvbSwgcGlycS0+cGlycSk7 CgouLi4gdGhpcyBpcyBpdHMgb25seSB1c2UsIHNvIEknbSBub3QgY29udmluY2VkIGEgbG9jYWwg dmFyaWFibGUgaXMKbmVlZGVkIGF0IGFsbC4KCj4gQEAgLTI3NCwxMCArMjkzLDE2IEBAIGludCBw dF9pcnFfY3JlYXRlX2JpbmQoCj4gICAgICBzcGluX2xvY2soJmQtPmV2ZW50X2xvY2spOwo+ICAK PiAgICAgIGh2bV9pcnFfZHBjaSA9IGRvbWFpbl9nZXRfaXJxX2RwY2koZCk7Cj4gLSAgICBpZiAo IGh2bV9pcnFfZHBjaSA9PSBOVUxMICkKPiArICAgIGlmICggaHZtX2lycV9kcGNpID09IE5VTEwg JiYgIWlzX2hhcmR3YXJlX2RvbWFpbihkKSApCgpXb3VsZCB5b3UgbWluZCBhdCBvbmNlIHN3aXRj aGluZyB0byB0aGUgc2hvcnRlciAhaHZtX2lycV9kcGNpCihhbHNvIGZ1cnRoZXIgZG93biksIHRo ZSBtb3JlIHRoYXQgeW91J3JlIHVzaW5nIHRoZSBpbnZlcnNlCndpdGhvdXQgIiAhPSBOVUxMIiBl bHNld2hlcmU/Cgo+ICAgICAgewo+ICAgICAgICAgIHVuc2lnbmVkIGludCBpOwo+ICAKPiArICAg ICAgICAvKgo+ICsgICAgICAgICAqIE5COiB0aGUgaGFyZHdhcmUgZG9tYWluIGRvZXNuJ3QgdXNl IGEgaHZtX2lycV9kcGNpIHN0cnVjdCBiZWNhdXNlCj4gKyAgICAgICAgICogaXQncyBvbmx5IGFs bG93ZWQgdG8gaWRlbnRpdHkgbWFwIEdTSXMsIGFuZCBzbyB0aGUgZGF0YSBjb250YWluZWQgaW4K PiArICAgICAgICAgKiB0aGF0IHN0cnVjdCAodXNlZCB0byBtYXAgZ3Vlc3QgR1NJcyBpbnRvIG1h Y2hpbmUgR1NJcyBhbmQgcGVyZm9ybQo+ICsgICAgICAgICAqIGludGVycnVwdCByb3V0aW5nKSBp dCdzIGNvbXBsZXRlbHkgdXNlbGVzcyB0byBpdC4KCiJpcyBjb21wbGV0ZWx5IC4uLiIKCj4gQEAg LTQyMiwzNSArNDQ3LDUyIEBAIGludCBwdF9pcnFfY3JlYXRlX2JpbmQoCj4gICAgICBjYXNlIFBU X0lSUV9UWVBFX1BDSToKPiAgICAgIGNhc2UgUFRfSVJRX1RZUEVfTVNJX1RSQU5TTEFURToKPiAg ICAgIHsKPiAtICAgICAgICB1bnNpZ25lZCBpbnQgYnVzID0gcHRfaXJxX2JpbmQtPnUucGNpLmJ1 czsKPiAtICAgICAgICB1bnNpZ25lZCBpbnQgZGV2aWNlID0gcHRfaXJxX2JpbmQtPnUucGNpLmRl dmljZTsKPiAtICAgICAgICB1bnNpZ25lZCBpbnQgaW50eCA9IHB0X2lycV9iaW5kLT51LnBjaS5p bnR4Owo+IC0gICAgICAgIHVuc2lnbmVkIGludCBndWVzdF9nc2kgPSBodm1fcGNpX2ludHhfZ3Np KGRldmljZSwgaW50eCk7Cj4gLSAgICAgICAgdW5zaWduZWQgaW50IGxpbmsgPSBodm1fcGNpX2lu dHhfbGluayhkZXZpY2UsIGludHgpOwo+IC0gICAgICAgIHN0cnVjdCBkZXZfaW50eF9nc2lfbGlu ayAqZGlnbCA9IHhtYWxsb2Moc3RydWN0IGRldl9pbnR4X2dzaV9saW5rKTsKPiAtICAgICAgICBz dHJ1Y3QgaHZtX2dpcnFfZHBjaV9tYXBwaW5nICpnaXJxID0KPiAtICAgICAgICAgICAgeG1hbGxv YyhzdHJ1Y3QgaHZtX2dpcnFfZHBjaV9tYXBwaW5nKTsKPiArICAgICAgICBzdHJ1Y3QgZGV2X2lu dHhfZ3NpX2xpbmsgKmRpZ2wgPSBOVUxMOwo+ICsgICAgICAgIHN0cnVjdCBodm1fZ2lycV9kcGNp X21hcHBpbmcgKmdpcnEgPSBOVUxMOwo+ICsgICAgICAgIHVuc2lnbmVkIGludCBndWVzdF9nc2k7 Cj4gIAo+IC0gICAgICAgIGlmICggIWRpZ2wgfHwgIWdpcnEgKQo+ICsgICAgICAgIC8qCj4gKyAg ICAgICAgICogTWFwcGluZyBHU0lzIGZvciB0aGUgaGFyZHdhcmUgZG9tYWluIGlzIGRpZmZlcmVu dCB0aGFuIGRvaW5nIGl0IGZvcgo+ICsgICAgICAgICAqIGFuIHVucHJpdmlsZWRnZWQgZ3Vlc3Qs IHRoZSBoYXJkd2FyZSBkb21haW4gaXMgb25seSBhbGxvd2VkIHRvCj4gKyAgICAgICAgICogaWRl bnRpdHkgbWFwIEdTSXMsIGFuZCBhcyBzdWNoIGFsbCB0aGUgZGF0YSBpbiB0aGUgdS5wY2kgdW5p b24gaXMKPiArICAgICAgICAgKiBkaXNjYXJkZWQuCj4gKyAgICAgICAgICovCj4gKyAgICAgICAg aWYgKCAhaXNfaGFyZHdhcmVfZG9tYWluKGQpICkKCkkgdGhpbmsgSSBkaWQgaW5kaWNhdGUgYmVm b3JlIHRoYXQgaXQgd291bGQgZmVlbCBtb3JlIHNhZmUgaWYgeW91CmNoZWNrZWQgaHZtX2lycV9k cGNpIGhlcmUgKHdoaWNoIGlzIE5VTEwgaWYgYW5kIG9ubHkgaWYgZCBpcwpod2RvbSkuIEF0IHRo ZSB2ZXJ5IGxlYXN0IEknZCBleHBlY3QgYSByZXNwZWN0aXZlIEFTU0VSVCgpCmJlbG93IChidXQg SSB0aGluayB0aGUgYWx0ZXJuYXRpdmUgY29uZGl0aW9uIGhlcmUgYW5kCkFTU0VSVChpc19oYXJk d2FyZV9kb21haW4oZCkpIGluIHRoZSAiZWxzZSIgYmxvY2sgd291bGQgYmUKYmV0dGVyKS4KCj4g ICAgICAgICAgewo+IC0gICAgICAgICAgICBzcGluX3VubG9jaygmZC0+ZXZlbnRfbG9jayk7Cj4g LSAgICAgICAgICAgIHhmcmVlKGdpcnEpOwo+IC0gICAgICAgICAgICB4ZnJlZShkaWdsKTsKPiAt ICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07Cj4gLSAgICAgICAgfQo+ICsgICAgICAgICAgICB1 bnNpZ25lZCBpbnQgbGluazsKPiArCj4gKyAgICAgICAgICAgIGRpZ2wgPSB4bWFsbG9jKHN0cnVj dCBkZXZfaW50eF9nc2lfbGluayk7Cj4gKyAgICAgICAgICAgIGdpcnEgPSB4bWFsbG9jKHN0cnVj dCBodm1fZ2lycV9kcGNpX21hcHBpbmcpOwo+ICAKPiAtICAgICAgICBodm1faXJxX2RwY2ktPmxp bmtfY250W2xpbmtdKys7Cj4gKyAgICAgICAgICAgIGlmICggIWRpZ2wgfHwgIWdpcnEgKQo+ICsg ICAgICAgICAgICB7Cj4gKyAgICAgICAgICAgICAgICBzcGluX3VubG9jaygmZC0+ZXZlbnRfbG9j ayk7Cj4gKyAgICAgICAgICAgICAgICB4ZnJlZShnaXJxKTsKPiArICAgICAgICAgICAgICAgIHhm cmVlKGRpZ2wpOwo+ICsgICAgICAgICAgICAgICAgcmV0dXJuIC1FTk9NRU07Cj4gKyAgICAgICAg ICAgIH0KPiArCj4gKyAgICAgICAgICAgIGdpcnEtPmJ1cyA9IGRpZ2wtPmJ1cyA9IHB0X2lycV9i aW5kLT51LnBjaS5idXM7Cj4gKyAgICAgICAgICAgIGdpcnEtPmRldmljZSA9IGRpZ2wtPmRldmlj ZSA9IHB0X2lycV9iaW5kLT51LnBjaS5kZXZpY2U7Cj4gKyAgICAgICAgICAgIGdpcnEtPmludHgg PSBkaWdsLT5pbnR4ID0gcHRfaXJxX2JpbmQtPnUucGNpLmludHg7Cj4gKyAgICAgICAgICAgIGxp c3RfYWRkX3RhaWwoJmRpZ2wtPmxpc3QsICZwaXJxX2RwY2ktPmRpZ2xfbGlzdCk7Cj4gIAo+IC0g ICAgICAgIGRpZ2wtPmJ1cyA9IGJ1czsKPiAtICAgICAgICBkaWdsLT5kZXZpY2UgPSBkZXZpY2U7 Cj4gLSAgICAgICAgZGlnbC0+aW50eCA9IGludHg7Cj4gLSAgICAgICAgbGlzdF9hZGRfdGFpbCgm ZGlnbC0+bGlzdCwgJnBpcnFfZHBjaS0+ZGlnbF9saXN0KTsKPiArICAgICAgICAgICAgZ3Vlc3Rf Z3NpID0gaHZtX3BjaV9pbnR4X2dzaShkaWdsLT5kZXZpY2UsIGRpZ2wtPmludHgpOwo+ICsgICAg ICAgICAgICBsaW5rID0gaHZtX3BjaV9pbnR4X2xpbmsoZGlnbC0+ZGV2aWNlLCBkaWdsLT5pbnR4 KTsKPiAgCj4gLSAgICAgICAgZ2lycS0+YnVzID0gYnVzOwo+IC0gICAgICAgIGdpcnEtPmRldmlj ZSA9IGRldmljZTsKPiAtICAgICAgICBnaXJxLT5pbnR4ID0gaW50eDsKPiAtICAgICAgICBnaXJx LT5tYWNoaW5lX2dzaSA9IHBpcnE7Cj4gLSAgICAgICAgbGlzdF9hZGRfdGFpbCgmZ2lycS0+bGlz dCwgJmh2bV9pcnFfZHBjaS0+Z2lycVtndWVzdF9nc2ldKTsKPiArICAgICAgICAgICAgaHZtX2ly cV9kcGNpLT5saW5rX2NudFtsaW5rXSsrOwo+ICsKPiArICAgICAgICAgICAgZ2lycS0+bWFjaGlu ZV9nc2kgPSBwaXJxOwo+ICsgICAgICAgICAgICBsaXN0X2FkZF90YWlsKCZnaXJxLT5saXN0LCAm aHZtX2lycV9kcGNpLT5naXJxW2d1ZXN0X2dzaV0pOwo+ICsgICAgICAgIH0KPiArICAgICAgICBl bHNlCj4gKyAgICAgICAgewo+ICsgICAgICAgICAgICAvKiBNU0lfVFJBTlNMQVRFIGlzIG5vdCBz dXBwb3J0ZWQgYnkgdGhlIGhhcmR3YXJlIGRvbWFpbi4gKi8KCnMvYnkvZm9yLyA/Cgo+IEBAIC00 NzIsNyArNTE0LDI4IEBAIGludCBwdF9pcnFfY3JlYXRlX2JpbmQoCj4gICAgICAgICAgICAgICAg ICBwaXJxX2RwY2ktPmZsYWdzID0gSFZNX0lSUV9EUENJX01BUFBFRCB8Cj4gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgSFZNX0lSUV9EUENJX01BQ0hfUENJIHwKPiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBIVk1fSVJRX0RQQ0lfR1VFU1RfUENJOwo+IC0g ICAgICAgICAgICAgICAgc2hhcmUgPSBCSU5EX1BJUlFfX1dJTExfU0hBUkU7Cj4gKyAgICAgICAg ICAgICAgICBpZiAoICFpc19oYXJkd2FyZV9kb21haW4oZCkgKQo+ICsgICAgICAgICAgICAgICAg ICAgIHNoYXJlID0gQklORF9QSVJRX19XSUxMX1NIQVJFOwo+ICsgICAgICAgICAgICAgICAgZWxz ZQo+ICsgICAgICAgICAgICAgICAgewo+ICsgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGlu dCBwaW47Cj4gKyAgICAgICAgICAgICAgICAgICAgc3RydWN0IGh2bV92aW9hcGljICp2aW9hcGlj ID0gZ3NpX3Zpb2FwaWMoZCwgZ3Vlc3RfZ3NpLAo+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZwaW4pOwoKY29uc3QKCj4gQEAg LTQ4OSw5ICs1NTIsMTYgQEAgaW50IHB0X2lycV9jcmVhdGVfYmluZCgKPiAgICAgICAgICAgICAg ICAgICAqIElSUV9HVUVTVCBpcyBub3Qgc2V0LiBBcyBzdWNoIHdlIGNhbiByZXNldCAnZG9tJyAK PiBkaXJlY3RseS4KPiAgICAgICAgICAgICAgICAgICAqLwo+ICAgICAgICAgICAgICAgICAgcGly cV9kcGNpLT5kb20gPSBOVUxMOwo+IC0gICAgICAgICAgICAgICAgbGlzdF9kZWwoJmdpcnEtPmxp c3QpOwo+IC0gICAgICAgICAgICAgICAgbGlzdF9kZWwoJmRpZ2wtPmxpc3QpOwo+IC0gICAgICAg ICAgICAgICAgaHZtX2lycV9kcGNpLT5saW5rX2NudFtsaW5rXS0tOwo+ICsgICAgICAgICAgICAg ICAgaWYgKCBnaXJxIHx8IGRpZ2wgKQo+ICsgICAgICAgICAgICAgICAgewo+ICsgICAgICAgICAg ICAgICAgICAgIHVuc2lnbmVkIGludCBsaW5rOwo+ICsKPiArICAgICAgICAgICAgICAgICAgICBB U1NFUlQoZ2lycSAmJiBkaWdsKTsKClBlcmhhcHMgZXZlbiAiQVNTRVJUKGdpcnEgJiYgZGlnbCAm JiBodm1faXJxX2RwY2kpIiBvciBmb2xsb3cgdGhlCm1vZGVsIG91dGxpbmVkIGFib3ZlIGZvciBj b25zaXN0ZW5jeT8KCj4gQEAgLTUwNCwxMCArNTc0LDE3IEBAIGludCBwdF9pcnFfY3JlYXRlX2Jp bmQoCj4gICAgICAgICAgc3Bpbl91bmxvY2soJmQtPmV2ZW50X2xvY2spOwo+ICAKPiAgICAgICAg ICBpZiAoIGlvbW11X3ZlcmJvc2UgKQo+IC0gICAgICAgICAgICBwcmludGsoWEVOTE9HX0dfSU5G Two+IC0gICAgICAgICAgICAgICAgICAgImQlZDogYmluZDogbV9nc2k9JXUgZ19nc2k9JXUgZGV2 PSUwMnguJTAyeC4ldSBpbnR4PSV1XG4iLAo+IC0gICAgICAgICAgICAgICAgICAgZC0+ZG9tYWlu X2lkLCBwaXJxLCBndWVzdF9nc2ksIGJ1cywKPiAtICAgICAgICAgICAgICAgICAgIFBDSV9TTE9U KGRldmljZSksIFBDSV9GVU5DKGRldmljZSksIGludHgpOwo+ICsgICAgICAgIHsKPiArICAgICAg ICAgICAgY2hhciBidWZbMjRdID0gIiI7Cj4gKwo+ICsgICAgICAgICAgICBpZiAoICFpc19oYXJk d2FyZV9kb21haW4oZCkgKQo+ICsgICAgICAgICAgICAgICAgc25wcmludGYoYnVmLCBBUlJBWV9T SVpFKGJ1ZiksICIgZGV2PSUwMnguJTAyeC4ldSBpbnR4PSV1IiwKPiArICAgICAgICAgICAgICAg ICAgICAgICAgIGRpZ2wtPmJ1cywgUENJX1NMT1QoZGlnbC0+ZGV2aWNlKSwKPiArICAgICAgICAg ICAgICAgICAgICAgICAgIFBDSV9GVU5DKGRpZ2wtPmRldmljZSksIGRpZ2wtPmludHgpOwoKUGVy aGFwcyBhZ2FpbiBiZXR0ZXIgImlmICggZGlnbCApIi4KCj4gQEAgLTY5Niw3ICs3NzcsOCBAQCBp bnQgaHZtX2RvX0lSUV9kcGNpKHN0cnVjdCBkb21haW4gKmQsIHN0cnVjdCBwaXJxICpwaXJxKQo+ ICAgICAgc3RydWN0IGh2bV9pcnFfZHBjaSAqZHBjaSA9IGRvbWFpbl9nZXRfaXJxX2RwY2koZCk7 Cj4gICAgICBzdHJ1Y3QgaHZtX3BpcnFfZHBjaSAqcGlycV9kcGNpID0gcGlycV9kcGNpKHBpcnEp Owo+ICAKPiAtICAgIGlmICggIWlvbW11X2VuYWJsZWQgfHwgIWRwY2kgfHwgIXBpcnFfZHBjaSB8 fAo+ICsgICAgaWYgKCAhaXNfaHZtX2RvbWFpbihkKSB8fCAhaW9tbXVfZW5hYmxlZCB8fAo+ICsg ICAgICAgICAoIWlzX2hhcmR3YXJlX2RvbWFpbihkKSAmJiAhZHBjaSkgfHwgIXBpcnFfZHBjaSB8 fAo+ICAgICAgICAgICAhKHBpcnFfZHBjaS0+ZmxhZ3MgJiBIVk1fSVJRX0RQQ0lfTUFQUEVEKSAp Cj4gICAgICAgICAgcmV0dXJuIDA7CgpTbyB3aHkgYWdhaW4gZG8gd2Ugc3VkZGVubHkgbmVlZCAh aXNfaHZtX2RvbWFpbigpIGhlcmU/IFdpdGgKdGhlIG5hbWUgb2YgdGhlIGZ1bmN0aW9uIHRoZXJl IHNob3VsZG4ndCBiZSBhbnkgY2FsbGVyIGludm9raW5nIGl0CmZvciBhIFBWIGd1ZXN0LgoKSmFu CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2 ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVu Lm9yZy94ZW4tZGV2ZWwK