bcache: replace snprintf in show functions with sysfs_emit
authorQing Wang <wangqing@vivo.com>
Fri, 29 Oct 2021 06:09:30 +0000 (14:09 +0800)
committerJens Axboe <axboe@kernel.dk>
Fri, 29 Oct 2021 12:43:21 +0000 (06:43 -0600)
coccicheck complains about the use of snprintf() in sysfs show functions.

Fix the following coccicheck warning:
drivers/md/bcache/sysfs.h:54:12-20: WARNING: use scnprintf or sprintf.

Implement sysfs_print() by sysfs_emit() and remove snprint() since no one
uses it any more.

Suggested-by: Coly Li <colyli@suse.de>
Signed-off-by: Qing Wang <wangqing@vivo.com>
Signed-off-by: Coly Li <colyli@suse.de>
Link: https://lore.kernel.org/r/20211029060930.119923-3-colyli@suse.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/md/bcache/sysfs.h
drivers/md/bcache/util.h

index 215df32f567b9143c192cc2d67b63a5831b150e7..c1752ba2e05b50ef1789587677876ef64d1b4027 100644 (file)
@@ -51,13 +51,27 @@ STORE(fn)                                                           \
 #define sysfs_printf(file, fmt, ...)                                   \
 do {                                                                   \
        if (attr == &sysfs_ ## file)                                    \
-               return snprintf(buf, PAGE_SIZE, fmt "\n", __VA_ARGS__); \
+               return sysfs_emit(buf, fmt "\n", __VA_ARGS__);  \
 } while (0)
 
 #define sysfs_print(file, var)                                         \
 do {                                                                   \
        if (attr == &sysfs_ ## file)                                    \
-               return snprint(buf, PAGE_SIZE, var);                    \
+               return sysfs_emit(buf,                                          \
+                               __builtin_types_compatible_p(typeof(var), int)          \
+                                        ? "%i\n" :                             \
+                               __builtin_types_compatible_p(typeof(var), unsigned int) \
+                                        ? "%u\n" :                             \
+                               __builtin_types_compatible_p(typeof(var), long)         \
+                                        ? "%li\n" :                    \
+                               __builtin_types_compatible_p(typeof(var), unsigned long)\
+                                        ? "%lu\n" :                    \
+                               __builtin_types_compatible_p(typeof(var), int64_t)      \
+                                        ? "%lli\n" :                   \
+                               __builtin_types_compatible_p(typeof(var), uint64_t)     \
+                                        ? "%llu\n" :                   \
+                               __builtin_types_compatible_p(typeof(var), const char *) \
+                                        ? "%s\n" : "%i\n", var);       \
 } while (0)
 
 #define sysfs_hprint(file, val)                                                \
index 6274d6a17e5e7d05d224a949c4cba798245315dd..cdb165517d0bf2a202024956c77860f66fc2f28a 100644 (file)
@@ -340,23 +340,6 @@ static inline int bch_strtoul_h(const char *cp, long *res)
        _r;                                                             \
 })
 
-#define snprint(buf, size, var)                                                \
-       snprintf(buf, size,                                             \
-               __builtin_types_compatible_p(typeof(var), int)          \
-                    ? "%i\n" :                                         \
-               __builtin_types_compatible_p(typeof(var), unsigned int) \
-                    ? "%u\n" :                                         \
-               __builtin_types_compatible_p(typeof(var), long)         \
-                    ? "%li\n" :                                        \
-               __builtin_types_compatible_p(typeof(var), unsigned long)\
-                    ? "%lu\n" :                                        \
-               __builtin_types_compatible_p(typeof(var), int64_t)      \
-                    ? "%lli\n" :                                       \
-               __builtin_types_compatible_p(typeof(var), uint64_t)     \
-                    ? "%llu\n" :                                       \
-               __builtin_types_compatible_p(typeof(var), const char *) \
-                    ? "%s\n" : "%i\n", var)
-
 ssize_t bch_hprint(char *buf, int64_t v);
 
 bool bch_is_zero(const char *p, size_t n);