hostfs: Use kasprintf() instead of fixed buffer formatting
PATCH 1/1 hostfs: Use kasprintf() instead of fixed buffer formatting
Improve readability and maintainability by replacing a hardcoded string allocation and formatting by the use of the kasprintf() helper.
Signed-off-by Andy Shevchenko <[email protected]>
--- fs/hostfs/hostfs_kern.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-)
fs/hostfs/hostfs_kern.c +4 -8
@@ -139,8 +139,8 @@ static char *inode_name(struct inode *ino)static char *follow_link (char *link) { -int len, n;char *name, *resolved, *end; +int n; name =__getname ();if (!name) {
@@ -164,15 +164,13 @@ static char *follow_link(char *link)return name; *(end +1 ) ='\0' ; - len =strlen (link) +strlen (name) +1 ; - resolved =kmalloc (len,GFP_KERNEL ); + resolved =kasprintf (GFP_KERNEL ,"%s%s" , link, name);if (resolved ==NULL ) { n = -ENOMEM ; goto out_free; } -sprintf (resolved,"%s%s" , link, name);__putname (name);kfree (link);return resolved;
@@ -921,18 +919,16 @@ static int hostfs_fill_sb_common(struct super_block *sb, void *d, int silent) sb->s_d_op = &simple_dentry_operations; sb->s_maxbytes =MAX_LFS_FILESIZE ; -/* NULL is printed as <NULL> by sprintf: avoid that. */ +/* NULL is printed as '(null)' by printf(): avoid that. */ if (req_root ==NULL ) req_root ="" ; err = -ENOMEM ; sb->s_fs_info = host_root_path = -kmalloc (strlen (root_ino) +strlen (req_root) +2 ,GFP_KERNEL ); +kasprintf (GFP_KERNEL ,"%s/%s" , root_ino, req_root);if (host_root_path ==NULL ) goto out; -sprintf (host_root_path,"%s/%s" , root_ino, req_root); - root_inode =new_inode (sb);if (!root_inode) goto out;
Signature · 7 lines
2.25.1 _______________________________________________ linux-um mailing list [email protected] http://lists.infradead.org/mailman/listinfo/linux-um
Quoted 3 lines · Andy Shevchenko
Improve readability and maintainability by replacing a hardcoded string allocation and formatting by the use of the
kasprintf()helper.
Any comments so far?
Quoted 60 lines
Signed-off-by Andy Shevchenko <[email protected]>--- fs/hostfs/hostfs_kern.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-)fs/hostfs/hostfs_kern.c +4
-8@@ -139,8 +139,8 @@ static char *inode_name(struct inode *ino)static char *follow_link (char *link) { -int len, n;char *name, *resolved, *end; +int n; name =__getname ();if (!name) {@@ -164,15 +164,13 @@ static char *follow_link(char *link)return name; *(end +1 ) ='\0' ; - len =strlen (link) +strlen (name) +1 ; - resolved =kmalloc (len,GFP_KERNEL ); + resolved =kasprintf (GFP_KERNEL ,"%s%s" , link, name);if (resolved ==NULL ) { n = -ENOMEM ; goto out_free; } -sprintf (resolved,"%s%s" , link, name);__putname (name);kfree (link);return resolved;@@ -921,18 +919,16 @@ static int hostfs_fill_sb_common(struct super_block *sb, void *d, int silent) sb->s_d_op = &simple_dentry_operations; sb->s_maxbytes =MAX_LFS_FILESIZE ; -/* NULL is printed as <NULL> by sprintf: avoid that. */ +/* NULL is printed as '(null)' by printf(): avoid that. */ if (req_root ==NULL ) req_root ="" ; err = -ENOMEM ; sb->s_fs_info = host_root_path = -kmalloc (strlen (root_ino) +strlen (req_root) +2 ,GFP_KERNEL ); +kasprintf (GFP_KERNEL ,"%s/%s" , root_ino, req_root);if (host_root_path ==NULL ) goto out; -sprintf (host_root_path,"%s/%s" , root_ino, req_root); - root_inode =new_inode (sb);if (!root_inode) goto out;Signature · 1 line
2.25.1
Signature · 9 lines
With Best Regards, Andy Shevchenko _______________________________________________ linux-um mailing list [email protected] http://lists.infradead.org/mailman/listinfo/linux-um
Quoted 60 lines · Andy Shevchenko
Quoted 3 lines · Andy Shevchenko
Improve readability and maintainability by replacing a hardcoded string allocation and formatting by the use of the
kasprintf()helper.Any comments so far?
Quoted 52 lines
Signed-off-by Andy Shevchenko <[email protected]>--- fs/hostfs/hostfs_kern.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-)fs/hostfs/hostfs_kern.c +4
-6@@ -139,8 +139,8 @@ static char *inode_name(struct inode *ino)static char *follow_link (char *link) { -int len, n;char *name, *resolved, *end; +int n; name =__getname ();if (!name) {@@ -164,15 +164,13 @@ static char *follow_link(char *link)return name; *(end +1 ) ='\0' ; - len =strlen (link) +strlen (name) +1 ; - resolved =kmalloc (len,GFP_KERNEL ); + resolved =kasprintf (GFP_KERNEL ,"%s%s" , link, name);if (resolved ==NULL ) { n = -ENOMEM ; goto out_free; } -sprintf (resolved,"%s%s" , link, name);__putname (name);kfree (link);return resolved;@@ -921,18 +919,16 @@ static int hostfs_fill_sb_common(struct super_block *sb, void *d, int silent) sb->s_d_op = &simple_dentry_operations; sb->s_maxbytes =MAX_LFS_FILESIZE ; -/* NULL is printed as <NULL> by sprintf: avoid that. */ +/* NULL is printed as '(null)' by printf(): avoid that. */ if (req_root ==NULL ) req_root ="" ; err = -ENOMEM ; sb->s_fs_info = host_root_path = -kmalloc (strlen (root_ino) +strlen (req_root) +2 ,GFP_KERNEL ); +kasprintf (GFP_KERNEL ,"%s/%s" , root_ino, req_root);if (host_root_path ==NULL ) goto out;
Quoted 5 lines
fs/hostfs/hostfs_kern.c static int hostfs_fill_sb_common(struct super_block *sb, void *d, int silent) · line 934
Quoted 5 lines
fs/hostfs/hostfs_kern.c +0
-2-sprintf (host_root_path,"%s/%s" , root_ino, req_root); - root_inode =new_inode (sb);if (!root_inode) goto out;
Thanks for cleaning this up! Applied.
Signature · 7 lines
Thanks, //richard _______________________________________________ linux-um mailing list [email protected] http://lists.infradead.org/mailman/listinfo/linux-um