From mboxrd@z Thu Jan 1 00:00:00 1970 From: Praveen Kumar Subject: [PATCH v4 03/17] rbtree: empty nodes have no color Date: Tue, 4 Jul 2017 01:28:07 +0530 Message-ID: <20170703195821.29845-4-kpraveen.lkml@gmail.com> References: <20170703195821.29845-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: <20170703195821.29845-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, 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 RnJvbTogTWljaGVsIExlc3BpbmFzc2UgPHdhbGtlbkBnb29nbGUuY29tPgoKRW1wdHkgbm9kZXMg aGF2ZSBubyBjb2xvci4gIFdlIGNhbiBtYWtlIHVzZSBvZiB0aGlzIHByb3BlcnR5IHRvIHNpbXBs aWZ5CnRoZSBjb2RlIGVtaXR0ZWQgYnkgdGhlIFJCX0VNUFRZX05PREUgYW5kIFJCX0NMRUFSX05P REUgbWFjcm9zLiAgQWxzbywKd2UgY2FuIGdldCByaWQgb2YgdGhlIHJiX2luaXRfbm9kZSBmdW5j dGlvbiB3aGljaCBoYWQgYmVlbiBpbnRyb2R1Y2VkIGJ5CmNvbW1pdCA4OGQxOWNmMzc5NTIgKCJ0 aW1lcnM6IEFkZCByYl9pbml0X25vZGUoKSB0byBhbGxvdyBmb3Igc3RhY2sKYWxsb2NhdGVkIHJi IG5vZGVzIikgdG8gYXZvaWQgc29tZSBpc3N1ZSB3aXRoIHRoZSBlbXB0eSBub2RlJ3MgY29sb3Ig bm90CmJlaW5nIGluaXRpYWxpemVkLgoKSSdtIG5vdCBzdXJlIHdoYXQgdGhlIFJCX0VNUFRZX05P REUgY2hlY2tzIGluIHJiX3ByZXYoKSAvIHJiX25leHQoKSBhcmUKZG9pbmcgdGhlcmUsIHRob3Vn aC4gIGF4Ym9lIGludHJvZHVjZWQgdGhlbSBpbiBjb21taXQgMTBmZDQ4ZjIzNzZkCigicmJ0cmVl OiBmaXhlZCByZXZlcnNlZCBSQl9FTVBUWV9OT0RFIGFuZCByYl9uZXh0L3ByZXYiKS4gIFRoZSB3 YXkgSQpzZWUgaXQsIHRoZSAnZW1wdHkgbm9kZScgYWJzdHJhY3Rpb24gaXMgb25seSB1c2VkIGJ5 IHJidHJlZSB1c2VycyB0bwpmbGFnIG5vZGVzIHRoYXQgdGhleSBoYXZlbid0IGluc2VydGVkIGlu IGFueSByYnRyZWUsIHNvIGFza2luZyB0aGUKcHJlZGVjZXNzb3Igb3Igc3VjY2Vzc29yIG9mIHN1 Y2ggbm9kZXMgZG9lc24ndCBtYWtlIGFueSBzZW5zZS4KCk9uZSBmaW5hbCByYl9pbml0X25vZGUo KSBjYWxsZXIgd2FzIHJlY2VudGx5IGFkZGVkIGluIHN5c2N0bCBjb2RlIHRvCmltcGxlbWVudCBm YXN0ZXIgc3lzY3RsIG5hbWUgbG9va3Vwcy4gIFRoaXMgY29kZSBkb2Vzbid0IG1ha2UgdXNlIG9m ClJCX0VNUFRZX05PREUgYXQgYWxsLCBhbmQgZnJvbSB3aGF0IEkgY291bGQgc2VlIGl0IG9ubHkg Y2FsbGVkCnJiX2luaXRfbm9kZSgpIHVuZGVyIHRoZSBtaXN0YWtlbiBhc3N1bXB0aW9uIHRoYXQg c3VjaCBpbml0aWFsaXphdGlvbiB3YXMKcmVxdWlyZWQgYmVmb3JlIG5vZGUgaW5zZXJ0aW9uLgoK W3NmckBjYW5iLmF1dWcub3JnLmF1OiBmaXggbmV0L2NlcGgvb3NkX2NsaWVudC5jIGJ1aWxkXQpT aWduZWQtb2ZmLWJ5OiBNaWNoZWwgTGVzcGluYXNzZSA8d2Fsa2VuQGdvb2dsZS5jb20+CkNjOiBB bmRyZWEgQXJjYW5nZWxpIDxhYXJjYW5nZUByZWRoYXQuY29tPgpBY2tlZC1ieTogRGF2aWQgV29v ZGhvdXNlIDxEYXZpZC5Xb29kaG91c2VAaW50ZWwuY29tPgpDYzogUmlrIHZhbiBSaWVsIDxyaWVs QHJlZGhhdC5jb20+CkNjOiBQZXRlciBaaWpsc3RyYSA8YS5wLnppamxzdHJhQGNoZWxsby5ubD4K Q2M6IERhbmllbCBTYW50b3MgPGRhbmllbC5zYW50b3NAcG9ib3guY29tPgpDYzogSmVucyBBeGJv ZSA8YXhib2VAa2VybmVsLmRrPgpDYzogIkVyaWMgVy4gQmllZGVybWFuIiA8ZWJpZWRlcm1AeG1p c3Npb24uY29tPgpDYzogSm9obiBTdHVsdHogPGpvaG4uc3R1bHR6QGxpbmFyby5vcmc+ClNpZ25l ZC1vZmYtYnk6IFN0ZXBoZW4gUm90aHdlbGwgPHNmckBjYW5iLmF1dWcub3JnLmF1PgpTaWduZWQt b2ZmLWJ5OiBBbmRyZXcgTW9ydG9uIDxha3BtQGxpbnV4LWZvdW5kYXRpb24ub3JnPgpTaWduZWQt b2ZmLWJ5OiBMaW51cyBUb3J2YWxkcyA8dG9ydmFsZHNAbGludXgtZm91bmRhdGlvbi5vcmc+CltM aW51eCBjb21taXQgNGMxOTlhOTNhMmQzNmIyNzdhOWZkMjA5YTBmMjc5M2Y4NDYwYTIxNV0KClBv cnRlZCByYnRyZWUuaCBhbmQgcmJ0cmVlLmMgY2hhbmdlcyB3aGljaCBhcmUgcmVsZXZhbnQgdG8g WGVuLgoKU2lnbmVkLW9mZi1ieTogUHJhdmVlbiBLdW1hciA8a3ByYXZlZW4ubGttbEBnbWFpbC5j b20+Ci0tLQogeGVuL2NvbW1vbi9yYnRyZWUuYyAgICAgIHwgNCArKy0tCiB4ZW4vaW5jbHVkZS94 ZW4vcmJ0cmVlLmggfCA4ICsrKysrLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygr KSwgNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vY29tbW9uL3JidHJlZS5jIGIveGVu L2NvbW1vbi9yYnRyZWUuYwppbmRleCAzYTE5YjQ0YTJmLi5lMmE2NjUxMThiIDEwMDY0NAotLS0g YS94ZW4vY29tbW9uL3JidHJlZS5jCisrKyBiL3hlbi9jb21tb24vcmJ0cmVlLmMKQEAgLTMxNiw3 ICszMTYsNyBAQCBzdHJ1Y3QgcmJfbm9kZSAqcmJfbmV4dChjb25zdCBzdHJ1Y3QgcmJfbm9kZSAq bm9kZSkKIHsKIAlzdHJ1Y3QgcmJfbm9kZSAqcGFyZW50OwogCi0JaWYgKHJiX3BhcmVudChub2Rl KSA9PSBub2RlKQorCWlmIChSQl9FTVBUWV9OT0RFKG5vZGUpKQogCQlyZXR1cm4gTlVMTDsKIAog CS8qIElmIHdlIGhhdmUgYSByaWdodC1oYW5kIGNoaWxkLCBnbyBkb3duIGFuZCB0aGVuIGxlZnQg YXMgZmFyCkBAIC0zNDUsNyArMzQ1LDcgQEAgc3RydWN0IHJiX25vZGUgKnJiX3ByZXYoY29uc3Qg c3RydWN0IHJiX25vZGUgKm5vZGUpCiB7CiAJc3RydWN0IHJiX25vZGUgKnBhcmVudDsKIAotCWlm IChyYl9wYXJlbnQobm9kZSkgPT0gbm9kZSkKKwlpZiAoUkJfRU1QVFlfTk9ERShub2RlKSkKIAkJ cmV0dXJuIE5VTEw7CiAKIAkvKiBJZiB3ZSBoYXZlIGEgbGVmdC1oYW5kIGNoaWxkLCBnbyBkb3du IGFuZCB0aGVuIHJpZ2h0IGFzIGZhcgpkaWZmIC0tZ2l0IGEveGVuL2luY2x1ZGUveGVuL3JidHJl ZS5oIGIveGVuL2luY2x1ZGUveGVuL3JidHJlZS5oCmluZGV4IDFhMTNlYTY2ZmEuLjQyNDk3NTJk Y2IgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3hlbi9yYnRyZWUuaAorKysgYi94ZW4vaW5jbHVk ZS94ZW4vcmJ0cmVlLmgKQEAgLTUzLDkgKzUzLDExIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCByYl9z ZXRfY29sb3Ioc3RydWN0IHJiX25vZGUgKnJiLCBpbnQgY29sb3IpCiAjZGVmaW5lIFJCX1JPT1QJ KHN0cnVjdCByYl9yb290KSB7IE5VTEwsIH0KICNkZWZpbmUJcmJfZW50cnkocHRyLCB0eXBlLCBt ZW1iZXIpIGNvbnRhaW5lcl9vZihwdHIsIHR5cGUsIG1lbWJlcikKIAotI2RlZmluZSBSQl9FTVBU WV9ST09UKHJvb3QpCSgocm9vdCktPnJiX25vZGUgPT0gTlVMTCkKLSNkZWZpbmUgUkJfRU1QVFlf Tk9ERShub2RlKQkocmJfcGFyZW50KG5vZGUpID09IG5vZGUpCi0jZGVmaW5lIFJCX0NMRUFSX05P REUobm9kZSkJKHJiX3NldF9wYXJlbnQobm9kZSwgbm9kZSkpCisjZGVmaW5lIFJCX0VNUFRZX1JP T1Qocm9vdCkgICgocm9vdCktPnJiX25vZGUgPT0gTlVMTCkKKworLyogJ2VtcHR5JyBub2RlcyBh cmUgbm9kZXMgdGhhdCBhcmUga25vd24gbm90IHRvIGJlIGluc2VydGVkIGluIGFuIHJicmVlICov CisjZGVmaW5lIFJCX0VNUFRZX05PREUobm9kZSkgICgobm9kZSktPnJiX3BhcmVudF9jb2xvciA9 PSAodW5zaWduZWQgbG9uZykobm9kZSkpCisjZGVmaW5lIFJCX0NMRUFSX05PREUobm9kZSkgICgo bm9kZSktPnJiX3BhcmVudF9jb2xvciA9ICh1bnNpZ25lZCBsb25nKShub2RlKSkKIAogZXh0ZXJu IHZvaWQgcmJfaW5zZXJ0X2NvbG9yKHN0cnVjdCByYl9ub2RlICosIHN0cnVjdCByYl9yb290ICop OwogZXh0ZXJuIHZvaWQgcmJfZXJhc2Uoc3RydWN0IHJiX25vZGUgKiwgc3RydWN0IHJiX3Jvb3Qg Kik7Ci0tIAoyLjEyLjAKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0 dHBzOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK