b.liu | e958203 | 2025-04-17 19:18:16 +0800 | [diff] [blame^] | 1 | From 755220eb974708615b14bcdc6412319698e0485d Mon Sep 17 00:00:00 2001 |
| 2 | From: Tony Ambardar <Tony.Ambardar@gmail.com> |
| 3 | Date: Thu, 22 Dec 2022 22:53:10 -0800 |
| 4 | Subject: [PATCH] Revert "ply: Use new read_kernel variants" |
| 5 | |
| 6 | This reverts commit 17864b9818cceca09f31a346908afe1c718c10c5. |
| 7 | |
| 8 | Fixes: 17864b98 ("ply: Use new read_kernel variants") |
| 9 | Signed-off-by: Tony Ambardar <Tony.Ambardar@gmail.com> |
| 10 | --- |
| 11 | src/libply/built-in/memory.c | 10 +++++----- |
| 12 | src/libply/ir.c | 10 +++++----- |
| 13 | src/libply/provider/tracepoint.c | 2 +- |
| 14 | 3 files changed, 11 insertions(+), 11 deletions(-) |
| 15 | |
| 16 | --- a/src/libply/built-in/memory.c |
| 17 | +++ b/src/libply/built-in/memory.c |
| 18 | @@ -140,7 +140,7 @@ static int str_ir_post(const struct func |
| 19 | ir_emit_ldbp(pb->ir, BPF_REG_1, n->sym->irs.stack); |
| 20 | ir_emit_insn(ir, MOV_IMM((int32_t)type_sizeof(n->sym->type)), BPF_REG_2, 0); |
| 21 | ir_emit_sym_to_reg(ir, BPF_REG_3, ptr->sym); |
| 22 | - ir_emit_insn(ir, CALL(BPF_FUNC_probe_read_kernel_str), 0, 0); |
| 23 | + ir_emit_insn(ir, CALL(BPF_FUNC_probe_read_str), 0, 0); |
| 24 | return 0; |
| 25 | } |
| 26 | |
| 27 | @@ -305,7 +305,7 @@ static int struct_dot_ir_pre(const struc |
| 28 | sou->sym->irs.hint.dot = 1; |
| 29 | |
| 30 | /* this also means we need to put ourselves on the |
| 31 | - * stack since data will be loaded via probe_read_kernel */ |
| 32 | + * stack since data will be loaded via probe_read */ |
| 33 | n->sym->irs.hint.stack = 1; |
| 34 | } |
| 35 | return 0; |
| 36 | @@ -334,7 +334,7 @@ static int struct_dot_ir_post(const stru |
| 37 | |
| 38 | ir_emit_sym_to_reg(pb->ir, BPF_REG_3, ptr->sym); |
| 39 | ir_emit_insn(pb->ir, ALU64_IMM(BPF_ADD, offset), BPF_REG_3, 0); |
| 40 | - goto probe_read_kernel; |
| 41 | + goto probe_read; |
| 42 | } |
| 43 | |
| 44 | offset += sou->sym->irs.stack; |
| 45 | @@ -346,10 +346,10 @@ static int struct_dot_ir_post(const stru |
| 46 | } |
| 47 | |
| 48 | ir_emit_insn(pb->ir, ALU_IMM(BPF_ADD, offset), BPF_REG_3, 0); |
| 49 | -probe_read_kernel: |
| 50 | +probe_read: |
| 51 | ir_emit_insn(pb->ir, MOV_IMM((int32_t)dst->size), BPF_REG_2, 0); |
| 52 | ir_emit_ldbp(pb->ir, BPF_REG_1, dst->stack); |
| 53 | - ir_emit_insn(pb->ir, CALL(BPF_FUNC_probe_read_kernel), 0, 0); |
| 54 | + ir_emit_insn(pb->ir, CALL(BPF_FUNC_probe_read), 0, 0); |
| 55 | /* TODO if (r0) exit(r0); */ |
| 56 | return 0; |
| 57 | } |
| 58 | --- a/src/libply/ir.c |
| 59 | +++ b/src/libply/ir.c |
| 60 | @@ -38,10 +38,10 @@ static const char *bpf_func_name(enum bp |
| 61 | return "map_update_elem"; |
| 62 | case BPF_FUNC_perf_event_output: |
| 63 | return "perf_event_output"; |
| 64 | - case BPF_FUNC_probe_read_kernel: |
| 65 | - return "probe_read_kernel"; |
| 66 | - case BPF_FUNC_probe_read_kernel_str: |
| 67 | - return "probe_read_kernel_str"; |
| 68 | + case BPF_FUNC_probe_read: |
| 69 | + return "probe_read"; |
| 70 | + case BPF_FUNC_probe_read_str: |
| 71 | + return "probe_read_str"; |
| 72 | case BPF_FUNC_trace_printk: |
| 73 | return "trace_printk"; |
| 74 | default: |
| 75 | @@ -416,7 +416,7 @@ void ir_emit_read_to_sym(struct ir *ir, |
| 76 | if (src != BPF_REG_3) |
| 77 | ir_emit_insn(ir, MOV, BPF_REG_3, src); |
| 78 | |
| 79 | - ir_emit_insn(ir, CALL(BPF_FUNC_probe_read_kernel), 0, 0); |
| 80 | + ir_emit_insn(ir, CALL(BPF_FUNC_probe_read), 0, 0); |
| 81 | /* TODO if (r0) exit(r0); */ |
| 82 | } |
| 83 | |
| 84 | --- a/src/libply/provider/tracepoint.c |
| 85 | +++ b/src/libply/provider/tracepoint.c |
| 86 | @@ -68,7 +68,7 @@ static int tracepoint_dyn_ir_post(const |
| 87 | ir_emit_insn(ir, ALU_IMM(BPF_AND, 0xffff), BPF_REG_4, 0); |
| 88 | ir_emit_insn(ir, ALU64(BPF_ADD), BPF_REG_3, BPF_REG_4); |
| 89 | |
| 90 | - ir_emit_insn(ir, CALL(BPF_FUNC_probe_read_kernel), 0, 0); |
| 91 | + ir_emit_insn(ir, CALL(BPF_FUNC_probe_read), 0, 0); |
| 92 | return 0; |
| 93 | } |
| 94 | |