]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ice: simplify ice_run_xdp
authorMaciej Fijalkowski <maciej.fijalkowski@intel.com>
Mon, 18 Jan 2021 15:13:11 +0000 (16:13 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 10 Jun 2021 11:39:21 +0000 (13:39 +0200)
[ Upstream commit 59c97d1b51b119eace6b1e61a6f820701f5a8299 ]

There's no need for 'result' variable, we can directly return the
internal status based on action returned by xdp prog.

Reviewed-by: Björn Töpel <bjorn.topel@intel.com>
Signed-off-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Tested-by: Kiran Bhandare <kiranx.bhandare@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/intel/ice/ice_txrx.c

index 1510091a63e8ac36a3189eb91b4d33f77abbe244..5cc2854a5d48bd5c70197b21b2bb7b22c1d0a567 100644 (file)
@@ -537,22 +537,20 @@ static int
 ice_run_xdp(struct ice_ring *rx_ring, struct xdp_buff *xdp,
            struct bpf_prog *xdp_prog)
 {
-       int err, result = ICE_XDP_PASS;
        struct ice_ring *xdp_ring;
+       int err;
        u32 act;
 
        act = bpf_prog_run_xdp(xdp_prog, xdp);
        switch (act) {
        case XDP_PASS:
-               break;
+               return ICE_XDP_PASS;
        case XDP_TX:
                xdp_ring = rx_ring->vsi->xdp_rings[smp_processor_id()];
-               result = ice_xmit_xdp_buff(xdp, xdp_ring);
-               break;
+               return ice_xmit_xdp_buff(xdp, xdp_ring);
        case XDP_REDIRECT:
                err = xdp_do_redirect(rx_ring->netdev, xdp, xdp_prog);
-               result = !err ? ICE_XDP_REDIR : ICE_XDP_CONSUMED;
-               break;
+               return !err ? ICE_XDP_REDIR : ICE_XDP_CONSUMED;
        default:
                bpf_warn_invalid_xdp_action(act);
                fallthrough;
@@ -560,11 +558,8 @@ ice_run_xdp(struct ice_ring *rx_ring, struct xdp_buff *xdp,
                trace_xdp_exception(rx_ring->netdev, xdp_prog, act);
                fallthrough;
        case XDP_DROP:
-               result = ICE_XDP_CONSUMED;
-               break;
+               return ICE_XDP_CONSUMED;
        }
-
-       return result;
 }
 
 /**