diff options
author | Sridhar Ancha <sancha@codeaurora.org> | 2016-05-10 18:06:17 +0530 |
---|---|---|
committer | Jeevan Shriram <jshriram@codeaurora.org> | 2016-05-16 20:10:48 -0700 |
commit | c0717983b76a6411c88ba659878d93f25184f5e4 (patch) | |
tree | 6f6801231a7b53815ae1c84fcd8cac97f26f0536 /drivers | |
parent | 77c5a65855cbc82ba4d9f4cdbe6b2836f582c646 (diff) |
msm: ipa: Fix to memory leak when sending non-linear data
In cases where source ep or dest ep is not valid, descriptor
memory allocated for frag skb's is not freed. Make a change
to free the memory in such error cases.
Change-Id: Ie15c48ae1bb34e304795607a09c753360eb015ec
Acked-by: Chaitanya Pratapa <cpratapa@qti.qualcomm.com>
Signed-off-by: Sridhar Ancha <sancha@codeaurora.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/platform/msm/ipa/ipa_v2/ipa_dp.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/platform/msm/ipa/ipa_v2/ipa_dp.c b/drivers/platform/msm/ipa/ipa_v2/ipa_dp.c index e3dfccd01549..9a2797537712 100644 --- a/drivers/platform/msm/ipa/ipa_v2/ipa_dp.c +++ b/drivers/platform/msm/ipa/ipa_v2/ipa_dp.c @@ -1587,14 +1587,14 @@ int ipa2_tx_dp(enum ipa_client_type dst, struct sk_buff *skb, if (-1 == src_ep_idx) { IPAERR("Client %u is not mapped\n", IPA_CLIENT_APPS_LAN_WAN_PROD); - return -EFAULT; + goto fail_gen; } dst_ep_idx = ipa2_get_ep_mapping(dst); } else { src_ep_idx = ipa2_get_ep_mapping(dst); if (-1 == src_ep_idx) { IPAERR("Client %u is not mapped\n", dst); - return -EFAULT; + goto fail_gen; } if (meta && meta->pkt_init_dst_ep_valid) dst_ep_idx = meta->pkt_init_dst_ep; |