Commit 853acf7c authored by Navid Emamdoost's avatar Navid Emamdoost Committed by Kalle Valo

ath9k_htc: release allocated buffer if timed out

In htc_config_pipe_credits, htc_setup_complete, and htc_connect_service
if time out happens, the allocated buffer needs to be released.
Otherwise there will be memory leak.
Signed-off-by: default avatarNavid Emamdoost <navid.emamdoost@gmail.com>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
parent 45f09a1c
...@@ -170,6 +170,7 @@ static int htc_config_pipe_credits(struct htc_target *target) ...@@ -170,6 +170,7 @@ static int htc_config_pipe_credits(struct htc_target *target)
time_left = wait_for_completion_timeout(&target->cmd_wait, HZ); time_left = wait_for_completion_timeout(&target->cmd_wait, HZ);
if (!time_left) { if (!time_left) {
dev_err(target->dev, "HTC credit config timeout\n"); dev_err(target->dev, "HTC credit config timeout\n");
kfree_skb(skb);
return -ETIMEDOUT; return -ETIMEDOUT;
} }
...@@ -205,6 +206,7 @@ static int htc_setup_complete(struct htc_target *target) ...@@ -205,6 +206,7 @@ static int htc_setup_complete(struct htc_target *target)
time_left = wait_for_completion_timeout(&target->cmd_wait, HZ); time_left = wait_for_completion_timeout(&target->cmd_wait, HZ);
if (!time_left) { if (!time_left) {
dev_err(target->dev, "HTC start timeout\n"); dev_err(target->dev, "HTC start timeout\n");
kfree_skb(skb);
return -ETIMEDOUT; return -ETIMEDOUT;
} }
...@@ -277,6 +279,7 @@ int htc_connect_service(struct htc_target *target, ...@@ -277,6 +279,7 @@ int htc_connect_service(struct htc_target *target,
if (!time_left) { if (!time_left) {
dev_err(target->dev, "Service connection timeout for: %d\n", dev_err(target->dev, "Service connection timeout for: %d\n",
service_connreq->service_id); service_connreq->service_id);
kfree_skb(skb);
return -ETIMEDOUT; return -ETIMEDOUT;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment