On 10/20/20 11:38 AM, Kevin Traynor wrote:
> On 20/10/2020 10:11, Maxime Coquelin wrote:
>>
>>
>> On 10/20/20 11:01 AM, Kevin Traynor wrote:
>>> On 20/10/2020 08:16, Adrian Moreno wrote:
>>>> If stat fails it means the backend must be vhost-user in server mode
>>>>
>>>> Bugzilla ID: 559
>>>> Fixes: f908b22ea47a ("net/virtio: move backend type selection to ethdev")
>>>> Cc: sta...@dpdk.org
>>>>
>>>> Signed-off-by: Adrian Moreno <amore...@redhat.com>
>>>> ---
>>>> drivers/net/virtio/virtio_user_ethdev.c | 5 +++--
>>>> 1 file changed, 3 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/drivers/net/virtio/virtio_user_ethdev.c
>>>> b/drivers/net/virtio/virtio_user_ethdev.c
>>>> index 042665bc0..ce74d08ab 100644
>>>> --- a/drivers/net/virtio/virtio_user_ethdev.c
>>>> +++ b/drivers/net/virtio/virtio_user_ethdev.c
>>>> @@ -560,9 +560,10 @@ virtio_user_backend_type(const char *path)
>>>> struct stat sb;
>>>>
>>>> if (stat(path, &sb) == -1) {
>>>> - PMD_INIT_LOG(ERR, "Stat fails: %s (%s)\n", path,
>>>> + PMD_INIT_LOG(INFO, "Stat fails: %s (%s)\n", path,
>>>> strerror(errno));
>>>
>>> It may be accurate, but a 'fail' in the logs can be confusing for users
>>> when it is an INFO log and normal operation. Suggest to reword to
>>> something softer like 'Unable to stat' or 'Not able to get file status'
>>
>>
>> We may want to:
>> - only return VIRTIO_USER_BACKEND_VHOST_USER if -ENOENT, and log that
>> we assume this is Vhost-user backend in server mode at INFO level.
>
> It will mean that sometimes the backend type is logged and sometimes
> not, but maybe you make a distinction because there is an assumption
> being made in this case?
I agree it would make sense to log at INFO level for all backend types.
>> - return VIRTIO_USER_BACKEND_UNKNOWN otherwise and print an error
>> message with the strerror(errno).
>>
>
> yes, it seems better like that.
>
>> What do you think?
>>
>>>> - return VIRTIO_USER_BACKEND_UNKNOWN;
>>>> + /* Must be vhost-user in server mode */
>>>> + return VIRTIO_USER_BACKEND_VHOST_USER;
>>>> }
>>>>
>>>> if (S_ISSOCK(sb.st_mode)) {
>>>>
>>>
>