RE: [PATCH] Input: cyapa - Remove superfluous type check in cyapa_gen5_read_idac_data()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks for the check.
This fix is verified okay.

Dudley

> -----Original Message-----
> From: Geert Uytterhoeven [mailto:geert@xxxxxxxxxxxxxx]
> Sent: 2015年2月12日 22:16
> To: Dmitry Torokhov; Dudley Du
> Cc: linux-input@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Geert Uytterhoeven
> Subject: [PATCH] Input: cyapa - Remove superfluous type check in
> cyapa_gen5_read_idac_data()
>
> drivers/input/mouse/cyapa_gen5.c: In function ‘cyapa_gen5_read_idac_data’:
> drivers/input/mouse/cyapa_gen5.c:1876: warning: ‘max_element_cnt’ may be
> used uninitialized in this function
> drivers/input/mouse/cyapa_gen5.c:1873: warning: ‘offset’ may be used
> uninitialized in this function
>
> If *data_size is non-zero, and idac_data_type contains an unknown type,
> max_element_cnt and offset will be uninitialized, and the loop will
> process non-existing data.
>
> However, this cannot happen (for now), as there's a test for unknown
> types at the top of cyapa_gen5_read_idac_data().
>
> As no "if ... else if ..." is used in other places, remove the
> superfluous "if" to silence the compiler warning.
>
> Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
> ---
> Alternatively, we can pre-initialize max_element_cnt and offset to zero,
> and add "if (!max_element_cnt) goto out;" before the loop.
>
>  drivers/input/mouse/cyapa_gen5.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/input/mouse/cyapa_gen5.c b/drivers/input/mouse/cyapa_gen5.c
> index ddf5393a118098fc..88c465b70e9d8776 100644
> --- a/drivers/input/mouse/cyapa_gen5.c
> +++ b/drivers/input/mouse/cyapa_gen5.c
> @@ -1926,7 +1926,7 @@ static int cyapa_gen5_read_idac_data(struct cyapa
> *cyapa,
>  electrodes_tx = cyapa->electrodes_x;
>  max_element_cnt = ((cyapa->aligned_electrodes_rx + 7) &
>  ~7u) * electrodes_tx;
> -} else if (idac_data_type == GEN5_RETRIEVE_SELF_CAP_PWC_DATA) {
> +} else {
>  offset = 2;
>  max_element_cnt = cyapa->electrodes_x +
>  cyapa->electrodes_y;
> --
> 1.9.1


This message and any attachments may contain Cypress (or its subsidiaries) confidential information. If it has been received in error, please advise the sender and immediately delete this message.
��.n��������+%������w��{.n�����{��)��^n�r������&��z�ޗ�zf���h���~����������_��+v���)ߣ�


[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux