};
struct mmu_rb_ops {
- bool (*filter)(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 *,
- struct mm_struct *);
- int (*invalidate)(struct rb_root *, struct mmu_rb_node *);
+ bool (*filter)(struct mmu_rb_node *node, unsigned long addr,
+ unsigned long len);
+ int (*insert)(struct rb_root *root, struct mmu_rb_node *mnode);
+ void (*remove)(struct rb_root *root, struct mmu_rb_node *mnode,
+ struct mm_struct *mm);
+ int (*invalidate)(struct rb_root *root, struct mmu_rb_node *node);
};
int hfi1_mmu_rb_register(struct rb_root *root, struct mmu_rb_ops *ops);