[PATCH] docs: bpf: Added more extension example

Song Liu song at kernel.org
Wed Jul 7 15:22:57 PDT 2021


On Wed, Jul 7, 2021 at 10:50 AM UjjaL Roy <royujjal at gmail.com> wrote:
>
> From: "Roy, UjjaL" <royujjal at gmail.com>
>
> 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 at gmail.com>

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 at fb.com>

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



More information about the linux-riscv mailing list