IB/mlx5: Fix function updating xlt emergency path
authorArtemy Kovalyov <[email protected]>
Wed, 5 Apr 2017 06:23:51 +0000 (09:23 +0300)
committerDoug Ledford <[email protected]>
Tue, 25 Apr 2017 19:40:28 +0000 (15:40 -0400)
commitbd174fc2ca63f1c833a09f930796d789fb1f5361
tree412988c919303bc48fce6a4ef10b6d8271f642e9
parent3e7e1193e28a1428e857f3f44870ec2dbd615e6a
IB/mlx5: Fix function updating xlt emergency path

In memory shortage path we fall back to use spare buffer.
mlx5_ib_update_xlt() called from ib_uverbs_reg_mr when ibmr.ucontext
not initialized yet.

Scenario how to test it:
1. trigger memory exhaustion so __get_free_pages(GFP_KERNEL, 4) will fail
2. register MR
3. there should be no kernel oops

Fixes: 7d0cc6edcc70 ('IB/mlx5: Add MR cache for large UMR regions')
Signed-off-by: Artemy Kovalyov <[email protected]>
Signed-off-by: Leon Romanovsky <[email protected]>
Signed-off-by: Doug Ledford <[email protected]>
drivers/infiniband/hw/mlx5/mr.c