Commit 7fc8ff26 authored by Leon Romanovsky's avatar Leon Romanovsky Committed by Doug Ledford

RDMA/mlx4: Don't crash machine if zap_vma_ptes() fails

The failure reported by zap_vma_ptes() means that wrong VMA pages
were supplied, however it is impossible for this type of address.
Signed-off-by: default avatarLeon Romanovsky <leonro@mellanox.com>
Signed-off-by: default avatarDoug Ledford <dledford@redhat.com>
parent 2cb40791
...@@ -1186,7 +1186,6 @@ static const struct vm_operations_struct mlx4_ib_vm_ops = { ...@@ -1186,7 +1186,6 @@ static const struct vm_operations_struct mlx4_ib_vm_ops = {
static void mlx4_ib_disassociate_ucontext(struct ib_ucontext *ibcontext) static void mlx4_ib_disassociate_ucontext(struct ib_ucontext *ibcontext)
{ {
int i; int i;
int ret = 0;
struct vm_area_struct *vma; struct vm_area_struct *vma;
struct mlx4_ib_ucontext *context = to_mucontext(ibcontext); struct mlx4_ib_ucontext *context = to_mucontext(ibcontext);
...@@ -1198,13 +1197,8 @@ static void mlx4_ib_disassociate_ucontext(struct ib_ucontext *ibcontext) ...@@ -1198,13 +1197,8 @@ static void mlx4_ib_disassociate_ucontext(struct ib_ucontext *ibcontext)
if (!vma) if (!vma)
continue; continue;
ret = zap_vma_ptes(context->hw_bar_info[i].vma, zap_vma_ptes(context->hw_bar_info[i].vma,
context->hw_bar_info[i].vma->vm_start, context->hw_bar_info[i].vma->vm_start, PAGE_SIZE);
PAGE_SIZE);
if (ret) {
pr_err("Error: zap_vma_ptes failed for index=%d, ret=%d\n", i, ret);
BUG_ON(1);
}
context->hw_bar_info[i].vma->vm_flags &= context->hw_bar_info[i].vma->vm_flags &=
~(VM_SHARED | VM_MAYSHARE); ~(VM_SHARED | VM_MAYSHARE);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment