mirror of
https://github.com/torvalds/linux.git
synced 2024-11-15 08:31:55 +00:00
IPoIB/cm: Fix interoperability when MTU doesn't match
IPoIB connected mode currently rejects a connection request unless the supported MTU is >= the local netdevice MTU. This breaks interoperability with implementations that might have tweaked IPOIB_CM_MTU, and there's real no longer a reason to do so: this test is just a leftover from when we did not tweak MTU per-connection. Fix this by making the test as permissive as possible. Signed-off-by: Michael S. Tsirkin <mst@dev.mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
This commit is contained in:
parent
3ec7393a68
commit
82c3aca6ad
@ -759,9 +759,9 @@ static int ipoib_cm_rep_handler(struct ib_cm_id *cm_id, struct ib_cm_event *even
|
||||
|
||||
p->mtu = be32_to_cpu(data->mtu);
|
||||
|
||||
if (p->mtu < priv->dev->mtu + IPOIB_ENCAP_LEN) {
|
||||
ipoib_warn(priv, "Rejecting connection: mtu %d < device mtu %d + 4\n",
|
||||
p->mtu, priv->dev->mtu);
|
||||
if (p->mtu <= IPOIB_ENCAP_LEN) {
|
||||
ipoib_warn(priv, "Rejecting connection: mtu %d <= %d\n",
|
||||
p->mtu, IPOIB_ENCAP_LEN);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user