mirror of
https://github.com/torvalds/linux.git
synced 2026-05-24 23:22:31 +02:00
vfio/mlx5: Handle the EREMOTEIO error upon the SAVE command
The SAVE command uses the async command interface over the PF. Upon a failure in the firmware -EREMOTEIO is returned. In that case call mlx5_cmd_out_err() to let it print the command failure details including the firmware syndrome. Note: The other commands in the driver use the sync command interface in a way that a firmware syndrome is printed upon an error inside mlx5_core. Signed-off-by: Yishai Hadas <yishaih@nvidia.com> Reviewed-by: Kevin Tian <kevin.tian@intel.com> Acked-by: Leon Romanovsky <leon@kernel.org> Link: https://lore.kernel.org/r/20240205124828.232701-4-yishaih@nvidia.com Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
This commit is contained in:
parent
f886473071
commit
793d4bfa31
|
|
@ -614,8 +614,13 @@ static void mlx5vf_save_callback(int status, struct mlx5_async_work *context)
|
|||
|
||||
err:
|
||||
/* The error flow can't run from an interrupt context */
|
||||
if (status == -EREMOTEIO)
|
||||
if (status == -EREMOTEIO) {
|
||||
status = MLX5_GET(save_vhca_state_out, async_data->out, status);
|
||||
/* Failed in FW, print cmd out failure details */
|
||||
mlx5_cmd_out_err(migf->mvdev->mdev, MLX5_CMD_OP_SAVE_VHCA_STATE, 0,
|
||||
async_data->out);
|
||||
}
|
||||
|
||||
async_data->status = status;
|
||||
queue_work(migf->mvdev->cb_wq, &async_data->work);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user