bpf, docs: Add signed comparison example
authorDave Thaler <dthaler@microsoft.com>
Fri, 10 Mar 2023 23:38:14 +0000 (23:38 +0000)
committerAlexei Starovoitov <ast@kernel.org>
Tue, 14 Mar 2023 05:10:45 +0000 (22:10 -0700)
Improve clarity by adding an example of a signed comparison instruction

Signed-off-by: Dave Thaler <dthaler@microsoft.com>
Acked-by: David Vernet <void@manifault.com>
Acked-by: John Fastabend <john.fastabend@gmail.com>
Link: https://lore.kernel.org/r/20230310233814.4641-1-dthaler1968@googlemail.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Documentation/bpf/instruction-set.rst

index 5e43e14abe80e288b418137d1532101160fb5423..b4464058905541db97b8e21ef206b1fb344d6560 100644 (file)
@@ -11,7 +11,8 @@ Documentation conventions
 =========================
 
 For brevity, this document uses the type notion "u64", "u32", etc.
-to mean an unsigned integer whose width is the specified number of bits.
+to mean an unsigned integer whose width is the specified number of bits,
+and "s32", etc. to mean a signed integer of the specified number of bits.
 
 Registers and calling convention
 ================================
@@ -264,6 +265,14 @@ BPF_JSLE  0xd0   PC += off if dst <= src    signed
 The eBPF program needs to store the return value into register R0 before doing a
 BPF_EXIT.
 
+Example:
+
+``BPF_JSGE | BPF_X | BPF_JMP32`` (0x7e) means::
+
+  if (s32)dst s>= (s32)src goto +offset
+
+where 's>=' indicates a signed '>=' comparison.
+
 Helper functions
 ~~~~~~~~~~~~~~~~