| /linux-6.15/arch/x86/include/asm/ |
| H A D | local.h | 12 } local_t; typedef 19 static inline void local_inc(local_t *l) in local_inc() 25 static inline void local_dec(local_t *l) in local_dec() 31 static inline void local_add(long i, local_t *l) in local_add() 38 static inline void local_sub(long i, local_t *l) in local_sub() 54 static inline bool local_sub_and_test(long i, local_t *l) in local_sub_and_test() 67 static inline bool local_dec_and_test(local_t *l) in local_dec_and_test() 80 static inline bool local_inc_and_test(local_t *l) in local_inc_and_test() 106 static inline long local_add_return(long i, local_t *l) in local_add_return() 140 local_xchg(local_t *l, long n) in local_xchg() [all …]
|
| /linux-6.15/Documentation/translations/zh_CN/core-api/ |
| H A D | local_ops.rst | 24 注意,基于 ``local_t`` 的操作不建议用于一般内核操作。请使用 ``this_cpu`` 25 操作来代替使用,除非真的有特殊目的。大多数内核中使用的 ``local_t`` 已 27 定位和类似 ``local_t`` 的语义,产生了更紧凑和更快的执行代码。 41 有一个CPU写到 ``local_t`` 的数据。这是通过使用每CPU的数据来实现的,并确 42 保我们在一个抢占式安全上下文中修改它。然而,从任何一个CPU读取 ``local_t`` 54 通过在一个结构体中嵌入一个 ``atomic_long_t`` , ``local_t`` 类型被定义为 58 typedef struct { atomic_long_t a; } local_t; 69 它的local_t变量。 93 static DEFINE_PER_CPU(local_t, counters) = LOCAL_INIT(0); 127 用 ``local_t`` 变量作为写在缓冲区中的字节的计数器,就会出现这种情况:在缓 [all …]
|
| /linux-6.15/arch/powerpc/include/asm/ |
| H A D | local.h | 16 } local_t; typedef 20 static __inline__ long local_read(const local_t *l) in local_read() 25 static __inline__ void local_set(local_t *l, long i) in local_set() 31 static __inline__ void local_##op(long i, local_t *l) \ 41 static __inline__ long local_##op##_return(long a, local_t *l) \ 79 static __inline__ long local_cmpxchg(local_t *l, long o, long n) in local_cmpxchg() 93 static __inline__ bool local_try_cmpxchg(local_t *l, long *po, long n) in local_try_cmpxchg() 104 static __inline__ long local_xchg(local_t *l, long n) in local_xchg() 126 static __inline__ bool local_add_unless(local_t *l, long a, long u) in local_add_unless()
|
| /linux-6.15/arch/loongarch/include/asm/ |
| H A D | local.h | 15 } local_t; typedef 30 static inline long local_add_return(long i, local_t *l) in local_add_return() 44 static inline long local_sub_return(long i, local_t *l) in local_sub_return() 59 static inline long local_cmpxchg(local_t *l, long old, long new) in local_cmpxchg() 64 static inline bool local_try_cmpxchg(local_t *l, long *old, long new) in local_try_cmpxchg() 82 local_add_unless(local_t *l, long a, long u) in local_add_unless()
|
| /linux-6.15/arch/alpha/include/asm/ |
| H A D | local.h | 11 } local_t; typedef 21 static __inline__ long local_add_return(long i, local_t * l) in local_add_return() 38 static __inline__ long local_sub_return(long i, local_t * l) in local_sub_return() 55 static __inline__ long local_cmpxchg(local_t *l, long old, long new) in local_cmpxchg() 60 static __inline__ bool local_try_cmpxchg(local_t *l, long *old, long new) in local_try_cmpxchg() 77 local_add_unless(local_t *l, long a, long u) in local_add_unless()
|
| /linux-6.15/arch/mips/include/asm/ |
| H A D | local.h | 15 } local_t; typedef 30 static __inline__ long local_add_return(long i, local_t * l) in local_add_return() 63 static __inline__ long local_sub_return(long i, local_t * l) in local_sub_return() 97 static __inline__ long local_cmpxchg(local_t *l, long old, long new) in local_cmpxchg() 102 static __inline__ bool local_try_cmpxchg(local_t *l, long *old, long new) in local_try_cmpxchg() 120 local_add_unless(local_t *l, long a, long u) in local_add_unless()
|
| /linux-6.15/tools/lib/bpf/ |
| H A D | relo_core.c | 1459 __u16 local_vlen = btf_vlen(local_t); in bpf_core_enums_match() 1463 if (local_t->size != targ_t->size) in bpf_core_enums_match() 1476 local_n_off = btf_is_enum(local_t) ? btf_enum(local_t)[i].name_off : in bpf_core_enums_match() 1477 btf_enum64(local_t)[i].name_off; in bpf_core_enums_match() 1500 __u16 local_vlen = btf_vlen(local_t); in bpf_core_composites_match() 1563 const struct btf_type *local_t, *targ_t; in __bpf_core_types_match() local 1577 if (!local_t || !targ_t) in __bpf_core_types_match() 1587 local_k = btf_kind(local_t); in __bpf_core_types_match() 1656 local_id = local_t->type; in __bpf_core_types_match() 1676 __u16 local_vlen = btf_vlen(local_t); in __bpf_core_types_match() [all …]
|
| H A D | libbpf.c | 5596 const struct btf_type *t, *local_t; in bpf_core_add_cands() local 5601 local_t = btf__type_by_id(local_cand->btf, local_cand->id); in bpf_core_add_cands() 5602 local_name = btf__str_by_offset(local_cand->btf, local_t->name_off); in bpf_core_add_cands() 5607 if (!btf_kind_core_compat(t, local_t)) in bpf_core_add_cands() 5622 local_cand->id, btf_kind_str(local_t), in bpf_core_add_cands() 5742 const struct btf_type *local_t; in bpf_core_find_cands() local 5749 local_t = btf__type_by_id(local_btf, local_type_id); in bpf_core_find_cands() 5750 if (!local_t) in bpf_core_find_cands() 5753 local_name = btf__name_by_offset(local_btf, local_t->name_off); in bpf_core_find_cands()
|
| /linux-6.15/Documentation/core-api/ |
| H A D | local_ops.rst | 18 Note that ``local_t`` based operations are not recommended for general 20 really a special purpose. Most uses of ``local_t`` in the kernel have been 22 relocation with the ``local_t`` like semantics in a single instruction and 41 CPU writes to the ``local_t`` data. This is done by using per cpu data and 43 however permitted to read ``local_t`` data from any CPU: it will then appear to 56 The ``local_t`` type is defined as an opaque ``signed long`` by embedding an 60 typedef struct { atomic_long_t a; } local_t; 69 to update its ``local_t`` variables. 95 static DEFINE_PER_CPU(local_t, counters) = LOCAL_INIT(0); 131 the ``local_t`` variable as a counter of bytes written in a buffer: there should [all …]
|
| /linux-6.15/kernel/events/ |
| H A D | internal.h | 26 local_t head; /* write position */ 28 local_t events; /* event limit */ 29 local_t wakeup; /* wakeup stamp */ 30 local_t lost; /* nr records lost */
|
| /linux-6.15/include/linux/ |
| H A D | cookie.h | 10 local_t nesting;
|
| H A D | part_stat.h | 14 local_t in_flight[2];
|
| H A D | coresight.h | 291 local_t mode;
|
| H A D | perf_event.h | 1009 local_t nr_no_switch_fast;
|
| /linux-6.15/arch/x86/events/intel/ |
| H A D | pt.h | 79 local_t data_size;
|
| H A D | bts.c | 57 local_t data_size; 58 local_t head;
|
| /linux-6.15/include/asm-generic/ |
| H A D | local.h | 25 } local_t; typedef
|
| H A D | local64.h | 25 local_t a;
|
| /linux-6.15/drivers/hwtracing/coresight/ |
| H A D | coresight-priv.h | 106 local_t data_size;
|
| H A D | coresight-etb10.c | 88 local_t reading;
|
| /linux-6.15/kernel/trace/ |
| H A D | ring_buffer.c | 361 local_t write; /* index for next write */ 498 local_t entries_bytes; 499 local_t entries; 500 local_t overrun; 501 local_t commit_overrun; 502 local_t dropped_events; 503 local_t committing; 504 local_t commits; 505 local_t pages_touched; 506 local_t pages_lost; [all …]
|
| H A D | ring_buffer_benchmark.c | 17 local_t commit;
|
| /linux-6.15/arch/mips/math-emu/ |
| H A D | me-debugfs.c | 21 local_t *pv; in fpuemu_stat_get()
|
| /linux-6.15/kernel/bpf/ |
| H A D | memalloc.c | 87 local_t active;
|
| /linux-6.15/block/ |
| H A D | blk-iocost.c | 392 local_t nr_met; 393 local_t nr_missed;
|