mirror of
https://github.com/torvalds/linux.git
synced 2026-11-07 06:17:02 +01:00
selftests/bpf: Replace %pK output with 0
Networking used to print the socket pointer with %p as output in the
/proc interface. This was later changed to %pK in order not to reveal
the actual pointer value. The output format has then been copied to bpf
tests which produce the same format including the %pK format modifier.
Networking recently replaced the socket output with a plain 0 because
the socket pointer added no value to the output and the %pK should be
removed from library handling. The format remained otherwise unchanged
in order not to break any tools which parsing this information. This
was done via 7c0ec6288b ("net: Replace %pK output with 0").
This change removes the %pK modifier, following the change in networking.
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/bpf/20260918102610.gxA3km8_@linutronix.de
This commit is contained in:
parent
a99a1b2663
commit
79dc258c93
|
|
@ -187,7 +187,7 @@ The symptom for ``bpf_iter/netlink`` looks like
|
|||
...
|
||||
15: (bf) r2 = r7
|
||||
16: (0f) r2 += r1
|
||||
; BPF_SEQ_PRINTF(seq, "%pK %-3d ", s, s->sk_protocol);
|
||||
; BPF_SEQ_PRINTF(seq, "%p %-3d ", s, s->sk_protocol);
|
||||
17: (7b) *(u64 *)(r7 +0) = r2
|
||||
only read is supported
|
||||
|
||||
|
|
|
|||
|
|
@ -15,8 +15,8 @@
|
|||
#define EXP_SYM_OUT "schedule schedule+0x0/"
|
||||
#define MIN_SYM_RET sizeof(EXP_SYM_OUT)
|
||||
|
||||
/* The third specifier, %p, is a hashed pointer which changes on every reboot */
|
||||
#define EXP_ADDR_OUT "0000000000000000 ffff00000add4e55 "
|
||||
/* The second specifier, %p, is a hashed pointer which changes on every reboot */
|
||||
#define EXP_ADDR_OUT "ffff00000add4e55 "
|
||||
#define EXP_ADDR_RET sizeof(EXP_ADDR_OUT "unknownhashedptr")
|
||||
|
||||
#define EXP_STR_OUT "str1 a b c d e longstr"
|
||||
|
|
|
|||
|
|
@ -25,12 +25,12 @@ int dump_netlink(struct bpf_iter__netlink *ctx)
|
|||
return 0;
|
||||
|
||||
if (ctx->meta->seq_num == 0)
|
||||
BPF_SEQ_PRINTF(seq, "sk Eth Pid Groups "
|
||||
BPF_SEQ_PRINTF(seq, "sk Eth Pid Groups "
|
||||
"Rmem Wmem Dump Locks Drops "
|
||||
"Inode\n");
|
||||
|
||||
s = &nlk->sk;
|
||||
BPF_SEQ_PRINTF(seq, "%pK %-3d ", s, s->sk_protocol);
|
||||
BPF_SEQ_PRINTF(seq, "0 %-3d ", s->sk_protocol);
|
||||
|
||||
if (!nlk->groups) {
|
||||
group = 0;
|
||||
|
|
|
|||
|
|
@ -131,8 +131,7 @@ static int dump_tcp_sock(struct seq_file *seq, struct tcp_sock *tp,
|
|||
icsk->icsk_probes_out,
|
||||
sock_i_ino(sp),
|
||||
sp->sk_refcnt.refs.counter);
|
||||
BPF_SEQ_PRINTF(seq, "%pK %lu %lu %u %u %d\n",
|
||||
tp,
|
||||
BPF_SEQ_PRINTF(seq, "0 %lu %lu %u %u %d\n",
|
||||
jiffies_to_clock_t(icsk->icsk_rto),
|
||||
jiffies_to_clock_t(icsk->icsk_ack.ato),
|
||||
(icsk->icsk_ack.quick << 1) | inet_csk_in_pingpong_mode(icsk),
|
||||
|
|
@ -161,10 +160,10 @@ static int dump_tw_sock(struct seq_file *seq, struct tcp_timewait_sock *ttw,
|
|||
BPF_SEQ_PRINTF(seq, "%4d: %08X:%04X %08X:%04X ",
|
||||
seq_num, src, srcp, dest, destp);
|
||||
|
||||
BPF_SEQ_PRINTF(seq, "%02X %08X:%08X %02X:%08lX %08X %5d %8d %d %d %pK\n",
|
||||
BPF_SEQ_PRINTF(seq, "%02X %08X:%08X %02X:%08lX %08X %5d %8d %d %d 0\n",
|
||||
tw->tw_substate, 0, 0,
|
||||
3, jiffies_delta_to_clock_t(delta), 0, 0, 0, 0,
|
||||
tw->tw_refcnt.refs.counter, tw);
|
||||
tw->tw_refcnt.refs.counter);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -185,9 +184,9 @@ static int dump_req_sock(struct seq_file *seq, struct tcp_request_sock *treq,
|
|||
seq_num, irsk->ir_loc_addr,
|
||||
irsk->ir_num, irsk->ir_rmt_addr,
|
||||
bpf_ntohs(irsk->ir_rmt_port));
|
||||
BPF_SEQ_PRINTF(seq, "%02X %08X:%08X %02X:%08lX %08X %5d %8d %d %d %pK\n",
|
||||
BPF_SEQ_PRINTF(seq, "%02X %08X:%08X %02X:%08lX %08X %5d %8d %d %d 0\n",
|
||||
TCP_SYN_RECV, 0, 0, 1, jiffies_to_clock_t(ttd),
|
||||
req->num_timeout, uid, 0, 0, 0, req);
|
||||
req->num_timeout, uid, 0, 0, 0);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -135,8 +135,7 @@ static int dump_tcp6_sock(struct seq_file *seq, struct tcp6_sock *tp,
|
|||
icsk->icsk_probes_out,
|
||||
sock_i_ino(sp),
|
||||
sp->sk_refcnt.refs.counter);
|
||||
BPF_SEQ_PRINTF(seq, "%pK %lu %lu %u %u %d\n",
|
||||
tp,
|
||||
BPF_SEQ_PRINTF(seq, "0 %lu %lu %u %u %d\n",
|
||||
jiffies_to_clock_t(icsk->icsk_rto),
|
||||
jiffies_to_clock_t(icsk->icsk_ack.ato),
|
||||
(icsk->icsk_ack.quick << 1) | inet_csk_in_pingpong_mode(icsk),
|
||||
|
|
@ -170,10 +169,10 @@ static int dump_tw_sock(struct seq_file *seq, struct tcp_timewait_sock *ttw,
|
|||
dest->s6_addr32[0], dest->s6_addr32[1],
|
||||
dest->s6_addr32[2], dest->s6_addr32[3], destp);
|
||||
|
||||
BPF_SEQ_PRINTF(seq, "%02X %08X:%08X %02X:%08lX %08X %5d %8d %d %d %pK\n",
|
||||
BPF_SEQ_PRINTF(seq, "%02X %08X:%08X %02X:%08lX %08X %5d %8d %d %d 0\n",
|
||||
tw->tw_substate, 0, 0,
|
||||
3, jiffies_delta_to_clock_t(delta), 0, 0, 0, 0,
|
||||
tw->tw_refcnt.refs.counter, tw);
|
||||
tw->tw_refcnt.refs.counter);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -201,9 +200,9 @@ static int dump_req_sock(struct seq_file *seq, struct tcp_request_sock *treq,
|
|||
dest->s6_addr32[0], dest->s6_addr32[1],
|
||||
dest->s6_addr32[2], dest->s6_addr32[3],
|
||||
bpf_ntohs(irsk->ir_rmt_port));
|
||||
BPF_SEQ_PRINTF(seq, "%02X %08X:%08X %02X:%08lX %08X %5d %8d %d %d %pK\n",
|
||||
BPF_SEQ_PRINTF(seq, "%02X %08X:%08X %02X:%08lX %08X %5d %8d %d %d 0\n",
|
||||
TCP_SYN_RECV, 0, 0, 1, jiffies_to_clock_t(ttd),
|
||||
req->num_timeout, uid, 0, 0, 0, req);
|
||||
req->num_timeout, uid, 0, 0, 0);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -57,13 +57,13 @@ int dump_udp4(struct bpf_iter__udp *ctx)
|
|||
BPF_SEQ_PRINTF(seq, "%5d: %08X:%04X %08X:%04X ",
|
||||
ctx->bucket, src, srcp, dest, destp);
|
||||
|
||||
BPF_SEQ_PRINTF(seq, "%02X %08X:%08X %02X:%08lX %08X %5u %8d %lu %d %pK %u\n",
|
||||
BPF_SEQ_PRINTF(seq, "%02X %08X:%08X %02X:%08lX %08X %5u %8d %lu %d 0 %u\n",
|
||||
inet->sk.sk_state,
|
||||
inet->sk.sk_wmem_alloc.refs.counter - 1,
|
||||
rqueue,
|
||||
0, 0L, 0, ctx->uid, 0,
|
||||
sock_i_ino(&inet->sk),
|
||||
inet->sk.sk_refcnt.refs.counter, udp_sk,
|
||||
inet->sk.sk_refcnt.refs.counter,
|
||||
udp_sk->drop_counters.drops0.counter +
|
||||
udp_sk->drop_counters.drops1.counter);
|
||||
|
||||
|
|
|
|||
|
|
@ -65,13 +65,13 @@ int dump_udp6(struct bpf_iter__udp *ctx)
|
|||
dest->s6_addr32[0], dest->s6_addr32[1],
|
||||
dest->s6_addr32[2], dest->s6_addr32[3], destp);
|
||||
|
||||
BPF_SEQ_PRINTF(seq, "%02X %08X:%08X %02X:%08lX %08X %5u %8d %lu %d %pK %u\n",
|
||||
BPF_SEQ_PRINTF(seq, "%02X %08X:%08X %02X:%08lX %08X %5u %8d %lu %d 0 %u\n",
|
||||
inet->sk.sk_state,
|
||||
inet->sk.sk_wmem_alloc.refs.counter - 1,
|
||||
rqueue,
|
||||
0, 0L, 0, ctx->uid, 0,
|
||||
sock_i_ino(&inet->sk),
|
||||
inet->sk.sk_refcnt.refs.counter, udp_sk,
|
||||
inet->sk.sk_refcnt.refs.counter,
|
||||
udp_sk->drop_counters.drops0.counter +
|
||||
udp_sk->drop_counters.drops1.counter);
|
||||
return 0;
|
||||
|
|
|
|||
|
|
@ -42,10 +42,9 @@ int dump_unix(struct bpf_iter__unix *ctx)
|
|||
seq = ctx->meta->seq;
|
||||
seq_num = ctx->meta->seq_num;
|
||||
if (seq_num == 0)
|
||||
BPF_SEQ_PRINTF(seq, "Num RefCount Protocol Flags Type St Inode Path\n");
|
||||
BPF_SEQ_PRINTF(seq, "Num RefCount Protocol Flags Type St Inode Path\n");
|
||||
|
||||
BPF_SEQ_PRINTF(seq, "%pK: %08X %08X %08X %04X %02X %8lu",
|
||||
unix_sk,
|
||||
BPF_SEQ_PRINTF(seq, "%08u: %08X %08X %08X %04X %02X %8lu", 0,
|
||||
sk->sk_refcnt.refs.counter,
|
||||
0,
|
||||
sk->sk_state == TCP_LISTEN ? __SO_ACCEPTCON : 0,
|
||||
|
|
|
|||
|
|
@ -57,8 +57,8 @@ int handler(const void *ctx)
|
|||
sym_ret = BPF_SNPRINTF(sym_out, sizeof(sym_out), "%ps %pS %pB",
|
||||
&schedule, &schedule, &schedule);
|
||||
/* Kernel pointers */
|
||||
addr_ret = BPF_SNPRINTF(addr_out, sizeof(addr_out), "%pK %px %p",
|
||||
0, 0xFFFF00000ADD4E55, 0xFFFF00000ADD4E55);
|
||||
addr_ret = BPF_SNPRINTF(addr_out, sizeof(addr_out), "%px %p",
|
||||
0xFFFF00000ADD4E55, 0xFFFF00000ADD4E55);
|
||||
/* Strings and single-byte character embedding */
|
||||
str_ret = BPF_SNPRINTF(str_out, sizeof(str_out), "%s % 9c %+2c %-3c %04c %0c %+05s",
|
||||
str1, 'a', 'b', 'c', 'd', 'e', longstr);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user