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@gmail.com>
			
			
This commit is contained in:
		| @@ -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: | ||||
| @@ -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 | ||||
		Reference in New Issue
	
	Block a user
	 Christian Marangi
					Christian Marangi