Commit ed514fc5 authored by Vishal Kulkarni's avatar Vishal Kulkarni Committed by David S. Miller

cxgb4: Don't return EAGAIN when TCAM is full.

During hash filter programming, driver needs to return ENOSPC error
intead of EAGAIN when TCAM is full.
Signed-off-by: default avatarVishal Kulkarni <vishal@chelsio.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent fcf97825
...@@ -1722,12 +1722,13 @@ void hash_filter_rpl(struct adapter *adap, const struct cpl_act_open_rpl *rpl) ...@@ -1722,12 +1722,13 @@ void hash_filter_rpl(struct adapter *adap, const struct cpl_act_open_rpl *rpl)
break; break;
default: default:
if (status != CPL_ERR_TCAM_FULL)
dev_err(adap->pdev_dev, "%s: filter creation PROBLEM; status = %u\n", dev_err(adap->pdev_dev, "%s: filter creation PROBLEM; status = %u\n",
__func__, status); __func__, status);
if (ctx) { if (ctx) {
if (status == CPL_ERR_TCAM_FULL) if (status == CPL_ERR_TCAM_FULL)
ctx->result = -EAGAIN; ctx->result = -ENOSPC;
else else
ctx->result = -EINVAL; ctx->result = -EINVAL;
} }
......
...@@ -687,11 +687,8 @@ int cxgb4_tc_flower_replace(struct net_device *dev, ...@@ -687,11 +687,8 @@ int cxgb4_tc_flower_replace(struct net_device *dev,
ret = ctx.result; ret = ctx.result;
/* Check if hw returned error for filter creation */ /* Check if hw returned error for filter creation */
if (ret) { if (ret)
netdev_err(dev, "%s: filter creation err %d\n",
__func__, ret);
goto free_entry; goto free_entry;
}
ch_flower->tc_flower_cookie = cls->cookie; ch_flower->tc_flower_cookie = cls->cookie;
ch_flower->filter_id = ctx.tid; ch_flower->filter_id = ctx.tid;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment