diff options
author | Mandy Lavi <mandy.lavi@freescale.com> | 2014-11-02 13:28:00 (GMT) |
---|---|---|
committer | Matthew Weigel <Matthew.Weigel@freescale.com> | 2014-12-11 18:40:40 (GMT) |
commit | 6337363a3c85f8da8a524a56c32829dbd7ae3433 (patch) | |
tree | 679e8896a6c6814e6cadd639618d90a0ad0a869c /drivers/net/ethernet/freescale/fman/Peripherals/FM/Pcd/fm_replic.c | |
parent | 191df8fa29e685ce4c3250e6f8ca76599f32f4c3 (diff) | |
download | linux-fsl-qoriq-6337363a3c85f8da8a524a56c32829dbd7ae3433.tar.xz |
fmd: fix static analysis issues
Change-Id: I428d24ec05b1e6ef2137ad2ba6385ddfa3a01872
Signed-off-by: Mandy Lavi <mandy.lavi@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/22882
Reviewed-by: Nir Erez <nir.erez@freescale.com>
Reviewed-by: Matthew Weigel <Matthew.Weigel@freescale.com>
Tested-by: Matthew Weigel <Matthew.Weigel@freescale.com>
Diffstat (limited to 'drivers/net/ethernet/freescale/fman/Peripherals/FM/Pcd/fm_replic.c')
-rw-r--r-- | drivers/net/ethernet/freescale/fman/Peripherals/FM/Pcd/fm_replic.c | 24 |
1 files changed, 7 insertions, 17 deletions
diff --git a/drivers/net/ethernet/freescale/fman/Peripherals/FM/Pcd/fm_replic.c b/drivers/net/ethernet/freescale/fman/Peripherals/FM/Pcd/fm_replic.c index 7f84080..ee82f73 100644 --- a/drivers/net/ethernet/freescale/fman/Peripherals/FM/Pcd/fm_replic.c +++ b/drivers/net/ethernet/freescale/fman/Peripherals/FM/Pcd/fm_replic.c @@ -380,10 +380,11 @@ static t_Error AllocMember(t_FmPcdFrmReplicGroup *p_ReplicGroup) (t_AdOfTypeResult*)FM_MURAM_AllocMem(h_Muram, FM_PCD_CC_AD_ENTRY_SIZE, FM_PCD_CC_AD_TABLE_ALIGN); - if (!p_CurrentMember->p_MemberAd) + { + XX_Free(p_CurrentMember); RETURN_ERROR(MAJOR, E_NO_MEMORY, ("member AD table")); - + } IOMemSet32((uint8_t*)p_CurrentMember->p_MemberAd, 0, FM_PCD_CC_AD_ENTRY_SIZE); /* Add the new member to the available members list */ @@ -591,7 +592,6 @@ static void DeleteGroup(t_FmPcdFrmReplicGroup *p_ReplicGroup) /* free the replicator group */ XX_Free(p_ReplicGroup); - p_ReplicGroup = NULL; } } @@ -833,13 +833,8 @@ t_Error FM_PCD_FrmReplicAddMember(t_Handle h_ReplicGroup, /* group lock */ err = FrmReplicGroupTryLock(p_ReplicGroup); - if (err) - { - if (GET_ERROR_TYPE(err) == E_BUSY) - return ERROR_CODE(E_BUSY); - else - RETURN_ERROR(MAJOR, err, ("try lock in Add member")); - } + if (GET_ERROR_TYPE(err) == E_BUSY) + return ERROR_CODE(E_BUSY); if (memberIndex > p_ReplicGroup->numOfEntries) { @@ -954,13 +949,8 @@ t_Error FM_PCD_FrmReplicRemoveMember(t_Handle h_ReplicGroup, /* lock */ err = FrmReplicGroupTryLock(p_ReplicGroup); - if (err) - { - if (GET_ERROR_TYPE(err) == E_BUSY) - return ERROR_CODE(E_BUSY); - else - RETURN_ERROR(MAJOR, err, ("try lock in Remove member")); - } + if (GET_ERROR_TYPE(err) == E_BUSY) + return ERROR_CODE(E_BUSY); if (memberIndex >= p_ReplicGroup->numOfEntries) RETURN_ERROR(MAJOR, E_INVALID_SELECTION, ("member index to remove")); |