This prevents 'comp_pktq' from being used in an
incorrect manner.
Signed-off-by: Sujith Manoharan <[email protected]>
---
drivers/net/wireless/ath/ath6kl/htc.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/drivers/net/wireless/ath/ath6kl/htc.c b/drivers/net/wireless/ath/ath6kl/htc.c
index b017022..2d72190 100644
--- a/drivers/net/wireless/ath/ath6kl/htc.c
+++ b/drivers/net/wireless/ath/ath6kl/htc.c
@@ -2062,6 +2062,7 @@ int ath6kl_htc_rxmsg_pending_handler(struct htc_target *target,
enum htc_endpoint_id id;
int n_fetched = 0;
+ INIT_LIST_HEAD(&comp_pktq);
*num_pkts = 0;
/*
--
1.7.8.3
Kalle Valo wrote:
> But there's also the same init later in the function, inside the while loop:
>
> INIT_LIST_HEAD(&rx_pktq);
> INIT_LIST_HEAD(&comp_pktq);
>
> Is this intentional?
I think so.
If we break out of the loop on the first iteration because of the condition
"if (id >= ENDPOINT_MAX)", then comp_pktq ends up being used without having
been initialized.
Sujith
On 01/10/2012 06:23 AM, Sujith Manoharan wrote:
> This prevents 'comp_pktq' from being used in an
> incorrect manner.
>
> Signed-off-by: Sujith Manoharan <[email protected]>
> ---
> drivers/net/wireless/ath/ath6kl/htc.c | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath6kl/htc.c b/drivers/net/wireless/ath/ath6kl/htc.c
> index b017022..2d72190 100644
> --- a/drivers/net/wireless/ath/ath6kl/htc.c
> +++ b/drivers/net/wireless/ath/ath6kl/htc.c
> @@ -2062,6 +2062,7 @@ int ath6kl_htc_rxmsg_pending_handler(struct htc_target *target,
> enum htc_endpoint_id id;
> int n_fetched = 0;
>
> + INIT_LIST_HEAD(&comp_pktq);
But there's also the same init later in the function, inside the while loop:
INIT_LIST_HEAD(&rx_pktq);
INIT_LIST_HEAD(&comp_pktq);
Is this intentional?
Kalle