2010-08-05 20:24:58

by Julia Lawall

[permalink] [raw]
Subject: [PATCH 26/42] drivers/spi: Adjust confusing if indentation

From: Julia Lawall <[email protected]>

The return -EINVAL appears to only make sense if the if branch that it is
aligned with is taken, so move it into that branch

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@p1 S2@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 <[email protected]>

---
This patch changes the semantics, and the change might not be correct.

drivers/spi/amba-pl022.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/spi/amba-pl022.c b/drivers/spi/amba-pl022.c
index f0a1418..4de50de 100644
--- a/drivers/spi/amba-pl022.c
+++ b/drivers/spi/amba-pl022.c
@@ -1348,10 +1348,11 @@ static int verify_controller_parameters(struct pl022 *pl022,
if ((chip_info->duplex !=
SSP_MICROWIRE_CHANNEL_FULL_DUPLEX)
&& (chip_info->duplex !=
- SSP_MICROWIRE_CHANNEL_HALF_DUPLEX))
+ SSP_MICROWIRE_CHANNEL_HALF_DUPLEX)) {
dev_err(chip_info->dev,
"Microwire duplex mode is configured incorrectly\n");
return -EINVAL;
+ }
} else {
if (chip_info->duplex != SSP_MICROWIRE_CHANNEL_FULL_DUPLEX)
dev_err(chip_info->dev,


2010-08-05 20:30:23

by David Brownell

[permalink] [raw]
Subject: Re: [PATCH 26/42] drivers/spi: Adjust confusing if indentation

It's not all of drivrers/spi -- just one
specific driver. Please update $SUBJECT and
patch description to be more accurate.

2010-08-05 20:36:28

by Julia Lawall

[permalink] [raw]
Subject: [PATCH 26/42] drivers/spi/amba-pl022.c: Adjust confusing if indentation

From: Julia Lawall <[email protected]>

The return -EINVAL appears to only make sense if the if branch that it is
aligned with is taken, so move it into that branch

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@p1 S2@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 <[email protected]>

---
This patch changes the semantics, and the change might not be correct.

drivers/spi/amba-pl022.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/spi/amba-pl022.c b/drivers/spi/amba-pl022.c
index f0a1418..4de50de 100644
--- a/drivers/spi/amba-pl022.c
+++ b/drivers/spi/amba-pl022.c
@@ -1348,10 +1348,11 @@ static int verify_controller_parameters(struct pl022 *pl022,
if ((chip_info->duplex !=
SSP_MICROWIRE_CHANNEL_FULL_DUPLEX)
&& (chip_info->duplex !=
- SSP_MICROWIRE_CHANNEL_HALF_DUPLEX))
+ SSP_MICROWIRE_CHANNEL_HALF_DUPLEX)) {
dev_err(chip_info->dev,
"Microwire duplex mode is configured incorrectly\n");
return -EINVAL;
+ }
} else {
if (chip_info->duplex != SSP_MICROWIRE_CHANNEL_FULL_DUPLEX)
dev_err(chip_info->dev,

2010-08-05 21:41:14

by Linus Walleij

[permalink] [raw]
Subject: Re: [spi-devel-general] [PATCH 26/42] drivers/spi/amba-pl022.c: Adjust confusing if indentation

2010/8/5 Julia Lawall <[email protected]>:

> From: Julia Lawall <[email protected]>
>
> The return -EINVAL appears to only make sense if the if branch that it is
> aligned with is taken, so move it into that branch

What a nasty bug to see, thanks for robot-finding this!
Acked-by: Linus Walleij <[email protected]>

Yours,
Linus Walleij