| /linux/drivers/infiniband/hw/cxgb4/ |
| H A D | mem.c | 388 return xa_insert_irq(&mhp->rhp->mrs, mmid, mhp, GFP_KERNEL); in finish_mem_reg() 391 static int register_mem(struct c4iw_dev *rhp, struct c4iw_pd *php, in register_mem() argument 397 ret = write_tpt_entry(&rhp->rdev, 0, &stag, 1, mhp->attr.pdid, in register_mem() 410 dereg_mem(&rhp->rdev, mhp->attr.stag, mhp->attr.pbl_size, in register_mem() 419 mhp->attr.pbl_addr = c4iw_pblpool_alloc(&mhp->rhp->rdev, in alloc_pbl() 432 struct c4iw_dev *rhp; in c4iw_get_dma_mr() local 440 rhp = php->rhp; in c4iw_get_dma_mr() 458 mhp->rhp = rhp; in c4iw_get_dma_mr() 468 ret = write_tpt_entry(&rhp->rdev, 0, &stag, 1, php->pdid, in c4iw_get_dma_mr() 480 dereg_mem(&rhp->rdev, mhp->attr.stag, mhp->attr.pbl_size, in c4iw_get_dma_mr() [all …]
|
| H A D | provider.c | 65 struct c4iw_dev *rhp; in c4iw_dealloc_ucontext() local 69 rhp = to_c4iw_dev(ucontext->ibucontext.device); in c4iw_dealloc_ucontext() 73 c4iw_release_dev_ucontext(&rhp->rdev, &ucontext->uctx); in c4iw_dealloc_ucontext() 81 struct c4iw_dev *rhp = to_c4iw_dev(ibdev); in c4iw_alloc_ucontext() local 87 c4iw_init_dev_ucontext(&rhp->rdev, &context->uctx); in c4iw_alloc_ucontext() 93 rhp->rdev.flags |= T4_STATUS_PAGE_DISABLED; in c4iw_alloc_ucontext() 114 mm->addr = virt_to_phys(rhp->rdev.status_page); in c4iw_alloc_ucontext() 118 insert_flag_to_mmap(&rhp->rdev, mm, mm->addr); in c4iw_alloc_ucontext() 195 struct c4iw_dev *rhp; in c4iw_deallocate_pd() local 199 rhp = php->rhp; in c4iw_deallocate_pd() [all …]
|
| H A D | cq.c | 351 qhp = get_qhp(chp->rhp, CQE_QPID(hw_cqe)); in c4iw_flush_hw_cq() 803 c4iw_invalidate_mr(qhp->rhp, wc->ex.invalidate_rkey); in __c4iw_poll_cq_one() 844 c4iw_invalidate_mr(qhp->rhp, in __c4iw_poll_cq_one() 933 qhp = get_qhp(chp->rhp, CQE_QPID(rd_cqe)); in c4iw_poll_cq_one() 984 xa_erase_irq(&chp->rhp->cqs, chp->cq.cqid); in c4iw_destroy_cq() 990 destroy_cq(&chp->rhp->rdev, &chp->cq, in c4iw_destroy_cq() 1004 struct c4iw_dev *rhp = to_c4iw_dev(ibcq->device); in c4iw_create_cq() local 1021 if (vector >= rhp->rdev.lldi.nciq) in c4iw_create_cq() 1057 hwentries = min(entries * 2, rhp->rdev.hw_queue.t4_max_iq_size); in c4iw_create_cq() 1079 ret = create_cq(&rhp->rdev, &chp->cq, in c4iw_create_cq() [all …]
|
| H A D | cm.c | 1645 err = c4iw_modify_qp(ep->com.qp->rhp, in process_mpa_reply() 1660 err = c4iw_modify_qp(ep->com.qp->rhp, ep->com.qp, in process_mpa_reply() 1679 err = c4iw_modify_qp(ep->com.qp->rhp, ep->com.qp, in process_mpa_reply() 1884 c4iw_modify_qp(ep->com.qp->rhp, ep->com.qp, in rx_data() 2760 ret = c4iw_modify_qp(ep->com.qp->rhp, ep->com.qp, in peer_close() 2778 c4iw_modify_qp(ep->com.qp->rhp, ep->com.qp, in peer_close() 2808 c4iw_modify_qp(ep->com.qp->rhp, ep->com.qp, in finish_peer_abort() 2912 ret = c4iw_modify_qp(ep->com.qp->rhp, in peer_abort() 3001 c4iw_modify_qp(ep->com.qp->rhp, in close_con_rpl() 3038 c4iw_modify_qp(ep->com.qp->rhp, ep->com.qp, in terminate() [all …]
|
| H A D | ev.c | 100 c4iw_modify_qp(qhp->rhp, qhp, C4IW_QP_ATTR_NEXT_STATE, in post_qp_event()
|
| /linux/kernel/rcu/ |
| H A D | rcu_segcblist.c | 28 void rcu_cblist_enqueue(struct rcu_cblist *rclp, struct rcu_head *rhp) in rcu_cblist_enqueue() argument 30 *rclp->tail = rhp; in rcu_cblist_enqueue() 31 rclp->tail = &rhp->next; in rcu_cblist_enqueue() 45 struct rcu_head *rhp) in rcu_cblist_flush_enqueue() argument 53 if (!rhp) { in rcu_cblist_flush_enqueue() 56 rhp->next = NULL; in rcu_cblist_flush_enqueue() 57 srclp->head = rhp; in rcu_cblist_flush_enqueue() 58 srclp->tail = &rhp->next; in rcu_cblist_flush_enqueue() 69 struct rcu_head *rhp; in rcu_cblist_dequeue() local 71 rhp = rclp->head; in rcu_cblist_dequeue() [all …]
|
| H A D | srcutiny.c | 123 struct rcu_head *rhp; in srcu_drive_gp() local 157 rhp = lh; in srcu_drive_gp() 159 debug_rcu_head_callback(rhp); in srcu_drive_gp() 161 rhp->func(rhp); in srcu_drive_gp() 202 void call_srcu(struct srcu_struct *ssp, struct rcu_head *rhp, in call_srcu() argument 207 rhp->func = func; in call_srcu() 208 rhp->next = NULL; in call_srcu() 211 *ssp->srcu_cb_tail = rhp; in call_srcu() 212 ssp->srcu_cb_tail = &rhp->next; in call_srcu()
|
| H A D | update.c | 516 void do_trace_rcu_torture_read(const char *rcutorturename, struct rcu_head *rhp, in do_trace_rcu_torture_read() argument 520 trace_rcu_torture_read(rcutorturename, rhp, secs, c_old, c); in do_trace_rcu_torture_read() 524 #define do_trace_rcu_torture_read(rcutorturename, rhp, secs, c_old, c) \ argument 610 struct early_boot_kfree_rcu *rhp; in early_boot_test_call_rcu() local 617 rhp = kmalloc(sizeof(*rhp), GFP_KERNEL); in early_boot_test_call_rcu() 618 if (!WARN_ON_ONCE(!rhp)) in early_boot_test_call_rcu() 619 kfree_rcu(rhp, rh); in early_boot_test_call_rcu()
|
| H A D | rcu_segcblist.h | 24 void rcu_cblist_enqueue(struct rcu_cblist *rclp, struct rcu_head *rhp); 27 struct rcu_head *rhp); 129 struct rcu_head *rhp); 131 struct rcu_head *rhp);
|
| H A D | srcutree.c | 1320 static void srcu_leak_callback(struct rcu_head *rhp) in srcu_leak_callback() argument 1328 struct rcu_head *rhp, bool do_norm) in srcu_gp_start_if_needed() argument 1352 if (rhp) in srcu_gp_start_if_needed() 1353 rcu_segcblist_enqueue(&sdp->srcu_cblist, rhp); in srcu_gp_start_if_needed() 1391 if (rhp) { in srcu_gp_start_if_needed() 1455 static void __call_srcu(struct srcu_struct *ssp, struct rcu_head *rhp, in __call_srcu() argument 1458 if (debug_rcu_head_queue(rhp)) { in __call_srcu() 1460 WRITE_ONCE(rhp->func, srcu_leak_callback); in __call_srcu() 1464 rhp->func = func; in __call_srcu() 1465 (void)srcu_gp_start_if_needed(ssp, rhp, do_norm); in __call_srcu() [all …]
|
| H A D | rcutorture.c | 1982 static void rcu_torture_timer_cb(struct rcu_head *rhp) in rcu_torture_timer_cb() argument 1984 kfree(rhp); in rcu_torture_timer_cb() 2463 struct rcu_head *rhp = kmalloc(sizeof(*rhp), GFP_NOWAIT); in rcu_torture_timer() local 2465 if (rhp) in rcu_torture_timer() 2466 cur_ops->call(rhp, rcu_torture_timer_cb); in rcu_torture_timer() 2865 struct rcu_head *rhp; in rcu_torture_mem_dump_obj() local 2872 rhp = kmem_cache_alloc(kcp, GFP_KERNEL); in rcu_torture_mem_dump_obj() 2873 if (WARN_ON_ONCE(!rhp)) { in rcu_torture_mem_dump_obj() 2877 …slab test: rcu_torture_stats = %px, &rhp = %px, rhp = %px, &z = %px\n", stats_task, &rhp, rhp, &z); in rcu_torture_mem_dump_obj() 2882 pr_alert("mem_dump_obj(%px):", &rhp); in rcu_torture_mem_dump_obj() [all …]
|
| H A D | sync.c | 27 static void rcu_sync_func(struct rcu_head *rhp); 57 static void rcu_sync_func(struct rcu_head *rhp) in rcu_sync_func() argument 59 struct rcu_sync *rsp = container_of(rhp, struct rcu_sync, cb_head); in rcu_sync_func()
|
| H A D | tree_nocb.h | 312 struct rcu_head *rhp = rhp_in; in rcu_nocb_do_flush_bypass() local 317 if (rhp && !rcu_cblist_n_cbs(&rdp->nocb_bypass)) { in rcu_nocb_do_flush_bypass() 322 if (rhp) in rcu_nocb_do_flush_bypass() 331 if (lazy && rhp) { in rcu_nocb_do_flush_bypass() 332 rcu_cblist_enqueue(&rdp->nocb_bypass, rhp); in rcu_nocb_do_flush_bypass() 333 rhp = NULL; in rcu_nocb_do_flush_bypass() 335 rcu_cblist_flush_enqueue(&rcl, &rdp->nocb_bypass, rhp); in rcu_nocb_do_flush_bypass() 352 static bool rcu_nocb_flush_bypass(struct rcu_data *rdp, struct rcu_head *rhp, in rcu_nocb_flush_bypass() argument 359 return rcu_nocb_do_flush_bypass(rdp, rhp, j, lazy); in rcu_nocb_flush_bypass() 393 static bool rcu_nocb_try_bypass(struct rcu_data *rdp, struct rcu_head *rhp, in rcu_nocb_try_bypass() argument [all …]
|
| H A D | tree.c | 2539 struct rcu_head *rhp; in rcu_do_batch() local 2591 rhp = rcu_cblist_dequeue(&rcl); in rcu_do_batch() 2593 for (; rhp; rhp = rcu_cblist_dequeue(&rcl)) { in rcu_do_batch() 2597 debug_rcu_head_unqueue(rhp); in rcu_do_batch() 2600 trace_rcu_invoke_callback(rcu_state.name, rhp); in rcu_do_batch() 2602 f = rhp->func; in rcu_do_batch() 2603 debug_rcu_head_callback(rhp); in rcu_do_batch() 2604 WRITE_ONCE(rhp->func, (rcu_callback_t)0L); in rcu_do_batch() 2605 f(rhp); in rcu_do_batch() 3043 static void rcu_leak_callback(struct rcu_head *rhp) in rcu_leak_callback() argument [all …]
|
| H A D | tree.h | 504 static bool rcu_nocb_flush_bypass(struct rcu_data *rdp, struct rcu_head *rhp,
|
| H A D | rcuscale.c | 520 static void rcu_scale_async_cb(struct rcu_head *rhp) in rcu_scale_async_cb() argument 522 struct writer_mblock *wmbp = container_of(rhp, struct writer_mblock, wmb_rh); in rcu_scale_async_cb()
|
| /linux/include/linux/ |
| H A D | rcupdate_trace.h | 88 void call_rcu_tasks_trace(struct rcu_head *rhp, rcu_callback_t func); 97 static inline void call_rcu_tasks_trace(struct rcu_head *rhp, rcu_callback_t func) { BUG(); } in call_rcu_tasks_trace() argument
|
| H A D | rcupdate.h | 1162 static inline void rcu_head_init(struct rcu_head *rhp) in rcu_head_init() argument 1164 rhp->func = (rcu_callback_t)~0L; in rcu_head_init() 1181 rcu_head_after_call_rcu(struct rcu_head *rhp, rcu_callback_t f) in rcu_head_after_call_rcu() argument 1183 rcu_callback_t func = READ_ONCE(rhp->func); in rcu_head_after_call_rcu()
|
| /linux/include/linux/sched/ |
| H A D | mm.h | 63 static inline void __mmdrop_delayed(struct rcu_head *rhp) in __mmdrop_delayed() argument 65 struct mm_struct *mm = container_of(rhp, struct mm_struct, delayed_drop); in __mmdrop_delayed()
|
| H A D | task.h | 126 extern void __put_task_struct_rcu_cb(struct rcu_head *rhp);
|
| /linux/kernel/ |
| H A D | pid.c | 106 static void delayed_put_pid(struct rcu_head *rhp) in delayed_put_pid() argument 108 struct pid *pid = container_of(rhp, struct pid, rcu); in delayed_put_pid()
|
| H A D | fork.c | 794 void __put_task_struct_rcu_cb(struct rcu_head *rhp) in __put_task_struct_rcu_cb() argument 796 struct task_struct *task = container_of(rhp, struct task_struct, rcu); in __put_task_struct_rcu_cb() 1908 static void __delayed_free_task(struct rcu_head *rhp) in __delayed_free_task() argument 1910 struct task_struct *tsk = container_of(rhp, struct task_struct, rcu); in __delayed_free_task()
|
| /linux/kernel/irq/ |
| H A D | irqdesc.c | 461 static void delayed_free_desc(struct rcu_head *rhp) in delayed_free_desc() argument 463 struct irq_desc *desc = container_of(rhp, struct irq_desc, rcu); in delayed_free_desc()
|
| /linux/Documentation/RCU/ |
| H A D | rcuref.rst | 114 void el_free(struct rcu_head *rhp)
|
| /linux/kernel/locking/ |
| H A D | locktorture.c | 1115 static void call_rcu_chain_cb(struct rcu_head *rhp) in call_rcu_chain_cb() argument 1117 struct call_rcu_chain *crcp = container_of(rhp, struct call_rcu_chain, crc_rh); in call_rcu_chain_cb()
|