[dpdk-stable] [dpdk-dev] [PATCH] virtio-user: fix backend selection if stat fails

Maxime Coquelin maxime.coquelin at redhat.com
Tue Oct 20 11:11:07 CEST 2020



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: stable at dpdk.org
>>
>> Signed-off-by: Adrian Moreno <amorenoz at 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.
- return VIRTIO_USER_BACKEND_UNKNOWN otherwise and print an error
message with the strerror(errno).

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)) {
>>
> 



More information about the stable mailing list