Commit 771dc8d
committed
bpf, arm32: Add JIT support for BPF line info
Update current JIT offsets to enable and set up BPF line info for better
introspection and debugging. Offsets map each xlated insn to the start of
its JITed code, as well as the epilogue. This also allows simplifying some
code and dropping unneeded JIT ctx variables.
Taking bpf_iter_udp4.bpf.o as an example using bpftool's JIT disassembly,
before this change we see:
48: ldr lr, [fp, #-44] @ 0xffffffd4
4c: strd r2, [lr, #-40] @ 0xffffffd8
50: ldr r8, [fp, #-44] @ 0xffffffd4
54: ldr r8, [r8, #-40] @ 0xffffffd8
58: ldr r2, [r8]
5c: mov r7, r2
60: ldr r2, [r7]
64: mov r3, #0
68: ldr r8, [fp, #-44] @ 0xffffffd4
6c: ldr r8, [r8, #-40] @ 0xffffffd8
70: ldr r6, [r8, torvalds#8]
74: ldr r9, [fp, #-44] @ 0xffffffd4
78: strd r6, [r9, #-48] @ 0xffffffd0
While afterwards we have:
48: ldr lr, [fp, #-44] @ 0xffffffd4
4c: strd r2, [lr, #-40] @ 0xffffffd8
; struct seq_file *seq = ctx->meta->seq;
50: ldr r8, [fp, #-44] @ 0xffffffd4
54: ldr r8, [r8, #-40] @ 0xffffffd8
58: ldr r2, [r8]
; struct seq_file *seq = ctx->meta->seq;
5c: mov r7, r2
60: ldr r2, [r7]
64: mov r3, #0
; struct udp_sock *udp_sk = ctx->udp_sk;
68: ldr r8, [fp, #-44] @ 0xffffffd4
6c: ldr r8, [r8, #-40] @ 0xffffffd8
70: ldr r6, [r8, torvalds#8]
74: ldr r9, [fp, #-44] @ 0xffffffd4
78: strd r6, [r9, #-48] @ 0xffffffd0
which aligns with the original source code.
Signed-off-by: Tony Ambardar <[email protected]>1 parent ca19994 commit 771dc8d
1 file changed
+31
-31
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
179 | 179 | | |
180 | 180 | | |
181 | 181 | | |
182 | | - | |
183 | | - | |
184 | 182 | | |
185 | 183 | | |
186 | 184 | | |
| |||
193 | 191 | | |
194 | 192 | | |
195 | 193 | | |
196 | | - | |
197 | | - | |
198 | 194 | | |
199 | 195 | | |
200 | 196 | | |
| |||
417 | 413 | | |
418 | 414 | | |
419 | 415 | | |
420 | | - | |
421 | | - | |
| 416 | + | |
422 | 417 | | |
423 | 418 | | |
424 | 419 | | |
| |||
447 | 442 | | |
448 | 443 | | |
449 | 444 | | |
450 | | - | |
451 | | - | |
| 445 | + | |
| 446 | + | |
452 | 447 | | |
453 | 448 | | |
454 | 449 | | |
| |||
499 | 494 | | |
500 | 495 | | |
501 | 496 | | |
502 | | - | |
| 497 | + | |
503 | 498 | | |
504 | 499 | | |
505 | 500 | | |
| |||
2710 | 2705 | | |
2711 | 2706 | | |
2712 | 2707 | | |
| 2708 | + | |
| 2709 | + | |
| 2710 | + | |
| 2711 | + | |
2713 | 2712 | | |
2714 | 2713 | | |
2715 | 2714 | | |
2716 | 2715 | | |
2717 | 2716 | | |
2718 | | - | |
2719 | | - | |
2720 | 2717 | | |
2721 | 2718 | | |
2722 | 2719 | | |
2723 | | - | |
2724 | | - | |
2725 | | - | |
2726 | 2720 | | |
2727 | 2721 | | |
2728 | 2722 | | |
2729 | 2723 | | |
| 2724 | + | |
| 2725 | + | |
| 2726 | + | |
| 2727 | + | |
2730 | 2728 | | |
2731 | 2729 | | |
2732 | 2730 | | |
| |||
2766 | 2764 | | |
2767 | 2765 | | |
2768 | 2766 | | |
2769 | | - | |
2770 | 2767 | | |
2771 | 2768 | | |
2772 | 2769 | | |
| |||
2812 | 2809 | | |
2813 | 2810 | | |
2814 | 2811 | | |
2815 | | - | |
| 2812 | + | |
2816 | 2813 | | |
2817 | 2814 | | |
2818 | | - | |
| 2815 | + | |
2819 | 2816 | | |
2820 | 2817 | | |
2821 | 2818 | | |
| |||
2831 | 2828 | | |
2832 | 2829 | | |
2833 | 2830 | | |
| 2831 | + | |
| 2832 | + | |
2834 | 2833 | | |
2835 | 2834 | | |
2836 | 2835 | | |
2837 | 2836 | | |
2838 | 2837 | | |
2839 | | - | |
2840 | | - | |
2841 | | - | |
2842 | | - | |
2843 | | - | |
| 2838 | + | |
2844 | 2839 | | |
| 2840 | + | |
2845 | 2841 | | |
2846 | | - | |
2847 | | - | |
2848 | | - | |
| 2842 | + | |
2849 | 2843 | | |
2850 | 2844 | | |
2851 | 2845 | | |
| |||
2855 | 2849 | | |
2856 | 2850 | | |
2857 | 2851 | | |
2858 | | - | |
2859 | | - | |
2860 | | - | |
2861 | 2852 | | |
2862 | 2853 | | |
2863 | 2854 | | |
| |||
2931 | 2922 | | |
2932 | 2923 | | |
2933 | 2924 | | |
| 2925 | + | |
| 2926 | + | |
| 2927 | + | |
| 2928 | + | |
| 2929 | + | |
| 2930 | + | |
| 2931 | + | |
| 2932 | + | |
| 2933 | + | |
| 2934 | + | |
2934 | 2935 | | |
2935 | 2936 | | |
2936 | | - | |
2937 | | - | |
| 2937 | + | |
| 2938 | + | |
2938 | 2939 | | |
2939 | | - | |
2940 | 2940 | | |
2941 | 2941 | | |
2942 | 2942 | | |
| |||
0 commit comments