Re: [PATCH v4 10/10] vfio/fsl-mc: Add support for device reset

From: Auger Eric
Date: Thu Sep 10 2020 - 04:34:01 EST


Hi Diana,

On 9/7/20 4:36 PM, Diana Craciun OSS wrote:
> Hi Eric,
>
> On 9/4/2020 11:21 AM, Auger Eric wrote:
>> Hi Diana,
>>
>> On 8/26/20 11:33 AM, Diana Craciun wrote:
>>> Currently only resetting the DPRC container is supported which
>>> will reset all the objects inside it. Resetting individual
>>> objects is possible from the userspace by issueing commands
>>> towards MC firmware.
>>>
>>> Signed-off-by: Diana Craciun <diana.craciun@xxxxxxxxxxx>
>>> ---
>>>   drivers/vfio/fsl-mc/vfio_fsl_mc.c | 15 ++++++++++++++-
>>>   1 file changed, 14 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/vfio/fsl-mc/vfio_fsl_mc.c
>>> b/drivers/vfio/fsl-mc/vfio_fsl_mc.c
>>> index 27713aa86878..d17c5b3148ad 100644
>>> --- a/drivers/vfio/fsl-mc/vfio_fsl_mc.c
>>> +++ b/drivers/vfio/fsl-mc/vfio_fsl_mc.c
>>> @@ -310,7 +310,20 @@ static long vfio_fsl_mc_ioctl(void *device_data,
>>> unsigned int cmd,
>>>       }
>>>       case VFIO_DEVICE_RESET:
>>>       {
>>> -        return -ENOTTY;
>>> +        int ret = 0;
>> initialization not needed
>>> +
>> spare empty line
>>> +        struct fsl_mc_device *mc_dev = vdev->mc_dev;
>>> +
>>> +        /* reset is supported only for the DPRC */
>>> +        if (!is_fsl_mc_bus_dprc(mc_dev))
>>> +            return -ENOTTY;
>> it is an error case or do we just don't care?
>
>
> I rather don't care, but shouldn't the userspace know that the reset for
> that device failed?I don't know what makes more sense. It was more a question.

Thanks

Eric
>
>>> +
>>> +        ret = dprc_reset_container(mc_dev->mc_io, 0,
>>> +                       mc_dev->mc_handle,
>>> +                       mc_dev->obj_desc.id,
>>> +                       DPRC_RESET_OPTION_NON_RECURSIVE);
>>> +        return ret;
>>> +
>>>       }
>>>       default:
>>>           return -ENOTTY;
>>>
>> Thanks
>>
>> Eric
>>
>
> Thanks,
> Diana
>