diff options
| author | 2017-11-14 10:01:49 +0100 | |
|---|---|---|
| committer | 2017-11-14 10:01:49 +0100 | |
| commit | d4bfeabe9ff7967f4b8c24aabf2de1ce3a909cd9 (patch) | |
| tree | 6b419b8497c7d57ddec20a3558697ef36ea37b11 /tools/objtool | |
| parent | timekeeping: Eliminate the stale declaration of ktime_get_raw_and_real_ts64() (diff) | |
| parent | x86 / CPU: Avoid unnecessary IPIs in arch_freq_get_on_cpu() (diff) | |
Merge branch 'linus' into timers/urgent
Get upstream changes so dependent patches can be applied.
Diffstat (limited to 'tools/objtool')
| -rw-r--r-- | tools/objtool/check.c | 7 | ||||
| -rw-r--r-- | tools/objtool/objtool.c | 6 |
2 files changed, 7 insertions, 6 deletions
diff --git a/tools/objtool/check.c b/tools/objtool/check.c index c0e26ad1fa7e..9b341584eb1b 100644 --- a/tools/objtool/check.c +++ b/tools/objtool/check.c @@ -1757,11 +1757,14 @@ static int validate_branch(struct objtool_file *file, struct instruction *first, if (insn->dead_end) return 0; - insn = next_insn; - if (!insn) { + if (!next_insn) { + if (state.cfa.base == CFI_UNDEFINED) + return 0; WARN("%s: unexpected end of section", sec->name); return 1; } + + insn = next_insn; } return 0; diff --git a/tools/objtool/objtool.c b/tools/objtool/objtool.c index 31e0f9143840..07f329919828 100644 --- a/tools/objtool/objtool.c +++ b/tools/objtool/objtool.c @@ -70,7 +70,7 @@ static void cmd_usage(void) printf("\n"); - exit(1); + exit(129); } static void handle_options(int *argc, const char ***argv) @@ -86,9 +86,7 @@ static void handle_options(int *argc, const char ***argv) break; } else { fprintf(stderr, "Unknown option: %s\n", cmd); - fprintf(stderr, "\n Usage: %s\n", - objtool_usage_string); - exit(1); + cmd_usage(); } (*argv)++; |
