[PATCH] objtool: check: Fix NULL pointer dereference

From: Gustavo A. R. Silva
Date: Mon Mar 30 2020 - 20:17:00 EST


In case func is null, there is a null pointer dereference at 2029:

2029 WARN("%s uses BP as a scratch register",
2030 func->name);

Fix this by null-checking func.

Addresses-Coverity-ID: 1492002 ("Dereference after null check")
Fixes: c705cecc8431 ("objtool: Track original function across branches")
Signed-off-by: Gustavo A. R. Silva <gustavo@xxxxxxxxxxxxxx>
---
tools/objtool/check.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/objtool/check.c b/tools/objtool/check.c
index e3bb76358148..182cc48fa892 100644
--- a/tools/objtool/check.c
+++ b/tools/objtool/check.c
@@ -2025,7 +2025,7 @@ static int validate_return(struct symbol *func, struct instruction *insn, struct
return 1;
}

- if (state->bp_scratch) {
+ if (func && state->bp_scratch) {
WARN("%s uses BP as a scratch register",
func->name);
return 1;
--
2.26.0