From mboxrd@z Thu Jan 1 00:00:00 1970 From: Praveen Kumar Subject: [PATCH v6 13/16 RESEND] rbtree: place easiest case first in rb_erase() Date: Tue, 21 Nov 2017 20:50:06 +0530 Message-ID: <20171121152009.15591-14-kpraveen.lkml@gmail.com> References: <20171121152009.15591-1-kpraveen.lkml@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20171121152009.15591-1-kpraveen.lkml@gmail.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: sstabellini@kernel.org, wei.liu2@citrix.com, konrad.wilk@oracle.com, George.Dunlap@eu.citrix.com, andrew.cooper3@citrix.com, dario.faggioli@citrix.com, ian.jackson@eu.citrix.com, tim@xen.org, kpraveen.lkml@gmail.com, jbeulich@suse.com List-Id: xen-devel@lists.xenproject.org RnJvbTogTWljaGVsIExlc3BpbmFzc2UgPHdhbGtlbkBnb29nbGUuY29tPgoKSW4gcmJfZXJhc2Us IG1vdmUgdGhlIGVhc3kgY2FzZSAobm9kZSB0byBlcmFzZSBoYXMgbm8gbW9yZSB0aGFuCjEgY2hp bGQpIGZpcnN0LiBJIGZlZWwgdGhlIGNvZGUgcmVhZHMgZWFzaWVyIHRoYXQgd2F5LgoKU2lnbmVk LW9mZi1ieTogTWljaGVsIExlc3BpbmFzc2UgPHdhbGtlbkBnb29nbGUuY29tPgpSZXZpZXdlZC1i eTogUmlrIHZhbiBSaWVsIDxyaWVsQHJlZGhhdC5jb20+CkNjOiBQZXRlciBaaWpsc3RyYSA8YS5w LnppamxzdHJhQGNoZWxsby5ubD4KQ2M6IEFuZHJlYSBBcmNhbmdlbGkgPGFhcmNhbmdlQHJlZGhh dC5jb20+CkNjOiBEYXZpZCBXb29kaG91c2UgPGR3bXcyQGluZnJhZGVhZC5vcmc+ClNpZ25lZC1v ZmYtYnk6IEFuZHJldyBNb3J0b24gPGFrcG1AbGludXgtZm91bmRhdGlvbi5vcmc+ClNpZ25lZC1v ZmYtYnk6IExpbnVzIFRvcnZhbGRzIDx0b3J2YWxkc0BsaW51eC1mb3VuZGF0aW9uLm9yZz4KW0xp bnV4IGNvbW1pdCA2MDY3MGI4MDM0ZDZlMmJhODYwYWY3OWM5Mzc5Yjc3ODhkMDlkYjczXQoKUG9y dGVkIHRvIFhlbi4KClNpZ25lZC1vZmYtYnk6IFByYXZlZW4gS3VtYXIgPGtwcmF2ZWVuLmxrbWxA Z21haWwuY29tPgotLS0KIHhlbi9jb21tb24vcmJ0cmVlLmMgfCAzNSArKysrKysrKysrKysrKysr KystLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDE3 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vcmJ0cmVlLmMgYi94ZW4vY29t bW9uL3JidHJlZS5jCmluZGV4IDhkODM2Y2VmODEuLjEzYTYyMjMyNmQgMTAwNjQ0Ci0tLSBhL3hl bi9jb21tb24vcmJ0cmVlLmMKKysrIGIveGVuL2NvbW1vbi9yYnRyZWUuYwpAQCAtMzY4LDE3ICsz NjgsMjggQEAgc3RhdGljIHZvaWQgX19yYl9lcmFzZV9jb2xvcihzdHJ1Y3QgcmJfbm9kZSAqbm9k ZSwgc3RydWN0IHJiX25vZGUgKnBhcmVudCwKIAogdm9pZCByYl9lcmFzZShzdHJ1Y3QgcmJfbm9k ZSAqbm9kZSwgc3RydWN0IHJiX3Jvb3QgKnJvb3QpCiB7Ci0Jc3RydWN0IHJiX25vZGUgKmNoaWxk LCAqcGFyZW50OworCXN0cnVjdCByYl9ub2RlICpjaGlsZCA9IG5vZGUtPnJiX3JpZ2h0LCAqdG1w ID0gbm9kZS0+cmJfbGVmdDsKKwlzdHJ1Y3QgcmJfbm9kZSAqcGFyZW50OwogCWludCBjb2xvcjsK IAotCWlmICghbm9kZS0+cmJfbGVmdCkKLQkJY2hpbGQgPSBub2RlLT5yYl9yaWdodDsKLQllbHNl IGlmICghbm9kZS0+cmJfcmlnaHQpCi0JCWNoaWxkID0gbm9kZS0+cmJfbGVmdDsKLQllbHNlIHsK KwlpZiAoIXRtcCkgeworCWNhc2UxOgorCQkvKiBDYXNlIDE6IG5vZGUgdG8gZXJhc2UgaGFzIG5v IG1vcmUgdGhhbiAxIGNoaWxkIChlYXN5ISkgKi8KKworCQlwYXJlbnQgPSByYl9wYXJlbnQobm9k ZSk7CisJCWNvbG9yID0gcmJfY29sb3Iobm9kZSk7CisKKwkJaWYgKGNoaWxkKQorCQkJcmJfc2V0 X3BhcmVudChjaGlsZCwgcGFyZW50KTsKKwkJX19yYl9jaGFuZ2VfY2hpbGQobm9kZSwgY2hpbGQs IHBhcmVudCwgcm9vdCk7CisJfSBlbHNlIGlmICghY2hpbGQpIHsKKwkJLyogU3RpbGwgY2FzZSAx LCBidXQgdGhpcyB0aW1lIHRoZSBjaGlsZCBpcyBub2RlLT5yYl9sZWZ0ICovCisJCWNoaWxkID0g dG1wOworCQlnb3RvIGNhc2UxOworCX0gZWxzZSB7CiAJCXN0cnVjdCByYl9ub2RlICpvbGQgPSBu b2RlLCAqbGVmdDsKIAotCQlub2RlID0gbm9kZS0+cmJfcmlnaHQ7CisJCW5vZGUgPSBjaGlsZDsK IAkJd2hpbGUgKChsZWZ0ID0gbm9kZS0+cmJfbGVmdCkgIT0gTlVMTCkKIAkJCW5vZGUgPSBsZWZ0 OwogCkBAIC00MDIsMTggKzQxMyw4IEBAIHZvaWQgcmJfZXJhc2Uoc3RydWN0IHJiX25vZGUgKm5v ZGUsIHN0cnVjdCByYl9yb290ICpyb290KQogCQlub2RlLT5fX3JiX3BhcmVudF9jb2xvciA9IG9s ZC0+X19yYl9wYXJlbnRfY29sb3I7CiAJCW5vZGUtPnJiX2xlZnQgPSBvbGQtPnJiX2xlZnQ7CiAJ CXJiX3NldF9wYXJlbnQob2xkLT5yYl9sZWZ0LCBub2RlKTsKLQotCQlnb3RvIGNvbG9yOwogCX0K IAotCXBhcmVudCA9IHJiX3BhcmVudChub2RlKTsKLQljb2xvciA9IHJiX2NvbG9yKG5vZGUpOwot Ci0JaWYgKGNoaWxkKQotCQlyYl9zZXRfcGFyZW50KGNoaWxkLCBwYXJlbnQpOwotCV9fcmJfY2hh bmdlX2NoaWxkKG5vZGUsIGNoaWxkLCBwYXJlbnQsIHJvb3QpOwotCi1jb2xvcjoKIAlpZiAoY29s b3IgPT0gUkJfQkxBQ0spCiAJCV9fcmJfZXJhc2VfY29sb3IoY2hpbGQsIHBhcmVudCwgcm9vdCk7 CiB9Ci0tIAoyLjEzLjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0 dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK