From 4d97e8eda8e054fbbc2e621920e5a3d0feb55573 Mon Sep 17 00:00:00 2001 From: Aastha Mehta <aasthakm@mpi-sws.org> Date: Tue, 22 May 2018 09:07:09 +0000 Subject: [PATCH] move tx interception to the beginning of the driver xmit function --- drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c index f194f449f..2dedb5719 100644 --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_cmn.c @@ -5222,6 +5222,10 @@ netdev_tx_t bnx2x_start_xmit(struct sk_buff *skb, struct net_device *dev) #ifdef CONFIG_XEN_SME int sme_ret = NETDEV_TX_OK; + sme_ret = xsl_intercept_sk_buff(skb, NULL); + if (sme_ret == 0) { + return NETDEV_TX_OK; + } #endif #ifdef BNX2X_STOP_ON_ERROR @@ -5306,13 +5310,6 @@ netdev_tx_t bnx2x_start_xmit(struct sk_buff *skb, struct net_device *dev) } #endif -#ifdef CONFIG_XEN_SME - sme_ret = xsl_intercept_sk_buff(skb, NULL); - if (sme_ret == 0) { - return NETDEV_TX_OK; - } -#endif - /* Map skb linear data for DMA */ mapping = dma_map_single(&bp->pdev->dev, skb->data, skb_headlen(skb), DMA_TO_DEVICE); -- GitLab