lkml.org 
[lkml]   [2019]   [Dec]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.4 212/350] bnx2x: Fix PF-VF communication over multi-cos queues.
    Date
    From: Manish Chopra <manishc@marvell.com>

    [ Upstream commit dc5a3d79c345871439ffe72550b604fcde9770e1 ]

    PF driver doesn't enable tx-switching for all cos queues/clients,
    which causes packets drop from PF to VF. Fix this by enabling
    tx-switching on all cos queues/clients.

    Signed-off-by: Manish Chopra <manishc@marvell.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    .../net/ethernet/broadcom/bnx2x/bnx2x_sriov.c | 16 +++++++++++-----
    1 file changed, 11 insertions(+), 5 deletions(-)

    diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
    index 0edbb0a768472..5097a44686b39 100644
    --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
    +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_sriov.c
    @@ -2397,15 +2397,21 @@ static int bnx2x_set_pf_tx_switching(struct bnx2x *bp, bool enable)
    /* send the ramrod on all the queues of the PF */
    for_each_eth_queue(bp, i) {
    struct bnx2x_fastpath *fp = &bp->fp[i];
    + int tx_idx;

    /* Set the appropriate Queue object */
    q_params.q_obj = &bnx2x_sp_obj(bp, fp).q_obj;

    - /* Update the Queue state */
    - rc = bnx2x_queue_state_change(bp, &q_params);
    - if (rc) {
    - BNX2X_ERR("Failed to configure Tx switching\n");
    - return rc;
    + for (tx_idx = FIRST_TX_COS_INDEX;
    + tx_idx < fp->max_cos; tx_idx++) {
    + q_params.params.update.cid_index = tx_idx;
    +
    + /* Update the Queue state */
    + rc = bnx2x_queue_state_change(bp, &q_params);
    + if (rc) {
    + BNX2X_ERR("Failed to configure Tx switching\n");
    + return rc;
    + }
    }
    }

    --
    2.20.1
    \
     
     \ /
      Last update: 2019-12-10 22:24    [W:2.822 / U:0.104 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site