Re: [PATCH bpf] bpf, docs: Correct the example of BPF_XOR

From: Zheng Yejian
Date: Tue Nov 29 2022 - 20:17:23 EST


On 2022/11/30 02:54, David Vernet wrote:
On Tue, Nov 29, 2022 at 09:45:58PM +0800, Zheng Yejian wrote:
Refer to description of BPF_XOR, dst_reg should be used but not src_reg
in the examples.

Signed-off-by: Zheng Yejian <zhengyejian1@xxxxxxxxxx>
---
Documentation/bpf/instruction-set.rst | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Documentation/bpf/instruction-set.rst b/Documentation/bpf/instruction-set.rst
index 5d798437dad4..e672d5ec6cc7 100644
--- a/Documentation/bpf/instruction-set.rst
+++ b/Documentation/bpf/instruction-set.rst
@@ -122,11 +122,11 @@ BPF_END 0xd0 byte swap operations (see `Byte swap instructions`_ below)
``BPF_XOR | BPF_K | BPF_ALU`` means::
- src_reg = (u32) src_reg ^ (u32) imm32
+ dst_reg = (u32) dst_reg ^ (u32) imm32

Shouldn't this be

dst_reg = (u32) dst_reg ^ (u32) src_reg

Same idea below for 64 bit

See Chapter 'Instruction classes', BPF_K means "use 32-bit immediate as source operand", so it should be 'imm32' instead of 'src_reg'.


``BPF_XOR | BPF_K | BPF_ALU64`` means::
- src_reg = src_reg ^ imm32
+ dst_reg = dst_reg ^ imm32
Byte swap instructions
--
2.25.1