From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chao Gao Subject: Re: [PATCH V3 15/29] x86/vvtd: Process interrupt remapping request Date: Fri, 20 Oct 2017 13:16:37 +0800 Message-ID: <20171020051637.GH74825@op-computing> References: <1506049330-11196-1-git-send-email-tianyu.lan@intel.com> <1506049330-11196-16-git-send-email-tianyu.lan@intel.com> <20171019142630.itzer53evzrx6tyn@dhcp-3-128.uk.xensource.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20171019142630.itzer53evzrx6tyn@dhcp-3-128.uk.xensource.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Roger Pau =?iso-8859-1?Q?Monn=E9?= Cc: Lan Tianyu , tim@xen.org, kevin.tian@intel.com, sstabellini@kernel.org, wei.liu2@citrix.com, konrad.wilk@oracle.com, George.Dunlap@eu.citrix.com, andrew.cooper3@citrix.com, ian.jackson@eu.citrix.com, xen-devel@lists.xen.org, jbeulich@suse.com List-Id: xen-devel@lists.xenproject.org T24gVGh1LCBPY3QgMTksIDIwMTcgYXQgMDM6MjY6MzBQTSArMDEwMCwgUm9nZXIgUGF1IE1vbm7D qSB3cm90ZToKPk9uIFRodSwgU2VwIDIxLCAyMDE3IGF0IDExOjAxOjU2UE0gLTA0MDAsIExhbiBU aWFueXUgd3JvdGU6Cj4+IEZyb206IENoYW8gR2FvIDxjaGFvLmdhb0BpbnRlbC5jb20+Cj4+IAo+ PiBXaGVuIGEgcmVtYXBwaW5nIGludGVycnVwdCByZXF1ZXN0IGFycml2ZXMsIHJlbWFwcGluZyBo YXJkd2FyZSBjb21wdXRlcyB0aGUKPj4gaW50ZXJydXB0X2luZGV4IHBlciB0aGUgYWxnb3JpdGht IGRlc2NyaWJlZCBpbiBWVEQgc3BlYwo+PiAiSW50ZXJydXB0IFJlbWFwcGluZyBUYWJsZSIsIGlu dGVycHJldHMgdGhlIElSVEUgYW5kIGdlbmVyYXRlcyBhIHJlbWFwcGVkCj4+IGludGVycnVwdCBy ZXF1ZXN0Lgo+PiAKPj4gVGhpcyBwYXRjaCBpbnRyb2R1Y2VzIHZpb21tdV9oYW5kbGVfaXJxX3Jl cXVlc3QoKSB0byBlbXVsYXRlIHRoZSBwcm9jZXNzIGhvdwo+PiByZW1hcHBpbmcgaGFyZHdhcmUg aGFuZGxlcyBhIHJlbWFwcGluZyBpbnRlcnJ1cHQgcmVxdWVzdC4KPj4gCj4+IFNpZ25lZC1vZmYt Ynk6IENoYW8gR2FvIDxjaGFvLmdhb0BpbnRlbC5jb20+Cj4+IFNpZ25lZC1vZmYtYnk6IExhbiBU aWFueXUgPHRpYW55dS5sYW5AaW50ZWwuY29tPgo+PiAKPj4gLS0tCj4+ICAKPj4gK2VudW0gVlRE X0ZBVUxUX1RZUEUKPj4gK3sKPj4gKyAgICAvKiBJbnRlcnJ1cHQgcmVtYXBwaW5nIHRyYW5zaXRp b24gZmF1bHRzICovCj4+ICsgICAgVlREX0ZSX0lSX1JFUV9SU1ZEICAgICAgPSAweDIwLCAvKiBP bmUgb3IgbW9yZSBJUiByZXF1ZXN0IHJlc2VydmVkCj4+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKiBmaWVsZHMgc2V0ICovCj4+ICsgICAgVlREX0ZSX0lSX0lOREVYX09W RVIgICAgPSAweDIxLCAvKiBJbmRleCB2YWx1ZSBncmVhdGVyIHRoYW4gbWF4ICovCj4+ICsgICAg VlREX0ZSX0lSX0VOVFJZX1AgICAgICAgPSAweDIyLCAvKiBQcmVzZW50IChQKSBub3Qgc2V0IGlu IElSVEUgKi8KPj4gKyAgICBWVERfRlJfSVJfUk9PVF9JTlZBTCAgICA9IDB4MjMsIC8qIElSIFJv b3QgdGFibGUgaW52YWxpZCAqLwo+PiArICAgIFZURF9GUl9JUl9JUlRFX1JTVkQgICAgID0gMHgy NCwgLyogSVJURSBSc3ZkIGZpZWxkIG5vbi16ZXJvIHdpdGgKPj4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAqIFByZXNlbnQgZmxhZyBzZXQgKi8KPj4gKyAgICBWVERfRlJf SVJfUkVRX0NPTVBBVCAgICA9IDB4MjUsIC8qIEVuY291bnRlcmVkIGNvbXBhdGlibGUgSVIKPj4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqIHJlcXVlc3Qgd2hpbGUgZGlz YWJsZWQgKi8KPj4gKyAgICBWVERfRlJfSVJfU0lEX0VSUiAgICAgICA9IDB4MjYsIC8qIEludmFs aWQgU291cmNlLUlEICovCj4+ICt9Owo+Cj5XaHkgZG9lcyB0aGlzIG5lZWQgdG8gYmUgYW4gZW51 bT8gUGx1cyBlbnVtIHR5cGUgbmFtZXMgc2hvdWxkIG5vdCBiZQo+YWxsIGluIHVwcGVyY2FzZS4K Pgo+SW4gYW55IGNhc2UsIEkgd291bGQganVzdCB1c2UgZGVmaW5lcywgbGlrZSBpdCdzIGRvbmUg Zm9yIGFsbCBvdGhlcgo+dmFsdWVzIGluIHRoZSBmaWxlLgoKU3VyZS4gV2lsbCBmb2xsb3cgeW91 ciBzdWdnZXN0aW9uLgoKPj4gK3N0YXRpYyB2b2lkIHVubWFwX2d1ZXN0X3BhZ2Uodm9pZCAqdmly dCkKPj4gK3sKPj4gKyAgICBzdHJ1Y3QgcGFnZV9pbmZvICpwYWdlOwo+PiArCj4+ICsgICAgQVNT RVJUKCh1bnNpZ25lZCBsb25nKXZpcnQgJiBQQUdFX01BU0spOwo+Cj5JJ20gbm90IHN1cmUgSSBn ZXQgdGhlIHBvaW50IG9mIHRoZSBjaGVjayBhYm92ZS4KCkkgaW50ZW5kZWQgdG8gY2hlY2sgdGhl IGFkZHJlc3MgaXMgNEstcGFnZSBhbGlnbmVkLiBJdCBzaG91bGQgYmUKCkFTU0VSVCghKCh1bnNp Z25lZCBsb25nKXZpcnQgJiAoUEFHRV9TSVpFIC0gMSkpKQoKPj4gK30KPj4gKwo+PiArc3RhdGlj IGlubGluZSB1aW50MzJfdCBpcnRlX2Rlc3Qoc3RydWN0IHZ2dGQgKnZ2dGQsIHVpbnQzMl90IGRl c3QpCj4+ICt7Cj4+ICsgICAgLyogSW4geEFQSUMgbW9kZSwgb25seSA4LWJpdHMoWzE1OjhdKSBh cmUgdmFsaWQgKi8KPj4gKyAgICByZXR1cm4gdnZ0ZC0+c3RhdHVzLmVpbV9lbmFibGVkID8gZGVz dAo+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBNQVNLX0VYVFIoZGVz dCwgSVJURV94QVBJQ19ERVNUX01BU0spOwo+Cj5JdCdzIGVhc2llciB0byByZWFkIHN0eWxlIHdp c2UuCgpzdXJlLgoKPgo+PiArfQo+PiArCj4+ICBzdGF0aWMgdm9pZCB2dnRkX2hhbmRsZV9nY21k X2lyZShzdHJ1Y3QgdnZ0ZCAqdnZ0ZCwgdWludDMyX3QgdmFsKQo+PiAgewo+PiAgICAgIHZ2dGRf aW5mbygiJXNhYmxlIEludGVycnVwdCBSZW1hcHBpbmciLAo+PiBAQCAtMjU1LDYgKzM4NywxMzUg QEAgc3RhdGljIGNvbnN0IHN0cnVjdCBodm1fbW1pb19vcHMgdnZ0ZF9tbWlvX29wcyA9IHsKPj4g ICAgICAud3JpdGUgPSB2dnRkX3dyaXRlCj4+ICB9Owo+PiAgCj4+ICtzdGF0aWMgdm9pZCB2dnRk X2hhbmRsZV9mYXVsdChzdHJ1Y3QgdnZ0ZCAqdnZ0ZCwKPj4gKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHN0cnVjdCBhcmNoX2lycV9yZW1hcHBpbmdfcmVxdWVzdCAqaXJxLAo+PiArICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGlyZW1hcF9lbnRyeSAqaXJ0ZSwKPj4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBmYXVsdCwKPj4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvb2wgcmVjb3JkX2ZhdWx0KQo+PiArewo+PiAr ICAgaWYgKCAhcmVjb3JkX2ZhdWx0ICkKPj4gKyAgICAgICAgcmV0dXJuOwo+PiArCj4+ICsgICAg c3dpdGNoICggZmF1bHQgKQo+PiArICAgIHsKPj4gKyAgICBjYXNlIFZURF9GUl9JUl9TSURfRVJS Ogo+PiArICAgIGNhc2UgVlREX0ZSX0lSX0lSVEVfUlNWRDoKPj4gKyAgICBjYXNlIFZURF9GUl9J Ul9FTlRSWV9QOgo+PiArICAgICAgICBpZiAoIHFpbnZhbF9mYXVsdF9kaXNhYmxlKCppcnRlKSAp Cj4+ICsgICAgICAgICAgICBicmVhazsKPj4gKyAgICAvKiBmYWxsIHRocm91Z2ggKi8KPj4gKyAg ICBjYXNlIFZURF9GUl9JUl9JTkRFWF9PVkVSOgo+PiArICAgIGNhc2UgVlREX0ZSX0lSX1JPT1Rf SU5WQUw6Cj4+ICsgICAgICAgIC8qIFRPRE86IGhhbmRsZSBmYXVsdCAoZS5nLiByZWNvcmQgYW5k IHJlcG9ydCB0aGlzIGZhdWx0IHRvIFZNICovCj4+ICsgICAgICAgIGJyZWFrOwo+PiArCj4+ICsg ICAgZGVmYXVsdDoKPj4gKyAgICAgICAgZ2RwcmludGsoWEVOTE9HX0lORk8sICJDYW4ndCBoYW5k bGUgVlQtZCBmYXVsdCAleFxuIiwgZmF1bHQpOwo+Cj5Zb3UgYWxyZWFkeSBkZWZpbmVkIHNvbWUg dnZ0ZCBzcGVjaWZpYyBkZWJ1ZyBoZWxwZXJzLCB3aHkgYXJlIHRob3NlCj5ub3QgdXNlZCBoZXJl PyBnZHByaW50ayAoYXMgdGhlICdkJyBkZW5vdGVzKSBpcyBvbmx5IGZvciBkZWJ1Zwo+cHVycG9z ZXMuCgpUaGUgZGVmYXVsdCBjYXNlIG1lYW5zIHdlIGVuY291bnRlciBhIGJ1ZyBpbiBvdXIgY29k ZS4gSSB3YW50IHRvIG91dHB1dAp0aGlzIGtpbmQgb2YgbWVzc2FnZSBldmVuIGZvciBub24tZGVi dWcgdmVyc2lvbi4gSSBzaG91bGQgdXNlIGdwcmludGsuCgo+Cj4+ICsgICAgfQo+PiArICAgIHJl dHVybjsKPj4gK30KPj4gKwo+PiArc3RhdGljIGJvb2wgdnZ0ZF9pcnFfcmVxdWVzdF9zYW5pdHlf Y2hlY2soY29uc3Qgc3RydWN0IHZ2dGQgKnZ2dGQsCj4+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgYXJjaF9pcnFfcmVtYXBwaW5nX3JlcXVlc3QgKmly cSkKPj4gK3sKPj4gKyAgICBpZiAoIGlycS0+dHlwZSA9PSBWSU9NTVVfUkVRVUVTVF9JUlFfQVBJ QyApCj4+ICsgICAgewo+PiArICAgICAgICBzdHJ1Y3QgSU9fQVBJQ19yb3V0ZV9yZW1hcF9lbnRy eSBydGUgPSB7IC52YWwgPSBpcnEtPm1zZy5ydGUgfTsKPj4gKwo+PiArICAgICAgICBBU1NFUlQo cnRlLmZvcm1hdCk7Cj4KPklzIGl0IGZpbmUgdG8gQVNTRVJUIGhlcmU/IENhbid0IHRoZSBndWVz dCBzZXQgcnRlLmZvcm1hdCB0byB3aGF0ZXZlcgo+aXQgd2FudHM/CgpHdWVzdCBjYW4gdXNlIGxl Z2FjeSBmb3JtYXQgaW50ZXJydXB0IChpLmUuIHJ0ZS5mb3JtYXQgPSAwKS4gSG93ZXZlciwKd2Ug b25seSByZWFjaCBoZXJlIHdoZW4gY2FsbGJhY2sgJ2NoZWNrX2lycV9yZW1hcHBpbmcnIHJldHVy biB0cnVlIGFuZApmb3IgdnZ0ZCwgJ2NoZWNrX2lycV9yZW1hcHBpbmcnIGp1c3QgcmV0dXJucyB0 aGUgZm9ybWF0IGJpdCBvZiBpcnEgcmVxdWVzdC4KSWYgaGVyZSByZXQuZm9ybWF0IGlzbid0IHRy dWUsIHRoZXJlIG11c3QgYmUgYSBidWcgaW4gb3VyIGNvZGUuCgo+PiArICAgICAgICB2dnRkX2hh bmRsZV9mYXVsdCh2dnRkLCBpcnEsIE5VTEwsIFZURF9GUl9JUl9SRVFfUlNWRCwgcmVjb3JkX2Zh dWx0KTsKPj4gKyAgICAgICAgcmV0dXJuIC1FSU5WQUw7Cj4+ICsgICAgfQo+PiArCj4+ICsgICAg aWYgKCBlbnRyeSA+IHZ2dGQtPnN0YXR1cy5pcnRfbWF4X2VudHJ5ICkKPj4gKyAgICB7Cj4+ICsg ICAgICAgIHZ2dGRfaGFuZGxlX2ZhdWx0KHZ2dGQsIGlycSwgTlVMTCwgVlREX0ZSX0lSX0lOREVY X09WRVIsIHJlY29yZF9mYXVsdCk7Cj4+ICsgICAgICAgIHJldHVybiAtRUFDQ0VTOwo+PiArICAg IH0KPj4gKwo+PiArICAgIGlydF9wYWdlID0gbWFwX2d1ZXN0X3BhZ2UodnZ0ZC0+ZG9tYWluLAo+ PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdnZ0ZC0+c3RhdHVzLmlydCArIChlbnRy eSA+PiBJUkVNQVBfRU5UUllfT1JERVIpKTsKPgo+U2luY2UgQUZBSUNUIHlvdSBoYXZlIHRvIHJl YWQgdGhpcyBwYWdlKHMpIGV2ZXJ5IHRpbWUgYW4gaW50ZXJydXB0Cj5uZWVkcyB0byBiZSBkZWxp dmVyZWQsIHdvdWxkbid0IGl0IG1ha2Ugc2Vuc2UgZm9yIHBlcmZvcm1hbmNlIHJlYXNvbnMKPnRv IGhhdmUgdGhlIHBhZ2UgcGVybWFuZW50bHkgbWFwcGVkPwoKWWVzLiBJdCBpcy4gQWN0dWFsbHks IHdlIGhhdmUgYSBkcmFmdCBwYXRjaCB0byBkbyB0aGlzLiBCdXQgdG8ganVzdGlmeQp0aGUgbmVj ZXNzaXR5LCBJIHNob3VsZCBydW4gc29tZSBiZW5jaG1hcmsgYXQgZmlyc3QuIE1hcHBpbmcgYSBn dWVzdApwYWdlIGlzIHNsb3cgb24geDg2LCByaWdodD8KCj4KPldoYXQncyB0aGUgbWF4aW11bSBu dW1iZXIgb2YgcGFnZXMgdGhhdCBjYW4gYmUgdXNlZCBoZXJlPwoKVlQtZCBjdXJyZW50IHN1cHBv cnQgMl4xNiBlbnRyaWVzIGF0IG1vc3QuIFRoZSBzaXplIG9mIGVhY2ggZW50cnkgaXMgMTI4CmJ5 dGUuIFRodXMsIHdlIG5lZWQgMl4xMSBwYWdlcyBhdCBtb3N0LgoKPgo+PiArICAgIGlmICggSVNf RVJSKGlydF9wYWdlKSApCj4+ICsgICAgewo+PiArICAgICAgICB2dnRkX2hhbmRsZV9mYXVsdCh2 dnRkLCBpcnEsIE5VTEwsIFZURF9GUl9JUl9ST09UX0lOVkFMLCByZWNvcmRfZmF1bHQpOwo+PiAr ICAgICAgICByZXR1cm4gUFRSX0VSUihpcnRfcGFnZSk7Cj4+ICsgICAgfQo+PiArCj4+ICsgICAg aXJ0ZSA9IGlydF9wYWdlICsgKGVudHJ5ICUgKDEgPDwgSVJFTUFQX0VOVFJZX09SREVSKSk7Cj4+ ICsgICAgZGVzdC0+dmFsID0gaXJ0ZS0+dmFsOwo+Cj5Ob3QgdGhhdCBpdCBtYXR0ZXJzIG11Y2gs IGJ1dCBmb3IgY29oZXJlbmN5IHJlYXNvbnMgSSB3b3VsZCBvbmx5IHNldAo+ZGVzdC0+dmFsIGFm dGVyIGFsbCB0aGUgY2hlY2tzIGhhdmUgYmVlbiBwZXJmb3JtZWQuCgphZ3JlZS4KClRoYW5rcwpj aGFvCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4t ZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMu eGVuLm9yZy94ZW4tZGV2ZWwK