Selaa lähdekoodia

[PATCH] IB/ipath: disallow send of invalid packet sizes over UD

Signed-off-by: Ralph Campbell <ralph.campbell@qlogic.com>
Signed-off-by: Bryan O'Sullivan <bryan.osullivan@qlogic.com>
Cc: "Michael S. Tsirkin" <mst@mellanox.co.il>
Cc: Roland Dreier <rolandd@cisco.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Bryan O'Sullivan 19 vuotta sitten
vanhempi
commit
4faba98a1a
1 muutettua tiedostoa jossa 5 lisäystä ja 0 poistoa
  1. 5 0
      drivers/infiniband/hw/ipath/ipath_ud.c

+ 5 - 0
drivers/infiniband/hw/ipath/ipath_ud.c

@@ -275,6 +275,11 @@ int ipath_post_ud_send(struct ipath_qp *qp, struct ib_send_wr *wr)
 		len += wr->sg_list[i].length;
 		ss.num_sge++;
 	}
+	/* Check for invalid packet size. */
+	if (len > ipath_layer_get_ibmtu(dev->dd)) {
+		ret = -EINVAL;
+		goto bail;
+	}
 	extra_bytes = (4 - len) & 3;
 	nwords = (len + extra_bytes) >> 2;