On 1/14/2020 5:14 AM, Ajit Khaparde wrote: > From: Kalesh AP <kalesh-anakkur.pura...@broadcom.com> > > If flow create fails due to not enough filter resources, > driver does not populate the rte_flow_error using > rte_flow_error_set(). > > Since "rte_errno" could have garbage value and is not relaiable, > it could cause a segfault in the stack in port_flow_complain(). > > Fix it to set rte_flow_error using rte_flow_error_set() > when flow create fails due to not enough filter resources.
Hi Ajit, Kalesh, In patch title, 'handle' seems means fix, can you please prefer the 'fix' since it become kind of keyword to define the patch content. This also helps us missing the "Fixes: " tag as it has been here. Thanks, ferruh > > Signed-off-by: Kalesh AP <kalesh-anakkur.pura...@broadcom.com> > Reviewed-by: Ajit Khaparde <ajit.khapa...@broadcom.com> > --- > drivers/net/bnxt/bnxt_flow.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/bnxt/bnxt_flow.c b/drivers/net/bnxt/bnxt_flow.c > index cde1fa41c..5564c5363 100644 > --- a/drivers/net/bnxt/bnxt_flow.c > +++ b/drivers/net/bnxt/bnxt_flow.c > @@ -1702,7 +1702,9 @@ bnxt_flow_create(struct rte_eth_dev *dev, > > filter = bnxt_get_unused_filter(bp); > if (filter == NULL) { > - PMD_DRV_LOG(ERR, "Not enough resources for a new flow.\n"); > + rte_flow_error_set(error, ENOSPC, > + RTE_FLOW_ERROR_TYPE_HANDLE, NULL, > + "Not enough resources for a new flow"); > goto free_flow; > } > >