From: Dean Luick Date: Thu, 28 Jul 2016 16:27:36 +0000 (-0400) Subject: IB/hfi1: Remove unneeded empty check in hfi1_mmu_rb_unregister() X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=20a42d08331c888207d81d8e4713e18250ac49cf;p=linux-beck.git IB/hfi1: Remove unneeded empty check in hfi1_mmu_rb_unregister() Checking if the rb tree is empty is redundant with the while loop which is emptying the rb tree. Reviewed-by: Ira Weiny Signed-off-by: Dean Luick Signed-off-by: Doug Ledford --- diff --git a/drivers/infiniband/hw/hfi1/mmu_rb.c b/drivers/infiniband/hw/hfi1/mmu_rb.c index b845adf9fc0e..1c7e25b90a2c 100644 --- a/drivers/infiniband/hw/hfi1/mmu_rb.c +++ b/drivers/infiniband/hw/hfi1/mmu_rb.c @@ -118,6 +118,8 @@ int hfi1_mmu_rb_register(struct rb_root *root, struct mmu_rb_ops *ops) void hfi1_mmu_rb_unregister(struct rb_root *root) { struct mmu_rb_handler *handler = find_mmu_handler(root); + struct mmu_rb_node *rbnode; + struct rb_node *node; unsigned long flags; if (!handler) @@ -133,15 +135,10 @@ void hfi1_mmu_rb_unregister(struct rb_root *root) synchronize_rcu(); spin_lock_irqsave(&handler->lock, flags); - if (!RB_EMPTY_ROOT(root)) { - struct rb_node *node; - struct mmu_rb_node *rbnode; - - while ((node = rb_first(root))) { - rbnode = rb_entry(node, struct mmu_rb_node, node); - rb_erase(node, root); - handler->ops->remove(root, rbnode, NULL); - } + while ((node = rb_first(root))) { + rbnode = rb_entry(node, struct mmu_rb_node, node); + rb_erase(node, root); + handler->ops->remove(root, rbnode, NULL); } spin_unlock_irqrestore(&handler->lock, flags);