cxgb4: allow large buffer size to have page size
authorThadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
Mon, 23 Dec 2013 17:34:29 +0000 (15:34 -0200)
committerDavid S. Miller <davem@davemloft.net>
Sat, 4 Jan 2014 00:27:57 +0000 (19:27 -0500)
commit940d9d34a5467c2e2574866eb009d4cb61e27299
treec93a0751e8543812ef62ce1f2d9d4b9aef8e98a2
parentaca5f58f9ba803ec8c2e6bcf890db17589e8dfcc
cxgb4: allow large buffer size to have page size

Since commit 52367a763d8046190754ab43743e42638564a2d1
("cxgb4/cxgb4vf: Code cleanup to enable T4 Configuration File support"),
we have failures like this during cxgb4 probe:

cxgb4 0000:01:00.4: bad SGE FL page buffer sizes [65536, 65536]
cxgb4: probe of 0000:01:00.4 failed with error -22

This happens whenever software parameters are used, without a
configuration file. That happens when the hardware was already
initialized (after kexec, or after csiostor is loaded).

It happens that these values are acceptable, rendering fl_pg_order equal
to 0, which is the case of a hard init when the page size is equal or
larger than 65536.

Accepting fl_large_pg equal to fl_small_pg solves the issue, and
shouldn't cause any trouble besides a possible performance reduction
when smaller pages are used. And that can be fixed by a configuration
file.

Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/chelsio/cxgb4/sge.c