From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH V3 3/4] xen/arm: io: Use binary search for mmio handler lookup Date: Tue, 26 Jul 2016 22:02:21 +0100 Message-ID: <24fcf9a6-a55c-845e-3bf4-2006c50964c6@arm.com> References: <1469023256-6487-1-git-send-email-shankerd@codeaurora.org> <1469023256-6487-4-git-send-email-shankerd@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1469023256-6487-4-git-send-email-shankerd@codeaurora.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Shanker Donthineni , xen-devel , Stefano Stabellini Cc: Philip Elcan , Wei Liu , Vikram Sethi , George Dunlap , Andrew Cooper , Ian Jackson , Tim Deegan , Jan Beulich List-Id: xen-devel@lists.xenproject.org SGkgU2hhbmtlciwKCk9uIDIwLzA3LzIwMTYgMTU6MDAsIFNoYW5rZXIgRG9udGhpbmVuaSB3cm90 ZToKPiBBcyB0aGUgbnVtYmVyIG9mIEkvTyBoYW5kbGVycyBpbmNyZWFzZSwgdGhlIG92ZXJoZWFk IGFzc29jaWF0ZWQgd2l0aAo+IGxpbmVhciBsb29rdXAgYWxzbyBpbmNyZWFzZXMuIFRoZSBzeXN0 ZW0gbWlnaHQgaGF2ZSBtYXhpbXVtIG9mIDE0NAo+IChhc3N1bWluZyBDT05GSUdfTlJfQ1BVUz0x MjgpIG1taW8gaGFuZGxlcnMuIEluIHdvcnN0IGNhc2Ugc2NlbmFyaW8sCj4gaXQgd291bGQgcmVx dWlyZSAxNDQgaXRlcmF0aW9ucyBmb3IgZmluZGluZyBhIG1hdGNoaW5nIGhhbmRsZXIuIE5vdwo+ IGl0IGlzIHRpbWUgZm9yIHVzIHRvIGNoYW5nZSBmcm9tIGxpbmVhciAoY29tcGxleGl0eSBPKG4p KSB0byBhIGJpbmFyeQo+IHNlYXJjaCAoY29tcGxleGl0eSBPKGxvZyBuKSBmb3IgcmVkdWNpbmcg bW1pbyBoYW5kbGVyIGxvb2t1cCBvdmVyaGVhZC4KPgo+IFNpZ25lZC1vZmYtYnk6IFNoYW5rZXIg RG9udGhpbmVuaSA8c2hhbmtlcmRAY29kZWF1cm9yYS5vcmc+CgpBY2tlZC1ieTogSnVsaWVuIEdy YWxsIDxqdWxpZW4uZ3JhbGxAYXJtLmNvbT4KClJlZ2FyZHMsCgo+IC0tLQo+ICB4ZW4vYXJjaC9h cm0vaW8uYyB8IDM5ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLQo+ICAx IGZpbGUgY2hhbmdlZCwgMjQgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25zKC0pCj4KPiBkaWZm IC0tZ2l0IGEveGVuL2FyY2gvYXJtL2lvLmMgYi94ZW4vYXJjaC9hcm0vaW8uYwo+IGluZGV4IDQw MzMwZjAuLmU4YWE3ZmEgMTAwNjQ0Cj4gLS0tIGEveGVuL2FyY2gvYXJtL2lvLmMKPiArKysgYi94 ZW4vYXJjaC9hcm0vaW8uYwo+IEBAIC0yMCw2ICsyMCw3IEBACj4gICNpbmNsdWRlIDx4ZW4vbGli Lmg+Cj4gICNpbmNsdWRlIDx4ZW4vc3BpbmxvY2suaD4KPiAgI2luY2x1ZGUgPHhlbi9zY2hlZC5o Pgo+ICsjaW5jbHVkZSA8eGVuL3NvcnQuaD4KPiAgI2luY2x1ZGUgPGFzbS9jdXJyZW50Lmg+Cj4g ICNpbmNsdWRlIDxhc20vbW1pby5oPgo+Cj4gQEAgLTcwLDI3ICs3MSwzMSBAQCBzdGF0aWMgaW50 IGhhbmRsZV93cml0ZShjb25zdCBzdHJ1Y3QgbW1pb19oYW5kbGVyICpoYW5kbGVyLCBzdHJ1Y3Qg dmNwdSAqdiwKPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZXItPnByaXYp Owo+ICB9Cj4KPiAtc3RhdGljIGNvbnN0IHN0cnVjdCBtbWlvX2hhbmRsZXIgKmZpbmRfbW1pb19o YW5kbGVyKHN0cnVjdCBkb21haW4gKmQsCj4gLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBwYWRkcl90IGdwYSkKPiArLyogVGhpcyBmdW5jdGlvbiBh c3N1bWVzIHRoYXQgbW1pbyByZWdpb25zIGFyZSBub3Qgb3ZlcmxhcHBlZCAqLwo+ICtzdGF0aWMg aW50IGNtcF9tbWlvX2hhbmRsZXIoY29uc3Qgdm9pZCAqa2V5LCBjb25zdCB2b2lkICplbGVtKQo+ ICB7Cj4gLSAgICBjb25zdCBzdHJ1Y3QgbW1pb19oYW5kbGVyICpoYW5kbGVyOwo+IC0gICAgdW5z aWduZWQgaW50IGk7Cj4gLSAgICBzdHJ1Y3Qgdm1taW8gKnZtbWlvID0gJmQtPmFyY2gudm1taW87 Cj4gKyAgICBjb25zdCBzdHJ1Y3QgbW1pb19oYW5kbGVyICpoYW5kbGVyMCA9IGtleTsKPiArICAg IGNvbnN0IHN0cnVjdCBtbWlvX2hhbmRsZXIgKmhhbmRsZXIxID0gZWxlbTsKPgo+IC0gICAgcmVh ZF9sb2NrKCZ2bW1pby0+bG9jayk7Cj4gKyAgICBpZiAoIGhhbmRsZXIwLT5hZGRyIDwgaGFuZGxl cjEtPmFkZHIgKQo+ICsgICAgICAgIHJldHVybiAtMTsKPgo+IC0gICAgZm9yICggaSA9IDA7IGkg PCB2bW1pby0+bnVtX2VudHJpZXM7IGkrKyApCj4gLSAgICB7Cj4gLSAgICAgICAgaGFuZGxlciA9 ICZ2bW1pby0+aGFuZGxlcnNbaV07Cj4gKyAgICBpZiAoIGhhbmRsZXIwLT5hZGRyID4gKGhhbmRs ZXIxLT5hZGRyICsgaGFuZGxlcjEtPnNpemUpICkKPiArICAgICAgICByZXR1cm4gMTsKPgo+IC0g ICAgICAgIGlmICggKGdwYSA+PSBoYW5kbGVyLT5hZGRyKSAmJgo+IC0gICAgICAgICAgICAgKGdw YSA8IChoYW5kbGVyLT5hZGRyICsgaGFuZGxlci0+c2l6ZSkpICkKPiAtICAgICAgICAgICAgYnJl YWs7Cj4gLSAgICB9Cj4gKyAgICByZXR1cm4gMDsKPiArfQo+Cj4gLSAgICBpZiAoIGkgPT0gdm1t aW8tPm51bV9lbnRyaWVzICkKPiAtICAgICAgICBoYW5kbGVyID0gTlVMTDsKPiArc3RhdGljIGNv bnN0IHN0cnVjdCBtbWlvX2hhbmRsZXIgKmZpbmRfbW1pb19oYW5kbGVyKHN0cnVjdCBkb21haW4g KmQsCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBwYWRkcl90IGdwYSkKPiArewo+ICsgICAgc3RydWN0IHZtbWlvICp2bW1pbyA9ICZkLT5hcmNo LnZtbWlvOwo+ICsgICAgc3RydWN0IG1taW9faGFuZGxlciBrZXkgPSB7LmFkZHIgPSBncGF9Owo+ ICsgICAgY29uc3Qgc3RydWN0IG1taW9faGFuZGxlciAqaGFuZGxlcjsKPgo+ICsgICAgcmVhZF9s b2NrKCZ2bW1pby0+bG9jayk7Cj4gKyAgICBoYW5kbGVyID0gYnNlYXJjaCgma2V5LCB2bW1pby0+ aGFuZGxlcnMsIHZtbWlvLT5udW1fZW50cmllcywKPiArICAgICAgICAgICAgICAgICAgICAgIHNp emVvZigqaGFuZGxlciksIGNtcF9tbWlvX2hhbmRsZXIpOwo+ICAgICAgcmVhZF91bmxvY2soJnZt bWlvLT5sb2NrKTsKPgo+ICAgICAgcmV0dXJuIGhhbmRsZXI7Cj4gQEAgLTEzMSw2ICsxMzYsMTAg QEAgdm9pZCByZWdpc3Rlcl9tbWlvX2hhbmRsZXIoc3RydWN0IGRvbWFpbiAqZCwKPgo+ICAgICAg dm1taW8tPm51bV9lbnRyaWVzKys7Cj4KPiArICAgIC8qIFNvcnQgbW1pbyBoYW5kbGVycyBpbiBh c2NlbmRpbmcgb3JkZXIgYmFzZWQgb24gYmFzZSBhZGRyZXNzICovCj4gKyAgICBzb3J0KHZtbWlv LT5oYW5kbGVycywgdm1taW8tPm51bV9lbnRyaWVzLCBzaXplb2Yoc3RydWN0IG1taW9faGFuZGxl ciksCj4gKyAgICAgICAgIGNtcF9tbWlvX2hhbmRsZXIsIE5VTEwpOwo+ICsKPiAgICAgIHdyaXRl X3VubG9jaygmdm1taW8tPmxvY2spOwo+ICB9Cj4KPgoKLS0gCkp1bGllbiBHcmFsbAoKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxp bmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5vcmcveGVu LWRldmVsCg==