lkml.org 
[lkml]   [2022]   [Jan]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.10 066/116] bpf: Do not WARN in bpf_warn_invalid_xdp_action()
    Date
    From: Paolo Abeni <pabeni@redhat.com>

    [ Upstream commit 2cbad989033bff0256675c38f96f5faab852af4b ]

    The WARN_ONCE() in bpf_warn_invalid_xdp_action() can be triggered by
    any bugged program, and even attaching a correct program to a NIC
    not supporting the given action.

    The resulting splat, beyond polluting the logs, fouls automated tools:
    e.g. a syzkaller reproducers using an XDP program returning an
    unsupported action will never pass validation.

    Replace the WARN_ONCE with a less intrusive pr_warn_once().

    Signed-off-by: Paolo Abeni <pabeni@redhat.com>
    Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
    Acked-by: Toke Høiland-Jørgensen <toke@redhat.com>
    Link: https://lore.kernel.org/bpf/016ceec56e4817ebb2a9e35ce794d5c917df572c.1638189075.git.pabeni@redhat.com
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    net/core/filter.c | 6 +++---
    1 file changed, 3 insertions(+), 3 deletions(-)

    diff --git a/net/core/filter.c b/net/core/filter.c
    index abd58dce49bbc..578b0bc78ac10 100644
    --- a/net/core/filter.c
    +++ b/net/core/filter.c
    @@ -7919,9 +7919,9 @@ void bpf_warn_invalid_xdp_action(u32 act)
    {
    const u32 act_max = XDP_REDIRECT;

    - WARN_ONCE(1, "%s XDP return value %u, expect packet loss!\n",
    - act > act_max ? "Illegal" : "Driver unsupported",
    - act);
    + pr_warn_once("%s XDP return value %u, expect packet loss!\n",
    + act > act_max ? "Illegal" : "Driver unsupported",
    + act);
    }
    EXPORT_SYMBOL_GPL(bpf_warn_invalid_xdp_action);

    --
    2.34.1
    \
     
     \ /
      Last update: 2022-01-18 04:10    [W:4.034 / U:0.140 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site