2021-07-12 17:41:39

by Ujjal Roy

[permalink] [raw]
Subject: [PATCH v2 bpf-nxt] Documentation/bpf: Add heading and example for extensions in filter.rst

[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 <[email protected]>
Acked-by: Song Liu <[email protected]>
---
Documentation/networking/filter.rst | 23 ++++++++++++++++-------
1 file changed, 16 insertions(+), 7 deletions(-)

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
--
2.17.1


2021-07-14 00:24:22

by John Fastabend

[permalink] [raw]
Subject: RE: [PATCH v2 bpf-nxt] Documentation/bpf: Add heading and example for extensions in filter.rst

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 <[email protected]>
> Acked-by: Song Liu <[email protected]>

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 <[email protected]>

2021-07-16 01:50:13

by Alexei Starovoitov

[permalink] [raw]
Subject: Re: [PATCH v2 bpf-nxt] Documentation/bpf: Add heading and example for extensions in filter.rst

On Tue, Jul 13, 2021 at 5:20 PM John Fastabend <[email protected]> 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 <[email protected]>
> > Acked-by: Song Liu <[email protected]>
>
> 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 <[email protected]>

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?

2021-07-16 20:14:05

by Daniel Borkmann

[permalink] [raw]
Subject: Re: [PATCH v2 bpf-nxt] Documentation/bpf: Add heading and example for extensions in filter.rst

On 7/16/21 3:48 AM, Alexei Starovoitov wrote:
> On Tue, Jul 13, 2021 at 5:20 PM John Fastabend <[email protected]> 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 <[email protected]>
>>> Acked-by: Song Liu <[email protected]>
>>
>> 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 <[email protected]>
>
> 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.