/linux/Documentation/translations/zh_CN/core-api/ |
H A D | kref.rst | 41 struct kref refcount; 58 kref_init(&data->refcount); 60 这将kref中的refcount设置为1。 68 行线程,你必须在传递之前用kref_get()增加refcount:: 70 kref_get(&data->refcount); 72 如果你已经有了一个指向kref-ed结构体的有效指针(refcount不能为零),你 77 kref_put(&data->refcount, data_release); 91 struct my_data *data = container_of(ref, struct my_data, refcount); 101 kref_put(&data->refcount, data_release); 112 kref_init(&data->refcount); [all …]
|
/linux/net/dsa/ |
H A D | trace.h | 15 #include <linux/refcount.h> 58 * is first seen and its refcount is 1. 71 * when the refcount on shared ports reaches 0 86 const struct dsa_db *db, const refcount_t *refcount), 88 TP_ARGS(dp, addr, vid, db, refcount), 97 __field(unsigned int, refcount) 107 __entry->refcount = refcount_read(refcount); 110 TP_printk("%s %s port %d addr %pM vid %u db \"%s\" refcount %u", 112 __entry->vid, __entry->db_buf, __entry->refcount) [all...] |
H A D | switch.c | 179 refcount_inc(&a->refcount); in dsa_port_do_mdb_add() 181 &a->refcount); in dsa_port_do_mdb_add() 201 refcount_set(&a->refcount, 1); in dsa_port_do_mdb_add() 236 if (!refcount_dec_and_test(&a->refcount)) { in dsa_port_do_mdb_del() 238 &a->refcount); in dsa_port_do_mdb_del() 245 refcount_set(&a->refcount, 1); in dsa_port_do_mdb_del() 278 refcount_inc(&a->refcount); in dsa_port_do_fdb_add() 279 trace_dsa_fdb_add_bump(dp, addr, vid, &db, &a->refcount); in dsa_port_do_fdb_add() 299 refcount_set(&a->refcount, 1); in dsa_port_do_fdb_add() 333 if (!refcount_dec_and_test(&a->refcount)) { in dsa_port_do_fdb_del() [all …]
|
/linux/drivers/gpu/drm/amd/display/dc/core/ |
H A D | dc_surface.c | 94 kref_init(&plane_state->refcount); in dc_create_plane_state() 162 kref_get(&plane_state->refcount); in dc_plane_state_retain() 167 struct dc_plane_state *plane_state = container_of(kref, struct dc_plane_state, refcount); in dc_plane_state_free() 174 kref_put(&plane_state->refcount, dc_plane_state_free); in dc_plane_state_release() 179 kref_get(&gamma->refcount); in dc_gamma_retain() 184 struct dc_gamma *gamma = container_of(kref, struct dc_gamma, refcount); in dc_gamma_free() 190 kref_put(&(*gamma)->refcount, dc_gamma_free); in dc_gamma_release() 201 kref_init(&gamma->refcount); in dc_create_gamma() 210 kref_get(&tf->refcount); in dc_transfer_func_retain() 215 struct dc_transfer_func *tf = container_of(kref, struct dc_transfer_func, refcount); in dc_transfer_func_free() [all …]
|
H A D | dc_sink.c | 62 kref_get(&sink->refcount); in dc_sink_retain() 67 struct dc_sink *sink = container_of(kref, struct dc_sink, refcount); in dc_sink_free() 74 kref_put(&sink->refcount, dc_sink_free); in dc_sink_release() 87 kref_init(&sink->refcount); in dc_sink_create()
|
/linux/arch/arm64/kvm/hyp/include/nvhe/ |
H A D | memory.h | 44 u16 refcount; 87 * hyp_pool::lock must be held if atomic access to the refcount is required. 93 return p->refcount; 98 BUG_ON(p->refcount == USHRT_MAX); 99 p->refcount++; 104 BUG_ON(!p->refcount); 105 p->refcount--; 111 return (p->refcount == 0); 116 BUG_ON(p->refcount); 117 p->refcount 11 unsigned short refcount; global() member [all...] |
/linux/include/trace/events/ |
H A D | objagg.h | 88 unsigned int refcount), 90 TP_ARGS(objagg, obj, refcount), 95 __field(unsigned int, refcount) 101 __entry->refcount = refcount; 105 __entry->objagg, __entry->obj, __entry->refcount) 111 unsigned int refcount), 113 TP_ARGS(objagg, obj, refcount), 118 __field(unsigned int, refcount) 124 __entry->refcount = refcount; 128 __entry->objagg, __entry->obj, __entry->refcount)
|
/linux/drivers/scsi/qedf/ |
H A D | qedf_els.c | 84 kref_put(&els_req->refcount, qedf_release_cmd); in qedf_initiate_els() 97 kref_put(&els_req->refcount, qedf_release_cmd); in qedf_initiate_els() 188 kref_put(&els_req->refcount, qedf_release_cmd); in qedf_process_els_compl() 196 int refcount; in qedf_rrq_compl() local 211 refcount = kref_read(&orig_io_req->refcount); in qedf_rrq_compl() 214 orig_io_req, orig_io_req->xid, rrq_req->xid, refcount); in qedf_rrq_compl() 221 if (orig_io_req && refcount > 0) in qedf_rrq_compl() 222 kref_put(&orig_io_req->refcount, qedf_release_cmd); in qedf_rrq_compl() 232 kref_put(&rrq_req->refcount, qedf_release_cmd); in qedf_rrq_compl() 248 int refcount; in qedf_send_rrq() local [all …]
|
H A D | qedf_io.c | 54 kref_put(&io_req->refcount, qedf_release_cmd); in qedf_cmd_timeout() 75 kref_get(&io_req->refcount); in qedf_cmd_timeout() 90 kref_put(&io_req->refcount, qedf_release_cmd); in qedf_cmd_timeout() 375 kref_init(&io_req->refcount); /* ID: 001 */ in qedf_alloc_cmd() 383 kref_put(&io_req->refcount, qedf_release_cmd); in qedf_alloc_cmd() 435 container_of(ref, struct qedf_ioreq, refcount); in qedf_release_cmd() 828 io_log->refcount = kref_read(&io_req->refcount); in qedf_trace_io() 887 kref_put(&io_req->refcount, qedf_release_cmd); in qedf_post_io_req() 896 kref_put(&io_req->refcount, qedf_release_cmd); in qedf_post_io_req() 915 kref_put(&io_req->refcount, qedf_release_cmd); in qedf_post_io_req() [all …]
|
/linux/drivers/infiniband/hw/hfi1/ |
H A D | mmu_rb.c | 22 static void release_immediate(struct kref *refcount); 111 kref_put(&rbnode->refcount, release_immediate); in hfi1_mmu_rb_unregister() 188 static void release_immediate(struct kref *refcount) in release_immediate() argument 191 container_of(refcount, struct mmu_rb_node, refcount); in release_immediate() 197 static void release_nolock(struct kref *refcount) in release_nolock() argument 200 container_of(refcount, struct mmu_rb_node, refcount); in release_nolock() 213 void hfi1_mmu_rb_release(struct kref *refcount) in hfi1_mmu_rb_release() argument 216 container_of(refcount, struct mmu_rb_node, refcount); in hfi1_mmu_rb_release() 241 if (kref_read(&rbnode->refcount) > 1) in hfi1_mmu_rb_evict() 257 kref_put(&rbnode->refcount, release_immediate); in hfi1_mmu_rb_evict() [all …]
|
H A D | trace_mmu.h | 22 __field(unsigned int, refcount) 26 __entry->refcount = kref_read(&node->refcount); 31 __entry->refcount
|
/linux/mm/ |
H A D | zpool.c | 36 atomic_set(&driver->refcount, 0); in zpool_register_driver() 54 int ret = 0, refcount; in zpool_unregister_driver() local 57 refcount = atomic_read(&driver->refcount); in zpool_unregister_driver() 58 WARN_ON(refcount < 0); in zpool_unregister_driver() 59 if (refcount > 0) in zpool_unregister_driver() 80 atomic_inc(&driver->refcount); in zpool_get_driver() 92 atomic_dec(&driver->refcount); in zpool_put_driver()
|
/linux/net/batman-adv/ |
H A D | types.h | 190 struct kref refcount; member 274 struct kref refcount; member 344 struct kref refcount; member 497 struct kref refcount; member 572 struct kref refcount; member 628 struct kref refcount; member 663 struct kref refcount; member 732 struct kref refcount; member 1549 struct kref refcount; member 1577 struct kref refcount; member [all …]
|
H A D | originator.h | 99 kref_put(&orig_vlan->refcount, batadv_orig_node_vlan_release); in batadv_orig_node_vlan_put() 113 kref_put(&neigh_ifinfo->refcount, batadv_neigh_ifinfo_release); in batadv_neigh_ifinfo_put() 127 kref_put(&hardif_neigh->refcount, batadv_hardif_neigh_release); in batadv_hardif_neigh_put() 140 kref_put(&neigh_node->refcount, batadv_neigh_node_release); in batadv_neigh_node_put() 154 kref_put(&orig_ifinfo->refcount, batadv_orig_ifinfo_release); in batadv_orig_ifinfo_put() 167 kref_put(&orig_node->refcount, batadv_orig_node_release); in batadv_orig_node_put()
|
/linux/drivers/gpu/drm/i915/display/ |
H A D | intel_dmc_wl.c | 149 WARN_ON(refcount_read(&wl->refcount)); in __intel_dmc_wl_release() 169 if (refcount_read(&wl->refcount)) in intel_dmc_wl_work() 295 refcount_set(&wl->refcount, 0); in intel_dmc_wl_init() 337 if (refcount_read(&wl->refcount)) in intel_dmc_wl_enable() 405 if (!refcount_inc_not_zero(&wl->refcount)) in intel_dmc_wl_get() 406 refcount_set(&wl->refcount, 1); in intel_dmc_wl_get() 412 if (refcount_inc_not_zero(&wl->refcount)) in intel_dmc_wl_get() 415 refcount_set(&wl->refcount, 1); in intel_dmc_wl_get() 436 if (WARN_RATELIMIT(!refcount_read(&wl->refcount), in intel_dmc_wl_put() 440 if (refcount_dec_and_test(&wl->refcount)) { in intel_dmc_wl_put()
|
/linux/fs/bcachefs/ |
H A D | reflink.c | 111 prt_printf(out, "refcount: %llu ", le64_to_cpu(r.v->refcount)); in bch2_reflink_v_to_text() 124 return l.v->refcount == r.v->refcount && bch2_extent_merge(c, _l, _r); 143 le64_to_cpu(d.v->refcount), datalen, in bch2_indirect_inline_data_to_text() 314 __le64 *refcount = bkey_refcount(bkey_i_to_s(new)); in trans_trigger_reflink_p_segment() local 315 if (!*refcount && (flags & BTREE_TRIGGER_overwrite)) { in trans_trigger_reflink_p_segment() 340 le64_add_cpu(refcount, !(flags & BTREE_TRIGGER_overwrite) ? 1 : -1); in trans_trigger_reflink_p_segment() 375 BUG_ON((s64) r->refcount + add < 0); in gc_trigger_reflink_p_segment() 378 r->refcount += add; in gc_trigger_reflink_p_segment() 493 __le64 *refcount; in bch2_make_extent_indirect() local 527 refcount = bkey_refcount(bkey_i_to_s(r_v)); in bch2_make_extent_indirect() [all …]
|
H A D | reflink.h | 56 return &bkey_s_c_to_reflink_v(k).v->refcount; in bkey_refcount_c() 58 return &bkey_s_c_to_indirect_inline_data(k).v->refcount; in bkey_refcount_c() 68 return &bkey_s_to_reflink_v(k).v->refcount; in bkey_refcount() 70 return &bkey_s_to_indirect_inline_data(k).v->refcount; in bkey_refcount()
|
/linux/drivers/accel/habanalabs/common/ |
H A D | context.c | 33 container_of(ref, struct hl_cs_encaps_sig_handle, refcount); in hl_encaps_release_handle_and_put_ctx() 41 container_of(ref, struct hl_cs_encaps_sig_handle, refcount); in hl_encaps_release_handle_and_put_sob() 49 container_of(ref, struct hl_cs_encaps_sig_handle, refcount); in hl_encaps_release_handle_and_put_sob_ctx() 75 kref_put(&handle->refcount, hl_encaps_release_handle_and_put_sob); in hl_encaps_sig_mgr_fini() 135 ctx = container_of(ref, struct hl_ctx, refcount); in hl_ctx_do_release() 206 kref_init(&ctx->refcount); in hl_ctx_init() 295 return kref_get_unless_zero(&ctx->refcount); in hl_ctx_get_unless_zero() 300 kref_get(&ctx->refcount); in hl_ctx_get() 305 return kref_put(&ctx->refcount, hl_ctx_do_release); in hl_ctx_put() 445 kref_put(&ctx->refcount, hl_ctx_do_releas in hl_ctx_mgr_fini() [all...] |
/linux/drivers/media/mc/ |
H A D | mc-dev-allocator.c | 33 struct kref refcount; member 45 container_of(kref, struct media_device_instance, refcount); in media_device_instance_release() 71 kref_get(&mdi->refcount); in __media_device_get() 89 kref_init(&mdi->refcount); in __media_device_get() 133 kref_put(&mdi->refcount, media_device_instance_release); in media_device_delete()
|
/linux/drivers/net/ethernet/mellanox/mlx5/core/lib/ |
H A D | geneve.c | 14 u32 refcount; member 72 if (geneve->refcount) { in mlx5_geneve_tlv_option_add() 76 geneve->refcount++; in mlx5_geneve_tlv_option_add() 107 geneve->refcount++; in mlx5_geneve_tlv_option_add() 122 if (--geneve->refcount == 0) { in mlx5_geneve_tlv_option_del() 154 if (geneve->refcount) in mlx5_geneve_destroy()
|
/linux/drivers/dpll/ |
H A D | dpll_core.c | 87 refcount_inc(&ref->refcount); in dpll_xa_ref_pin_add() 105 refcount_set(&ref->refcount, 1); in dpll_xa_ref_pin_add() 120 refcount_inc(&ref->refcount); in dpll_xa_ref_pin_add() 142 if (refcount_dec_and_test(&ref->refcount)) { in dpll_xa_ref_pin_del() 168 refcount_inc(&ref->refcount); in dpll_xa_ref_dpll_add() 186 refcount_set(&ref->refcount, 1); in dpll_xa_ref_dpll_add() 201 refcount_inc(&ref->refcount); in dpll_xa_ref_dpll_add() 223 if (refcount_dec_and_test(&ref->refcount)) { in dpll_xa_ref_dpll_del() 251 refcount_set(&dpll->refcount, 1); in dpll_device_alloc() 293 refcount_inc(&ret->refcount); in dpll_device_get() [all …]
|
/linux/drivers/gpu/drm/vmwgfx/ |
H A D | ttm_object.c | 82 struct kref refcount; member 135 kref_get(&tfile->refcount); in ttm_object_file_ref() 172 container_of(kref, struct ttm_object_file, refcount); in ttm_object_file_destroy() 183 kref_put(&tfile->refcount, ttm_object_file_destroy); in ttm_object_file_unref() 200 kref_init(&base->refcount); in ttm_base_object_init() 227 container_of(kref, struct ttm_base_object, refcount); in ttm_release_base() 251 kref_put(&base->refcount, ttm_release_base); in ttm_base_object_unref() 266 if (!kref_get_unless_zero(&base->refcount)) in ttm_base_object_lookup() 283 if (base && !kref_get_unless_zero(&base->refcount)) in ttm_base_object_lookup_for_ref() 336 kref_get(&base->refcount); in ttm_ref_object_add() [all …]
|
/linux/drivers/net/wireguard/ |
H A D | peer.c | 53 kref_init(&peer->refcount); in wg_peer_create() 75 if (unlikely(!peer || !kref_get_unless_zero(&peer->refcount))) in wg_peer_get_maybe_zero() 200 static void kref_release(struct kref *refcount) in kref_release() argument 202 struct wg_peer *peer = container_of(refcount, struct wg_peer, refcount); in kref_release() 227 kref_put(&peer->refcount, kref_release); in wg_peer_put()
|
/linux/include/net/ |
H A D | netrom.h | 100 refcount_t refcount; member 116 refcount_t refcount; member 125 refcount_inc(&((__nr_node)->refcount)) 129 if (refcount_dec_and_test(&nr_node->refcount)) { in nr_node_put() 135 refcount_inc(&((__nr_neigh)->refcount)) 139 if (refcount_dec_and_test(&nr_neigh->refcount)) { in nr_neigh_put()
|
/linux/fs/vboxsf/ |
H A D | file.c | 19 struct kref refcount; member 40 kref_init(&sf_handle->refcount); in vboxsf_create_sf_handle() 121 static void vboxsf_handle_release(struct kref *refcount) in vboxsf_handle_release() argument 124 container_of(refcount, struct vboxsf_handle, refcount); in vboxsf_handle_release() 138 kref_put(&sf_handle->refcount, vboxsf_handle_release); in vboxsf_release_sf_handle() 255 kref_get(&h->refcount); in vboxsf_get_write_handle() 288 kref_put(&sf_handle->refcount, vboxsf_handle_release); in vboxsf_writepage()
|