Re: [PATCH] docs: bpf: Added more extension example

From: Song Liu
Date: Wed Jul 07 2021 - 18:23:13 EST


On Wed, Jul 7, 2021 at 10:50 AM UjjaL Roy <royujjal@xxxxxxxxx> wrote:
>
> From: "Roy, UjjaL" <royujjal@xxxxxxxxx>
>
> After reading this document observed that for new users it is
> hard to find an example of "extension" easily.
>
> So, added a new heading for extensions for better readability.
> Now, the new readers can easily identify "extension" examples.
> Also, added one more example of filtering interface index.
>
> Signed-off-by: Roy, UjjaL <royujjal@xxxxxxxxx>

Please prefix the subject with the target tree. In this case, the subject should
say [PATCH bpf-next] xxx. Also, please revise the commit log as suggested in
Documentation/process/submitting-patches.rst:

Describe your changes in imperative mood, e.g. "make xyzzy do frotz"
instead of "[This patch] makes xyzzy do frotz" or "[I] changed xyzzy
to do frotz", as if you are giving orders to the codebase to change
its behaviour.

Otherwise, this change looks good to me. You can add my Acked-by
tag in v2. (prefix v2 with [PATCH v2 bpf-next].

Thanks,
Song

Acked-by: Song Liu <songliubraving@xxxxxx>

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