> From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Bruce Richardson
> Sent: Friday, 2 July 2021 14.56
>
> If the library fails to create the needed socket, add an additional
> check to report if the error is due to a missing DPDK runtime dir.
>
> Signed-off-by: Bruce Richardson <bruce.richard...@intel.com>
> ---
> lib/telemetry/telemetry.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/lib/telemetry/telemetry.c b/lib/telemetry/telemetry.c
> index 6baba57ec2..8665db8d03 100644
> --- a/lib/telemetry/telemetry.c
> +++ b/lib/telemetry/telemetry.c
> @@ -7,6 +7,7 @@
> #include <pthread.h>
> #include <sys/socket.h>
> #include <sys/un.h>
> +#include <sys/stat.h>
> #include <dlfcn.h>
> #endif /* !RTE_EXEC_ENV_WINDOWS */
>
> @@ -422,7 +423,11 @@ create_socket(char *path)
> strlcpy(sun.sun_path, path, sizeof(sun.sun_path));
> unlink(sun.sun_path);
> if (bind(sock, (void *) &sun, sizeof(sun)) < 0) {
> + struct stat st;
> +
> TMTY_LOG(ERR, "Error binding socket: %s\n",
> strerror(errno));
> + if (stat(socket_dir, &st) < 0 || !S_ISDIR(st.st_mode))
> + TMTY_LOG(ERR, "Cannot access DPDK runtime directory:
> %s\n", socket_dir);
> sun.sun_path[0] = 0;
> goto error;
> }
> --
> 2.30.2
>
Acked-by: Morten Brørup <m...@smartsharesystems.com>