mirror of
git://nv-tegra.nvidia.com/linux-nv-oot.git
synced 2025-12-24 02:01:36 +03:00
nvethernet: handling new CERT errors
CERT INT08-C CERT STR07-C Jira NET-2907 Change-Id: If331caf9838840073792de5ac722f268920c4a87 Signed-off-by: Sanath Kumar Gampa <sgampa@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3328902 Reviewed-by: Bhadram Varka <vbhadram@nvidia.com> Reviewed-by: Srinivas Ramachandran <srinivasra@nvidia.com> GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
committed by
Jon Hunter
parent
d3cdce84ec
commit
5a5cf6254f
@@ -338,14 +338,19 @@ static inline bool valid_tx_len(unsigned int length)
|
||||
static inline int ether_avail_txdesc_cnt(struct osi_dma_priv_data *osi_dma,
|
||||
struct osi_tx_ring *tx_ring)
|
||||
{
|
||||
int ret = -EINVAL;
|
||||
|
||||
if ((osi_dma->tx_ring_sz == 0U) || (tx_ring->cur_tx_idx == 0U) ||
|
||||
(tx_ring->clean_idx < (tx_ring->cur_tx_idx - 1U))) {
|
||||
return ret;
|
||||
if (unlikely((osi_dma->tx_ring_sz == 0U) ||
|
||||
(tx_ring->cur_tx_idx >= osi_dma->tx_ring_sz))) {
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (tx_ring->clean_idx > (tx_ring->cur_tx_idx + 1U)) {
|
||||
return ((tx_ring->clean_idx - (tx_ring->cur_tx_idx + 1U)) &
|
||||
(osi_dma->tx_ring_sz - 1U));
|
||||
} else {
|
||||
return (((tx_ring->clean_idx + osi_dma->tx_ring_sz) -
|
||||
(tx_ring->cur_tx_idx + 1U)) &
|
||||
(osi_dma->tx_ring_sz - 1U));
|
||||
}
|
||||
return ((tx_ring->clean_idx - tx_ring->cur_tx_idx - 1U) &
|
||||
(osi_dma->tx_ring_sz - 1U));
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user