Home
last modified time | relevance | path

Searched refs:rma_info (Results 1 – 8 of 8) sorted by relevance

/Linux-v5.4/drivers/misc/mic/scif/
Dscif_mmap.c36 req.head = &ep->rma_info.reg_list; in scif_recv_munmap()
39 mutex_lock(&ep->rma_info.rma_lock); in scif_recv_munmap()
51 atomic_inc(&ep->rma_info.tw_refcount); in scif_recv_munmap()
52 ep->rma_info.async_list_del = 1; in scif_recv_munmap()
57 mutex_unlock(&ep->rma_info.rma_lock); in scif_recv_munmap()
74 list_for_each(item, &ep->rma_info.vma_list) { in __scif_zap_mmaps()
127 list_for_each_safe(pos, tmp, &ep->rma_info.remote_reg_list) { in __scif_cleanup_rma_for_zombies()
136 atomic_inc(&ep->rma_info.tw_refcount); in __scif_cleanup_rma_for_zombies()
172 list_add_tail(&info->list, &ep->rma_info.vma_list); in scif_insert_vma()
185 list_for_each(item, &ep->rma_info.vma_list) { in scif_delete_vma()
[all …]
Dscif_rma.c30 struct scif_endpt_rma_info *rma = &ep->rma_info; in scif_rma_ep_init()
60 mutex_lock(&ep->rma_info.rma_lock); in scif_rma_ep_can_uninit()
62 if (list_empty(&ep->rma_info.reg_list) && in scif_rma_ep_can_uninit()
63 list_empty(&ep->rma_info.remote_reg_list) && in scif_rma_ep_can_uninit()
64 list_empty(&ep->rma_info.mmn_list) && in scif_rma_ep_can_uninit()
65 !atomic_read(&ep->rma_info.tw_refcount) && in scif_rma_ep_can_uninit()
66 !atomic_read(&ep->rma_info.tcw_refcount) && in scif_rma_ep_can_uninit()
67 !atomic_read(&ep->rma_info.fence_refcount)) in scif_rma_ep_can_uninit()
69 mutex_unlock(&ep->rma_info.rma_lock); in scif_rma_ep_can_uninit()
200 mutex_lock(&ep->rma_info.rma_lock); in scif_destroy_incomplete_window()
[all …]
Dscif_rma_list.c198 struct list_head *head = &ep->rma_info.reg_list; in scif_rma_list_unregister()
230 struct list_head *head = &ep->rma_info.reg_list; in scif_unmap_all_windows()
232 mutex_lock(&ep->rma_info.rma_lock); in scif_unmap_all_windows()
237 mutex_unlock(&ep->rma_info.rma_lock); in scif_unmap_all_windows()
252 struct list_head *head = &ep->rma_info.reg_list; in scif_unregister_all_windows()
255 mutex_lock(&ep->rma_info.rma_lock); in scif_unregister_all_windows()
261 ep->rma_info.async_list_del = 0; in scif_unregister_all_windows()
271 if (READ_ONCE(ep->rma_info.async_list_del)) in scif_unregister_all_windows()
274 mutex_unlock(&ep->rma_info.rma_lock); in scif_unregister_all_windows()
275 if (!list_empty(&ep->rma_info.mmn_list)) { in scif_unregister_all_windows()
Dscif_fence.c46 mutex_lock(&ep->rma_info.rma_lock); in scif_recv_mark_resp()
53 mutex_unlock(&ep->rma_info.rma_lock); in scif_recv_mark_resp()
87 atomic_inc(&ep->rma_info.fence_refcount); in scif_recv_wait()
106 mutex_lock(&ep->rma_info.rma_lock); in scif_recv_wait_resp()
111 mutex_unlock(&ep->rma_info.rma_lock); in scif_recv_wait_resp()
169 mutex_lock(&ep->rma_info.rma_lock); in scif_recv_sig_resp()
174 mutex_unlock(&ep->rma_info.rma_lock); in scif_recv_sig_resp()
199 struct dma_chan *chan = ep->rma_info.dma_chan; in _scif_prog_signal()
302 mutex_lock(&ep->rma_info.rma_lock); in scif_prog_signal()
309 req.head = &ep->rma_info.reg_list; in scif_prog_signal()
[all …]
Dscif_dma.c95 mutex_lock(&ep->rma_info.rma_lock); in scif_reserve_dma_chan()
96 ep->rma_info.dma_chan = chan; in scif_reserve_dma_chan()
97 mutex_unlock(&ep->rma_info.rma_lock); in scif_reserve_dma_chan()
137 spin_lock(&ep->rma_info.tc_lock); in scif_rma_destroy_tcw()
139 spin_unlock(&ep->rma_info.tc_lock); in scif_rma_destroy_tcw()
147 list_for_each_safe(item, tmp, &ep->rma_info.mmn_list) { in scif_rma_destroy_tcw_ep()
158 spin_lock(&ep->rma_info.tc_lock); in __scif_rma_destroy_tcw_ep()
159 list_for_each_safe(item, tmp, &ep->rma_info.mmn_list) { in __scif_rma_destroy_tcw_ep()
163 spin_unlock(&ep->rma_info.tc_lock); in __scif_rma_destroy_tcw_ep()
170 if ((atomic_read(&ep->rma_info.tcw_total_pages) in scif_rma_tc_can_cache()
[all …]
Dscif_debugfs.c91 mutex_lock(&ep->rma_info.rma_lock); in scif_rma_show()
92 scif_display_all_windows(&ep->rma_info.reg_list, s); in scif_rma_show()
94 scif_display_all_windows(&ep->rma_info.remote_reg_list, s); in scif_rma_show()
95 mutex_unlock(&ep->rma_info.rma_lock); in scif_rma_show()
Dscif_epd.h125 struct scif_endpt_rma_info rma_info; member
Dscif_epd.c98 put_iova_domain(&ep->rma_info.iovad); in scif_cleanup_zombie_epd()