Searched refs:uiomr (Results 1 - 2 of 2) sorted by relevance
/linux-4.1.27/drivers/infiniband/hw/usnic/ |
H A D | usnic_uiom.c | 217 struct usnic_uiom_reg *uiomr, __usnic_uiom_reg_release() 226 npages = PAGE_ALIGN(uiomr->length + uiomr->offset) >> PAGE_SHIFT; __usnic_uiom_reg_release() 227 vpn_start = (uiomr->va & PAGE_MASK) >> PAGE_SHIFT; __usnic_uiom_reg_release() 242 usnic_uiom_put_pages(&uiomr->chunk_list, dirty & writable); __usnic_uiom_reg_release() 247 struct usnic_uiom_reg *uiomr) usnic_uiom_map_sorted_intervals() 257 struct usnic_uiom_pd *pd = uiomr->pd; usnic_uiom_map_sorted_intervals() 258 long int va = uiomr->va & PAGE_MASK; usnic_uiom_map_sorted_intervals() 261 flags |= (uiomr->writable) ? IOMMU_WRITE : 0; usnic_uiom_map_sorted_intervals() 262 chunk = list_first_entry(&uiomr->chunk_list, struct usnic_uiom_chunk, usnic_uiom_map_sorted_intervals() 340 struct usnic_uiom_reg *uiomr; usnic_uiom_reg_get() local 361 uiomr = kmalloc(sizeof(*uiomr), GFP_KERNEL); usnic_uiom_reg_get() 362 if (!uiomr) usnic_uiom_reg_get() 365 uiomr->va = va_base; usnic_uiom_reg_get() 366 uiomr->offset = offset; usnic_uiom_reg_get() 367 uiomr->length = size; usnic_uiom_reg_get() 368 uiomr->writable = writable; usnic_uiom_reg_get() 369 uiomr->pd = pd; usnic_uiom_reg_get() 372 &uiomr->chunk_list); usnic_uiom_reg_get() 391 err = usnic_uiom_map_sorted_intervals(&sorted_diff_intervals, uiomr); usnic_uiom_reg_get() 410 return uiomr; usnic_uiom_reg_get() 417 usnic_uiom_put_pages(&uiomr->chunk_list, 0); usnic_uiom_reg_get() 420 kfree(uiomr); usnic_uiom_reg_get() 424 void usnic_uiom_reg_release(struct usnic_uiom_reg *uiomr, int closing) usnic_uiom_reg_release() argument 429 __usnic_uiom_reg_release(uiomr->pd, uiomr, 1); usnic_uiom_reg_release() 433 kfree(uiomr); usnic_uiom_reg_release() 437 diff = PAGE_ALIGN(uiomr->length + uiomr->offset) >> PAGE_SHIFT; usnic_uiom_reg_release() 449 INIT_WORK(&uiomr->work, usnic_uiom_reg_account); usnic_uiom_reg_release() 450 uiomr->mm = mm; usnic_uiom_reg_release() 451 uiomr->diff = diff; usnic_uiom_reg_release() 453 queue_work(usnic_uiom_wq, &uiomr->work); usnic_uiom_reg_release() 462 kfree(uiomr); usnic_uiom_reg_release() 216 __usnic_uiom_reg_release(struct usnic_uiom_pd *pd, struct usnic_uiom_reg *uiomr, int dirty) __usnic_uiom_reg_release() argument 246 usnic_uiom_map_sorted_intervals(struct list_head *intervals, struct usnic_uiom_reg *uiomr) usnic_uiom_map_sorted_intervals() argument
|
H A D | usnic_uiom.h | 77 void usnic_uiom_reg_release(struct usnic_uiom_reg *uiomr, int closing);
|
Completed in 130 milliseconds