From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shanker Donthineni Subject: [PATCH RESEND 2/4] xen: Add generic implementation of binary search Date: Fri, 15 Jul 2016 12:35:38 -0500 Message-ID: <1468604140-15665-3-git-send-email-shankerd@codeaurora.org> References: <1468604140-15665-1-git-send-email-shankerd@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1468604140-15665-1-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: xen-devel Cc: Stefano Stabellini , Wei Liu , George Dunlap , Andrew Cooper , Ian Jackson , Tim Deegan , Julien Grall , Jan Beulich , Shanker Donthineni List-Id: xen-devel@lists.xenproject.org VGhpcyBwYXRjaCBhZGRzIHRoZSBnZW5lcmljIGltcGxlbWVudGF0aW9uIG9mIGJpbmFyeSBzZWFy Y2ggYWxnb3JpdGhtCndoY2loIGlzIGNvcGllZCBmcm9tIExpbnV4IGtlcm5lbCB2NC43LXJjNy4g Tm8gZnVuY3Rpb25hbCBjaGFuZ2VzLgoKU2lnbmVkLW9mZi1ieTogU2hhbmtlciBEb250aGluZW5p IDxzaGFua2VyZEBjb2RlYXVyb3JhLm9yZz4KLS0tCiBSZXNlbmQgdG8gZml4IHRoZSBJbi1SZXBs eS1Uby9SZWZlcmVuY2VzIGhlYWRlciBmZWlsZHMuCgogeGVuL2NvbW1vbi9NYWtlZmlsZSAgICAg ICB8ICAxICsKIHhlbi9jb21tb24vYnNlYXJjaC5jICAgICAgfCA1MSArKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogeGVuL2luY2x1ZGUveGVuL2JzZWFyY2gu aCB8ICA5ICsrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA2MSBpbnNlcnRpb25zKCspCiBjcmVh dGUgbW9kZSAxMDA2NDQgeGVuL2NvbW1vbi9ic2VhcmNoLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCB4 ZW4vaW5jbHVkZS94ZW4vYnNlYXJjaC5oCgpkaWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9NYWtlZmls ZSBiL3hlbi9jb21tb24vTWFrZWZpbGUKaW5kZXggZGJmMDBjNi4uZjgxMjNjMiAxMDA2NDQKLS0t IGEveGVuL2NvbW1vbi9NYWtlZmlsZQorKysgYi94ZW4vY29tbW9uL01ha2VmaWxlCkBAIC00Myw2 ICs0Myw3IEBAIG9iai15ICs9IHNjaGVkdWxlLm8KIG9iai15ICs9IHNodXRkb3duLm8KIG9iai15 ICs9IHNvZnRpcnEubwogb2JqLXkgKz0gc29ydC5vCitvYmoteSArPSBic2VhcmNoLm8KIG9iai15 ICs9IHNtcC5vCiBvYmoteSArPSBzcGlubG9jay5vCiBvYmoteSArPSBzdG9wX21hY2hpbmUubwpk aWZmIC0tZ2l0IGEveGVuL2NvbW1vbi9ic2VhcmNoLmMgYi94ZW4vY29tbW9uL2JzZWFyY2guYwpu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zYmNmZDcyCi0tLSAvZGV2L251bGwK KysrIGIveGVuL2NvbW1vbi9ic2VhcmNoLmMKQEAgLTAsMCArMSw1MSBAQAorLyoKKyAqIEEgZ2Vu ZXJpYyBpbXBsZW1lbnRhdGlvbiBvZiBiaW5hcnkgc2VhcmNoIGZvciB0aGUgTGludXgga2VybmVs CisgKgorICogQ29weXJpZ2h0IChDKSAyMDA4LTIwMDkgS3NwbGljZSwgSW5jLgorICogQXV0aG9y OiBUaW0gQWJib3R0IDx0YWJib3R0QGtzcGxpY2UuY29tPgorICoKKyAqIFRoaXMgcHJvZ3JhbSBp cyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyAqIG1vZGlm eSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFz CisgKiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgdmVyc2lvbiAy LgorICovCisKKyNpbmNsdWRlIDx4ZW4vYnNlYXJjaC5oPgorCisvKgorICogYnNlYXJjaCAtIGJp bmFyeSBzZWFyY2ggYW4gYXJyYXkgb2YgZWxlbWVudHMKKyAqIEBrZXk6IHBvaW50ZXIgdG8gaXRl bSBiZWluZyBzZWFyY2hlZCBmb3IKKyAqIEBiYXNlOiBwb2ludGVyIHRvIGZpcnN0IGVsZW1lbnQg dG8gc2VhcmNoCisgKiBAbnVtOiBudW1iZXIgb2YgZWxlbWVudHMKKyAqIEBzaXplOiBzaXplIG9m IGVhY2ggZWxlbWVudAorICogQGNtcDogcG9pbnRlciB0byBjb21wYXJpc29uIGZ1bmN0aW9uCisg KgorICogVGhpcyBmdW5jdGlvbiBkb2VzIGEgYmluYXJ5IHNlYXJjaCBvbiB0aGUgZ2l2ZW4gYXJy YXkuICBUaGUKKyAqIGNvbnRlbnRzIG9mIHRoZSBhcnJheSBzaG91bGQgYWxyZWFkeSBiZSBpbiBh c2NlbmRpbmcgc29ydGVkIG9yZGVyCisgKiB1bmRlciB0aGUgcHJvdmlkZWQgY29tcGFyaXNvbiBm dW5jdGlvbi4KKyAqCisgKiBOb3RlIHRoYXQgdGhlIGtleSBuZWVkIG5vdCBoYXZlIHRoZSBzYW1l IHR5cGUgYXMgdGhlIGVsZW1lbnRzIGluCisgKiB0aGUgYXJyYXksIGUuZy4ga2V5IGNvdWxkIGJl IGEgc3RyaW5nIGFuZCB0aGUgY29tcGFyaXNvbiBmdW5jdGlvbgorICogY291bGQgY29tcGFyZSB0 aGUgc3RyaW5nIHdpdGggdGhlIHN0cnVjdCdzIG5hbWUgZmllbGQuICBIb3dldmVyLCBpZgorICog dGhlIGtleSBhbmQgZWxlbWVudHMgaW4gdGhlIGFycmF5IGFyZSBvZiB0aGUgc2FtZSB0eXBlLCB5 b3UgY2FuIHVzZQorICogdGhlIHNhbWUgY29tcGFyaXNvbiBmdW5jdGlvbiBmb3IgYm90aCBzb3J0 KCkgYW5kIGJzZWFyY2goKS4KKyAqLwordm9pZCAqYnNlYXJjaChjb25zdCB2b2lkICprZXksIGNv bnN0IHZvaWQgKmJhc2UsIHNpemVfdCBudW0sIHNpemVfdCBzaXplLAorCSAgICAgIGludCAoKmNt cCkoY29uc3Qgdm9pZCAqa2V5LCBjb25zdCB2b2lkICplbHQpKQoreworCXNpemVfdCBzdGFydCA9 IDAsIGVuZCA9IG51bTsKKwlpbnQgcmVzdWx0OworCisJd2hpbGUgKHN0YXJ0IDwgZW5kKSB7CisJ CXNpemVfdCBtaWQgPSBzdGFydCArIChlbmQgLSBzdGFydCkgLyAyOworCisJCXJlc3VsdCA9IGNt cChrZXksIGJhc2UgKyBtaWQgKiBzaXplKTsKKwkJaWYgKHJlc3VsdCA8IDApCisJCQllbmQgPSBt aWQ7CisJCWVsc2UgaWYgKHJlc3VsdCA+IDApCisJCQlzdGFydCA9IG1pZCArIDE7CisJCWVsc2UK KwkJCXJldHVybiAodm9pZCAqKWJhc2UgKyBtaWQgKiBzaXplOworCX0KKworCXJldHVybiBOVUxM OworfQpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL2JzZWFyY2guaCBiL3hlbi9pbmNsdWRl L3hlbi9ic2VhcmNoLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDdjZjYw NAotLS0gL2Rldi9udWxsCisrKyBiL3hlbi9pbmNsdWRlL3hlbi9ic2VhcmNoLmgKQEAgLTAsMCAr MSw5IEBACisjaWZuZGVmIF9fWEVOX0JTRUFSQ0hfSF9fCisjZGVmaW5lIF9fWEVOX0JTRUFSQ0hf SF9fCisKKyNpbmNsdWRlIDx4ZW4vdHlwZXMuaD4KKwordm9pZCAqYnNlYXJjaChjb25zdCB2b2lk ICprZXksIGNvbnN0IHZvaWQgKmJhc2UsIHNpemVfdCBudW0sIHNpemVfdCBzaXplLAorCSAgICAg IGludCAoKmNtcCkoY29uc3Qgdm9pZCAqa2V5LCBjb25zdCB2b2lkICplbHQpKTsKKworI2VuZGlm IC8qIF9fWEVOX0JTRUFSQ0hfSF9fICovCi0tIApRdWFsY29tbSBEYXRhY2VudGVyIFRlY2hub2xv Z2llcywgSW5jLiBvbiBiZWhhbGYgb2YgdGhlIFF1YWxjb21tIFRlY2hub2xvZ2llcywgSW5jLgpR dWFsY29tbSBUZWNobm9sb2dpZXMsIEluYy4gaXMgYSBtZW1iZXIgb2YgdGhlIENvZGUgQXVyb3Jh IEZvcnVtLCBhIExpbnV4IEZvdW5kYXRpb24gQ29sbGFib3JhdGl2ZSBQcm9qZWN0LgoKCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBtYWls aW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hl bi1kZXZlbAo=