diff --git a/drivers/staging/rdma/hfi1/mmu_rb.c b/drivers/staging/rdma/hfi1/mmu_rb.c index c30373df38749d32ea999417c1fbc15af9c90808..5d27fee577b985816edafed7036a1f4f9048291b 100644 --- a/drivers/staging/rdma/hfi1/mmu_rb.c +++ b/drivers/staging/rdma/hfi1/mmu_rb.c @@ -98,7 +98,7 @@ int hfi1_mmu_rb_register(struct rb_root *root, struct mmu_rb_ops *ops) struct mmu_rb_handler *handlr; unsigned long flags; - if (!ops->compare || !ops->invalidate) + if (!ops->invalidate) return -EINVAL; handlr = kmalloc(sizeof(*handlr), GFP_KERNEL); diff --git a/drivers/staging/rdma/hfi1/mmu_rb.h b/drivers/staging/rdma/hfi1/mmu_rb.h index abed3a69e4675095c8dcd3cddd1f464bf05ae4d4..9c2600981e88f8f00fed9c524ea60114a6564479 100644 --- a/drivers/staging/rdma/hfi1/mmu_rb.h +++ b/drivers/staging/rdma/hfi1/mmu_rb.h @@ -57,8 +57,6 @@ struct mmu_rb_node { }; struct mmu_rb_ops { - int (*compare)(struct mmu_rb_node *, unsigned long, - unsigned long); int (*insert)(struct rb_root *, struct mmu_rb_node *); void (*remove)(struct rb_root *, struct mmu_rb_node *, bool); int (*invalidate)(struct rb_root *, struct mmu_rb_node *); diff --git a/drivers/staging/rdma/hfi1/user_exp_rcv.c b/drivers/staging/rdma/hfi1/user_exp_rcv.c index 1d971c0fedd6c3f770d8aad6b2392f3c48401249..bf670cbf82da36d1ca60f8cb0cff0e60029bb813 100644 --- a/drivers/staging/rdma/hfi1/user_exp_rcv.c +++ b/drivers/staging/rdma/hfi1/user_exp_rcv.c @@ -86,8 +86,6 @@ static void unlock_exp_tids(struct hfi1_ctxtdata *, struct exp_tid_set *, static u32 find_phys_blocks(struct page **, unsigned, struct tid_pageset *); static int set_rcvarray_entry(struct file *, unsigned long, u32, struct tid_group *, struct page **, unsigned); -static inline int mmu_addr_cmp(struct mmu_rb_node *, unsigned long, - unsigned long); static int mmu_rb_insert(struct rb_root *, struct mmu_rb_node *); static void mmu_rb_remove(struct rb_root *, struct mmu_rb_node *, bool); static int mmu_rb_invalidate(struct rb_root *, struct mmu_rb_node *); @@ -98,7 +96,6 @@ static int unprogram_rcvarray(struct file *, u32, struct tid_group **); static void clear_tid_node(struct hfi1_filedata *, u16, struct tid_rb_node *); static struct mmu_rb_ops tid_rb_ops = { - .compare = mmu_addr_cmp, .insert = mmu_rb_insert, .remove = mmu_rb_remove, .invalidate = mmu_rb_invalidate @@ -1016,17 +1013,6 @@ static int mmu_rb_invalidate(struct rb_root *root, struct mmu_rb_node *mnode) return 0; } -static int mmu_addr_cmp(struct mmu_rb_node *node, unsigned long addr, - unsigned long len) -{ - if ((addr + len) <= node->addr) - return -1; - else if (addr >= node->addr && addr < (node->addr + node->len)) - return 0; - else - return 1; -} - static int mmu_rb_insert(struct rb_root *root, struct mmu_rb_node *node) { struct hfi1_filedata *fdata =