aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband
diff options
context:
space:
mode:
authorEli Cohen <eli@mellanox.com>2013-09-11 16:35:27 +0300
committerRoland Dreier <roland@purestorage.com>2013-10-10 09:23:57 -0700
commita0c84c326f720c3e3ebb9c49cbce916c05a57297 (patch)
tree281d30d84c533fd81e5b0fb7446b008ab38893ba /drivers/infiniband
parentIB/mlx5: Decrease memory consumption of mr caches (diff)
downloadlinux-dev-a0c84c326f720c3e3ebb9c49cbce916c05a57297.tar.xz
linux-dev-a0c84c326f720c3e3ebb9c49cbce916c05a57297.zip
IB/mlx5: Avoid async events on invalid port number
On a single ported Connect-IB, its possible for the firmware to issue events on the non-existing 2nd port. Make sure to ignore events generated for such ports. Signed-off-by: Eli Cohen <eli@mellanox.com> Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'drivers/infiniband')
-rw-r--r--drivers/infiniband/hw/mlx5/main.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/mlx5/main.c b/drivers/infiniband/hw/mlx5/main.c
index 3f831de9a4d8..e59761ed7d00 100644
--- a/drivers/infiniband/hw/mlx5/main.c
+++ b/drivers/infiniband/hw/mlx5/main.c
@@ -1006,6 +1006,11 @@ static void mlx5_ib_event(struct mlx5_core_dev *dev, enum mlx5_dev_event event,
ibev.device = &ibdev->ib_dev;
ibev.element.port_num = port;
+ if (port < 1 || port > ibdev->num_ports) {
+ mlx5_ib_warn(ibdev, "warning: event on port %d\n", port);
+ return;
+ }
+
if (ibdev->ib_active)
ib_dispatch_event(&ibev);
}