aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw/mlx5/mr.c
diff options
context:
space:
mode:
authorMajd Dibbiny <majd@mellanox.com>2015-01-06 13:56:01 +0200
committerRoland Dreier <roland@purestorage.com>2015-02-17 22:13:50 -0800
commit7eae20db6adf721d0c14ad2a37208278ce4f11dc (patch)
tree2731831cb230602c9fc03f3a723110dded274fc9 /drivers/infiniband/hw/mlx5/mr.c
parentLinux 3.19 (diff)
downloadlinux-dev-7eae20db6adf721d0c14ad2a37208278ce4f11dc.tar.xz
linux-dev-7eae20db6adf721d0c14ad2a37208278ce4f11dc.zip
IB/mlx5: Update the dev in reg_create
When we create an MR using reg_create, the mlx5_ib_dev pointer is not updated on the new MR. This results in a kernel panics for ODP MRs while handling page faults, when the mlx5_ib_update_mtt function uses the invalid device pointer. Signed-off-by: Majd Dibbiny <majd@mellanox.com> Signed-off-by: Haggai Eran <haggaie@mellanox.com> Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'drivers/infiniband/hw/mlx5/mr.c')
-rw-r--r--drivers/infiniband/hw/mlx5/mr.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/mlx5/mr.c b/drivers/infiniband/hw/mlx5/mr.c
index 32a28bd50b20..cd9822eeacae 100644
--- a/drivers/infiniband/hw/mlx5/mr.c
+++ b/drivers/infiniband/hw/mlx5/mr.c
@@ -1012,6 +1012,7 @@ static struct mlx5_ib_mr *reg_create(struct ib_pd *pd, u64 virt_addr,
goto err_2;
}
mr->umem = umem;
+ mr->dev = dev;
mr->live = 1;
kvfree(in);