Browse Source

[vxge] Fix use of stale I/O buffer on error path

Signed-off-by: Michael Brown <mcb30@ipxe.org>
tags/v1.20.1
Michael Brown 7 years ago
parent
commit
c13bf52509
1 changed files with 2 additions and 2 deletions
  1. 2
    2
      src/drivers/net/vxge/vxge_traffic.c

+ 2
- 2
src/drivers/net/vxge/vxge_traffic.c View File

667
 		vxge_debug(VXGE_INFO, "%s: rx frame received at offset %d\n",
667
 		vxge_debug(VXGE_INFO, "%s: rx frame received at offset %d\n",
668
 			hldev->ndev->name, ring->rxd_offset);
668
 			hldev->ndev->name, ring->rxd_offset);
669
 
669
 
670
+		iobuf = (struct io_buffer *)(intptr_t)rxd->host_control;
671
+
670
 		if (tcode != VXGE_HW_RING_T_CODE_OK) {
672
 		if (tcode != VXGE_HW_RING_T_CODE_OK) {
671
 			netdev_rx_err(hldev->ndev, NULL, -EINVAL);
673
 			netdev_rx_err(hldev->ndev, NULL, -EINVAL);
672
 			vxge_debug(VXGE_ERR, "%s:%d, rx error tcode %d\n",
674
 			vxge_debug(VXGE_ERR, "%s:%d, rx error tcode %d\n",
675
 			goto err1;
677
 			goto err1;
676
 		}
678
 		}
677
 
679
 
678
-		iobuf = (struct io_buffer *)(intptr_t)rxd->host_control;
679
-
680
 		len = VXGE_HW_RING_RXD_1_BUFFER0_SIZE_GET(rxd->control_1);
680
 		len = VXGE_HW_RING_RXD_1_BUFFER0_SIZE_GET(rxd->control_1);
681
 		len -= ETH_FCS_LEN;
681
 		len -= ETH_FCS_LEN;
682
 
682
 

Loading…
Cancel
Save