ubifs: don't self assign values
PATCH 1/1 ubifs: don't self assign values
It seems the code tries to trick the compiler the argument is actually used. However compilers became too smart too fool them so easily an now warn. Checking gcc and clang does not seem to emit a warning. If so it should be decorated with unused / (void).
--- fs/ubifs/recovery.c | 1 - fs/ubifs/scan.c | 1 - 2 files changed, 2 deletions(-)
fs/ubifs/recovery.c +0 -1
@@ -392,7 +392,6 @@ static void clean_buf(const struct ubifs_info *c, void **buf, int lnum, {int empty_offs, pad_len; - lnum = lnum;dbg_rcvry ("cleaning corruption at %d:%d" , lnum, *offs);if (c->min_io_size ==1 ) {
fs/ubifs/scan.c +0 -1
@@ -175,7 +175,6 @@ struct ubifs_scan_leb *ubifs_start_scan(const struct ubifs_info *c, int lnum,void ubifs_end_scan (const struct ubifs_info *c,struct ubifs_scan_leb *sleb,int lnum,int offs) { - lnum = lnum;dbg_scan ("stop scanning LEB %d at offset %d" , lnum, offs);ubifs_assert (offs % c->min_io_size ==0 );
Signature · 1 line
1.8.3.2
PATCH 1/1 ubifs: don't self assign values
Hello Jeroen,
Am 10.06.2014 23:27, schrieb Jeroen Hofstee:
Quoted 6 lines
It seems the code tries to trick the compiler the argument is actually used. However compilers became too smart too fool them so easily an now warn. Checking gcc and clang does not seem to emit a warning. If so it should be decorated with unused / (void).
Quoted 6 lines
cc Stefan Roese<[email protected]>Signed-off-by Jeroen Hofstee<[email protected]>--- fs/ubifs/recovery.c | 1 - fs/ubifs/scan.c | 1 - 2 files changed, 2 deletions(-)
I posted an update for MTD/UBI/UBIFS with Linux 3.14 here:
[U-Boot] [RFC, PATCH v2 0/4] mtd, ubi, ubifs: resync with Linux-3.14
http://lists.denx.de/pipermail/u-boot/2014-May/180001.html
Could you try this series? There only your change in "fs/ubifs/recovery.c" is needed ... and as this code comes from Linux, maybe it is worth to post this change also for Linux?
bye,
Heiko
Signature · 2 lines
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
PATCH 1/1 ubifs: don't self assign values
Hello Heiko,
Quoted 16 lines · Heiko Schocher
Hello Jeroen,
Am 10.06.2014 23:27, schrieb Jeroen Hofstee:
Quoted 6 lines
It seems the code tries to trick the compiler the argument is actually used. However compilers became too smart too fool them so easily an now warn. Checking gcc and clang does not seem to emit a warning. If so it should be decorated with unused / (void).
Quoted 6 lines
cc Stefan Roese<[email protected]>Signed-off-by Jeroen Hofstee<[email protected]>--- fs/ubifs/recovery.c | 1 - fs/ubifs/scan.c | 1 - 2 files changed, 2 deletions(-)
Quoted 7 lines
I posted an update for MTD/UBI/UBIFS with Linux 3.14 here:
[U-Boot] [RFC, PATCH v2 0/4] mtd, ubi, ubifs: resync with Linux-3.14
http://lists.denx.de/pipermail/u-boot/2014-May/180001.htmlCould you try this series? There only your change in "
fs/ubifs/recovery.c" is needed ...
I tried your v3, warnings below. Especially the first one is a bit noisy since it is in a common header file. The other warnings seem harmless.
Quoted 3 lines
and as this code comes from Linux, maybe it is worth to post this change also for Linux?
perhaps, first trying to silence MAKEALL a bit, so real issues aren't buried in noise. I will see how it lands and send an updated patch.
Regards,
Jeroen
include/linux/compat.h:77:18: warning: redefinition of typedef 'gfp_t' is a C11 feature [-Wtypedef-redefinition]
typedef unsigned gfp_t;
^
include/linux/types.h:142:30: note: previous definition is here
typedef unsigned __bitwise__ gfp_t;
^common/cmd_ubi.c:310:11: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
if (size < 0 || size > rsvd_bytes) {
~~~~ ^ ~drivers/mtd/ubi/vmt.c:797:26: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare]
if (vol->last_eb_bytes < 0 ||
~~~~~~~~~~~~~~~~~~ ^ ~fs/ubifs/recovery.c:441:7: warning: explicitly assigning value of variable of type 'int' to itself [-Wself-assign]
lnum = lnum;
~~~~ ^ ~~~~fs/ubifs/scan.c:171:7: warning: explicitly assigning value of variable of type 'int' to itself [-Wself-assign]
lnum = lnum;
~~~~ ^ ~~~~