|
@@ -245,10 +245,11 @@ static inline void rdma_addr_set_dgid(struct rdma_dev_addr *dev_addr, union ib_g
|
|
static inline enum ib_mtu iboe_get_mtu(int mtu)
|
|
static inline enum ib_mtu iboe_get_mtu(int mtu)
|
|
{
|
|
{
|
|
/*
|
|
/*
|
|
- * reduce IB headers from effective IBoE MTU. 28 stands for
|
|
|
|
- * atomic header which is the biggest possible header after BTH
|
|
|
|
|
|
+ * Reduce IB headers from effective IBoE MTU.
|
|
*/
|
|
*/
|
|
- mtu = mtu - IB_GRH_BYTES - IB_BTH_BYTES - 28;
|
|
|
|
|
|
+ mtu = mtu - (IB_GRH_BYTES + IB_UDP_BYTES + IB_BTH_BYTES +
|
|
|
|
+ IB_EXT_XRC_BYTES + IB_EXT_ATOMICETH_BYTES +
|
|
|
|
+ IB_ICRC_BYTES);
|
|
|
|
|
|
if (mtu >= ib_mtu_enum_to_int(IB_MTU_4096))
|
|
if (mtu >= ib_mtu_enum_to_int(IB_MTU_4096))
|
|
return IB_MTU_4096;
|
|
return IB_MTU_4096;
|