mtd: onenand_base: Avoid fall-through warnings
Subsystems (3)
PATCH v2 1/1 mtd: onenand_base: Avoid fall-through warnings
NOTICE THAT:
"...we don't know whether we need fallthroughs or breaks here and this is just a change to avoid having new warnings when switching to -Wimplicit-fallthrough but this change might be entirely wrong."[1]
See the original thread of discussion here:
https://lore.kernel.org/patchwork/patch/1036251/
So, in preparation to enabling -Wimplicit-fallthrough, this patch silences the following warnings:
drivers/mtd/nand/onenand/onenand_base.c: In function ‘onenand_check_features’:drivers/mtd/nand/onenand/onenand_base.c:3264:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
if (ONENAND_IS_DDP(this))
^
drivers/mtd/nand/onenand/onenand_base.c:3284:2: note: here
case ONENAND_DEVICE_DENSITY_2Gb:
^~~~drivers/mtd/nand/onenand/onenand_base.c:3288:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
this->options |= ONENAND_HAS_UNLOCK_ALL;drivers/mtd/nand/onenand/onenand_base.c:3290:2: note: here
case ONENAND_DEVICE_DENSITY_1Gb:
^~~~
Warning level 3 was used: -Wimplicit-fallthrough=3
Also, notice that this patch doesn't change any functionality. See the most recent thread of discussion here:
https://lore.kernel.org/patchwork/patch/1077395/
This patch is part of the ongoing efforts to enable -Wimplicit-fallthrough.
[1] https://lore.kernel.org/lkml/20190509085318.34a9d4be@xps13/
---
Changes in v2:
- Add breaks instead of fall-through markings without altering any functionality.
- Update changelog text.
drivers/mtd/nand/onenand/onenand_base.c | 3 +++ 1 file changed, 3 insertions(+)
drivers/mtd/nand/onenand/onenand_base.c +3 -0
@@ -3280,12 +3280,15 @@ static void onenand_check_features(struct mtd_info *mtd)if ((this->version_id &0xf ) ==0xe ) this->options |=ONENAND_HAS_NOP_1 ; } + this->options |=ONENAND_HAS_UNLOCK_ALL ; +break ;case ONENAND_DEVICE_DENSITY_2Gb:/* 2Gb DDP does not have 2 plane */ if (!ONENAND_IS_DDP (this)) this->options |=ONENAND_HAS_2PLANE ; this->options |=ONENAND_HAS_UNLOCK_ALL ; +break ;case ONENAND_DEVICE_DENSITY_1Gb:/* A-Die has all block unlock */
Signature · 6 lines
2.21.0 ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/
Quoted 36 lines · Gustavo A. R. Silva
NOTICE THAT:
"...we don't know whether we need fallthroughs or breaks here and this is just a change to avoid having new warnings when switching to -Wimplicit-fallthrough but this change might be entirely wrong."[1]
See the original thread of discussion here:
https://lore.kernel.org/patchwork/patch/1036251/
So, in preparation to enabling -Wimplicit-fallthrough, this patch silences the following warnings:
drivers/mtd/nand/onenand/onenand_base.c: In function ‘onenand_check_features’:drivers/mtd/nand/onenand/onenand_base.c:3264:6: warning: this statement may fall through [-Wimplicit-fallthrough=]
if (ONENAND_IS_DDP(this))^
drivers/mtd/nand/onenand/onenand_base.c:3284:2: note: here
caseONENAND_DEVICE_DENSITY_2Gb:
^~~~drivers/mtd/nand/onenand/onenand_base.c:3288:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
this->options|=ONENAND_HAS_UNLOCK_ALL;drivers/mtd/nand/onenand/onenand_base.c:3290:2: note: here
caseONENAND_DEVICE_DENSITY_1Gb:
^~~~Warning level 3 was used: -Wimplicit-fallthrough=3
Also, notice that this patch doesn't change any functionality. See the most recent thread of discussion here:
https://lore.kernel.org/patchwork/patch/1077395/
This patch is part of the ongoing efforts to enable -Wimplicit-fallthrough.
Quoted 6 lines
[1] https://lore.kernel.org/lkml/20190509085318.34a9d4be@xps13/
Cc Miquel Raynal <[email protected]>Suggested-by Boris Brezillon <[email protected]>Suggested-by Kees Cook <[email protected]>Signed-off-by Gustavo A. R. Silva <[email protected]>
Thanks for updating this!
Quoted 32 lines
---
Changes in v2:
- Add breaks instead of fall-through markings without altering any functionality.
- Update changelog text.drivers/mtd/nand/onenand/onenand_base.c | 3 +++ 1 file changed, 3 insertions(+)drivers/mtd/nand/onenand/onenand_base.c +3
-0@@ -3280,12 +3280,15 @@ static void onenand_check_features(struct mtd_info *mtd)if ((this->version_id &0xf ) ==0xe ) this->options |=ONENAND_HAS_NOP_1 ; } + this->options |=ONENAND_HAS_UNLOCK_ALL ; +break ;case ONENAND_DEVICE_DENSITY_2Gb:/* 2Gb DDP does not have 2 plane */ if (!ONENAND_IS_DDP (this)) this->options |=ONENAND_HAS_2PLANE ; this->options |=ONENAND_HAS_UNLOCK_ALL ; +break ;case ONENAND_DEVICE_DENSITY_1Gb:/* A-Die has all block unlock */ Signature · 1 line
2.21.0
Signature · 1 line
Kees Cook