lkml.org 
[lkml]   [2021]   [Nov]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.15 118/279] bnxt_en: reject indirect blk offload when hw-tc-offload is off
    Date
    From: Sriharsha Basavapatna <sriharsha.basavapatna@broadcom.com>

    [ Upstream commit b0757491a118ae5727cf9f1c3a11544397d46596 ]

    The driver does not check if hw-tc-offload is enabled for the device
    before offloading a flow in the context of indirect block callback.
    Fix this by checking NETIF_F_HW_TC in the features flag and rejecting
    the offload request. This will avoid unnecessary dmesg error logs when
    hw-tc-offload is disabled, such as these:

    bnxt_en 0000:19:00.1 eno2np1: dev(ifindex=294) not on same switch
    bnxt_en 0000:19:00.1 eno2np1: Error: bnxt_tc_add_flow: cookie=0xffff8dace1c88000 error=-22
    bnxt_en 0000:19:00.0 eno1np0: dev(ifindex=294) not on same switch
    bnxt_en 0000:19:00.0 eno1np0: Error: bnxt_tc_add_flow: cookie=0xffff8dace1c88000 error=-22

    Reported-by: Marcelo Ricardo Leitner <mleitner@redhat.com>
    Fixes: 627c89d00fb9 ("bnxt_en: flow_offload: offload tunnel decap rules via indirect callbacks")
    Signed-off-by: Sriharsha Basavapatna <sriharsha.basavapatna@broadcom.com>
    Signed-off-by: Michael Chan <michael.chan@broadcom.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c b/drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c
    index e6a4a768b10b2..1471b6130a2b9 100644
    --- a/drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c
    +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c
    @@ -1868,7 +1868,7 @@ static int bnxt_tc_setup_indr_block_cb(enum tc_setup_type type,
    struct flow_cls_offload *flower = type_data;
    struct bnxt *bp = priv->bp;

    - if (flower->common.chain_index)
    + if (!tc_cls_can_offload_and_chain0(bp->dev, type_data))
    return -EOPNOTSUPP;

    switch (type) {
    --
    2.33.0


    \
     
     \ /
      Last update: 2021-11-24 14:52    [W:4.206 / U:0.160 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site