| From foo@baz Sun May 27 17:33:38 CEST 2018 |
| From: Arjun Vynipadath <arjun@chelsio.com> |
| Date: Thu, 15 Mar 2018 17:34:14 +0530 |
| Subject: cxgb4: Fix queue free path of ULD drivers |
| |
| From: Arjun Vynipadath <arjun@chelsio.com> |
| |
| [ Upstream commit d7cb44496a9bb458632cb3c18acb08949c210448 ] |
| |
| Setting sge_uld_rxq_info to NULL in free_queues_uld(). |
| We are referencing sge_uld_rxq_info in cxgb_up(). This |
| will fix a panic when interface is brought up after a |
| ULDq creation failure. |
| |
| Fixes: 94cdb8bb993a (cxgb4: Add support for dynamic allocation |
| of resources for ULD) |
| Signed-off-by: Arjun Vynipadath <arjun@chelsio.com> |
| Signed-off-by: Casey Leedom <leedom@chelsio.com> |
| Signed-off-by: Ganesh Goudhar <ganeshgr@chelsio.com> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.c |
| +++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.c |
| @@ -342,6 +342,7 @@ static void free_queues_uld(struct adapt |
| { |
| struct sge_uld_rxq_info *rxq_info = adap->sge.uld_rxq_info[uld_type]; |
| |
| + adap->sge.uld_rxq_info[uld_type] = NULL; |
| kfree(rxq_info->rspq_id); |
| kfree(rxq_info->uldrxq); |
| kfree(rxq_info); |