Commit 49ef54a3 authored by Qian Cai's avatar Qian Cai Committed by Greg Kroah-Hartman

mlx4: Use snprintf instead of complicated strcpy

[ Upstream commit 0fbc9b8b ]

This fixes a compilation warning in sysfs.c

drivers/infiniband/hw/mlx4/sysfs.c:360:2: warning: 'strncpy' output may be
truncated copying 8 bytes from a string of length 31
[-Wstringop-truncation]

By eliminating the temporary stack buffer.
Signed-off-by: default avatarQian Cai <cai@gmx.us>
Reviewed-by: default avatarLeon Romanovsky <leonro@mellanox.com>
Signed-off-by: default avatarJason Gunthorpe <jgg@mellanox.com>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 647ded86
...@@ -353,16 +353,12 @@ static int add_port_entries(struct mlx4_ib_dev *device, int port_num) ...@@ -353,16 +353,12 @@ static int add_port_entries(struct mlx4_ib_dev *device, int port_num)
static void get_name(struct mlx4_ib_dev *dev, char *name, int i, int max) static void get_name(struct mlx4_ib_dev *dev, char *name, int i, int max)
{ {
char base_name[9]; /* pci_name format is: bus:dev:func -> xxxx:yy:zz.n
* with no ARI only 3 last bits are used so when the fn is higher than 8
/* pci_name format is: bus:dev:func -> xxxx:yy:zz.n */
strlcpy(name, pci_name(dev->dev->persist->pdev), max);
strncpy(base_name, name, 8); /*till xxxx:yy:*/
base_name[8] = '\0';
/* with no ARI only 3 last bits are used so when the fn is higher than 8
* need to add it to the dev num, so count in the last number will be * need to add it to the dev num, so count in the last number will be
* modulo 8 */ * modulo 8 */
sprintf(name, "%s%.2d.%d", base_name, (i/8), (i%8)); snprintf(name, max, "%.8s%.2d.%d", pci_name(dev->dev->persist->pdev),
i / 8, i % 8);
} }
struct mlx4_port { struct mlx4_port {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment