linux/drivers/net/ethernet/chelsio
Hariprasad Shenai 4b8e27a86d cxgb4: Allocate dynamic mem. for egress and ingress queue maps
QIDs (egress/ingress) from firmware in FW_*_CMD.alloc command
can be anywhere in the range from EQ(IQFLINT)_START to EQ(IQFLINT)_END.
For eg, in the first load eqid can be from 100 to 300.
In the next load it can be from 301 to 500 (assume eq_start is 100 and eq_end is
1000).

The driver was assuming them to always start from EQ(IQFLINT)_START till
MAX_EGRQ(INGQ). This was causing stack overflow and subsequent crash.

Fixed it by dynamically allocating memory (of qsize (x_END - x_START + 1)) for
these structures.

Based on original work by Santosh Rastapur <santosh@chelsio.com>

Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-03-29 12:24:42 -07:00
..
cxgb net: rename vlan_tx_* helpers since "tx" is misleading there 2015-01-13 17:51:08 -05:00
cxgb3 cxgb3: re-use native hex2bin() 2015-01-25 00:09:41 -08:00
cxgb4 cxgb4: Allocate dynamic mem. for egress and ingress queue maps 2015-03-29 12:24:42 -07:00
cxgb4vf Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-01-15 00:53:17 -05:00
Kconfig cxgb4 : Fix build failure in cxgb4 when ipv6 is disabled/not in-built 2014-10-15 00:28:58 -04:00
Makefile