IB/hfi1: Remove unneeded empty check in hfi1_mmu_rb_unregister()
authorDean Luick <dean.luick@intel.com>
Thu, 28 Jul 2016 16:27:36 +0000 (12:27 -0400)
committerDoug Ledford <dledford@redhat.com>
Wed, 3 Aug 2016 02:46:21 +0000 (22:46 -0400)
Checking if the rb tree is empty is redundant with the while loop which is
emptying the rb tree.

Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Signed-off-by: Dean Luick <dean.luick@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/hw/hfi1/mmu_rb.c

index b845adf9fc0edf8ade48a059a8940939fd836d56..1c7e25b90a2cd6cf527d804676bf68163d2ced13 100644 (file)
@@ -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);