net/memif: fix build error with gcc 9.1

Message ID 20190807031134.23120-1-jerinj@marvell.com (mailing list archive)
State Accepted, archived
Headers
Series net/memif: fix build error with gcc 9.1 |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/iol-Compile-Testing success Compile Testing PASS
ci/Intel-compilation success Compilation OK
ci/mellanox-Performance-Testing success Performance Testing PASS

Commit Message

Jerin Jacob Kollanukkaran Aug. 7, 2019, 3:11 a.m. UTC
  From: Jerin Jacob <jerinj@marvell.com>

gcc-9 stricter on NULL arguments for printf.
Fix the following build error by avoiding NULL argument to printf.

In file included from drivers/net/memif/memif_socket.c:26:
In function 'memif_socket_create',
inlined from 'memif_socket_init' at net/memif/memif_socket.c:965:12:
net/memif/rte_eth_memif.h:35:2: error: '%s' directive argument is null
[-Werror=format-overflow=]
   35 |  rte_log(RTE_LOG_ ## level, memif_logtype, \
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   36 |   "%s(): " fmt "\n", __func__, ##args)
      |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Fixes: 09c7e63a71f9 ("net/memif: introduce memory interface PMD")

Signed-off-by: Jerin Jacob <jerinj@marvell.com>
---
 drivers/net/memif/memif_socket.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
  

Comments

Thomas Monjalon Aug. 7, 2019, 8:28 a.m. UTC | #1
07/08/2019 05:11, jerinj@marvell.com:
> From: Jerin Jacob <jerinj@marvell.com>
> 
> gcc-9 stricter on NULL arguments for printf.
> Fix the following build error by avoiding NULL argument to printf.
> 
> In file included from drivers/net/memif/memif_socket.c:26:
> In function 'memif_socket_create',
> inlined from 'memif_socket_init' at net/memif/memif_socket.c:965:12:
> net/memif/rte_eth_memif.h:35:2: error: '%s' directive argument is null
> [-Werror=format-overflow=]
>    35 |  rte_log(RTE_LOG_ ## level, memif_logtype, \
>       |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    36 |   "%s(): " fmt "\n", __func__, ##args)
>       |   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 
> Fixes: 09c7e63a71f9 ("net/memif: introduce memory interface PMD")
> 
> Signed-off-by: Jerin Jacob <jerinj@marvell.com>

Applied, thanks
  

Patch

diff --git a/drivers/net/memif/memif_socket.c b/drivers/net/memif/memif_socket.c
index 137033f68..6740e3471 100644
--- a/drivers/net/memif/memif_socket.c
+++ b/drivers/net/memif/memif_socket.c
@@ -918,7 +918,8 @@  memif_socket_create(struct pmd_internals *pmd, char *key, uint8_t listener)
 
  error:
 	MIF_LOG(ERR, "%s: Failed to setup socket %s: %s",
-		rte_vdev_device_name(pmd->vdev), key, strerror(errno));
+		rte_vdev_device_name(pmd->vdev) ?
+		rte_vdev_device_name(pmd->vdev) : "NULL", key, strerror(errno));
 	if (sock != NULL)
 		rte_free(sock);
 	if (sockfd >= 0)