Re: [PATCH v5] mlx4: fix a compilation warning in sysfs.c

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Nov 30, 2018 at 10:00:57AM -0700, Jason Gunthorpe wrote:
> On Thu, Nov 29, 2018 at 09:18:07PM -0500, Qian Cai wrote:
> > 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]
> >
> > Signed-off-by: Qian Cai <cai@xxxxxx>
> > ---
> >
> > Changes since v4:
> > * Fixed the format specifier.
> >
> > since v3:
> > * Removed an unused variable.
> >
> > since v2:
> > * Simplified the whole things using snprintf() suggested by Jason.
> >
> > since v1:
> > * Used strscpy() instead of snprintf()
> > * Removed an unnecessary statement.
> >
> >  drivers/infiniband/hw/mlx4/sysfs.c | 12 ++++--------
> >  1 file changed, 4 insertions(+), 8 deletions(-)
> >
> > diff --git a/drivers/infiniband/hw/mlx4/sysfs.c b/drivers/infiniband/hw/mlx4/sysfs.c
> > index 752bdd536130..5fcb1b4a9488 100644
> > --- a/drivers/infiniband/hw/mlx4/sysfs.c
> > +++ b/drivers/infiniband/hw/mlx4/sysfs.c
> > @@ -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)
> >  {
> > -	char base_name[9];
> > -
> > -	/* 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
> > +	/* 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
> >  	 * need to add it to the dev num, so count in the last number will be
> >  	 * 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 {
>
> Leon/Yishai, you'll need to ack this..

Definitely, to be on the safe side, I'll test it on Sunday and reply.

Thanks

>
> Thanks,
> Jason

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux