Fix uninitialized variable warning on compilation.
sdio.c:333: warning: 'sg_sz' may be used uninitialized in this function
Signed-off-by: Vivek Natarajan <[email protected]>
---
drivers/net/wireless/ath/ath6kl/sdio.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/net/wireless/ath/ath6kl/sdio.c b/drivers/net/wireless/ath/ath6kl/sdio.c
index 5a03082..fe6c9d8 100644
--- a/drivers/net/wireless/ath/ath6kl/sdio.c
+++ b/drivers/net/wireless/ath/ath6kl/sdio.c
@@ -335,7 +335,7 @@ static int ath6kl_sdio_alloc_prep_scat_req(struct ath6kl_sdio *ar_sdio,
{
struct hif_scatter_req *s_req;
struct bus_request *bus_req;
- int i, scat_req_sz, scat_list_sz, sg_sz, buf_sz;
+ int i, scat_req_sz, scat_list_sz, sg_sz = 0, buf_sz;
u8 *virt_buf;
scat_list_sz = (n_scat_entry - 1) * sizeof(struct hif_scatter_item);
--
1.7.0.4
On 03/15/2012 09:45 AM, Vivek Natarajan wrote:
> Fix uninitialized variable warning on compilation.
>
> sdio.c:333: warning: 'sg_sz' may be used uninitialized in this function
>
> Signed-off-by: Vivek Natarajan <[email protected]>
> ---
> drivers/net/wireless/ath/ath6kl/sdio.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath6kl/sdio.c b/drivers/net/wireless/ath/ath6kl/sdio.c
> index 5a03082..fe6c9d8 100644
> --- a/drivers/net/wireless/ath/ath6kl/sdio.c
> +++ b/drivers/net/wireless/ath/ath6kl/sdio.c
> @@ -335,7 +335,7 @@ static int ath6kl_sdio_alloc_prep_scat_req(struct ath6kl_sdio *ar_sdio,
> {
> struct hif_scatter_req *s_req;
> struct bus_request *bus_req;
> - int i, scat_req_sz, scat_list_sz, sg_sz, buf_sz;
> + int i, scat_req_sz, scat_list_sz, sg_sz = 0, buf_sz;
> u8 *virt_buf;
>
> scat_list_sz = (n_scat_entry - 1) * sizeof(struct hif_scatter_item);
I also see this false warning on an older arm gcc, but not with
4.4.4-14ubuntu5 for x86.
But initialising variables due to buggy gcc is not a good idea. If you
want to get rid of the warning this would be better as the if clause is
not really necessary:
--- a/drivers/net/wireless/ath/ath6kl/sdio.c
+++ b/drivers/net/wireless/ath/ath6kl/sdio.c
@@ -341,11 +341,8 @@ static int ath6kl_sdio_alloc_prep_scat_req(struct
ath6kl_sdio *ar_sdio,
scat_list_sz = (n_scat_entry - 1) * sizeof(struct hif_scatter_item);
scat_req_sz = sizeof(*s_req) + scat_list_sz;
- if (!virt_scat)
- sg_sz = sizeof(struct scatterlist) * n_scat_entry;
- else
- buf_sz = 2 * L1_CACHE_BYTES +
- ATH6KL_MAX_TRANSFER_SIZE_PER_SCATTER;
+ sg_sz = sizeof(struct scatterlist) * n_scat_entry;
+ buf_sz = 2 * L1_CACHE_BYTES + ATH6KL_MAX_TRANSFER_SIZE_PER_SCATTER;
for (i = 0; i < n_scat_req; i++) {
/* allocate the scatter request */
Kalle