diff options
Diffstat (limited to 'drivers/staging/rdma/hfi1/hfi.h')
-rw-r--r-- | drivers/staging/rdma/hfi1/hfi.h | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/drivers/staging/rdma/hfi1/hfi.h b/drivers/staging/rdma/hfi1/hfi.h index 572288308406..78c8e24b1970 100644 --- a/drivers/staging/rdma/hfi1/hfi.h +++ b/drivers/staging/rdma/hfi1/hfi.h @@ -1179,6 +1179,7 @@ struct hfi1_devdata { #define PT_EAGER 1 #define PT_INVALID 2 +struct tid_rb_node; struct mmu_rb_node; /* Private data for file operations */ @@ -1189,20 +1190,17 @@ struct hfi1_filedata { struct hfi1_user_sdma_pkt_q *pq; /* for cpu affinity; -1 if none */ int rec_cpu_num; - struct mmu_notifier mn; struct rb_root tid_rb_root; - struct mmu_rb_node **entry_to_rb; + struct tid_rb_node **entry_to_rb; spinlock_t tid_lock; /* protect tid_[limit,used] counters */ u32 tid_limit; u32 tid_used; - spinlock_t rb_lock; /* protect tid_rb_root RB tree */ u32 *invalid_tids; u32 invalid_tid_idx; - spinlock_t invalid_lock; /* protect the invalid_tids array */ - int (*mmu_rb_insert)(struct hfi1_filedata *, struct rb_root *, - struct mmu_rb_node *); - void (*mmu_rb_remove)(struct hfi1_filedata *, struct rb_root *, - struct mmu_rb_node *); + /* protect invalid_tids array and invalid_tid_idx */ + spinlock_t invalid_lock; + int (*mmu_rb_insert)(struct rb_root *, struct mmu_rb_node *); + void (*mmu_rb_remove)(struct rb_root *, struct mmu_rb_node *); }; extern struct list_head hfi1_dev_list; |