| /linux-6.15/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); 112 kref_init(&data->refcount); 114 kref_get(&data->refcount); 145 kref_get(&data->refcount); 176 struct kref refcount; 186 kref_get(&entry->refcount); [all …]
|
| /linux-6.15/include/linux/ |
| H A D | kref.h | 20 refcount_t refcount; member 23 #define KREF_INIT(n) { .refcount = REFCOUNT_INIT(n), } 31 refcount_set(&kref->refcount, 1); in kref_init() 36 return refcount_read(&kref->refcount); in kref_read() 45 refcount_inc(&kref->refcount); in kref_get() 64 if (refcount_dec_and_test(&kref->refcount)) { in kref_put() 85 if (refcount_dec_and_mutex_lock(&kref->refcount, mutex)) { in kref_put_mutex() 106 if (refcount_dec_and_lock(&kref->refcount, lock)) { in kref_put_lock() 131 return refcount_inc_not_zero(&kref->refcount); in kref_get_unless_zero()
|
| /linux-6.15/net/dsa/ |
| H A D | trace.h | 97 __field(unsigned int, refcount) 107 __entry->refcount = refcount_read(refcount); 119 const refcount_t *refcount), 226 __field(unsigned int, refcount) 234 __entry->refcount = refcount_read(refcount); 282 __field(unsigned int, refcount) 290 __entry->refcount = refcount_read(refcount); 371 const refcount_t *refcount), 373 TP_ARGS(dp, vlan, refcount), 382 __field(unsigned int, refcount) [all …]
|
| /linux-6.15/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() 179 kref_get(&gamma->refcount); in dc_gamma_retain() 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() 221 kref_put(&tf->refcount, dc_transfer_func_free); in dc_transfer_func_release() 231 kref_init(&tf->refcount); in dc_create_transfer_func() 253 kref_init(&lut->refcount); in dc_create_3dlut_func() 265 kref_put(&lut->refcount, dc_3dlut_func_free); in dc_3dlut_func_release() [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-6.15/arch/arm64/kvm/hyp/include/nvhe/ |
| H A D | memory.h | 44 u16 refcount; member 93 return p->refcount; in hyp_page_count() 98 BUG_ON(p->refcount == USHRT_MAX); in hyp_page_ref_inc() 99 p->refcount++; in hyp_page_ref_inc() 104 BUG_ON(!p->refcount); in hyp_page_ref_dec() 105 p->refcount--; in hyp_page_ref_dec() 111 return (p->refcount == 0); in hyp_page_ref_dec_and_test() 116 BUG_ON(p->refcount); in hyp_set_page_refcounted() 117 p->refcount = 1; in hyp_set_page_refcounted()
|
| /linux-6.15/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-6.15/rust/kernel/block/mq/ |
| H A D | request.rs | 102 if let Err(_old) = this.wrapper_ref().refcount().compare_exchange( in try_set_end() 171 refcount: AtomicU64, field 177 pub(crate) fn refcount(&self) -> &AtomicU64 { in refcount() method 178 &self.refcount in refcount() 190 unsafe { &raw mut (*this).refcount } in refcount_ptr() 235 let refcount = &self.wrapper_ref().refcount(); in inc_ref() localVariable 238 let updated = atomic_relaxed_op_unless(refcount, |x| x + 1, 0); in inc_ref() 252 let refcount = unsafe { &*RequestDataWrapper::refcount_ptr(wrapper_ptr) }; in dec_ref() localVariable 255 let new_refcount = atomic_relaxed_op_return(refcount, |x| x - 1); in dec_ref()
|
| /linux-6.15/kernel/bpf/ |
| H A D | kmem_cache_iter.c | 60 if (next && next->refcount > 0) in bpf_iter_kmem_cache_next() 61 next->refcount++; in bpf_iter_kmem_cache_next() 65 if (prev->refcount > 1) in bpf_iter_kmem_cache_next() 66 prev->refcount--; in bpf_iter_kmem_cache_next() 67 else if (prev->refcount == 1) in bpf_iter_kmem_cache_next() 92 if (s->refcount > 1) in bpf_iter_kmem_cache_destroy() 93 s->refcount--; in bpf_iter_kmem_cache_destroy() 94 else if (s->refcount == 1) in bpf_iter_kmem_cache_destroy() 136 if (s->refcount > 0) in kmem_cache_iter_seq_start() 137 s->refcount++; in kmem_cache_iter_seq_start()
|
| /linux-6.15/drivers/scsi/qedf/ |
| H A D | qedf_els.c | 196 int refcount; in qedf_rrq_compl() local 211 refcount = kref_read(&orig_io_req->refcount); in qedf_rrq_compl() 221 if (orig_io_req && refcount > 0) in qedf_rrq_compl() 248 int refcount; in qedf_send_rrq() local 258 refcount = kref_read(&aborted_io_req->refcount); in qedf_send_rrq() 283 refcount = kref_read(&aborted_io_req->refcount); in qedf_send_rrq() 284 if (refcount != 1) { in qedf_send_rrq() 549 int refcount; in qedf_srr_compl() local 569 refcount = kref_read(&orig_io_req->refcount); in qedf_srr_compl() 844 int refcount; in qedf_rec_compl() local [all …]
|
| H A D | qedf_io.c | 828 io_log->refcount = kref_read(&io_req->refcount); in qedf_trace_io() 1127 int refcount; in qedf_scsi_completion() local 1231 refcount = kref_read(&io_req->refcount); in qedf_scsi_completion() 1241 refcount); in qedf_scsi_completion() 1327 int refcount; in qedf_scsi_done() local 1394 refcount = kref_read(&io_req->refcount); in qedf_scsi_done() 1402 refcount); in qedf_scsi_done() 1681 refcount = kref_read(&io_req->refcount); in qedf_flush_active_ios() 1820 refcount = in qedf_flush_active_ios() 1932 refcount = kref_read(&io_req->refcount); in qedf_initiate_abts() [all …]
|
| /linux-6.15/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-6.15/Documentation/core-api/ |
| H A D | kref.rst | 28 struct kref refcount; 46 kref_init(&data->refcount); 48 This sets the refcount in the kref to 1. 60 kref_get(&data->refcount); 95 kref_put(&data->refcount, data_release); 106 kref_init(&data->refcount); 108 kref_get(&data->refcount); 144 kref_get(&data->refcount); 180 struct kref refcount; 190 kref_get(&entry->refcount); [all …]
|
| /linux-6.15/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-6.15/net/batman-adv/ |
| H A D | originator.c | 188 kref_init(&vlan->refcount); in batadv_orig_node_vlan_new() 191 kref_get(&vlan->refcount); in batadv_orig_node_vlan_new() 271 refcount); in batadv_hardif_neigh_release() 427 kref_get(&if_outgoing->refcount); in batadv_orig_ifinfo_new() 434 kref_init(&orig_ifinfo->refcount); in batadv_orig_ifinfo_new() 436 kref_get(&orig_ifinfo->refcount); in batadv_orig_ifinfo_new() 584 kref_get(&hard_iface->refcount); in batadv_hardif_neigh_create() 696 kref_get(&hard_iface->refcount); in batadv_neigh_node_create() 707 kref_init(&neigh_node->refcount); in batadv_neigh_node_create() 709 kref_get(&neigh_node->refcount); in batadv_neigh_node_create() [all …]
|
| H A D | types.h | 193 struct kref refcount; member 280 struct kref refcount; member 350 struct kref refcount; member 503 struct kref refcount; member 578 struct kref refcount; member 634 struct kref refcount; member 669 struct kref refcount; member 738 struct kref refcount; member 1532 struct kref refcount; member 1560 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-6.15/drivers/gpu/drm/i915/display/ |
| H A D | intel_dmc_wl.c | 161 WARN_ON(refcount_read(&wl->refcount)); in __intel_dmc_wl_release() 181 if (refcount_read(&wl->refcount)) in intel_dmc_wl_work() 340 refcount_set(&wl->refcount, in intel_dmc_wl_init() 383 if (refcount_read(&wl->refcount)) in intel_dmc_wl_enable() 452 if (!refcount_inc_not_zero(&wl->refcount)) in intel_dmc_wl_get() 453 refcount_set(&wl->refcount, 1); in intel_dmc_wl_get() 459 if (refcount_inc_not_zero(&wl->refcount)) in intel_dmc_wl_get() 462 refcount_set(&wl->refcount, 1); in intel_dmc_wl_get() 484 if (WARN_RATELIMIT(!refcount_read(&wl->refcount), in intel_dmc_wl_put() 488 if (refcount_dec_and_test(&wl->refcount)) { in intel_dmc_wl_put()
|
| /linux-6.15/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-6.15/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-6.15/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_release); in hl_ctx_mgr_fini()
|
| /linux-6.15/fs/bcachefs/ |
| H A D | reflink.c | 124 return l.v->refcount == r.v->refcount && bch2_extent_merge(c, _l, _r); 384 BUG_ON((s64) r->refcount + add < 0); in gc_trigger_reflink_p_segment() 387 r->refcount += add; in gc_trigger_reflink_p_segment() 502 __le64 *refcount; in bch2_make_extent_indirect() local 537 *refcount = 0; in bch2_make_extent_indirect() 782 if (!refcount) in bch2_gc_write_reflink_key() 796 if (fsck_err_on(r->refcount != le64_to_cpu(*refcount), in bch2_gc_write_reflink_key() 802 r->refcount)) { in bch2_gc_write_reflink_key() 808 if (!r->refcount) in bch2_gc_write_reflink_key() 843 if (!refcount) in bch2_gc_reflink_start() [all …]
|
| /linux-6.15/rust/kernel/sync/ |
| H A D | arc.rs | 146 refcount: Opaque<bindings::refcount_t>, field 231 refcount: Opaque::new(unsafe { bindings::REFCOUNT_INIT(1) }), in new() 349 let refcount = unsafe { me.ptr.as_ref() }.refcount.get(); in into_unique_or_drop() localVariable 356 let is_zero = unsafe { bindings::refcount_dec_and_test(refcount) }; in into_unique_or_drop() 360 unsafe { core::ptr::write(refcount, bindings::REFCOUNT_INIT(1)) }; in into_unique_or_drop() 430 let refcount = unsafe { self.ptr.as_ref() }.refcount.get(); in clone() localVariable 435 unsafe { bindings::refcount_inc(refcount) }; in clone() 448 let refcount = unsafe { self.ptr.as_ref() }.refcount.get(); in drop() localVariable 453 let is_zero = unsafe { bindings::refcount_dec_and_test(refcount) }; in drop() 748 refcount: Opaque::new(unsafe { bindings::REFCOUNT_INIT(1) }), in new_uninit()
|
| /linux-6.15/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | rl.c | 186 if (!table->rl_entry[i].refcount) in find_rl_entry() 191 if (table->rl_entry[i].refcount) { in find_rl_entry() 246 table->refcount++; in mlx5_rl_table_get() 261 table->refcount++; in mlx5_rl_table_get() 268 if (--table->refcount) in mlx5_rl_table_put() 284 if (table->rl_entry[i].refcount) in mlx5_rl_table_free() 291 entry->refcount++; in mlx5_rl_entry_get() 297 entry->refcount--; in mlx5_rl_entry_put() 298 if (!entry->refcount) in mlx5_rl_entry_put() 332 if (!entry->refcount) { in mlx5_rl_add_rate_raw() [all …]
|