[dpdk-dev] [PATCH] eal: fix unchecked return value from library

Burakov, Anatoly anatoly.burakov at intel.com
Thu Apr 21 13:06:39 CEST 2016


> Fix issue reported by Coverity.
> Coverity ID 13194
> 
> The function returns a value that indicates an error condition. If this  is not
> checked, the error condition may not be handled correctly.
> 
> In pci_vfio_mp_sync_thread: Value returned from a library function is not
> checked for errors before being used. This value may indicate an error
> condition.
> 
> Fixes: 2f4adfad0a69 ("vfio: add multiprocess support")
> 
> Signed-off-by: Daniel Mrzyglod <danielx.t.mrzyglod at intel.com>
> ---
>  lib/librte_eal/linuxapp/eal/eal_pci_vfio_mp_sync.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/lib/librte_eal/linuxapp/eal/eal_pci_vfio_mp_sync.c
> b/lib/librte_eal/linuxapp/eal/eal_pci_vfio_mp_sync.c
> index d9188fd..2b136fc 100644
> --- a/lib/librte_eal/linuxapp/eal/eal_pci_vfio_mp_sync.c
> +++ b/lib/librte_eal/linuxapp/eal/eal_pci_vfio_mp_sync.c
> @@ -287,7 +287,10 @@ pci_vfio_mp_sync_thread(void __rte_unused * arg)
>  		struct linger l;
>  		l.l_onoff = 1;
>  		l.l_linger = 60;
> -		setsockopt(conn_sock, SOL_SOCKET, SO_LINGER, &l,
> sizeof(l));
> +
> +		if (setsockopt(conn_sock, SOL_SOCKET, SO_LINGER, &l,
> sizeof(l)) < 0)
> +			RTE_LOG(ERR, EAL, "Cannot set SO_LINGER option "
> +					"on listen socket (%s)\n",
> strerror(errno));
> 
>  		ret = vfio_mp_sync_receive_request(conn_sock);
> 
> --
> 2.5.5

Acked-by: Anatoly  Burakov <anatoly.burakov at intel.com>


More information about the dev mailing list