Re: [GIT PULL] fallthrough pseudo-keyword macro conversions for 5.9-rc2

From: Joe Perches
Date: Sat Aug 22 2020 - 13:36:51 EST


On Thu, 2020-08-20 at 17:02 -0500, Gustavo A. R. Silva wrote:
> This treewide patch doesn't address ALL fall-through markings in all
> subsystems at once because I have previously sent out patches for some of
> such subsystems separately, and I will follow up on them; however, this
> definitely contributes most of the work needed to replace all the
> fall-through markings with the fallthrough pseudo-keyword macro in the
> whole codebase.

Hi Gustavo. Thanks for this.

Some stragglers (for -next) in the arch/subsystems modified
by this patch:

arch/x86/
drivers/gpu/
drivers/misc/
drivers/net/ethernet/
lib/

And some in scripts/ and tools/ which maybe shouldn't be changed.

Possible diffs for each straggler directory block below:

> arch/x86/

$ git diff -U0 arch
diff --git a/arch/x86/events/core.c b/arch/x86/events/core.c
index 0f3d01562ded..b825a5a5ede7 100644
--- a/arch/x86/events/core.c
+++ b/arch/x86/events/core.c
@@ -1149 +1149 @@ static inline void x86_assign_hw_event(struct perf_event *event,
- /* fall through */
+ fallthrough;
diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c
index 983cd53ed4c9..097cc3439e53 100644
--- a/arch/x86/kernel/e820.c
+++ b/arch/x86/kernel/e820.c
@@ -190 +190 @@ static void __init e820_print_type(enum e820_type type)
- case E820_TYPE_RAM: /* Fall through: */
+ case E820_TYPE_RAM:
@@ -197 +197 @@ static void __init e820_print_type(enum e820_type type)
- case E820_TYPE_PMEM: /* Fall through: */
+ case E820_TYPE_PMEM:
@@ -1044 +1044 @@ static const char *__init e820_type_to_string(struct e820_entry *entry)
- case E820_TYPE_RESERVED_KERN: /* Fall-through: */
+ case E820_TYPE_RESERVED_KERN:
@@ -1060 +1060 @@ static unsigned long __init e820_type_to_iomem_type(struct e820_entry *entry)
- case E820_TYPE_RESERVED_KERN: /* Fall-through: */
+ case E820_TYPE_RESERVED_KERN:
@@ -1062,7 +1062,7 @@ static unsigned long __init e820_type_to_iomem_type(struct e820_entry *entry)
- case E820_TYPE_ACPI: /* Fall-through: */
- case E820_TYPE_NVS: /* Fall-through: */
- case E820_TYPE_UNUSABLE: /* Fall-through: */
- case E820_TYPE_PRAM: /* Fall-through: */
- case E820_TYPE_PMEM: /* Fall-through: */
- case E820_TYPE_RESERVED: /* Fall-through: */
- case E820_TYPE_SOFT_RESERVED: /* Fall-through: */
+ case E820_TYPE_ACPI:
+ case E820_TYPE_NVS:
+ case E820_TYPE_UNUSABLE:
+ case E820_TYPE_PRAM:
+ case E820_TYPE_PMEM:
+ case E820_TYPE_RESERVED:
+ case E820_TYPE_SOFT_RESERVED:
@@ -1082,3 +1082,3 @@ static unsigned long __init e820_type_to_iores_desc(struct e820_entry *entry)
- case E820_TYPE_RESERVED_KERN: /* Fall-through: */
- case E820_TYPE_RAM: /* Fall-through: */
- case E820_TYPE_UNUSABLE: /* Fall-through: */
+ case E820_TYPE_RESERVED_KERN:
+ case E820_TYPE_RAM:
+ case E820_TYPE_UNUSABLE:

> drivers/gpu/

$ git diff -U1 drivers/gpu
diff --git a/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c b/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
index b5986d19dc08..77dec1a56b9b 100644
--- a/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
+++ b/drivers/gpu/drm/amd/pm/powerplay/si_dpm.c
@@ -6203,3 +6203,3 @@ static void si_request_link_speed_change_before_state_change(struct amdgpu_devic
#endif
- /* fall through */
+ fallthrough;
default:
diff --git a/drivers/gpu/drm/radeon/ci_dpm.c b/drivers/gpu/drm/radeon/ci_dpm.c
index 886e9959496f..6ba12f141833 100644
--- a/drivers/gpu/drm/radeon/ci_dpm.c
+++ b/drivers/gpu/drm/radeon/ci_dpm.c
@@ -4863,3 +4863,3 @@ static void ci_request_link_speed_change_before_state_change(struct radeon_devic
#endif
- /* fall through */
+ fallthrough;
default:
diff --git a/drivers/gpu/drm/radeon/si_dpm.c b/drivers/gpu/drm/radeon/si_dpm.c
index d1c73e9db889..76427c893827 100644
--- a/drivers/gpu/drm/radeon/si_dpm.c
+++ b/drivers/gpu/drm/radeon/si_dpm.c
@@ -5751,3 +5751,3 @@ static void si_request_link_speed_change_before_state_change(struct radeon_devic
#endif
- /* fall through */
+ fallthrough;
default:

> drivers/misc/

diff --git a/drivers/misc/mei/interrupt.c b/drivers/misc/mei/interrupt.c
index 326955b04fda..683871267f4f 100644
--- a/drivers/misc/mei/interrupt.c
+++ b/drivers/misc/mei/interrupt.c
@@ -135 +134,0 @@ static int mei_cl_irq_read_msg(struct mei_cl *cl,
- fallthrough;

> drivers/net/ethernet/

diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-anarion.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-anarion.c
index 08c76636c164..2a86307e3c43 100644
--- a/drivers/net/ethernet/stmicro/stmmac/dwmac-anarion.c
+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-anarion.c
@@ -87,3 +87,2 @@ static struct anarion_gmac *anarion_config_dt(struct platform_device *pdev)
case PHY_INTERFACE_MODE_RGMII:
- fallthrough;
case PHY_INTERFACE_MODE_RGMII_ID:

> drivers/scsi/

$ git diff -U1 drivers/scsi
diff --git a/drivers/scsi/libsas/sas_discover.c b/drivers/scsi/libsas/sas_discover.c
index cd7c7d269f6f..26c992213c9c 100644
--- a/drivers/scsi/libsas/sas_discover.c
+++ b/drivers/scsi/libsas/sas_discover.c
@@ -468,5 +468,4 @@ static void sas_discover_domain(struct work_struct *work)
pr_notice("ATA device seen but CONFIG_SCSI_SAS_ATA=N so cannot attach\n");
- /* Fall through */
+ fallthrough;
#endif
- /* Fall through - only for the #else condition above. */

> lib/

$ git diff -U0 lib
diff --git a/lib/nlattr.c b/lib/nlattr.c
index 665bdaff02c8..e0da8c23d674 100644
--- a/lib/nlattr.c
+++ b/lib/nlattr.c
@@ -404,2 +404 @@ static int validate_nla(const struct nlattr *nla, int maxtype,
- /* fall through */
-
+ fallthrough;
diff --git a/lib/zlib_inflate/inflate.c b/lib/zlib_inflate/inflate.c
index 67cc9b08ae9d..8147b0ade347 100644
--- a/lib/zlib_inflate/inflate.c
+++ b/lib/zlib_inflate/inflate.c
@@ -399 +399 @@ int zlib_inflate(z_streamp strm, int flush)
- /* fall through */
+ fallthrough;
@@ -407 +407 @@ int zlib_inflate(z_streamp strm, int flush)
- /* fall through */
+ fallthrough;
@@ -410 +410 @@ int zlib_inflate(z_streamp strm, int flush)
- /* fall through */
+ fallthrough;
@@ -449 +449 @@ int zlib_inflate(z_streamp strm, int flush)
- /* fall through */
+ fallthrough;
@@ -483 +483 @@ int zlib_inflate(z_streamp strm, int flush)
- /* fall through */
+ fallthrough;
@@ -504 +504 @@ int zlib_inflate(z_streamp strm, int flush)
- /* fall through */
+ fallthrough;
@@ -578 +578 @@ int zlib_inflate(z_streamp strm, int flush)
- /* fall through */
+ fallthrough;
@@ -618 +618 @@ int zlib_inflate(z_streamp strm, int flush)
- /* fall through */
+ fallthrough;
@@ -626 +626 @@ int zlib_inflate(z_streamp strm, int flush)
- /* fall through */
+ fallthrough;
@@ -652 +652 @@ int zlib_inflate(z_streamp strm, int flush)
- /* fall through */
+ fallthrough;
@@ -672 +672 @@ int zlib_inflate(z_streamp strm, int flush)
- /* fall through */
+ fallthrough;
@@ -723 +723 @@ int zlib_inflate(z_streamp strm, int flush)
- /* fall through */
+ fallthrough;