2021-04-24 16:01:45

by zhouchuangao

[permalink] [raw]
Subject: [PATCH] MIPS: BCM63XX: Use BUG_ON instead of condition followed by BUG.

BUG_ON uses unlikely in if(), it can be optimized at compile time.

Usually, the condition in if() is not satisfied. In my opinion,
this can improve the efficiency of the multi-stage pipeline.

Signed-off-by: zhouchuangao <[email protected]>
---
arch/mips/bcm63xx/gpio.c | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/arch/mips/bcm63xx/gpio.c b/arch/mips/bcm63xx/gpio.c
index 16f353a..5c4a233 100644
--- a/arch/mips/bcm63xx/gpio.c
+++ b/arch/mips/bcm63xx/gpio.c
@@ -43,8 +43,7 @@ static void bcm63xx_gpio_set(struct gpio_chip *chip,
u32 *v;
unsigned long flags;

- if (gpio >= chip->ngpio)
- BUG();
+ BUG_ON(gpio >= chip->ngpio);

if (gpio < 32) {
reg = gpio_out_low_reg;
@@ -70,8 +69,7 @@ static int bcm63xx_gpio_get(struct gpio_chip *chip, unsigned gpio)
u32 reg;
u32 mask;

- if (gpio >= chip->ngpio)
- BUG();
+ BUG_ON(gpio >= chip->ngpio);

if (gpio < 32) {
reg = gpio_out_low_reg;
@@ -92,8 +90,7 @@ static int bcm63xx_gpio_set_direction(struct gpio_chip *chip,
u32 tmp;
unsigned long flags;

- if (gpio >= chip->ngpio)
- BUG();
+ BUG_ON(gpio >= chip->ngpio);

if (gpio < 32) {
reg = GPIO_CTL_LO_REG;
--
2.7.4


2021-04-25 01:07:27

by Florian Fainelli

[permalink] [raw]
Subject: Re: [PATCH] MIPS: BCM63XX: Use BUG_ON instead of condition followed by BUG.



On 4/24/2021 8:59 AM, zhouchuangao wrote:
> BUG_ON uses unlikely in if(), it can be optimized at compile time.
>
> Usually, the condition in if() is not satisfied. In my opinion,
> this can improve the efficiency of the multi-stage pipeline.
>
> Signed-off-by: zhouchuangao <[email protected]>

Acked-by: Florian Fainelli <[email protected]>
--
Florian

2021-04-26 13:04:10

by Thomas Bogendoerfer

[permalink] [raw]
Subject: Re: [PATCH] MIPS: BCM63XX: Use BUG_ON instead of condition followed by BUG.

On Sat, Apr 24, 2021 at 08:59:50AM -0700, zhouchuangao wrote:
> BUG_ON uses unlikely in if(), it can be optimized at compile time.
>
> Usually, the condition in if() is not satisfied. In my opinion,
> this can improve the efficiency of the multi-stage pipeline.
>
> Signed-off-by: zhouchuangao <[email protected]>
> ---
> arch/mips/bcm63xx/gpio.c | 9 +++------
> 1 file changed, 3 insertions(+), 6 deletions(-)

applied to mips-next.

Thomas.

--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]