net/mlx5: Fix command entry leak in Internal Error State
authorMoshe Shemesh <moshe@mellanox.com>
Sun, 23 Feb 2020 01:27:41 +0000 (03:27 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 14 May 2020 05:58:23 +0000 (07:58 +0200)
commitd595dd5ba90931795b70d7398b5390e3295280ab
treed8e939277eb10c1c13447aaec5da0e4831e9a0dc
parent11dd1d0ebfdd613d35c714261be22329f092a8c8
net/mlx5: Fix command entry leak in Internal Error State

[ Upstream commit cece6f432cca9f18900463ed01b97a152a03600a ]

Processing commands by cmd_work_handler() while already in Internal
Error State will result in entry leak, since the handler process force
completion without doorbell. Forced completion doesn't release the entry
and event completion will never arrive, so entry should be released.

Fixes: 73dd3a4839c1 ("net/mlx5: Avoid using pending command interface slots")
Signed-off-by: Moshe Shemesh <moshe@mellanox.com>
Signed-off-by: Eran Ben Elisha <eranbe@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/mellanox/mlx5/core/cmd.c