x86/alternatives: Rename 'bp_refs' to 'text_poke_array_refs'

Make it clear that these reference counts lock access
to text_poke_array.

Signed-off-by: Ingo Molnar <mingo@kernel.org>
Cc: Juergen Gross <jgross@suse.com>
Cc: "H . Peter Anvin" <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: https://lore.kernel.org/r/20250411054105.2341982-5-mingo@kernel.org
This commit is contained in:
Ingo Molnar
2025-04-11 07:40:16 +02:00
parent 84e5ba949b
commit 28fb79092d

View File

@@ -2476,14 +2476,14 @@ struct text_poke_int3_vec {
int nr_entries;
};
static DEFINE_PER_CPU(atomic_t, bp_refs);
static DEFINE_PER_CPU(atomic_t, text_poke_array_refs);
static struct text_poke_int3_vec bp_desc;
static __always_inline
struct text_poke_int3_vec *try_get_desc(void)
{
atomic_t *refs = this_cpu_ptr(&bp_refs);
atomic_t *refs = this_cpu_ptr(&text_poke_array_refs);
if (!raw_atomic_inc_not_zero(refs))
return NULL;
@@ -2493,7 +2493,7 @@ struct text_poke_int3_vec *try_get_desc(void)
static __always_inline void put_desc(void)
{
atomic_t *refs = this_cpu_ptr(&bp_refs);
atomic_t *refs = this_cpu_ptr(&text_poke_array_refs);
smp_mb__before_atomic();
raw_atomic_dec(refs);
@@ -2529,9 +2529,9 @@ noinstr int poke_int3_handler(struct pt_regs *regs)
* Having observed our INT3 instruction, we now must observe
* bp_desc with non-zero refcount:
*
* bp_refs = 1 INT3
* text_poke_array_refs = 1 INT3
* WMB RMB
* write INT3 if (bp_refs != 0)
* write INT3 if (text_poke_array_refs != 0)
*/
smp_rmb();
@@ -2638,7 +2638,7 @@ static void text_poke_bp_batch(struct text_poke_loc *tp, unsigned int nr_entries
* ensure reading a non-zero refcount provides up to date bp_desc data.
*/
for_each_possible_cpu(i)
atomic_set_release(per_cpu_ptr(&bp_refs, i), 1);
atomic_set_release(per_cpu_ptr(&text_poke_array_refs, i), 1);
/*
* Function tracing can enable thousands of places that need to be
@@ -2760,7 +2760,7 @@ static void text_poke_bp_batch(struct text_poke_loc *tp, unsigned int nr_entries
* unused.
*/
for_each_possible_cpu(i) {
atomic_t *refs = per_cpu_ptr(&bp_refs, i);
atomic_t *refs = per_cpu_ptr(&text_poke_array_refs, i);
if (unlikely(!atomic_dec_and_test(refs)))
atomic_cond_read_acquire(refs, !VAL);