From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrii Anisov Subject: [PATCH] gic:vgic: avoid excessive conversions Date: Fri, 16 Nov 2018 18:45:27 +0200 Message-ID: <1542386727-30311-1-git-send-email-andrii.anisov@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1gNhFL-0000IE-Je for xen-devel@lists.xenproject.org; Fri, 16 Nov 2018 16:45:31 +0000 Received: by mail-ed1-x541.google.com with SMTP id y56so7617475edd.11 for ; Fri, 16 Nov 2018 08:45:30 -0800 (PST) List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" Cc: xen-devel@lists.xenproject.org, Julien Grall , Stefano Stabellini , Andrii Anisov List-Id: xen-devel@lists.xenproject.org RnJvbTogQW5kcmlpIEFuaXNvdiA8YW5kcmlpX2FuaXNvdkBlcGFtLmNvbT4KCkF2b2lkIGV4Y2Vz c2l2ZSBjb252ZXJzaW9ucyBiZXR3ZWVuIHBlbmRpbmdfaXJxIGFuZCBpcnEgbnVtYmVyL3ByaW9y aXR5LgpUaGlzIHNpbWxpZmllcyBmdW5jdGlvbnMgaW50ZXJmYWNlIGFuZCByZWR1Y2VzIHVuZGVy IGxvY2tzIGNvZGUgc2l6ZS4KClNpZ25lZC1vZmYtYnk6IEFuZHJpaSBBbmlzb3YgPGFuZHJpaV9h bmlzb3ZAZXBhbS5jb20+Ci0tLQogeGVuL2FyY2gvYXJtL2dpYy12Z2ljLmMgICAgfCAxMCArKyst LS0tLS0tCiB4ZW4vYXJjaC9hcm0vdmdpYy12My1pdHMuYyB8ICAyICstCiB4ZW4vYXJjaC9hcm0v dmdpYy5jICAgICAgICB8ICA2ICsrKy0tLQogeGVuL2luY2x1ZGUvYXNtLWFybS9naWMuaCAgfCAg NSArKy0tLQogNCBmaWxlcyBjaGFuZ2VkLCA5IGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS9naWMtdmdpYy5jIGIveGVuL2FyY2gvYXJtL2dp Yy12Z2ljLmMKaW5kZXggOTkwMzk5Yy4uZThlOTEzNiAxMDA2NDQKLS0tIGEveGVuL2FyY2gvYXJt L2dpYy12Z2ljLmMKKysrIGIveGVuL2FyY2gvYXJtL2dpYy12Z2ljLmMKQEAgLTczLDEwICs3Myw4 IEBAIHZvaWQgZ2ljX3JlbW92ZV9mcm9tX2xyX3BlbmRpbmcoc3RydWN0IHZjcHUgKnYsIHN0cnVj dCBwZW5kaW5nX2lycSAqcCkKICAgICBsaXN0X2RlbF9pbml0KCZwLT5scl9xdWV1ZSk7CiB9CiAK LXZvaWQgZ2ljX3JhaXNlX2luZmxpZ2h0X2lycShzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgaW50 IHZpcnR1YWxfaXJxKQordm9pZCBnaWNfcmFpc2VfaW5mbGlnaHRfaXJxKHN0cnVjdCB2Y3B1ICp2 LCBzdHJ1Y3QgcGVuZGluZ19pcnEgKm4pCiB7Ci0gICAgc3RydWN0IHBlbmRpbmdfaXJxICpuID0g aXJxX3RvX3BlbmRpbmcodiwgdmlydHVhbF9pcnEpOwotCiAgICAgLyogSWYgYW4gTFBJIGhhcyBi ZWVuIHJlbW92ZWQgbWVhbndoaWxlLCB0aGVyZSBpcyBub3RoaW5nIGxlZnQgdG8gcmFpc2UuICov CiAgICAgaWYgKCB1bmxpa2VseSghbikgKQogICAgICAgICByZXR1cm47CkBAIC0xMzMsMTIgKzEz MSwxMCBAQCBzdGF0aWMgdW5zaWduZWQgaW50IGdpY19maW5kX3VudXNlZF9scihzdHJ1Y3QgdmNw dSAqdiwKICAgICByZXR1cm4gbHI7CiB9CiAKLXZvaWQgZ2ljX3JhaXNlX2d1ZXN0X2lycShzdHJ1 Y3QgdmNwdSAqdiwgdW5zaWduZWQgaW50IHZpcnR1YWxfaXJxLAotICAgICAgICB1bnNpZ25lZCBp bnQgcHJpb3JpdHkpCit2b2lkIGdpY19yYWlzZV9ndWVzdF9pcnEoc3RydWN0IHZjcHUgKnYsIHN0 cnVjdCBwZW5kaW5nX2lycSAqcCkKIHsKICAgICBpbnQgaTsKICAgICB1bnNpZ25lZCBpbnQgbnJf bHJzID0gZ2ljX2dldF9ucl9scnMoKTsKLSAgICBzdHJ1Y3QgcGVuZGluZ19pcnEgKnAgPSBpcnFf dG9fcGVuZGluZyh2LCB2aXJ0dWFsX2lycSk7CiAKICAgICBBU1NFUlQoc3Bpbl9pc19sb2NrZWQo JnYtPmFyY2gudmdpYy5sb2NrKSk7CiAKQEAgLTIyNyw3ICsyMjMsNyBAQCBzdGF0aWMgdm9pZCBn aWNfdXBkYXRlX29uZV9scihzdHJ1Y3QgdmNwdSAqdiwgaW50IGkpCiAgICAgICAgIGlmICggdGVz dF9iaXQoR0lDX0lSUV9HVUVTVF9FTkFCTEVELCAmcC0+c3RhdHVzKSAmJgogICAgICAgICAgICAg IHRlc3RfYml0KEdJQ19JUlFfR1VFU1RfUVVFVUVELCAmcC0+c3RhdHVzKSAmJgogICAgICAgICAg ICAgICF0ZXN0X2JpdChHSUNfSVJRX0dVRVNUX01JR1JBVElORywgJnAtPnN0YXR1cykgKQotICAg ICAgICAgICAgZ2ljX3JhaXNlX2d1ZXN0X2lycSh2LCBpcnEsIHAtPnByaW9yaXR5KTsKKyAgICAg ICAgICAgIGdpY19yYWlzZV9ndWVzdF9pcnEodiwgcCk7CiAgICAgICAgIGVsc2UgewogICAgICAg ICAgICAgbGlzdF9kZWxfaW5pdCgmcC0+aW5mbGlnaHQpOwogICAgICAgICAgICAgLyoKZGlmZiAt LWdpdCBhL3hlbi9hcmNoL2FybS92Z2ljLXYzLWl0cy5jIGIveGVuL2FyY2gvYXJtL3ZnaWMtdjMt aXRzLmMKaW5kZXggNWI3M2M0ZS4uMTkzYTI4ZiAxMDA2NDQKLS0tIGEveGVuL2FyY2gvYXJtL3Zn aWMtdjMtaXRzLmMKKysrIGIveGVuL2FyY2gvYXJtL3ZnaWMtdjMtaXRzLmMKQEAgLTQ0Nyw3ICs0 NDcsNyBAQCBzdGF0aWMgdm9pZCB1cGRhdGVfbHBpX3ZnaWNfc3RhdHVzKHN0cnVjdCB2Y3B1ICp2 LCBzdHJ1Y3QgcGVuZGluZ19pcnEgKnApCiAgICAgewogICAgICAgICBpZiAoICFsaXN0X2VtcHR5 KCZwLT5pbmZsaWdodCkgJiYKICAgICAgICAgICAgICAhdGVzdF9iaXQoR0lDX0lSUV9HVUVTVF9W SVNJQkxFLCAmcC0+c3RhdHVzKSApCi0gICAgICAgICAgICBnaWNfcmFpc2VfZ3Vlc3RfaXJxKHYs IHAtPmlycSwgcC0+bHBpX3ByaW9yaXR5KTsKKyAgICAgICAgICAgIGdpY19yYWlzZV9ndWVzdF9p cnEodiwgcCk7CiAgICAgfQogICAgIGVsc2UKICAgICAgICAgZ2ljX3JlbW92ZV9mcm9tX2xyX3Bl bmRpbmcodiwgcCk7CmRpZmYgLS1naXQgYS94ZW4vYXJjaC9hcm0vdmdpYy5jIGIveGVuL2FyY2gv YXJtL3ZnaWMuYwppbmRleCA1YTRmMDgyLi42MjhhMzRmIDEwMDY0NAotLS0gYS94ZW4vYXJjaC9h cm0vdmdpYy5jCisrKyBiL3hlbi9hcmNoL2FybS92Z2ljLmMKQEAgLTQwMyw3ICs0MDMsNyBAQCB2 b2lkIHZnaWNfZW5hYmxlX2lycXMoc3RydWN0IHZjcHUgKnYsIHVpbnQzMl90IHIsIGludCBuKQog ICAgICAgICBwID0gaXJxX3RvX3BlbmRpbmcodl90YXJnZXQsIGlycSk7CiAgICAgICAgIHNldF9i aXQoR0lDX0lSUV9HVUVTVF9FTkFCTEVELCAmcC0+c3RhdHVzKTsKICAgICAgICAgaWYgKCAhbGlz dF9lbXB0eSgmcC0+aW5mbGlnaHQpICYmICF0ZXN0X2JpdChHSUNfSVJRX0dVRVNUX1ZJU0lCTEUs ICZwLT5zdGF0dXMpICkKLSAgICAgICAgICAgIGdpY19yYWlzZV9ndWVzdF9pcnEodl90YXJnZXQs IGlycSwgcC0+cHJpb3JpdHkpOworICAgICAgICAgICAgZ2ljX3JhaXNlX2d1ZXN0X2lycSh2X3Rh cmdldCwgcCk7CiAgICAgICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJnZfdGFyZ2V0LT5hcmNo LnZnaWMubG9jaywgZmxhZ3MpOwogICAgICAgICBpZiAoIHAtPmRlc2MgIT0gTlVMTCApCiAgICAg ICAgIHsKQEAgLTU2OCw3ICs1NjgsNyBAQCB2b2lkIHZnaWNfaW5qZWN0X2lycShzdHJ1Y3QgZG9t YWluICpkLCBzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgaW50IHZpcnEsCiAKICAgICBpZiAoICFs aXN0X2VtcHR5KCZuLT5pbmZsaWdodCkgKQogICAgIHsKLSAgICAgICAgZ2ljX3JhaXNlX2luZmxp Z2h0X2lycSh2LCB2aXJxKTsKKyAgICAgICAgZ2ljX3JhaXNlX2luZmxpZ2h0X2lycSh2LCBuKTsK ICAgICAgICAgZ290byBvdXQ7CiAgICAgfQogCkBAIC01NzcsNyArNTc3LDcgQEAgdm9pZCB2Z2lj X2luamVjdF9pcnEoc3RydWN0IGRvbWFpbiAqZCwgc3RydWN0IHZjcHUgKnYsIHVuc2lnbmVkIGlu dCB2aXJxLAogCiAgICAgLyogdGhlIGlycSBpcyBlbmFibGVkICovCiAgICAgaWYgKCB0ZXN0X2Jp dChHSUNfSVJRX0dVRVNUX0VOQUJMRUQsICZuLT5zdGF0dXMpICkKLSAgICAgICAgZ2ljX3JhaXNl X2d1ZXN0X2lycSh2LCB2aXJxLCBwcmlvcml0eSk7CisgICAgICAgIGdpY19yYWlzZV9ndWVzdF9p cnEodiwgbik7CiAKICAgICBsaXN0X2Zvcl9lYWNoX2VudHJ5ICggaXRlciwgJnYtPmFyY2gudmdp Yy5pbmZsaWdodF9pcnFzLCBpbmZsaWdodCApCiAgICAgewpkaWZmIC0tZ2l0IGEveGVuL2luY2x1 ZGUvYXNtLWFybS9naWMuaCBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vZ2ljLmgKaW5kZXggZmFiMDJm MS4uMTg1OTQxNiAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLWFybS9naWMuaAorKysgYi94 ZW4vaW5jbHVkZS9hc20tYXJtL2dpYy5oCkBAIC0yNTIsOSArMjUyLDggQEAgaW50IGdpY19yZW1v dmVfaXJxX2Zyb21fZ3Vlc3Qoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWduZWQgaW50IHZpcnEsCiBl eHRlcm4gdm9pZCBnaWNfY2xlYXJfcGVuZGluZ19pcnFzKHN0cnVjdCB2Y3B1ICp2KTsKIAogZXh0 ZXJuIHZvaWQgaW5pdF9tYWludGVuYW5jZV9pbnRlcnJ1cHQodm9pZCk7Ci1leHRlcm4gdm9pZCBn aWNfcmFpc2VfZ3Vlc3RfaXJxKHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBpbnQgaXJxLAotICAg ICAgICB1bnNpZ25lZCBpbnQgcHJpb3JpdHkpOwotZXh0ZXJuIHZvaWQgZ2ljX3JhaXNlX2luZmxp Z2h0X2lycShzdHJ1Y3QgdmNwdSAqdiwgdW5zaWduZWQgaW50IHZpcnR1YWxfaXJxKTsKK2V4dGVy biB2b2lkIGdpY19yYWlzZV9ndWVzdF9pcnEoc3RydWN0IHZjcHUgKnYsIHN0cnVjdCBwZW5kaW5n X2lycSAqcCk7CitleHRlcm4gdm9pZCBnaWNfcmFpc2VfaW5mbGlnaHRfaXJxKHN0cnVjdCB2Y3B1 ICp2LCBzdHJ1Y3QgcGVuZGluZ19pcnEgKm4pOwogCiAvKiBBY2NlcHQgYW4gaW50ZXJydXB0IGZy b20gdGhlIEdJQyBhbmQgZGlzcGF0Y2ggaXRzIGhhbmRsZXIgKi8KIGV4dGVybiB2b2lkIGdpY19p bnRlcnJ1cHQoc3RydWN0IGNwdV91c2VyX3JlZ3MgKnJlZ3MsIGludCBpc19maXEpOwotLSAKMi43 LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4t ZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczov L2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs