lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 18 Oct 2021 22:47:00 +0800 From: Coly Li <colyli@...e.de> To: Qing Wang <wangqing@...o.com> Cc: Kent Overstreet <kent.overstreet@...il.com>, linux-bcache@...r.kernel.org, linux-kernel@...r.kernel.org Subject: Re: [PATCH V2] bcache: replace snprintf in show functions with sysfs_emit On 10/13/21 7:58 PM, Qing Wang wrote: > 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@...e.de> > Signed-off-by: Qing Wang <wangqing@...o.com> It looks fine to me. Let me add it into my for-test directory. Thanks for the fix up. Coly Li > --- > drivers/md/bcache/sysfs.h | 18 ++++++++++++++++-- > drivers/md/bcache/util.h | 17 ----------------- > 2 files changed, 16 insertions(+), 19 deletions(-) > > diff --git a/drivers/md/bcache/sysfs.h b/drivers/md/bcache/sysfs.h > index 215df32..c1752ba > --- a/drivers/md/bcache/sysfs.h > +++ b/drivers/md/bcache/sysfs.h > @@ -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) \ > diff --git a/drivers/md/bcache/util.h b/drivers/md/bcache/util.h > index b64460a..fecdea1 > --- a/drivers/md/bcache/util.h > +++ b/drivers/md/bcache/util.h > @@ -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);
Powered by blists - more mailing lists