From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chao Gao Subject: Re: [PATCH V2 23/25] x86/vvtd: Handle interrupt translation faults Date: Fri, 25 Aug 2017 15:17:24 +0800 Message-ID: <20170825071721.GA967@op-computing> References: <1502310866-10450-1-git-send-email-tianyu.lan@intel.com> <1502310866-10450-24-git-send-email-tianyu.lan@intel.com> <20170823115127.gdzj2goz5q7xhb2r@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: <20170823115127.gdzj2goz5q7xhb2r@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 , kevin.tian@intel.com, julien.grall@arm.com, xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org T24gV2VkLCBBdWcgMjMsIDIwMTcgYXQgMTI6NTE6MjdQTSArMDEwMCwgUm9nZXIgUGF1IE1vbm7D qSB3cm90ZToKPk9uIFdlZCwgQXVnIDA5LCAyMDE3IGF0IDA0OjM0OjI0UE0gLTA0MDAsIExhbiBU aWFueXUgd3JvdGU6Cj4+IEZyb206IENoYW8gR2FvIDxjaGFvLmdhb0BpbnRlbC5jb20+Cj4+IAo+ PiBJbnRlcnJ1cHQgdHJhbnNsYXRpb24gZmF1bHRzIGFyZSBub24tcmVjb3ZlcmFibGUgZmF1bHQu IFdoZW4gZmF1bHRzCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBeIGZhdWx0cwo+PiBhcmUgdHJpZ2dlcmVkLCBpdCBuZWVkcyB0byBwb3B1bGF0ZSBm YXVsdCBpbmZvIHRvIEZhdWx0IFJlY29yZGluZwo+PiBSZWdpc3RlcnMgYW5kIGluamVjdCB2SU9N TVUgbXNpIGludGVycnVwdCB0byBub3RpZnkgZ3Vlc3QgSU9NTVUgZHJpdmVyCj4+IHRvIGRlYWwg d2l0aCBmYXVsdHMuCj4+IAo+PiBUaGlzIHBhdGNoIGVtdWxhdGVzIGhhcmR3YXJlJ3MgaGFuZGxp bmcgaW50ZXJydXB0IHRyYW5zbGF0aW9uCj4+IGZhdWx0cyAobW9yZSBpbmZvcm1hdGlvbiBhYm91 dCB0aGUgcHJvY2VzcyBjYW4gYmUgZm91bmQgaW4gVlQtZCBzcGVjLAo+PiBjaGlwdGVyICJUcmFu c2xhdGlvbiBGYXVsdHMiLCBzZWN0aW9uICJOb24tUmVjb3ZlcmFibGUgRmF1bHQKPiAgXiBjaGFw dGVyCj4+IFJlcG9ydGluZyIgYW5kIHNlY3Rpb24gIk5vbi1SZWNvdmVyYWJsZSBMb2dnaW5nIiku Cj4+IFNwZWNpZmljYWxseSwgdmlvbW11X3JlY29yZF9mYXVsdCgpIHJlY29yZHMgdGhlIGZhdWx0 IGluZm9ybWF0aW9uIGFuZAo+PiB2aW9tbXVfcmVwb3J0X25vbl9yZWNvdmVyYWJsZV9mYXVsdCgp IHJlcG9ydHMgZmF1bHRzIHRvIHNvZnR3YXJlLgo+PiBDdXJyZW50bHksIG9ubHkgUHJpbWFyeSBG YXVsdCBMb2dnaW5nIGlzIHN1cHBvcnRlZCBhbmQgdGhlIE51bWJlciBvZgo+PiBGYXVsdC1yZWNv cmRpbmcgUmVnaXN0ZXJzIGlzIDEuCj4+IAo+PiBTaWduZWQtb2ZmLWJ5OiBDaGFvIEdhbyA8Y2hh by5nYW9AaW50ZWwuY29tPgo+PiBTaWduZWQtb2ZmLWJ5OiBMYW4gVGlhbnl1IDx0aWFueXUubGFu QGludGVsLmNvbT4KPj4gLS0tCj4KPj4gICAgICAvKiBBZGRyZXNzIHJhbmdlIG9mIHJlbWFwcGlu ZyBoYXJkd2FyZSByZWdpc3Rlci1zZXQgKi8KPj4gICAgICB1aW50NjRfdCBiYXNlX2FkZHI7Cj4+ ICAgICAgdWludDY0X3QgbGVuZ3RoOwo+PiBAQCAtOTcsNiArMTAxLDIzIEBAIHN0YXRpYyBpbmxp bmUgc3RydWN0IHZ2dGQgKnZjcHVfdnZ0ZChzdHJ1Y3QgdmNwdSAqdikKPj4gICAgICByZXR1cm4g ZG9tYWluX3Z2dGQodi0+ZG9tYWluKTsKPj4gIH0KPj4gIAo+PiArc3RhdGljIGlubGluZSBpbnQg dnZ0ZF90ZXN0X2FuZF9zZXRfYml0KHN0cnVjdCB2dnRkICp2dnRkLCB1aW50MzJfdCByZWcsCj4+ ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG5yKQo+Cj51bnNp Z25lZCBpbnQgZm9yIG5yLCBhbmQgSSdtIG5vdCByZWFsbHkgc3VyZSB0aGUgdXNlZnVsbmVzcyBv ZiB0aGlzCj5oZWxwZXJzLiBJbiBhbnkgY2FzZSBpbmxpbmUgc2hvdWxkIG5vdCBiZSB1c2VkIGFu ZCBpbnN0ZWFkIGxldCB0aGUKPmNvbXBpbGVyIG9wdGltaXplIHRoaXMuCj4KCkkgdGhpbmsgY29t cGlsZXIgZG9lc24ndCBrbm93IHRoZSBmcmVxdWVuY3kgb2YgY2FsbGluZyB0aGVzZSBmdW5jdGlv bi4KRXhwbGljaXRseSBtYWtlIHRoaXMgZnVuY3Rpb24gaW5saW5lIHNvbWV0aW1lcyBjYW4gYXZv aWQgY29tcGlsZXIKZG9lc24ndCBkbyB0aGlzIGZvciBzb21lIHNob3J0IGFuZCBmcmVxdWVudGx5 IHVzZWQgZnVuY3Rpb25zLgoKPj4gK3N0YXRpYyB2b2lkIHZ2dGRfcmVwb3J0X25vbl9yZWNvdmVy YWJsZV9mYXVsdChzdHJ1Y3QgdnZ0ZCAqdnZ0ZCwgaW50IHJlYXNvbikKPj4gK3sKPj4gKyAgICB1 aW50MzJfdCBmc3RzOwo+PiArCj4+ICsgICAgQVNTRVJUKHJlYXNvbiAmIERNQV9GU1RTX0ZBVUxU Uyk7Cj4+ICsgICAgZnN0cyA9IHZ2dGRfZ2V0X3JlZyh2dnRkLCBETUFSX0ZTVFNfUkVHKTsKPj4g KyAgICBfX3Z2dGRfc2V0X2JpdCh2dnRkLCBETUFSX0ZTVFNfUkVHLCByZWFzb24pOwo+Cj5JIGRv bid0IHVuZGVyc3RhbmQgdGhpcywgaXMgcmVhc29uIGEgYml0IHBvc2l0aW9uIG9yIGEgbWFzaz8K Pgo+RE1BX0ZTVFNfRkFVTFRTIHNlZW1zIHRvIGJlIGEgbWFzaywgdGhhdCBzaG91bGQgYmUgc2V0 IGludG8gRE1BUl9GU1RTX1JFRz8KCkFjY29yZGluZyBWVC1kIHNwZWMgMTAuNC45LCBFYWNoIGtp bmQgb2YgZmF1bHQgaXMgZGVub3RlZCBieSBvbmUgYml0IGluCkRNQVJfRlNUU19SRUcuCgo+PiAg c3RhdGljIGludCB2dnRkX3JlY29yZF9mYXVsdChzdHJ1Y3QgdnZ0ZCAqdnZ0ZCwKPj4gLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGlycV9yZW1hcHBpbmdfcmVxdWVzdCAqaXJx LAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgaXJxX3JlbWFwcGluZ19y ZXF1ZXN0ICpyZXF1ZXN0LAo+PiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmVh c29uKQo+PiAgewo+PiAtICAgIHJldHVybiAwOwo+PiArICAgIHN0cnVjdCB2dGRfZmF1bHRfcmVj b3JkX3JlZ2lzdGVyIGZyY2Q7Cj4+ICsgICAgaW50IGZyY2RfaWR4Owo+PiArCj4+ICsgICAgc3dp dGNoKHJlYXNvbikKPj4gKyAgICB7Cj4+ICsgICAgY2FzZSBWVERfRlJfSVJfUkVRX1JTVkQ6Cj4+ ICsgICAgY2FzZSBWVERfRlJfSVJfSU5ERVhfT1ZFUjoKPj4gKyAgICBjYXNlIFZURF9GUl9JUl9F TlRSWV9QOgo+PiArICAgIGNhc2UgVlREX0ZSX0lSX1JPT1RfSU5WQUw6Cj4+ICsgICAgY2FzZSBW VERfRlJfSVJfSVJURV9SU1ZEOgo+PiArICAgIGNhc2UgVlREX0ZSX0lSX1JFUV9DT01QQVQ6Cj4+ ICsgICAgY2FzZSBWVERfRlJfSVJfU0lEX0VSUjoKPj4gKyAgICAgICAgaWYgKCB2dnRkX3Rlc3Rf Yml0KHZ2dGQsIERNQVJfRlNUU19SRUcsIERNQV9GU1RTX1BGT19CSVQpICkKPj4gKyAgICAgICAg ICAgIHJldHVybiBYODZFTVVMX09LQVk7Cj4+ICsKPj4gKyAgICAgICAgLyogTm8gYXZhaWxhYmxl IEZhdWx0IFJlY29yZCBtZWFucyBGYXVsdCBvdmVyZmxvd2VkICovCj4+ICsgICAgICAgIGZyY2Rf aWR4ID0gdnZ0ZF9hbGxvY19mcmNkKHZ2dGQpOwo+PiArICAgICAgICBpZiAoIGZyY2RfaWR4ID09 IC0xICkKPj4gKyAgICAgICAgewo+PiArICAgICAgICAgICAgdnZ0ZF9yZXBvcnRfbm9uX3JlY292 ZXJhYmxlX2ZhdWx0KHZ2dGQsIERNQV9GU1RTX1BGT19CSVQpOwo+PiArICAgICAgICAgICAgcmV0 dXJuIFg4NkVNVUxfT0tBWTsKPj4gKyAgICAgICAgfQo+PiArICAgICAgICBtZW1zZXQoJmZyY2Qs IDAsIHNpemVvZihmcmNkKSk7Cj4+ICsgICAgICAgIGZyY2QuZmllbGRzLkZSID0gKHU4KXJlYXNv bjsKPj4gKyAgICAgICAgZnJjZC5maWVsZHMuRkkgPSAoKHU2NClpcnFfcmVtYXBwaW5nX3JlcXVl c3RfaW5kZXgocmVxdWVzdCkpIDw8IDM2Owo+PiArICAgICAgICBmcmNkLmZpZWxkcy5TSUQgPSAo dTE2KXJlcXVlc3QtPnNvdXJjZV9pZDsKPj4gKyAgICAgICAgZnJjZC5maWVsZHMuRiA9IDE7Cj4+ ICsgICAgICAgIHZ2dGRfY29tbWl0X2ZyY2QodnZ0ZCwgZnJjZF9pZHgsICZmcmNkKTsKPj4gKyAg ICAgICAgcmV0dXJuIFg4NkVNVUxfT0tBWTsKPj4gKwo+PiArICAgIGRlZmF1bHQ6Cj4KPk90aGVy IHJlYXNvbnMgYXJlIGp1c3QgaWdub3JlZD8gU2hvdWxkIHRoaXMgaGF2ZSBhbiBBU1NFUlRfVU5S RUFDSEFCTEUKPm1heWJlPwoKSXQgY2FuIGhhdmUgZm9yIGFsbCB0aGUgZmF1bHRzIGFyZSByYWlz ZWQgYnkgdnZ0ZC4gV2hlbiB2dnRkIGdlbmVyYXRlcyBhCm5ldyBraW5kcyBvZiBmYXVsdCwgdGhl IGNvcnJlc3BvbmRpbmcgaGFuZGxlciBhbHNvIHNob3VsZCBiZSBhZGRlZC4KCj4KPj4gKyAgICAg ICAgYnJlYWs7Cj4+ICsgICAgfQo+PiArCj4+ICsgICAgZ2RwcmludGsoWEVOTE9HX0VSUiwgIkNh bid0IGhhbmRsZSB2VlREIEZhdWx0IChyZWFzb24gMHgleCkuIiwgcmVhc29uKTsKPj4gKyAgICBk b21haW5fY3Jhc2godnZ0ZC0+ZG9tYWluKTsKPgo+T2gsIEkgc2VlLiBJcyBpdCBleHBlY3RlZCB0 aGF0IHN1Y2ggZmF1bHRzIHdpdGggdW5oYW5kbGVkIHJlYXNvbnMgY2FuCj5iZSBzb21laG93IGdl bmVyYXRlZCBieSB0aGUgZG9tYWluIGl0c2VsZj8KPgoKTm8uIEZhdWx0cyBhcmUgZ2VuZXJhdGVk IGJ5IHZ2dGQuIFdlIG9ubHkgYWRkIGludGVycnVwdCB0cmFuc2xhdGlvbgpmYXVsdHMuIE90aGVy IGZhdWx0cyBjYW4gYmUgYWRkZWQgd2hlbiBhZGRpbmcgb3RoZXIgZmVhdHVyZXMgKGUuZy4gRE1B CnJlbWFwcGluZykuIAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0 cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=