Skip to content
  • Mohamad Haj Yahia's avatar
    net/mlx5: Avoid using pending command interface slots · 73dd3a48
    Mohamad Haj Yahia authored
    Currently when firmware command gets stuck or it takes long time to
    complete, the driver command will get timeout and the command slot is
    freed and can be used for new commands, and if the firmware receive new
    command on the old busy slot its behavior is unexpected and this could
    be harmful.
    To fix this when the driver command gets timeout we return failure,
    but we don't free the command slot and we wait for the firmware to
    explicitly respond to that command.
    Once all the entries are busy we will stop processing new firmware
    commands.
    
    Fixes: 9cba4ebc
    
     ('net/mlx5: Fix potential deadlock in command mode change')
    Signed-off-by: default avatarMohamad Haj Yahia <mohamad@mellanox.com>
    Cc: kernel-team@fb.com
    Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
    73dd3a48