X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=kernel%2Fdrivers%2Fnet%2Fwireless%2Frsi%2Frsi_91x_sdio_ops.c;fp=kernel%2Fdrivers%2Fnet%2Fwireless%2Frsi%2Frsi_91x_sdio_ops.c;h=40d72312f3df21dd6e4e12019febd6363a6f7912;hb=e09b41010ba33a20a87472ee821fa407a5b8da36;hp=1c6788aecc62658fe2cc7c4961415ef4715c8dde;hpb=f93b97fd65072de626c074dbe099a1fff05ce060;p=kvmfornfv.git diff --git a/kernel/drivers/net/wireless/rsi/rsi_91x_sdio_ops.c b/kernel/drivers/net/wireless/rsi/rsi_91x_sdio_ops.c index 1c6788aec..40d72312f 100644 --- a/kernel/drivers/net/wireless/rsi/rsi_91x_sdio_ops.c +++ b/kernel/drivers/net/wireless/rsi/rsi_91x_sdio_ops.c @@ -203,8 +203,10 @@ static int rsi_load_ta_instructions(struct rsi_common *common) /* Copy firmware into DMA-accessible memory */ fw = kmemdup(fw_entry->data, fw_entry->size, GFP_KERNEL); - if (!fw) - return -ENOMEM; + if (!fw) { + status = -ENOMEM; + goto out; + } len = fw_entry->size; if (len % 4) @@ -217,6 +219,8 @@ static int rsi_load_ta_instructions(struct rsi_common *common) status = rsi_copy_to_card(common, fw, len, num_blocks); kfree(fw); + +out: release_firmware(fw_entry); return status; }