This group is locked. No changes can be made to the group while it is locked.
Re: math between pkt pointer and register with unbounded min value is not allowed #verifier
35: (69) r3 = *(u16 *)(r7 +38)r3 get the value from memory, its value could be any one as permitted
Does it mean that r3 is considered as be16 ? I do not understand why as I explicitly convert it in u16.
This output language is a readable format of bpf bytecode, right ? Is there any documentation to lean/understand it ?
The compiler does the right thing, just verifier is not advanced enough.Is it worthy to share this issue of verifier.c with bpf maintainers ? The compiler which is used here is clang which is called by bcc, right ?
Yes, you will need some source workaround. You could try below (untested):
I tested it and it seems to work. Thx a lot !!
But that means I can not use the u16 max value ?