From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH v10 03/32] ARM: vGIC: move irq_to_pending() calls under the VGIC VCPU lock Date: Tue, 30 May 2017 12:08:50 +0100 Message-ID: References: <20170526173540.10066-1-andre.przywara@arm.com> <20170526173540.10066-4-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.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dFf1D-0004Y1-Fl for xen-devel@lists.xenproject.org; Tue, 30 May 2017 11:08:55 +0000 In-Reply-To: <20170526173540.10066-4-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 SGkgQW5kcmUsCgpPbiAyNi8wNS8xNyAxODozNSwgQW5kcmUgUHJ6eXdhcmEgd3JvdGU6Cj4gU28g ZmFyIGlycV90b19wZW5kaW5nKCkgaXMganVzdCBhIGNvbnZlbmllbmNlIGZ1bmN0aW9uIHRvIGxv b2t1cAo+IHN0YXRpY2FsbHkgYWxsb2NhdGVkIGFycmF5cy4gVGhpcyB3aWxsIGNoYW5nZSB3aXRo IExQSXMsIHdoaWNoIGFyZQo+IG1vcmUgZHluYW1pYywgc28gdGhlIG1lbW9yeSBmb3IgdGhlaXIg c3RydWN0IHBlbmRpbmdfaXJxIG1pZ2h0IGdvIGF3YXkuCj4gVGhlIHByb3BlciBhbnN3ZXIgdG8g dGhlIGlzc3VlIG9mIHByZXZlbnRpbmcgc3RhbGUgcG9pbnRlcnMgaXMKPiByZWYtY291bnRpbmcs IHdoaWNoIHJlcXVpcmVzIG1vcmUgcmV3b3JrIGFuZCB3aWxsIGJlIGludHJvZHVjZWQgd2l0aAo+ IGEgbGF0ZXIgcmV3b3JrLgo+IEZvciBub3cgbW92ZSB0aGUgaXJxX3RvX3BlbmRpbmcoKSBjYWxs cyB0aGF0IGFyZSB1c2VkIHdpdGggTFBJcyB1bmRlciB0aGUKPiBWR0lDIFZDUFUgbG9jaywgYW5k IG9ubHkgdXNlIHRoZSByZXR1cm5lZCBwb2ludGVyIHdoaWxlIGhvbGRpbmcgdGhlIGxvY2suCj4g VGhpcyBwcmV2ZW50cyB0aGUgbWVtb3J5IGZyb20gYmVpbmcgZnJlZWQgd2hpbGUgd2UgdXNlIGl0 Lgo+IEZvciB0aGUgc2FrZSBvZiBjb21wbGV0ZW5lc3Mgd2UgdGFrZSBjYXJlIGFib3V0IGFsbCBp cnFfdG9fcGVuZGluZygpCj4gdXNlcnMsIGV2ZW4gdGhvc2Ugd2hpY2ggbGF0ZXIgd2lsbCBuZXZl ciBkZWFsIHdpdGggTFBJcy4KPgo+IFNpZ25lZC1vZmYtYnk6IEFuZHJlIFByenl3YXJhIDxhbmRy ZS5wcnp5d2FyYUBhcm0uY29tPgo+IC0tLQo+ICB4ZW4vYXJjaC9hcm0vZ2ljLmMgIHwgIDUgKysr Ky0KPiAgeGVuL2FyY2gvYXJtL3ZnaWMuYyB8IDM5ICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKy0tLS0tLS0tLQo+ICAyIGZpbGVzIGNoYW5nZWQsIDM0IGluc2VydGlvbnMoKyksIDEwIGRl bGV0aW9ucygtKQo+Cj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9naWMuYyBiL3hlbi9hcmNo L2FybS9naWMuYwo+IGluZGV4IGRhMTkxMzAuLmRjYjE3ODMgMTAwNjQ0Cj4gLS0tIGEveGVuL2Fy Y2gvYXJtL2dpYy5jCj4gKysrIGIveGVuL2FyY2gvYXJtL2dpYy5jCj4gQEAgLTQwMiwxMCArNDAy LDEzIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBnaWNfYWRkX3RvX2xyX3BlbmRpbmcoc3RydWN0IHZj cHUgKnYsIHN0cnVjdCBwZW5kaW5nX2lycSAqbikKPgo+ICB2b2lkIGdpY19yZW1vdmVfZnJvbV9x dWV1ZXMoc3RydWN0IHZjcHUgKnYsIHVuc2lnbmVkIGludCB2aXJ0dWFsX2lycSkKPiAgewo+IC0g ICAgc3RydWN0IHBlbmRpbmdfaXJxICpwID0gaXJxX3RvX3BlbmRpbmcodiwgdmlydHVhbF9pcnEp Owo+ICsgICAgc3RydWN0IHBlbmRpbmdfaXJxICpwOwo+ICAgICAgdW5zaWduZWQgbG9uZyBmbGFn czsKPgo+ICAgICAgc3Bpbl9sb2NrX2lycXNhdmUoJnYtPmFyY2gudmdpYy5sb2NrLCBmbGFncyk7 Cj4gKwo+ICsgICAgcCA9IGlycV90b19wZW5kaW5nKHYsIHZpcnR1YWxfaXJxKTsKPiArCj4gICAg ICBpZiAoICFsaXN0X2VtcHR5KCZwLT5scl9xdWV1ZSkgKQo+ICAgICAgICAgIGxpc3RfZGVsX2lu aXQoJnAtPmxyX3F1ZXVlKTsKPiAgICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJnYtPmFyY2gu dmdpYy5sb2NrLCBmbGFncyk7Cj4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS92Z2ljLmMgYi94 ZW4vYXJjaC9hcm0vdmdpYy5jCj4gaW5kZXggNTRiMmFhZC4uNjlkNzMyYiAxMDA2NDQKPiAtLS0g YS94ZW4vYXJjaC9hcm0vdmdpYy5jCj4gKysrIGIveGVuL2FyY2gvYXJtL3ZnaWMuYwo+IEBAIC0y MzQsMjMgKzIzNCwyOSBAQCBzdGF0aWMgaW50IHZnaWNfZ2V0X3ZpcnFfcHJpb3JpdHkoc3RydWN0 IHZjcHUgKnYsIHVuc2lnbmVkIGludCB2aXJxKQo+ICBib29sIHZnaWNfbWlncmF0ZV9pcnEoc3Ry dWN0IHZjcHUgKm9sZCwgc3RydWN0IHZjcHUgKm5ldywgdW5zaWduZWQgaW50IGlycSkKPiAgewo+ ICAgICAgdW5zaWduZWQgbG9uZyBmbGFnczsKPiAtICAgIHN0cnVjdCBwZW5kaW5nX2lycSAqcCA9 IGlycV90b19wZW5kaW5nKG9sZCwgaXJxKTsKPiArICAgIHN0cnVjdCBwZW5kaW5nX2lycSAqcDsK PiArCj4gKyAgICBzcGluX2xvY2tfaXJxc2F2ZSgmb2xkLT5hcmNoLnZnaWMubG9jaywgZmxhZ3Mp Owo+ICsKPiArICAgIHAgPSBpcnFfdG9fcGVuZGluZyhvbGQsIGlycSk7Cj4KPiAgICAgIC8qIG5v dGhpbmcgdG8gZG8gZm9yIHZpcnR1YWwgaW50ZXJydXB0cyAqLwo+ICAgICAgaWYgKCBwLT5kZXNj ID09IE5VTEwgKQo+ICsgICAgewo+ICsgICAgICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJm9s ZC0+YXJjaC52Z2ljLmxvY2ssIGZsYWdzKTsKPiAgICAgICAgICByZXR1cm4gdHJ1ZTsKPiArICAg IH0KPgo+ICAgICAgLyogbWlncmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MsIG5vIG5lZWQgdG8g ZG8gYW55dGhpbmcgKi8KPiAgICAgIGlmICggdGVzdF9iaXQoR0lDX0lSUV9HVUVTVF9NSUdSQVRJ TkcsICZwLT5zdGF0dXMpICkKPiAgICAgIHsKPiAgICAgICAgICBncHJpbnRrKFhFTkxPR19XQVJO SU5HLCAiaXJxICV1IG1pZ3JhdGlvbiBmYWlsZWQ6IHJlcXVlc3RlZCB3aGlsZSBpbiBwcm9ncmVz c1xuIiwgaXJxKTsKPiArICAgICAgICBzcGluX3VubG9ja19pcnFyZXN0b3JlKCZvbGQtPmFyY2gu dmdpYy5sb2NrLCBmbGFncyk7Cj4gICAgICAgICAgcmV0dXJuIGZhbHNlOwo+ICAgICAgfQo+Cj4g ICAgICBwZXJmY19pbmNyKHZnaWNfaXJxX21pZ3JhdGVzKTsKPgo+IC0gICAgc3Bpbl9sb2NrX2ly cXNhdmUoJm9sZC0+YXJjaC52Z2ljLmxvY2ssIGZsYWdzKTsKPiAtCj4gICAgICBpZiAoIGxpc3Rf ZW1wdHkoJnAtPmluZmxpZ2h0KSApCj4gICAgICB7Cj4gICAgICAgICAgaXJxX3NldF9hZmZpbml0 eShwLT5kZXNjLCBjcHVtYXNrX29mKG5ldy0+cHJvY2Vzc29yKSk7Cj4gQEAgLTI4NSw2ICsyOTEs MTMgQEAgdm9pZCBhcmNoX21vdmVfaXJxcyhzdHJ1Y3QgdmNwdSAqdikKPiAgICAgIHN0cnVjdCB2 Y3B1ICp2X3RhcmdldDsKPiAgICAgIGludCBpOwo+Cj4gKyAgICAvKgo+ICsgICAgICogV2UgZG9u J3QgbWlncmF0ZSBMUElzIGF0IHRoZSBtb21lbnQuCj4gKyAgICAgKiBJZiB3ZSBldmVyIGRvLCB3 ZSBtdXN0IG1ha2Ugc3VyZSB0aGF0IHRoZSBzdHJ1Y3QgcGVuZGluZ19pcnEgZG9lcwo+ICsgICAg ICogbm90IGdvIGF3YXksIGFzIHRoZXJlIGlzIG5vIGxvY2sgcHJldmVudGluZyB0aGlzIGhlcmUu Cj4gKyAgICAgKi8KPiArICAgIEFTU0VSVCghaXNfbHBpKHZnaWNfbnVtX2lycXMoZCkgLSAxKSk7 CgpIbW1tPyBUaGlzIHJhaXNlIGEgcXVlc3Rpb24gb2Ygd2h5IHZnaWNfbnVtX2lycXMgZG9lcyBu b3QgaW5jbHVkZSB0aGUgCkxQSXMgdG9kYXkuLi4KCj4gKwo+ICAgICAgZm9yICggaSA9IDMyOyBp IDwgdmdpY19udW1faXJxcyhkKTsgaSsrICkKPiAgICAgIHsKPiAgICAgICAgICB2X3RhcmdldCA9 IHZnaWNfZ2V0X3RhcmdldF92Y3B1KHYsIGkpOwo+IEBAIC0yOTksNiArMzEyLDcgQEAgdm9pZCB2 Z2ljX2Rpc2FibGVfaXJxcyhzdHJ1Y3QgdmNwdSAqdiwgdWludDMyX3QgciwgaW50IG4pCj4gIHsK PiAgICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcgbWFzayA9IHI7Cj4gICAgICBzdHJ1Y3QgcGVuZGlu Z19pcnEgKnA7Cj4gKyAgICBzdHJ1Y3QgaXJxX2Rlc2MgKmRlc2M7Cj4gICAgICB1bnNpZ25lZCBp bnQgaXJxOwo+ICAgICAgdW5zaWduZWQgbG9uZyBmbGFnczsKPiAgICAgIGludCBpID0gMDsKPiBA QCAtMzA3LDE0ICszMjEsMTkgQEAgdm9pZCB2Z2ljX2Rpc2FibGVfaXJxcyhzdHJ1Y3QgdmNwdSAq diwgdWludDMyX3QgciwgaW50IG4pCj4gICAgICB3aGlsZSAoIChpID0gZmluZF9uZXh0X2JpdCgm bWFzaywgMzIsIGkpKSA8IDMyICkgewo+ICAgICAgICAgIGlycSA9IGkgKyAoMzIgKiBuKTsKPiAg ICAgICAgICB2X3RhcmdldCA9IHZnaWNfZ2V0X3RhcmdldF92Y3B1KHYsIGlycSk7Cj4gKwo+ICsg ICAgICAgIHNwaW5fbG9ja19pcnFzYXZlKCZ2X3RhcmdldC0+YXJjaC52Z2ljLmxvY2ssIGZsYWdz KTsKPiAgICAgICAgICBwID0gaXJxX3RvX3BlbmRpbmcodl90YXJnZXQsIGlycSk7Cj4gICAgICAg ICAgY2xlYXJfYml0KEdJQ19JUlFfR1VFU1RfRU5BQkxFRCwgJnAtPnN0YXR1cyk7Cj4gICAgICAg ICAgZ2ljX3JlbW92ZV9mcm9tX3F1ZXVlcyh2X3RhcmdldCwgaXJxKTsKCmdpY19yZW1vdmVfZnJv bV9xdWV1ZXMgaXMgdGFraW5nIHZfdGFyZ2V0IHZHSUMgbG9jay4gU28geW91IGp1c3QgCmludHJv ZHVjZWQgYSBkZWFkbG9jay4gWW91IHJlbW92ZSBpdCBpbiB0aGUgbmV4dCBwYXRjaCBidXQgc3Rp bGwsIHdlIApzaG91bGQgbm90IGludHJvZHVjZSByZWdyZXNzaW9uIGV2ZW4gdGVtcG9yYXJpbHku IFRoaXMgd291bGQgbWFrZSB0byAKZGlmZmljdWx0IHRvIGJpc2VjdCB0aGUgc2VyaWVzLgoKVEJI LCBJIGFtIG5vdCBhIGJpZyBmYW4gb2Ygc3ByZWFkaW5nIHRoZSBtZXNzIG9mIHZHSUMgbG9ja2lu ZyB3aGVuIHdlIAphcmUgZ29pbmcgdG8gcmV3b3JrIHRoZSB2R0lDIGFuZCBrbm93IHRoYXQgdGhp cyBjb2RlIHdpbGwgbm90IGJlIGNhbGxlZCAKZm9yIExQSXMuCgpCVFcsIHRoaXMgc2VyaWVzIGlz IG5vdCBiaXNlY3RhYmxlIGJlY2F1c2UgdGhlIGhvc3QgSVRTIGlzIG9ubHkgZW5hYmxlZCAKZnJv bSBwYXRjaCAjMTIuCgo+IC0gICAgICAgIGlmICggcC0+ZGVzYyAhPSBOVUxMICkKPiArICAgICAg ICBkZXNjID0gcC0+ZGVzYzsKPiArICAgICAgICBzcGluX3VubG9ja19pcnFyZXN0b3JlKCZ2X3Rh cmdldC0+YXJjaC52Z2ljLmxvY2ssIGZsYWdzKTsKPiArCj4gKyAgICAgICAgaWYgKCBkZXNjICE9 IE5VTEwgKQo+ICAgICAgICAgIHsKPiAtICAgICAgICAgICAgc3Bpbl9sb2NrX2lycXNhdmUoJnAt PmRlc2MtPmxvY2ssIGZsYWdzKTsKPiAtICAgICAgICAgICAgcC0+ZGVzYy0+aGFuZGxlci0+ZGlz YWJsZShwLT5kZXNjKTsKPiAtICAgICAgICAgICAgc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmcC0+ ZGVzYy0+bG9jaywgZmxhZ3MpOwo+ICsgICAgICAgICAgICBzcGluX2xvY2tfaXJxc2F2ZSgmZGVz Yy0+bG9jaywgZmxhZ3MpOwo+ICsgICAgICAgICAgICBkZXNjLT5oYW5kbGVyLT5kaXNhYmxlKGRl c2MpOwo+ICsgICAgICAgICAgICBzcGluX3VubG9ja19pcnFyZXN0b3JlKCZkZXNjLT5sb2NrLCBm bGFncyk7Cj4gICAgICAgICAgfQo+ICAgICAgICAgIGkrKzsKPiAgICAgIH0KPiBAQCAtMzQ5LDkg KzM2OCw5IEBAIHZvaWQgdmdpY19lbmFibGVfaXJxcyhzdHJ1Y3QgdmNwdSAqdiwgdWludDMyX3Qg ciwgaW50IG4pCj4gICAgICB3aGlsZSAoIChpID0gZmluZF9uZXh0X2JpdCgmbWFzaywgMzIsIGkp KSA8IDMyICkgewo+ICAgICAgICAgIGlycSA9IGkgKyAoMzIgKiBuKTsKPiAgICAgICAgICB2X3Rh cmdldCA9IHZnaWNfZ2V0X3RhcmdldF92Y3B1KHYsIGlycSk7Cj4gKyAgICAgICAgc3Bpbl9sb2Nr X2lycXNhdmUoJnZfdGFyZ2V0LT5hcmNoLnZnaWMubG9jaywgZmxhZ3MpOwo+ICAgICAgICAgIHAg PSBpcnFfdG9fcGVuZGluZyh2X3RhcmdldCwgaXJxKTsKPiAgICAgICAgICBzZXRfYml0KEdJQ19J UlFfR1VFU1RfRU5BQkxFRCwgJnAtPnN0YXR1cyk7Cj4gLSAgICAgICAgc3Bpbl9sb2NrX2lycXNh dmUoJnZfdGFyZ2V0LT5hcmNoLnZnaWMubG9jaywgZmxhZ3MpOwo+ICAgICAgICAgIGlmICggIWxp c3RfZW1wdHkoJnAtPmluZmxpZ2h0KSAmJiAhdGVzdF9iaXQoR0lDX0lSUV9HVUVTVF9WSVNJQkxF LCAmcC0+c3RhdHVzKSApCj4gICAgICAgICAgICAgIGdpY19yYWlzZV9ndWVzdF9pcnEodl90YXJn ZXQsIGlycSwgcC0+cHJpb3JpdHkpOwo+ICAgICAgICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUo JnZfdGFyZ2V0LT5hcmNoLnZnaWMubG9jaywgZmxhZ3MpOwo+IEBAIC00NjAsNyArNDc5LDcgQEAg dm9pZCB2Z2ljX2NsZWFyX3BlbmRpbmdfaXJxcyhzdHJ1Y3QgdmNwdSAqdikKPiAgdm9pZCB2Z2lj X3ZjcHVfaW5qZWN0X2lycShzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgaW50IHZpcnEpCj4gIHsK PiAgICAgIHVpbnQ4X3QgcHJpb3JpdHk7Cj4gLSAgICBzdHJ1Y3QgcGVuZGluZ19pcnEgKml0ZXIs ICpuID0gaXJxX3RvX3BlbmRpbmcodiwgdmlycSk7Cj4gKyAgICBzdHJ1Y3QgcGVuZGluZ19pcnEg Kml0ZXIsICpuOwo+ICAgICAgdW5zaWduZWQgbG9uZyBmbGFnczsKPiAgICAgIGJvb2wgcnVubmlu ZzsKPgo+IEBAIC00NjgsNiArNDg3LDggQEAgdm9pZCB2Z2ljX3ZjcHVfaW5qZWN0X2lycShzdHJ1 Y3QgdmNwdSAqdiwgdW5zaWduZWQgaW50IHZpcnEpCj4KPiAgICAgIHNwaW5fbG9ja19pcnFzYXZl KCZ2LT5hcmNoLnZnaWMubG9jaywgZmxhZ3MpOwo+Cj4gKyAgICBuID0gaXJxX3RvX3BlbmRpbmco diwgdmlycSk7Cj4gKwo+ICAgICAgLyogdmNwdSBvZmZsaW5lICovCj4gICAgICBpZiAoIHRlc3Rf Yml0KF9WUEZfZG93biwgJnYtPnBhdXNlX2ZsYWdzKSApCj4gICAgICB7Cj4KCkNoZWVycywKCi0t IApKdWxpZW4gR3JhbGwKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0 cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=