mirror of https://gitee.com/openkylin/linux.git
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: Navid Emamdoost <navid.emamdoost@gmail.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
parent
45f09a1c5b
commit
853acf7caf
|
@ -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)
|
||||||
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,
|
||||||
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;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue