From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH v10 16/32] ARM: vGIC: advertise LPI support Date: Tue, 30 May 2017 13:59:19 +0100 Message-ID: References: <20170526173540.10066-1-andre.przywara@arm.com> <20170526173540.10066-17-andre.przywara@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dFgkC-0004SN-UQ for xen-devel@lists.xenproject.org; Tue, 30 May 2017 12:59:29 +0000 In-Reply-To: <20170526173540.10066-17-andre.przywara@arm.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Andre Przywara , Stefano Stabellini Cc: xen-devel@lists.xenproject.org, Vijaya Kumar K , Vijay Kilari , Shanker Donthineni List-Id: xen-devel@lists.xenproject.org SGkgQW5kcmUsCgpPbiAyNi8wNS8xNyAxODozNSwgQW5kcmUgUHJ6eXdhcmEgd3JvdGU6Cj4gVG8g bGV0IGEgZ3Vlc3Qga25vdyBhYm91dCB0aGUgYXZhaWxhYmlsaXR5IG9mIHZpcnR1YWwgTFBJcywg c2V0IHRoZQo+IHJlc3BlY3RpdmUgYml0cyBpbiB0aGUgdmlydHVhbCBHSUMgcmVnaXN0ZXJzIGFu ZCBsZXQgYSBndWVzdCBjb250cm9sCj4gdGhlIExQSSBlbmFibGUgYml0Lgo+IE9ubHkgcmVwb3J0 IHRoZSBMUEkgY2FwYWJpbGl0eSBpZiB0aGUgaG9zdCBoYXMgaW5pdGlhbGl6ZWQgYXQgbGVhc3QK PiBvbmUgSVRTLgoKSSBhbSBub3Qgc3VyZSB0byB1bmRlcnN0YW5kIHRoaXMgc2VudGVuY2UuIFlv dSByZXBvcnQgTFBJIGNhcGFiaWxpdHkgaWYgCnRoZSBkb21haW4gaGFzIGFuIElUUyBleHBvc2Vk LiBJdCBkb2VzIG5vdCBtYXR0ZXIgd2hldGhlciB0aGUgaG9zdCBoYXMgb25lLgoKPiBGb3IgRG9t MCB3ZSByZXBvcnQgdGhlIHNhbWUgbnVtYmVyIG9mIGludGVycnVwdHMgaWRlbnRpZmllcnMgYXMg dGhlCj4gaG9zdCwgd2hlcmVhcyBEb21VcyBnZXQgYSBudW1iZXIgZml4ZWQgYXQgMTAgYml0cyBm b3IgdGhlIG1vbWVudHMsIHdoaWNoCj4gY292ZXJzIGFsbCBTUElzLiBBbHNvIHdlIGZpeCBhIHNs aWdodCBpbmFjY3VyYWN5IGhlcmUsIHNpbmNlIHRoZQo+IG51bWJlciBvZiBpbnRlcnJ1cHQgaWRl bnRpZmllciBzcGVjaWZpZWQgaW4gR0lDRF9UWVBFUiBkZXBlbmRzIG9uIHRoZQo+IHN0cmVhbSBp bnRlcmZhY2UgYW5kIGlzIGluZGVwZW5kZW50IGZyb20gdGhlIG51bWJlciBvZiBhY3R1YWxseSB3 aXJlZAo+IFNQSXMuCgpUaGlzIGp1c3RpZmljYXRpb24gd291bGQgaGF2ZSBiZWVuIHVzZWZ1bCBp biBwYXRjaCAjMi4KCj4gVGhpcyBhbHNvIHJlbW92ZXMgYSAiVEJEIiBjb21tZW50LCBhcyB3ZSBu b3cgcG9wdWxhdGUgdGhlIHByb2Nlc3Nvcgo+IG51bWJlciBpbiB0aGUgR0lDUl9UWVBFUiByZWdp c3Rlci4KCkFnYWluLCBJIHRoaW5rIGl0IHdvdWxkIGJlIHdvcnRoIGV4cGxhaW5pbmcgdGhhdCB5 b3UgcG9wdWxhdGUKR0lDUl9UWVBFUi5Qcm9jZXNzX051bWJlciBiZWNhdXNlIHRoZSBJVFMgd2ls bCB1c2UgaXQgbGF0ZXIgb24uCgo+Cj4gU2lnbmVkLW9mZi1ieTogQW5kcmUgUHJ6eXdhcmEgPGFu ZHJlLnByenl3YXJhQGFybS5jb20+Cj4gLS0tCj4gIHhlbi9hcmNoL2FybS92Z2ljLXYzLmMgfCA3 NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLQo+ICAx IGZpbGUgY2hhbmdlZCwgNjkgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKPgo+IGRpZmYg LS1naXQgYS94ZW4vYXJjaC9hcm0vdmdpYy12My5jIGIveGVuL2FyY2gvYXJtL3ZnaWMtdjMuYwo+ IGluZGV4IGUyZTViYzEuLjEzNGUxYjAgMTAwNjQ0Cj4gLS0tIGEveGVuL2FyY2gvYXJtL3ZnaWMt djMuYwo+ICsrKyBiL3hlbi9hcmNoL2FybS92Z2ljLXYzLmMKPiBAQCAtMTcwLDggKzE3MCwxOSBA QCBzdGF0aWMgaW50IF9fdmdpY192M19yZGlzdHJfcmRfbW1pb19yZWFkKHN0cnVjdCB2Y3B1ICp2 LCBtbWlvX2luZm9fdCAqaW5mbywKPiAgICAgIHN3aXRjaCAoIGdpY3JfcmVnICkKPiAgICAgIHsK PiAgICAgIGNhc2UgVlJFRzMyKEdJQ1JfQ1RMUik6Cj4gLSAgICAgICAgLyogV2UgaGF2ZSBub3Qg aW1wbGVtZW50ZWQgTFBJJ3MsIHJlYWQgemVybyAqLwo+IC0gICAgICAgIGdvdG8gcmVhZF9hc196 ZXJvXzMyOwo+ICsgICAgewo+ICsgICAgICAgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7Cj4gKwo+ICsg ICAgICAgIGlmICggIXYtPmRvbWFpbi0+YXJjaC52Z2ljLmhhc19pdHMgKQo+ICsgICAgICAgICAg ICBnb3RvIHJlYWRfYXNfemVyb18zMjsKPiArICAgICAgICBpZiAoIGRhYnQuc2l6ZSAhPSBEQUJU X1dPUkQgKSBnb3RvIGJhZF93aWR0aDsKPiArCj4gKyAgICAgICAgc3Bpbl9sb2NrX2lycXNhdmUo JnYtPmFyY2gudmdpYy5sb2NrLCBmbGFncyk7Cj4gKyAgICAgICAgKnIgPSB2Z2ljX3JlZzMyX2V4 dHJhY3QoISEodi0+YXJjaC52Z2ljLmZsYWdzICYgVkdJQ19WM19MUElTX0VOQUJMRUQpLAo+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZm8pOwo+ICsgICAgICAgIHNwaW5fdW5s b2NrX2lycXJlc3RvcmUoJnYtPmFyY2gudmdpYy5sb2NrLCBmbGFncyk7Cj4gKyAgICAgICAgcmV0 dXJuIDE7Cj4gKyAgICB9Cj4KPiAgICAgIGNhc2UgVlJFRzMyKEdJQ1JfSUlEUik6Cj4gICAgICAg ICAgaWYgKCBkYWJ0LnNpemUgIT0gREFCVF9XT1JEICkgZ290byBiYWRfd2lkdGg7Cj4gQEAgLTE4 MywxNiArMTk0LDIwIEBAIHN0YXRpYyBpbnQgX192Z2ljX3YzX3JkaXN0cl9yZF9tbWlvX3JlYWQo c3RydWN0IHZjcHUgKnYsIG1taW9faW5mb190ICppbmZvLAo+ICAgICAgICAgIHVpbnQ2NF90IHR5 cGVyLCBhZmY7Cj4KPiAgICAgICAgICBpZiAoICF2Z2ljX3JlZzY0X2NoZWNrX2FjY2VzcyhkYWJ0 KSApIGdvdG8gYmFkX3dpZHRoOwo+IC0gICAgICAgIC8qIFRCRDogVXBkYXRlIHByb2Nlc3NvciBp ZCBpbiBbMjM6OF0gd2hlbiBJVFMgc3VwcG9ydCBpcyBhZGRlZCAqLwo+ICAgICAgICAgIGFmZiA9 IChNUElEUl9BRkZJTklUWV9MRVZFTCh2LT5hcmNoLnZtcGlkciwgMykgPDwgNTYgfAo+ICAgICAg ICAgICAgICAgICBNUElEUl9BRkZJTklUWV9MRVZFTCh2LT5hcmNoLnZtcGlkciwgMikgPDwgNDgg fAo+ICAgICAgICAgICAgICAgICBNUElEUl9BRkZJTklUWV9MRVZFTCh2LT5hcmNoLnZtcGlkciwg MSkgPDwgNDAgfAo+ICAgICAgICAgICAgICAgICBNUElEUl9BRkZJTklUWV9MRVZFTCh2LT5hcmNo LnZtcGlkciwgMCkgPDwgMzIpOwo+ICAgICAgICAgIHR5cGVyID0gYWZmOwo+ICsgICAgICAgIC8q IFdlIHVzZSB0aGUgVkNQVSBJRCBhcyB0aGUgcmVkaXN0cmlidXRvciBJRCBpbiBiaXRzWzIzOjhd ICovCj4gKyAgICAgICAgdHlwZXIgfD0gdi0+dmNwdV9pZCA8PCBHSUNSX1RZUEVSX1BST0NfTlVN X1NISUZUOwo+Cj4gICAgICAgICAgaWYgKCB2LT5hcmNoLnZnaWMuZmxhZ3MgJiBWR0lDX1YzX1JE SVNUX0xBU1QgKQo+ICAgICAgICAgICAgICB0eXBlciB8PSBHSUNSX1RZUEVSX0xBU1Q7Cj4KPiAr ICAgICAgICBpZiAoIHYtPmRvbWFpbi0+YXJjaC52Z2ljLmhhc19pdHMgKQo+ICsgICAgICAgICAg ICB0eXBlciB8PSBHSUNSX1RZUEVSX1BMUElTOwo+ICsKPiAgICAgICAgICAqciA9IHZnaWNfcmVn NjRfZXh0cmFjdCh0eXBlciwgaW5mbyk7Cj4KPiAgICAgICAgICByZXR1cm4gMTsKPiBAQCAtNDI2 LDYgKzQ0MSwzMyBAQCBzdGF0aWMgdWludDY0X3Qgc2FuaXRpemVfcGVuZGJhc2VyKHVpbnQ2NF90 IHJlZykKPiAgICAgIHJldHVybiByZWc7Cj4gIH0KPgo+ICtzdGF0aWMgdm9pZCB2Z2ljX3ZjcHVf ZW5hYmxlX2xwaXMoc3RydWN0IHZjcHUgKnYpCj4gK3sKPiArICAgIHVpbnQ2NF90IHJlZyA9IHYt PmRvbWFpbi0+YXJjaC52Z2ljLnJkaXN0X3Byb3BiYXNlOwo+ICsgICAgdW5zaWduZWQgaW50IG5y X2xwaXMgPSBCSVQoKHJlZyAmIDB4MWYpICsgMSk7Cj4gKwo+ICsgICAgLyogcmRpc3RzX2VuYWJs ZWQgaXMgcHJvdGVjdGVkIGJ5IHRoZSBkb21haW4gbG9jay4gKi8KPiArICAgIEFTU0VSVChzcGlu X2lzX2xvY2tlZCgmdi0+ZG9tYWluLT5hcmNoLnZnaWMubG9jaykpOwo+ICsKPiArICAgIGlmICgg bnJfbHBpcyA8IExQSV9PRkZTRVQgKQo+ICsgICAgICAgIG5yX2xwaXMgPSAwOwo+ICsgICAgZWxz ZQo+ICsgICAgICAgIG5yX2xwaXMgLT0gTFBJX09GRlNFVDsKPiArCj4gKyAgICBpZiAoICF2LT5k b21haW4tPmFyY2gudmdpYy5yZGlzdHNfZW5hYmxlZCApCj4gKyAgICB7Cj4gKyAgICAgICAgdi0+ ZG9tYWluLT5hcmNoLnZnaWMubnJfbHBpcyA9IG5yX2xwaXM7Cj4gKyAgICAgICAgdi0+ZG9tYWlu LT5hcmNoLnZnaWMucmRpc3RzX2VuYWJsZWQgPSB0cnVlOwo+ICsgICAgICAgIC8qCj4gKyAgICAg ICAgICogTWFrZSBzdXJlIHRoZSBwZXItZG9tYWluIHJkaXN0c19lbmFibGVkIGZsYWcgaGFzIGJl ZW4gc2V0IGJlZm9yZQo+ICsgICAgICAgICAqIGVuYWJsaW5nIHRoaXMgcGFydGljdWxhciByZWRp c3RyaWJ1dG9yLgoKSG1tbSwgeW91IGFsc28gdXNlZCBucl9scGlzIGluIHRoZSB2SVRTIGNvZGUg d2l0aG91dCBhbnkgbG9ja2VkLiBTbyB0aGlzIApiYXJyaWVyIGlzIG5vdCBvbmx5IHRoZXJlIGZv ciByZGlzdHNfZW5hYmxlZC4KCj4gKyAgICAgICAgICovCj4gKyAgICAgICAgc21wX21iKCk7CgpJ IHdvdWxkIGhhdmUgZXhwZWN0ZWQgYSBiaXQgbW9yZSBkb2N1bWVudGF0aW9uIGJhc2VkIG9uIHRo ZSBkaXNjdXNzaW9uIAp3ZSBoYWQgb24gdGhlIHByZXZpb3VzIHZlcnNpb24uIEZvciBpbnN0YW5j ZSwgd2h5IGRvIHlvdSBuZWVkIHRoaXMgCm1lbW9yeSBiYXJyaWVyPy4uLgoKPiArICAgIH0KPiAr Cj4gKyAgICB2LT5hcmNoLnZnaWMuZmxhZ3MgfD0gVkdJQ19WM19MUElTX0VOQUJMRUQ7Cj4gK30K PiArCj4gIHN0YXRpYyBpbnQgX192Z2ljX3YzX3JkaXN0cl9yZF9tbWlvX3dyaXRlKHN0cnVjdCB2 Y3B1ICp2LCBtbWlvX2luZm9fdCAqaW5mbywKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdWludDMyX3QgZ2ljcl9yZWcsCj4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHJlZ2lzdGVyX3QgcikKPiBAQCAtNDM2LDggKzQ3OCwyNiBA QCBzdGF0aWMgaW50IF9fdmdpY192M19yZGlzdHJfcmRfbW1pb193cml0ZShzdHJ1Y3QgdmNwdSAq diwgbW1pb19pbmZvX3QgKmluZm8sCj4gICAgICBzd2l0Y2ggKCBnaWNyX3JlZyApCj4gICAgICB7 Cj4gICAgICBjYXNlIFZSRUczMihHSUNSX0NUTFIpOgo+IC0gICAgICAgIC8qIExQSSdzIG5vdCBp bXBsZW1lbnRlZCAqLwo+IC0gICAgICAgIGdvdG8gd3JpdGVfaWdub3JlXzMyOwo+ICsgICAgewo+ ICsgICAgICAgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7Cj4gKwo+ICsgICAgICAgIGlmICggIXYtPmRv bWFpbi0+YXJjaC52Z2ljLmhhc19pdHMgKQo+ICsgICAgICAgICAgICBnb3RvIHdyaXRlX2lnbm9y ZV8zMjsKPiArICAgICAgICBpZiAoIGRhYnQuc2l6ZSAhPSBEQUJUX1dPUkQgKSBnb3RvIGJhZF93 aWR0aDsKPiArCj4gKyAgICAgICAgdmdpY19sb2NrKHYpOyAgICAgICAgICAgICAgICAgICAvKiBw cm90ZWN0cyByZGlzdHNfZW5hYmxlZCAqLwo+ICsgICAgICAgIHNwaW5fbG9ja19pcnFzYXZlKCZ2 LT5hcmNoLnZnaWMubG9jaywgZmxhZ3MpOwo+ICsKPiArICAgICAgICAvKiBMUElzIGNhbiBvbmx5 IGJlIGVuYWJsZWQgb25jZSwgYnV0IG5ldmVyIGRpc2FibGVkIGFnYWluLiAqLwo+ICsgICAgICAg IGlmICggKHIgJiBHSUNSX0NUTFJfRU5BQkxFX0xQSVMpICYmCj4gKyAgICAgICAgICAgICAhKHYt PmFyY2gudmdpYy5mbGFncyAmIFZHSUNfVjNfTFBJU19FTkFCTEVEKSApCj4gKyAgICAgICAgICAg IHZnaWNfdmNwdV9lbmFibGVfbHBpcyh2KTsKPiArCj4gKyAgICAgICAgc3Bpbl91bmxvY2tfaXJx cmVzdG9yZSgmdi0+YXJjaC52Z2ljLmxvY2ssIGZsYWdzKTsKPiArICAgICAgICB2Z2ljX3VubG9j ayh2KTsKPiArCj4gKyAgICAgICAgcmV0dXJuIDE7Cj4gKyAgICB9Cj4KPiAgICAgIGNhc2UgVlJF RzMyKEdJQ1JfSUlEUik6Cj4gICAgICAgICAgLyogUk8gKi8KPiBAQCAtMTA0NSw3ICsxMTA1LDYg QEAgc3RhdGljIGludCB2Z2ljX3YzX2Rpc3RyX21taW9fcmVhZChzdHJ1Y3QgdmNwdSAqdiwgbW1p b19pbmZvX3QgKmluZm8sCj4gICAgICAgICAgICogTnVtYmVyIG9mIGludGVycnVwdCBpZGVudGlm aWVyIGJpdHMgc3VwcG9ydGVkIGJ5IHRoZSBHSUMKPiAgICAgICAgICAgKiBTdHJlYW0gUHJvdG9j b2wgSW50ZXJmYWNlCj4gICAgICAgICAgICovCj4gLSAgICAgICAgdW5zaWduZWQgaW50IGlycV9i aXRzID0gZ2V0X2NvdW50X29yZGVyKHZnaWNfbnVtX2lycXModi0+ZG9tYWluKSk7Cj4gICAgICAg ICAgLyoKPiAgICAgICAgICAgKiBOdW1iZXIgb2YgcHJvY2Vzc29ycyB0aGF0IG1heSBiZSB1c2Vk IGFzIGludGVycnVwdCB0YXJnZXRzIHdoZW4gQVJFCj4gICAgICAgICAgICogYml0IGlzIHplcm8u IFRoZSBtYXhpbXVtIGlzIDguCj4gQEAgLTEwNTgsNyArMTExNywxMCBAQCBzdGF0aWMgaW50IHZn aWNfdjNfZGlzdHJfbW1pb19yZWFkKHN0cnVjdCB2Y3B1ICp2LCBtbWlvX2luZm9fdCAqaW5mbywK PiAgICAgICAgICB0eXBlciA9ICgobmNwdXMgLSAxKSA8PCBHSUNEX1RZUEVfQ1BVU19TSElGVCB8 Cj4gICAgICAgICAgICAgICAgICAgRElWX1JPVU5EX1VQKHYtPmRvbWFpbi0+YXJjaC52Z2ljLm5y X3NwaXMsIDMyKSk7Cj4KPiAtICAgICAgICB0eXBlciB8PSAoaXJxX2JpdHMgLSAxKSA8PCBHSUNE X1RZUEVfSURfQklUU19TSElGVDsKPiArICAgICAgICBpZiAoIHYtPmRvbWFpbi0+YXJjaC52Z2lj Lmhhc19pdHMgKQo+ICsgICAgICAgICAgICB0eXBlciB8PSBHSUNEX1RZUEVfTFBJUzsKPiArCj4g KyAgICAgICAgdHlwZXIgfD0gKHYtPmRvbWFpbi0+YXJjaC52Z2ljLmludGlkX2JpdHMgLSAxKSA8 PCBHSUNEX1RZUEVfSURfQklUU19TSElGVDsKPgo+ICAgICAgICAgICpyID0gdmdpY19yZWczMl9l eHRyYWN0KHR5cGVyLCBpbmZvKTsKPgo+CgpDaGVlcnMsCgotLSAKSnVsaWVuIEdyYWxsCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFp bGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHBzOi8vbGlzdHMueGVuLm9yZy94 ZW4tZGV2ZWwK