]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
relay: use kasprintf() instead of fixed buffer formatting
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Mon, 17 Mar 2025 21:29:47 +0000 (23:29 +0200)
committerAndrew Morton <akpm@linux-foundation.org>
Sat, 22 Mar 2025 05:10:05 +0000 (22:10 -0700)
Improve readability and maintainability by replacing a hard coded string
allocation and formatting by using the kasprintf() helper.

It also eliminates the GCC compiler warning (with CONFIG_WERROR=y, which
is default, it becomes an error:

kernel/relay.c:357:42: error: `snprintf' output may be truncated before the last format character [-Werror=format-truncation=]

Link: https://lkml.kernel.org/r/20250317212948.1811176-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
kernel/relay.c

index a8ae436dc77e565891ca658ca2cab661e5982b24..5ac7e711e4b65005533faca3a2a85eba00897b42 100644 (file)
@@ -351,10 +351,9 @@ static struct dentry *relay_create_buf_file(struct rchan *chan,
        struct dentry *dentry;
        char *tmpname;
 
-       tmpname = kzalloc(NAME_MAX + 1, GFP_KERNEL);
+       tmpname = kasprintf(GFP_KERNEL, "%s%d", chan->base_filename, cpu);
        if (!tmpname)
                return NULL;
-       snprintf(tmpname, NAME_MAX, "%s%d", chan->base_filename, cpu);
 
        /* Create file in fs */
        dentry = chan->cb->create_buf_file(tmpname, chan->parent,