From c0717983b76a6411c88ba659878d93f25184f5e4 Mon Sep 17 00:00:00 2001 From: Sridhar Ancha Date: Tue, 10 May 2016 18:06:17 +0530 Subject: 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 Signed-off-by: Sridhar Ancha --- drivers/platform/msm/ipa/ipa_v2/ipa_dp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'drivers') 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; -- cgit v1.2.3