kernel/module: Use BUG_ON instead of if condition followed by BUG.
diff mbox series

Message ID 1618654921-124063-1-git-send-email-zhouchuangao@vivo.com
State New
Headers show
Series
  • kernel/module: Use BUG_ON instead of if condition followed by BUG.
Related show

Commit Message

zhouchuangao April 17, 2021, 10:22 a.m. UTC
First:
This patch comes from cocinelle warning.

Second:
BUG_ON uses unlikely in if(). Through disassembly, we can see that
brk #0x800 is compiled to the end of the function.
As you can see below:
    ......
    ffffff8008660bec:   d65f03c0    ret
    ffffff8008660bf0:   d4210000    brk #0x800

Usually, the condition in if () is not satisfied. For the
multi-stage pipeline, we do not need to perform fetch decode
and excute operation on brk instruction.

In my opinion, this can improve the efficiency of the
multi-stage pipeline.

Signed-off-by: zhouchuangao <zhouchuangao@vivo.com>
---
 kernel/module.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Patch
diff mbox series

diff --git a/kernel/module.c b/kernel/module.c
index 3047935..f46fc4f 100644
--- a/kernel/module.c
+++ b/kernel/module.c
@@ -1014,8 +1014,8 @@  void __symbol_put(const char *symbol)
 	};
 
 	preempt_disable();
-	if (!find_symbol(&fsa))
-		BUG();
+	BUG_ON(!find_symbol(&fsa));
+
 	module_put(fsa.owner);
 	preempt_enable();
 }