Skip to content

Commit

Permalink
qlogic: Deletion of unnecessary checks before two function calls
Browse files Browse the repository at this point in the history
The functions kfree() and vfree() perform also input parameter validation.
Thus the test around their calls is not needed.

This issue was detected by using the Coccinelle software.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Markus Elfring authored and David S. Miller committed Feb 5, 2015
1 parent adfde05 commit 7061b2b
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 18 deletions.
24 changes: 8 additions & 16 deletions drivers/net/ethernet/qlogic/qlcnic/qlcnic_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -294,9 +294,7 @@ int qlcnic_alloc_sds_rings(struct qlcnic_recv_context *recv_ctx, int count)

void qlcnic_free_sds_rings(struct qlcnic_recv_context *recv_ctx)
{
if (recv_ctx->sds_rings != NULL)
kfree(recv_ctx->sds_rings);

kfree(recv_ctx->sds_rings);
recv_ctx->sds_rings = NULL;
}

Expand Down Expand Up @@ -1257,8 +1255,7 @@ qlcnic_check_options(struct qlcnic_adapter *adapter)
if (ahw->op_mode != QLCNIC_NON_PRIV_FUNC) {
if (fw_dump->tmpl_hdr == NULL ||
adapter->fw_version > prev_fw_version) {
if (fw_dump->tmpl_hdr)
vfree(fw_dump->tmpl_hdr);
vfree(fw_dump->tmpl_hdr);
if (!qlcnic_fw_cmd_get_minidump_temp(adapter))
dev_info(&pdev->dev,
"Supports FW dump capability\n");
Expand Down Expand Up @@ -2374,13 +2371,12 @@ void qlcnic_free_tx_rings(struct qlcnic_adapter *adapter)

for (ring = 0; ring < adapter->drv_tx_rings; ring++) {
tx_ring = &adapter->tx_ring[ring];
if (tx_ring && tx_ring->cmd_buf_arr != NULL) {
if (tx_ring) {
vfree(tx_ring->cmd_buf_arr);
tx_ring->cmd_buf_arr = NULL;
}
}
if (adapter->tx_ring != NULL)
kfree(adapter->tx_ring);
kfree(adapter->tx_ring);
}

int qlcnic_alloc_tx_rings(struct qlcnic_adapter *adapter,
Expand Down Expand Up @@ -2758,13 +2754,9 @@ static void qlcnic_remove(struct pci_dev *pdev)
}

qlcnic_dcb_free(adapter->dcb);

qlcnic_detach(adapter);

if (adapter->npars != NULL)
kfree(adapter->npars);
if (adapter->eswitch != NULL)
kfree(adapter->eswitch);
kfree(adapter->npars);
kfree(adapter->eswitch);

if (qlcnic_82xx_check(adapter))
qlcnic_clr_all_drv_state(adapter, 0);
Expand Down Expand Up @@ -2932,13 +2924,13 @@ void qlcnic_alloc_lb_filters_mem(struct qlcnic_adapter *adapter)

static void qlcnic_free_lb_filters_mem(struct qlcnic_adapter *adapter)
{
if (adapter->fhash.fmax && adapter->fhash.fhead)
if (adapter->fhash.fmax)
kfree(adapter->fhash.fhead);

adapter->fhash.fhead = NULL;
adapter->fhash.fmax = 0;

if (adapter->rx_fhash.fmax && adapter->rx_fhash.fhead)
if (adapter->rx_fhash.fmax)
kfree(adapter->rx_fhash.fhead);

adapter->rx_fhash.fmax = 0;
Expand Down
3 changes: 1 addition & 2 deletions drivers/net/ethernet/qlogic/qlcnic/qlcnic_minidump.c
Original file line number Diff line number Diff line change
Expand Up @@ -1407,8 +1407,7 @@ void qlcnic_83xx_get_minidump_template(struct qlcnic_adapter *adapter)
current_version = qlcnic_83xx_get_fw_version(adapter);

if (fw_dump->tmpl_hdr == NULL || current_version > prev_version) {
if (fw_dump->tmpl_hdr)
vfree(fw_dump->tmpl_hdr);
vfree(fw_dump->tmpl_hdr);
if (!qlcnic_fw_cmd_get_minidump_temp(adapter))
dev_info(&pdev->dev, "Supports FW dump capability\n");
}
Expand Down

0 comments on commit 7061b2b

Please sign in to comment.