[openwrt/openwrt] kernel: ltq-vmmc: fix compilation warning

LEDE Commits lede-commits at lists.infradead.org
Thu May 11 18:25:28 PDT 2023


ansuel pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/831848fe84f3092de783bef86ca8b5b316d0b49c

commit 831848fe84f3092de783bef86ca8b5b316d0b49c
Author: Christian Marangi <ansuelsmth at gmail.com>
AuthorDate: Thu May 11 12:28:13 2023 +0200

    kernel: ltq-vmmc: fix compilation warning
    
    Fix compilation warning from ret not handled from copy_from_user and
    missing fallthrough.
    Fix compilation warning:
    /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_xway/drv_vmmc-1.9.0/src/drv_vmmc_bbd.c: In function 'vmmc_BBD_WhiteListedCmdWr':
    /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_xway/drv_vmmc-1.9.0/src/drv_vmmc_bbd.c:1012:16: error: this statement may fall through [-Werror=implicit-fallthrough=]
     1012 |             if (IFX_TRUE == pCh->pParent->bSlicSupportsIdleMode)
          |                ^
    /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_xway/drv_vmmc-1.9.0/src/drv_vmmc_bbd.c:1028:7: note: here
     1028 |       case VMMC_WL_SDD_RING_CFG:
          |       ^~~~
    cc1: all warnings being treated as errors
    
    /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_xway/drv_vmmc-1.9.0/src/drv_vmmc_ioctl.c: In function 'VMMC_Dev_Spec_Ioctl':
    /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_xway/drv_vmmc-1.9.0/src/drv_vmmc_ioctl.c:111:15: error: ignoring return value of 'copy_from_user' declared with attribute 'warn_unused_result' [-Werror=unused-result]
      111 |               copy_from_user (p_arg, (IFX_uint8_t*)ioarg, sizeof(arg));\
          |               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_xway/drv_vmmc-1.9.0/src/drv_vmmc_ioctl.c:475:7: note: in expansion of macro 'ON_IOCTL'
      475 |       ON_IOCTL((VMMC_CHANNEL *) pLLDummyCh,
          |       ^~~~~~~~
    /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_xway/drv_vmmc-1.9.0/src/drv_vmmc_ioctl.c:113:15: error: ignoring return value of 'copy_to_user' declared with attribute 'warn_unused_result' [-Werror=unused-result]
      113 |               copy_to_user ((IFX_uint8_t*)ioarg, p_arg, sizeof(arg));\
          |               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /home/ansuel/openwrt-ansuel/openwrt/build_dir/target-mips-openwrt-linux-musl_musl/linux-lantiq_xway/drv_vmmc-1.9.0/src/drv_vmmc_ioctl.c:475:7: note: in expansion of macro 'ON_IOCTL'
      475 |       ON_IOCTL((VMMC_CHANNEL *) pLLDummyCh,
          |       ^~~~~~~~
    cc1: all warnings being treated as errors
    
    Signed-off-by: Christian Marangi <ansuelsmth at gmail.com>
---
 .../600-fix-compilation-warning-fallthrough.patch        | 10 ++++++++++
 .../601-fix-compilation-warning-ret-not-handled.patch    | 16 ++++++++++++++++
 2 files changed, 26 insertions(+)

diff --git a/package/kernel/lantiq/ltq-vmmc/patches/600-fix-compilation-warning-fallthrough.patch b/package/kernel/lantiq/ltq-vmmc/patches/600-fix-compilation-warning-fallthrough.patch
new file mode 100644
index 0000000000..7282bc446d
--- /dev/null
+++ b/package/kernel/lantiq/ltq-vmmc/patches/600-fix-compilation-warning-fallthrough.patch
@@ -0,0 +1,10 @@
+--- a/src/drv_vmmc_bbd.c
++++ b/src/drv_vmmc_bbd.c
+@@ -1025,6 +1025,7 @@ static IFX_int32_t vmmc_BBD_WhiteListedCmdWr(VMMC_CHANNEL *pCh,
+                }
+             }
+          }
++         fallthrough;
+       case VMMC_WL_SDD_RING_CFG:
+       case VMMC_WL_SDD_DCDC_CFG:
+       case VMMC_WL_SDD_MWI_CFG:
diff --git a/package/kernel/lantiq/ltq-vmmc/patches/601-fix-compilation-warning-ret-not-handled.patch b/package/kernel/lantiq/ltq-vmmc/patches/601-fix-compilation-warning-ret-not-handled.patch
new file mode 100644
index 0000000000..da7c1c8a26
--- /dev/null
+++ b/package/kernel/lantiq/ltq-vmmc/patches/601-fix-compilation-warning-ret-not-handled.patch
@@ -0,0 +1,16 @@
+--- a/src/drv_vmmc_ioctl.c
++++ b/src/drv_vmmc_ioctl.c
+@@ -108,9 +108,11 @@ extern IFX_int32_t VMMC_ChipAccessInit (
+               {\
+               arg* p_arg = VMMC_OS_Malloc (sizeof(arg));\
+               VMMC_ASSERT (p_arg != IFX_NULL);\
+-              copy_from_user (p_arg, (IFX_uint8_t*)ioarg, sizeof(arg));\
++              if (copy_from_user (p_arg, (IFX_uint8_t*)ioarg, sizeof(arg)))\
++                ret = -EFAULT;\
+               ret = func((pContext), p_arg);\
+-              copy_to_user ((IFX_uint8_t*)ioarg, p_arg, sizeof(arg));\
++              if (copy_to_user ((IFX_uint8_t*)ioarg, p_arg, sizeof(arg)))\
++                ret = -EFAULT;\
+               VMMC_OS_Free (p_arg);\
+               }\
+               break




More information about the lede-commits mailing list