compress/mlx5: fix memory region unregistration
authorMichael Baum <michaelba@nvidia.com>
Mon, 12 Jul 2021 07:19:34 +0000 (10:19 +0300)
committerAkhil Goyal <gakhil@marvell.com>
Tue, 20 Jul 2021 08:32:05 +0000 (10:32 +0200)
commit8c09010614dba774ba381ce4f785f6dd777873a3
tree3695e5e5de70cde6cd81f184af1fc886788f729b
parentdb06451baf6cbbdcbd80b3e682a790cabd351216
compress/mlx5: fix memory region unregistration

The issue can cause illegal physical address access while a huge-page A
is released and huge-page B is allocated on the same virtual address.
The old MR can be matched using the virtual address of huge-page B but
the HW will access the physical address of huge-page A which is no more
part of the DPDK process.

Register a driver callback for memory event in order to free out all the
MRs of memory that is going to be freed from the dpdk process.

Fixes: f8c97babc9f4 ("compress/mlx5: add data-path functions")
Cc: stable@dpdk.org
Signed-off-by: Michael Baum <michaelba@nvidia.com>
Acked-by: Matan Azrad <matan@nvidia.com>
drivers/compress/mlx5/mlx5_compress.c