[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1210335354.3635.486.camel@quoit>
Date: Fri, 09 May 2008 13:15:54 +0100
From: Steven Whitehouse <swhiteho@...hat.com>
To: Jean Delvare <khali@...ux-fr.org>
Cc: LKML <linux-kernel@...r.kernel.org>,
Joel Becker <joel.becker@...cle.com>,
Andries Brouwer <aeb@....nl>
Subject: Re: [PATCH] fs: Prefer strlcpy() over snprintf()
Hi,
The patch looks good, but could you break this into bits? Its easier for
me just to put the GFS2 bit through my git tree and the other bits
should probably go via another route,
Steve.
On Fri, 2008-05-09 at 13:42 +0200, Jean Delvare wrote:
> strlcpy is faster than snprintf when you don't use the returned value.
>
> Signed-off-by: Jean Delvare <khali@...ux-fr.org>
> Cc: Joel Becker <joel.becker@...cle.com>
> Cc: Steven Whitehouse <swhiteho@...hat.com>
> Cc: Andries Brouwer <aeb@....nl>
> ---
> A quick grep suggests that there's about 80 more similar cases in the kernel
> tree which could be fixed.
>
> fs/configfs/dir.c | 2 +-
> fs/gfs2/ops_fstype.c | 4 ++--
> fs/partitions/check.c | 2 +-
> 3 files changed, 4 insertions(+), 4 deletions(-)
>
> --- linux-2.6.26-rc1.orig/fs/configfs/dir.c 2008-05-09 12:52:51.000000000 +0200
> +++ linux-2.6.26-rc1/fs/configfs/dir.c 2008-05-09 13:20:24.000000000 +0200
> @@ -1041,7 +1041,7 @@ static int configfs_mkdir(struct inode *
> goto out_put;
> }
>
> - snprintf(name, dentry->d_name.len + 1, "%s", dentry->d_name.name);
> + strlcpy(name, dentry->d_name.name, dentry->d_name.len + 1);
>
> mutex_lock(&subsys->su_mutex);
> group = NULL;
> --- linux-2.6.26-rc1.orig/fs/gfs2/ops_fstype.c 2008-05-09 12:52:51.000000000 +0200
> +++ linux-2.6.26-rc1/fs/gfs2/ops_fstype.c 2008-05-09 13:20:24.000000000 +0200
> @@ -142,8 +142,8 @@ static int init_names(struct gfs2_sbd *s
> if (!table[0])
> table = sdp->sd_vfs->s_id;
>
> - snprintf(sdp->sd_proto_name, GFS2_FSNAME_LEN, "%s", proto);
> - snprintf(sdp->sd_table_name, GFS2_FSNAME_LEN, "%s", table);
> + strlcpy(sdp->sd_proto_name, proto, GFS2_FSNAME_LEN);
> + strlcpy(sdp->sd_table_name, table, GFS2_FSNAME_LEN);
>
> table = sdp->sd_table_name;
> while ((table = strchr(table, '/')))
> --- linux-2.6.26-rc1.orig/fs/partitions/check.c 2008-05-09 12:52:51.000000000 +0200
> +++ linux-2.6.26-rc1/fs/partitions/check.c 2008-05-09 13:20:24.000000000 +0200
> @@ -123,7 +123,7 @@ static int (*check_part[])(struct parsed
> char *disk_name(struct gendisk *hd, int part, char *buf)
> {
> if (!part)
> - snprintf(buf, BDEVNAME_SIZE, "%s", hd->disk_name);
> + strlcpy(buf, hd->disk_name, BDEVNAME_SIZE);
> else if (isdigit(hd->disk_name[strlen(hd->disk_name)-1]))
> snprintf(buf, BDEVNAME_SIZE, "%sp%d", hd->disk_name, part);
> else
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists