From: Dan Williams on
On Thu, 2010-08-05 at 22:23 +0200, Julia Lawall wrote:
> From: Julia Lawall <julia(a)diku.dk>
>
> At the point of the patched code, err has already been tested, so it is
> only worthwhile to test it again in the if branches where it is changed.
>
> The semantic match that finds this problem is as follows:
> (http://coccinelle.lip6.fr/)
>
> // <smpl>
> @r disable braces4@
> position p1,p2;
> statement S1,S2;
> @@
>
> (
> if (...) { ... }
> |
> if (...) S1(a)p1 S2(a)p2
> )
>
> @script:python@
> p1 << r.p1;
> p2 << r.p2;
> @@
>
> if (p1[0].column == p2[0].column):
> cocci.print_main("branch",p1)
> cocci.print_secs("after",p2)
> // </smpl>
>
> Signed-off-by: Julia Lawall <julia(a)diku.dk>

Acked-by: Dan Williams <dcbw(a)redhat.com>

> ---
> drivers/net/wireless/libertas/if_spi.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/wireless/libertas/if_spi.c b/drivers/net/wireless/libertas/if_spi.c
> index fe3f080..3965c6c 100644
> --- a/drivers/net/wireless/libertas/if_spi.c
> +++ b/drivers/net/wireless/libertas/if_spi.c
> @@ -800,14 +800,16 @@ static int lbs_spi_thread(void *data)
> goto err;
> }
>
> - if (hiStatus & IF_SPI_HIST_CMD_UPLOAD_RDY)
> + if (hiStatus & IF_SPI_HIST_CMD_UPLOAD_RDY) {
> err = if_spi_c2h_cmd(card);
> if (err)
> goto err;
> - if (hiStatus & IF_SPI_HIST_RX_UPLOAD_RDY)
> + }
> + if (hiStatus & IF_SPI_HIST_RX_UPLOAD_RDY) {
> err = if_spi_c2h_data(card);
> if (err)
> goto err;
> + }
>
> /* workaround: in PS mode, the card does not set the Command
> * Download Ready bit, but it sets TX Download Ready. */


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/