On 32-bit machines, sizeof (u64 *) is 4 bytes (size of a ***pointer***).
However, the max SDP FMR pool size should be PAGE_SIZE / sizeof(an mtt entry) --
and mtt entries are u64's (or __be64's).
This resulted in SDP requesting twice as many entries per pool on 32-bit machines
as could fit on a single page -- with the result that the fmr pool allocation failed
at driver startup.
Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
#define SDP_TX_SIZE 0x40
#define SDP_RX_SIZE 0x40
-#define SDP_FMR_SIZE (PAGE_SIZE / sizeof(u64 *))
+#define SDP_FMR_SIZE (PAGE_SIZE / sizeof(u64))
#define SDP_FMR_POOL_SIZE 1024
#define SDP_FMR_DIRTY_SIZE ( SDP_FMR_POOL_SIZE / 4 )