Home
last modified time | relevance | path

Searched refs:counters (Results 1 – 25 of 240) sorted by relevance

12345678910

/linux/drivers/infiniband/core/
H A Duverbs_std_types_counters.c42 struct ib_counters *counters = uobject->object; in uverbs_free_counters() local
45 if (atomic_read(&counters->usecnt)) in uverbs_free_counters()
48 ret = counters->device->ops.destroy_counters(counters); in uverbs_free_counters()
51 kfree(counters); in uverbs_free_counters()
61 struct ib_counters *counters; in UVERBS_HANDLER() local
72 counters = rdma_zalloc_drv_obj(ib_dev, ib_counters); in UVERBS_HANDLER()
73 if (!counters) in UVERBS_HANDLER()
76 counters->device = ib_dev; in UVERBS_HANDLER()
77 counters->uobject = uobj; in UVERBS_HANDLER()
78 uobj->object = counters; in UVERBS_HANDLER()
[all …]
/linux/lib/
H A Dpercpu_counter.c67 s32 *pcount = per_cpu_ptr(fbc->counters, cpu); in percpu_counter_set()
98 count = this_cpu_read(*fbc->counters); in percpu_counter_add_batch()
106 count = __this_cpu_read(*fbc->counters); in percpu_counter_add_batch()
108 __this_cpu_sub(*fbc->counters, count); in percpu_counter_add_batch()
112 } while (!this_cpu_try_cmpxchg(*fbc->counters, &count, count + amount)); in percpu_counter_add_batch()
126 count = __this_cpu_read(*fbc->counters) + amount; in percpu_counter_add_batch()
130 __this_cpu_sub(*fbc->counters, count - amount); in percpu_counter_add_batch()
133 this_cpu_add(*fbc->counters, amount); in percpu_counter_add_batch()
152 count = __this_cpu_read(*fbc->counters); in percpu_counter_sync()
154 __this_cpu_sub(*fbc->counters, count); in percpu_counter_sync()
[all …]
H A Dstackdepot.c87 static long counters[DEPOT_COUNTER_COUNT]; variable
417 counters[DEPOT_COUNTER_FREELIST_SIZE]--; in depot_pop_free()
475 counters[DEPOT_COUNTER_REFD_ALLOCS]++; in depot_alloc_stack()
476 counters[DEPOT_COUNTER_REFD_INUSE]++; in depot_alloc_stack()
480 counters[DEPOT_COUNTER_PERSIST_COUNT]++; in depot_alloc_stack()
481 counters[DEPOT_COUNTER_PERSIST_BYTES] += record_size; in depot_alloc_stack()
560 counters[DEPOT_COUNTER_FREELIST_SIZE]++; in depot_free_stack()
561 counters[DEPOT_COUNTER_REFD_FREES]++; in depot_free_stack()
562 counters[DEPOT_COUNTER_REFD_INUSE]--; in depot_free_stack()
861 seq_printf(seq, "%s: %ld\n", counter_names[i], data_race(counters[i])); in stats_show()
/linux/tools/testing/selftests/net/tcp_ao/lib/
H A Dproc.c18 struct netstat_counter *counters; member
52 ret->counters = NULL; in lookup_get()
81 type->counters = reallocarray(type->counters, in netstat_read_type()
84 if (!type->counters) in netstat_read_type()
95 struct netstat_counter *nc = &type->counters[i]; in netstat_read_type()
133 type->counters = reallocarray(type->counters, i + 1, in snmp6_read()
135 if (!type->counters) in snmp6_read()
137 nc = &type->counters[i]; in snmp6_read()
196 free(ns->counters[i].name); in netstat_free()
197 free(ns->counters); in netstat_free()
[all …]
/linux/drivers/net/ethernet/aquantia/atlantic/macsec/
H A Dmacsec_api.c1825 struct aq_mss_egress_sc_counters *counters, in get_egress_sc_counters() argument
1837 counters->sc_protected_pkts[0] = in get_egress_sc_counters()
1839 counters->sc_protected_pkts[1] = in get_egress_sc_counters()
1845 counters->sc_encrypted_pkts[0] = in get_egress_sc_counters()
1847 counters->sc_encrypted_pkts[1] = in get_egress_sc_counters()
1853 counters->sc_protected_octets[0] = in get_egress_sc_counters()
1855 counters->sc_protected_octets[1] = in get_egress_sc_counters()
1861 counters->sc_encrypted_octets[0] = in get_egress_sc_counters()
1863 counters->sc_encrypted_octets[1] = in get_egress_sc_counters()
1870 struct aq_mss_egress_sc_counters *counters, in aq_mss_get_egress_sc_counters() argument
[all …]
H A Dmacsec_api.h271 struct aq_mss_egress_sc_counters *counters,
280 struct aq_mss_egress_sa_counters *counters,
288 struct aq_mss_egress_common_counters *counters);
299 struct aq_mss_ingress_sa_counters *counters,
307 struct aq_mss_ingress_common_counters *counters);
/linux/samples/cgroup/
H A Dmemcg_event_listener.c43 struct memcg_counters counters; member
49 static void print_memcg_counters(const struct memcg_counters *counters) in print_memcg_counters() argument
52 printf("\tlow: %ld\n", counters->low); in print_memcg_counters()
53 printf("\thigh: %ld\n", counters->high); in print_memcg_counters()
54 printf("\tmax: %ld\n", counters->max); in print_memcg_counters()
55 printf("\toom: %ld\n", counters->oom); in print_memcg_counters()
56 printf("\toom_kill: %ld\n", counters->oom_kill); in print_memcg_counters()
57 printf("\toom_group_kill: %ld\n", counters->oom_group_kill); in print_memcg_counters()
107 struct memcg_counters *counters = &events->counters; in read_memcg_events() local
116 .old = &counters->low, in read_memcg_events()
[all …]
/linux/Documentation/translations/zh_CN/core-api/
H A Dlocal_ops.rst93 static DEFINE_PER_CPU(local_t, counters) = LOCAL_INIT(0);
105 local_inc(&get_cpu_var(counters));
106 put_cpu_var(counters);
110 local_inc(this_cpu_ptr(&counters));
123 sum += local_read(&per_cpu(counters, cpu));
143 static DEFINE_PER_CPU(local_t, counters) = LOCAL_INIT(0);
152 local_inc(this_cpu_ptr(&counters));
157 * local_inc(&get_cpu_var(counters));
158 * put_cpu_var(counters);
166 /* Increment the counters */
[all …]
/linux/kernel/gcov/
H A Dclang.c75 u64 *counters; member
128 void llvm_gcda_emit_arcs(u32 num_counters, u64 *counters) in llvm_gcda_emit_arcs() argument
134 info->counters = counters; in llvm_gcda_emit_arcs()
230 memset(fn->counters, 0, in gcov_info_reset()
231 sizeof(fn->counters[0]) * fn->num_counters); in gcov_info_reset()
282 dfn_ptr->counters[i] += sfn_ptr->counters[i]; in gcov_info_add()
297 cv_size = fn->num_counters * sizeof(fn->counters[0]); in gcov_fn_info_dup()
298 fn_dup->counters = kvmalloc(cv_size, GFP_KERNEL); in gcov_fn_info_dup()
299 if (!fn_dup->counters) { in gcov_fn_info_dup()
304 memcpy(fn_dup->counters, fn->counters, cv_size); in gcov_fn_info_dup()
[all …]
H A Dgcc_base.c46 void __gcov_merge_add(gcov_type *counters, unsigned int n_counters) in __gcov_merge_add() argument
52 void __gcov_merge_single(gcov_type *counters, unsigned int n_counters) in __gcov_merge_single() argument
58 void __gcov_merge_delta(gcov_type *counters, unsigned int n_counters) in __gcov_merge_delta() argument
64 void __gcov_merge_ior(gcov_type *counters, unsigned int n_counters) in __gcov_merge_ior() argument
70 void __gcov_merge_time_profile(gcov_type *counters, unsigned int n_counters) in __gcov_merge_time_profile() argument
76 void __gcov_merge_icall_topn(gcov_type *counters, unsigned int n_counters) in __gcov_merge_icall_topn() argument
/linux/net/ipv4/netfilter/
H A Darp_tables.c242 counter = xt_get_this_cpu_counter(&e->counters); in arpt_do_table()
331 e->counters.pcnt = pos; in mark_source_chains()
357 pos = e->counters.pcnt; in mark_source_chains()
358 e->counters.pcnt = 0; in mark_source_chains()
372 e->counters.pcnt = pos; in mark_source_chains()
391 e->counters.pcnt = pos; in mark_source_chains()
425 if (!xt_percpu_counter_alloc(alloc_state, &e->counters)) in find_check_entry()
444 xt_percpu_counter_free(&e->counters); in find_check_entry()
507 e->counters = ((struct xt_counters) { 0, 0 }); in check_entry_size_and_hooks()
525 xt_percpu_counter_free(&e->counters); in cleanup_entry()
[all …]
H A Dip_tables.c297 counter = xt_get_this_cpu_counter(&e->counters); in ipt_do_table()
383 e->counters.pcnt = pos; in mark_source_chains()
407 pos = e->counters.pcnt; in mark_source_chains()
408 e->counters.pcnt = 0; in mark_source_chains()
422 e->counters.pcnt = pos; in mark_source_chains()
441 e->counters.pcnt = pos; in mark_source_chains()
526 if (!xt_percpu_counter_alloc(alloc_state, &e->counters)) in find_check_entry()
566 xt_percpu_counter_free(&e->counters); in find_check_entry()
630 e->counters = ((struct xt_counters) { 0, 0 }); in check_entry_size_and_hooks()
654 xt_percpu_counter_free(&e->counters); in cleanup_entry()
[all …]
/linux/net/ipv6/netfilter/
H A Dip6_tables.c320 counter = xt_get_this_cpu_counter(&e->counters); in ip6t_do_table()
401 e->counters.pcnt = pos; in mark_source_chains()
425 pos = e->counters.pcnt; in mark_source_chains()
426 e->counters.pcnt = 0; in mark_source_chains()
440 e->counters.pcnt = pos; in mark_source_chains()
459 e->counters.pcnt = pos; in mark_source_chains()
545 if (!xt_percpu_counter_alloc(alloc_state, &e->counters)) in find_check_entry()
584 xt_percpu_counter_free(&e->counters); in find_check_entry()
648 e->counters = ((struct xt_counters) { 0, 0 }); in check_entry_size_and_hooks()
671 xt_percpu_counter_free(&e->counters); in cleanup_entry()
[all …]
/linux/Documentation/core-api/
H A Dlocal_ops.rst30 counters. They minimize the performance cost of standard atomic operations by
34 Having fast per CPU atomic counters is interesting in many cases: it does not
36 coherent counters in NMI handlers. It is especially useful for tracing purposes
37 and for various performance monitoring counters.
95 static DEFINE_PER_CPU(local_t, counters) = LOCAL_INIT(0);
107 local_inc(&get_cpu_var(counters));
108 put_cpu_var(counters);
113 local_inc(this_cpu_ptr(&counters));
117 Reading the counters
120 Those local counters can be read from foreign CPUs to sum the count. Note that
[all …]
/linux/drivers/accessibility/speakup/
H A Dkeyhelp.c51 u_char *kp, counters[MAXFUNCS], ch, ch1; in build_key_data() local
56 memset(counters, 0, sizeof(counters)); in build_key_data()
66 counters[*kp]++; in build_key_data()
70 if (counters[i] == 0) in build_key_data()
73 offset += (counters[i] + 1); in build_key_data()
90 counters[ch1]--; in build_key_data()
94 p_key = key_data + offset + counters[ch1]; in build_key_data()
/linux/drivers/net/wireless/silabs/wfx/
H A Ddebug.c65 struct wfx_hif_mib_extended_count_table counters[3]; in wfx_counters_show() local
67 for (i = 0; i < ARRAY_SIZE(counters); i++) { in wfx_counters_show()
68 ret = wfx_hif_get_counters_table(wdev, i, counters + i); in wfx_counters_show()
79 le32_to_cpu(counters[2].count_##name), \ in wfx_counters_show()
80 le32_to_cpu(counters[0].count_##name), \ in wfx_counters_show()
81 le32_to_cpu(counters[1].count_##name)) in wfx_counters_show()
117 for (i = 0; i < ARRAY_SIZE(counters[0].reserved); i++) in wfx_counters_show()
119 le32_to_cpu(counters[2].reserved[i]), in wfx_counters_show()
120 le32_to_cpu(counters[0].reserved[i]), in wfx_counters_show()
121 le32_to_cpu(counters[1].reserved[i])); in wfx_counters_show()
/linux/drivers/scsi/elx/efct/
H A Defct_xport.c105 struct efct_hw_link_stat_counts *counters, void *arg) in efct_xport_link_stats_cb() argument
110 counters[EFCT_HW_LINK_STAT_LINK_FAILURE_COUNT].counter; in efct_xport_link_stats_cb()
112 counters[EFCT_HW_LINK_STAT_LOSS_OF_SYNC_COUNT].counter; in efct_xport_link_stats_cb()
114 counters[EFCT_HW_LINK_STAT_PRIMITIVE_SEQ_COUNT].counter; in efct_xport_link_stats_cb()
116 counters[EFCT_HW_LINK_STAT_INVALID_XMIT_WORD_COUNT].counter; in efct_xport_link_stats_cb()
118 counters[EFCT_HW_LINK_STAT_CRC_COUNT].counter; in efct_xport_link_stats_cb()
125 struct efct_hw_host_stat_counts *counters, void *arg) in efct_xport_host_stats_cb() argument
130 counters[EFCT_HW_HOST_STAT_TX_KBYTE_COUNT].counter; in efct_xport_host_stats_cb()
132 counters[EFCT_HW_HOST_STAT_RX_KBYTE_COUNT].counter; in efct_xport_host_stats_cb()
134 counters[EFCT_HW_HOST_STAT_TX_FRAME_COUNT].counter; in efct_xport_host_stats_cb()
[all …]
/linux/tools/perf/
H A Ddesign.txt5 Performance counters are special hardware registers available on most modern
13 hardware capabilities. It provides per task and per CPU counters, counter
15 provides "virtual" 64-bit counters, regardless of the width of the
16 underlying hardware counters.
18 Performance counters are accessed via special file descriptors.
32 Multiple counters can be kept open at a time, and the counters
130 * Special "software" counters provided by the kernel, even if the hardware
131 * does not support performance counters. These counters measure various
152 Counters come in two flavours: counting counters and sampling
153 counters. A "counting" counter is one that is used for counting the
[all …]
/linux/Documentation/arch/powerpc/
H A Dimc.rst17 IMC (In-Memory collection counters) is a hardware monitoring facility that
21 The Nest PMU counters are handled by a Nest IMC microcode which runs in the OCC
25 The Core and Thread IMC PMU counters are handled in the core. Core level PMU
26 counters give us the IMC counters' data per core and thread level PMU counters
27 give us the IMC counters' data per CPU thread.
51 The kernel discovers the IMC counters information in the device tree at the
52 `imc-counters` device node which has a compatible field
53 `ibm,opal-in-memory-counters`. From the device tree, the kernel parses the PMUs
/linux/Documentation/admin-guide/perf/
H A Dthunderx2-pmu.rst13 The DMC and L3C support up to 4 counters, while the CCPI2 supports up to 8
14 counters. Counters are independently programmable to different events and
15 can be started and stopped individually. None of the counters support an
16 overflow interrupt. DMC and L3C counters are 32-bit and read every 2 seconds.
17 The CCPI2 counters are 64-bit and assumed not to overflow in normal operation.
H A Dalibaba_pmu.rst23 Each sub-channel has 36 PMU counters in total, which is classified into
26 - Group 0: PMU Cycle Counter. This group has one pair of counters
30 - Group 1: PMU Bandwidth Counters. This group has 8 counters that are used
32 selected rank, or four ranks separately in the first 4 counters. The base
35 - Group 2: PMU Retry Counters. This group has 10 counters, that intend to
38 - Group 3: PMU Common Counters. This group has 16 counters, that are used
41 For now, the Driveway PMU driver only uses counters in group 0 and group 3.
/linux/tools/perf/tests/shell/
H A Dstat_bpf_counters_cgrp.sh15 if ! perf stat -a --bpf-counters --for-each-cgroup / true > /dev/null 2>&1; then
18 perf --no-pager stat -a --bpf-counters --for-each-cgroup / true || true
51 …check_system_wide_counted_output=$(perf stat -a --bpf-counters --for-each-cgroup ${test_cgroups} -…
H A Dstat_bpf_counters.sh2 # perf stat --bpf-counters test (exclusive)
36 echo "Failed: instructions not counted with --bpf-counters"
43 printf "Testing --bpf-counters "
48 bpf_instructions=$(perf stat --no-big-num --bpf-counters -e instructions -- $workload 2>&1 | \
74 # skip if --bpf-counters is not supported
75 if ! perf stat -e instructions --bpf-counters true > /dev/null 2>&1; then
77 echo "Skipping: --bpf-counters not supported"
78 perf --no-pager stat -e instructions --bpf-counters true || true
/linux/Documentation/admin-guide/device-mapper/
H A Dstatistics.rst14 The I/O statistics counters for each step-sized area of a region are
16 Documentation/admin-guide/iostats.rst). But two extra counters (12 and 13) are
19 histogram of latencies. All these counters may be accessed by sending
111 Clear all the counters except the in-flight i/o counters.
133 Print counters for each step-sized area of a region.
149 counters
151 The first 11 counters have the same meaning as
168 Additional counters:
174 Atomically print and then clear all the counters except the
175 in-flight i/o counters. Useful when the client consuming the
/linux/mm/kfence/
H A Dcore.c187 static atomic_long_t counters[KFENCE_COUNTER_COUNT]; variable
206 return atomic_long_read(&counters[KFENCE_COUNTER_ALLOCATED]) > thresh; in should_skip_covered()
345 atomic_long_inc(&counters[KFENCE_COUNTER_BUGS]); in check_canary_byte()
440 atomic_long_inc(&counters[KFENCE_COUNTER_SKIP_CAPACITY]); in kfence_guarded_alloc()
514 atomic_long_inc(&counters[KFENCE_COUNTER_ALLOCATED]); in kfence_guarded_alloc()
515 atomic_long_inc(&counters[KFENCE_COUNTER_ALLOCS]); in kfence_guarded_alloc()
533 atomic_long_inc(&counters[KFENCE_COUNTER_BUGS]); in kfence_guarded_free()
586 atomic_long_dec(&counters[KFENCE_COUNTER_ALLOCATED]); in kfence_guarded_free()
587 atomic_long_inc(&counters[KFENCE_COUNTER_FREES]); in kfence_guarded_free()
590 atomic_long_inc(&counters[KFENCE_COUNTER_ZOMBIES]); in kfence_guarded_free()
[all …]

12345678910