diff options
author | Mandy Lavi <mandy.lavi@freescale.com> | 2014-11-19 05:17:46 (GMT) |
---|---|---|
committer | Matthew Weigel <Matthew.Weigel@freescale.com> | 2014-12-11 18:40:48 (GMT) |
commit | ca6d6c8930a031eeab8e121ae7de52dede339e21 (patch) | |
tree | a102319534e49b7624b67a40a3d906662ce5850b /drivers/net/ethernet/freescale/fman/src | |
parent | 5676273b1553c5920c90592f49a1d8fce560f24d (diff) | |
download | linux-fsl-qoriq-ca6d6c8930a031eeab8e121ae7de52dede339e21.tar.xz |
fmd: fix static analysis issues
Change-Id: I2d6cead7b62116cd6a264ec91d82f3bdc3a03c10
Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/23939
Reviewed-by: Igal Liberman <Igal.Liberman@freescale.com>
Tested-by: Richard Schmitt <richard.schmitt@freescale.com>
Reviewed-by: Richard Schmitt <richard.schmitt@freescale.com>
Diffstat (limited to 'drivers/net/ethernet/freescale/fman/src')
7 files changed, 22 insertions, 37 deletions
diff --git a/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_fm.c b/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_fm.c index 58283fd..d7f94ab 100755 --- a/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_fm.c +++ b/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_fm.c @@ -237,7 +237,9 @@ early_param(FSL_FM_RX_EXTRA_HEADROOM_BOOTARG, fm_set_rx_extra_headroom); static irqreturn_t fm_irq(int irq, void *_dev) { t_LnxWrpFmDev *p_LnxWrpFmDev = (t_LnxWrpFmDev *)_dev; +#ifdef CONFIG_PM_SLEEP t_Fm *p_Fm = (t_Fm*)p_LnxWrpFmDev->h_Dev; +#endif if (!p_LnxWrpFmDev || !p_LnxWrpFmDev->h_Dev) return IRQ_NONE; diff --git a/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_ioctls_fm.c b/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_ioctls_fm.c index 473c3b0..8fa4c89 100644 --- a/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_ioctls_fm.c +++ b/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_ioctls_fm.c @@ -1992,9 +1992,10 @@ invalid_port_id: compat_copy_fm_pcd_cc_tbl_get_miss(compat_param, ¶m, COMPAT_K_TO_US); if (copy_to_user((ioc_compat_fm_pcd_cc_tbl_get_miss_params_t*) compat_ptr(arg), compat_param, - sizeof(ioc_compat_fm_pcd_cc_tbl_get_miss_params_t))) + sizeof(ioc_compat_fm_pcd_cc_tbl_get_miss_params_t))){ + XX_Free(compat_param); RETURN_ERROR(MINOR, E_READ_FAILED, NO_MSG); - + } XX_Free(compat_param); } else @@ -2066,9 +2067,10 @@ invalid_port_id: compat_copy_fm_pcd_cc_tbl_get_miss(compat_param, ¶m, COMPAT_K_TO_US); if (copy_to_user((ioc_compat_fm_pcd_cc_tbl_get_miss_params_t*) compat_ptr(arg), compat_param, - sizeof(ioc_compat_fm_pcd_cc_tbl_get_miss_params_t))) + sizeof(ioc_compat_fm_pcd_cc_tbl_get_miss_params_t))){ + XX_Free(compat_param); RETURN_ERROR(MINOR, E_READ_FAILED, NO_MSG); - + } XX_Free(compat_param); } else @@ -2259,6 +2261,7 @@ invalid_port_id: else { XX_Free(compat_param); + XX_Free(param); err = E_INVALID_VALUE; break; } @@ -3242,18 +3245,21 @@ t_Error LnxwrpFmIOCTL(t_LnxWrpFmDev *p_LnxWrpFmDev, unsigned int cmd, unsigned l { if (copy_to_user((ioc_fm_revision_info_t *)compat_ptr(arg), param, - sizeof(ioc_fm_revision_info_t))) + sizeof(ioc_fm_revision_info_t))){ + XX_Free(param); RETURN_ERROR(MINOR, E_READ_FAILED, NO_MSG); + } } else #endif { if (copy_to_user((ioc_fm_revision_info_t *)arg, param, - sizeof(ioc_fm_revision_info_t))) + sizeof(ioc_fm_revision_info_t))){ + XX_Free(param); RETURN_ERROR(MINOR, E_READ_FAILED, NO_MSG); + } } - XX_Free(param); break; } diff --git a/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_ioctls_fm_compat.c b/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_ioctls_fm_compat.c index 3c1ac30..5dc7294 100644 --- a/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_ioctls_fm_compat.c +++ b/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_ioctls_fm_compat.c @@ -367,6 +367,7 @@ static inline void compat_copy_fm_pcd_cc_next_engine( case e_IOC_FM_PCD_DONE: case e_IOC_FM_PCD_PLCR: param->manip_id = compat_pcd_id2ptr(compat_param->manip_id); + break; default: memcpy(¶m->params, &compat_param->params, sizeof(param->params)); } @@ -393,6 +394,7 @@ static inline void compat_copy_fm_pcd_cc_next_engine( case e_IOC_FM_PCD_DONE: case e_IOC_FM_PCD_PLCR: compat_param->manip_id = compat_pcd_ptr2id(param->manip_id); + break; default: memcpy(&compat_param->params, ¶m->params, sizeof(compat_param->params)); } @@ -938,8 +940,8 @@ void compat_copy_keys( #if (DPAA_VERSION >= 11) memcpy(&compat_param->frame_length_ranges, ¶m->frame_length_ranges, - sizeof(compat_param->frame_length_ranges[0] * - IOC_FM_PCD_CC_STATS_MAX_NUM_OF_FLR)); + sizeof(compat_param->frame_length_ranges[0]) * + IOC_FM_PCD_CC_STATS_MAX_NUM_OF_FLR); #endif /* (DPAA_VERSION >= 11) */ } diff --git a/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_sysfs_fm.c b/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_sysfs_fm.c index 0ea6d1c..dd3bc3e 100644 --- a/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_sysfs_fm.c +++ b/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_sysfs_fm.c @@ -1736,7 +1736,7 @@ int fm_plcr_dump_regs(void *h_fm_pcd, char *buf, int nn) &p_pcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_pmr, "fmpl_pmr"); - for (i = 0; i < 64; ++i) + for (i = 0; i < 63; ++i) FM_DMP_MEM_32(buf, n, &p_pcd->p_FmPcdPlcr->p_FmPcdPlcrRegs->fmpl_pmr[i]); diff --git a/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_sysfs_fm_port.c b/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_sysfs_fm_port.c index ebed557..ae4bb87 100644 --- a/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_sysfs_fm_port.c +++ b/drivers/net/ethernet/freescale/fman/src/wrapper/lnxwrp_sysfs_fm_port.c @@ -1201,8 +1201,6 @@ int fm_port_dump_regs_bmi(void *h_dev, char *buf, int nn) FM_DMP_SUBTITLE(buf, n, "\n"); FM_DMP_V32(buf, n, &p_bmi->txPortBmiRegs, fmbm_tgpr); break; - default: - return -EINVAL; } FM_DMP_SUBTITLE(buf, n, "\n"); diff --git a/drivers/net/ethernet/freescale/fman/src/xx/Makefile b/drivers/net/ethernet/freescale/fman/src/xx/Makefile index 1e0db57..3e857d8 100644 --- a/drivers/net/ethernet/freescale/fman/src/xx/Makefile +++ b/drivers/net/ethernet/freescale/fman/src/xx/Makefile @@ -8,5 +8,5 @@ include $(srctree)/drivers/net/ethernet/freescale/fman/ncsw_config.mk obj-y += fsl-ncsw-xx.o -fsl-ncsw-xx-objs := xx_linux.o udivdi3.o stdlib.o \ +fsl-ncsw-xx-objs := xx_linux.o stdlib.o \ module_strings.o diff --git a/drivers/net/ethernet/freescale/fman/src/xx/xx_linux.c b/drivers/net/ethernet/freescale/fman/src/xx/xx_linux.c index 546c68b..d5c639a 100644 --- a/drivers/net/ethernet/freescale/fman/src/xx/xx_linux.c +++ b/drivers/net/ethernet/freescale/fman/src/xx/xx_linux.c @@ -400,33 +400,10 @@ typedef struct { t_Handle interruptHandlers[0x00010000]; -static irqreturn_t LinuxInterruptHandler (int irq, void *dev_id) -{ - t_InterruptHandler *p_IntrHndl = (t_InterruptHandler *)dev_id; - p_IntrHndl->f_Isr(p_IntrHndl->handle); - return IRQ_HANDLED; -} t_Error XX_SetIntr(int irq, t_Isr *f_Isr, t_Handle handle) { - const char *device; - t_InterruptHandler *p_IntrHndl; - - device = GetDeviceName(irq); - if (device == NULL) - RETURN_ERROR(MAJOR, E_INVALID_VALUE, ("Interrupt source - %d", irq)); - - p_IntrHndl = (t_InterruptHandler *)XX_Malloc(sizeof(t_InterruptHandler)); - if (p_IntrHndl == NULL) - RETURN_ERROR(MAJOR, E_NO_MEMORY, NO_MSG); - p_IntrHndl->f_Isr = f_Isr; - p_IntrHndl->handle = handle; - interruptHandlers[irq] = p_IntrHndl; - - if (request_irq(GetDeviceIrqNum(irq), LinuxInterruptHandler, 0, device, p_IntrHndl) < 0) - RETURN_ERROR(MAJOR, E_BUSY, ("Can't get IRQ %s\n", device)); - disable_irq(GetDeviceIrqNum(irq)); - +/* not used */ return E_OK; } |