net/mlx5: Fix wrong address reclaim when command interface is down
authorEran Ben Elisha <eranbe@nvidia.com>
Thu, 3 Dec 2020 04:39:43 +0000 (20:39 -0800)
committerJakub Kicinski <kuba@kernel.org>
Thu, 3 Dec 2020 19:18:35 +0000 (11:18 -0800)
commit1d2bb5ad89f47d8ce8aedc70ef85059ab3870292
treef1aa66ee6ec8dfe518cd9a29a65059a21ca4e162
parent9608fa653059c3f72faab0c148ac8773c46e7314
net/mlx5: Fix wrong address reclaim when command interface is down

When command interface is down, driver to reclaim all 4K page chucks that
were hold by the Firmeware. Fix a bug for 64K page size systems, where
driver repeatedly released only the first chunk of the page.

Define helper function to fill 4K chunks for a given Firmware pages.
Iterate over all unreleased Firmware pages and call the hepler per each.

Fixes: 5adff6a08862 ("net/mlx5: Fix incorrect page count when in internal error")
Signed-off-by: Eran Ben Elisha <eranbe@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/mellanox/mlx5/core/pagealloc.c