Message ID | 20210712173723.1597-1-royujjal@gmail.com |
---|---|
State | New |
Headers | show |
Series | [v2,bpf-nxt] Documentation/bpf: Add heading and example for extensions in filter.rst | expand |
Roy, UjjaL wrote: > [1] https://www.kernel.org/doc/html/latest/bpf/ > > Add new heading for extensions to make it more readable. Also, add one > more example of filtering interface index for better understanding. > > Signed-off-by: Roy, UjjaL <royujjal@gmail.com> > Acked-by: Song Liu <songliubraving@fb.com> Looks OK to me. I thought the original was readable without the header, but if it helps someone seems easy enough to do. Acked-by: John Fastabend <john.fastabend@gmail.com>
On Tue, Jul 13, 2021 at 5:20 PM John Fastabend <john.fastabend@gmail.com> wrote: > > Roy, UjjaL wrote: > > [1] https://www.kernel.org/doc/html/latest/bpf/ > > > > Add new heading for extensions to make it more readable. Also, add one > > more example of filtering interface index for better understanding. > > > > Signed-off-by: Roy, UjjaL <royujjal@gmail.com> > > Acked-by: Song Liu <songliubraving@fb.com> > > Looks OK to me. I thought the original was readable without the header, but > if it helps someone seems easy enough to do. > > Acked-by: John Fastabend <john.fastabend@gmail.com> I cannot figure out how to apply this patch, because I see: Applying: Documentation/bpf: Add heading and example for extensions in filter.rst fatal: empty ident name (for <>) not allowed Any idea?
On 7/16/21 3:48 AM, Alexei Starovoitov wrote: > On Tue, Jul 13, 2021 at 5:20 PM John Fastabend <john.fastabend@gmail.com> wrote: >> >> Roy, UjjaL wrote: >>> [1] https://www.kernel.org/doc/html/latest/bpf/ >>> >>> Add new heading for extensions to make it more readable. Also, add one >>> more example of filtering interface index for better understanding. >>> >>> Signed-off-by: Roy, UjjaL <royujjal@gmail.com> >>> Acked-by: Song Liu <songliubraving@fb.com> >> >> Looks OK to me. I thought the original was readable without the header, but >> if it helps someone seems easy enough to do. >> >> Acked-by: John Fastabend <john.fastabend@gmail.com> > > I cannot figure out how to apply this patch, because I see: > Applying: Documentation/bpf: Add heading and example for extensions in > filter.rst > fatal: empty ident name (for <>) not allowed > > Any idea? Same happened on my side. Maybe not sent via git-send-email(1)? Anyway, I've applied manually meanwhile.
diff --git a/Documentation/networking/filter.rst b/Documentation/networking/filter.rst index 3e2221f4abe4..5f13905b12e0 100644 --- a/Documentation/networking/filter.rst +++ b/Documentation/networking/filter.rst @@ -320,13 +320,6 @@ Examples for low-level BPF: ret #-1 drop: ret #0 -**(Accelerated) VLAN w/ id 10**:: - - ld vlan_tci - jneq #10, drop - ret #-1 - drop: ret #0 - **icmp random packet sampling, 1 in 4**:: ldh [12] @@ -358,6 +351,22 @@ Examples for low-level BPF: bad: ret #0 /* SECCOMP_RET_KILL_THREAD */ good: ret #0x7fff0000 /* SECCOMP_RET_ALLOW */ +Examples for low-level BPF extension: + +**Packet for interface index 13**:: + + ld ifidx + jneq #13, drop + ret #-1 + drop: ret #0 + +**(Accelerated) VLAN w/ id 10**:: + + ld vlan_tci + jneq #10, drop + ret #-1 + drop: ret #0 + The above example code can be placed into a file (here called "foo"), and then be passed to the bpf_asm tool for generating opcodes, output that xt_bpf and cls_bpf understands and can directly be loaded with. Example with above