objtool: Exclude __tracepoints data from ENDBR checks

Peter Zijlstra posted 1 patch 2 weeks, 1 day ago
tools/objtool/check.c |    1 +
1 file changed, 1 insertion(+)
objtool: Exclude __tracepoints data from ENDBR checks
Posted by Peter Zijlstra 2 weeks, 1 day ago

For some, as of yet unexplained reason, Clang-19, but not GCC,
generates and endless stream of:

drivers/iio/imu/bno055/bno055_ser.o: warning: objtool: __tracepoint_send_chunk+0x20: data relocation to !ENDBR: __SCT__tp_func_send_chunk+0x0
drivers/iio/imu/bno055/bno055_ser.o: warning: objtool: __tracepoint_cmd_retry+0x20: data relocation to !ENDBR: __SCT__tp_func_cmd_retry+0x0
drivers/iio/imu/bno055/bno055_ser.o: warning: objtool: __tracepoint_write_reg+0x20: data relocation to !ENDBR: __SCT__tp_func_write_reg+0x0
drivers/iio/imu/bno055/bno055_ser.o: warning: objtool: __tracepoint_read_reg+0x20: data relocation to !ENDBR: __SCT__tp_func_read_reg+0x0
drivers/iio/imu/bno055/bno055_ser.o: warning: objtool: __tracepoint_recv+0x20: data relocation to !ENDBR: __SCT__tp_func_recv+0x0

Which is entirely correct, but harmless. Add the __tracepoints section
to the exclusion list.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
---
 tools/objtool/check.c |    1 +
 1 file changed, 1 insertion(+)

--- a/tools/objtool/check.c
+++ b/tools/objtool/check.c
@@ -4573,6 +4573,7 @@ static int validate_ibt(struct objtool_f
 		    !strcmp(sec->name, "__jump_table")			||
 		    !strcmp(sec->name, "__mcount_loc")			||
 		    !strcmp(sec->name, ".kcfi_traps")			||
+		    !strcmp(sec->name, "__tracepoints")			||
 		    strstr(sec->name, "__patchable_function_entries"))
 			continue;
[tip: objtool/core] objtool: Exclude __tracepoints data from ENDBR checks
Posted by tip-bot2 for Peter Zijlstra 1 week, 5 days ago
The following commit has been merged into the objtool/core branch of tip:

Commit-ID:     d5173f7537505315557d8580e3a648f07f17deda
Gitweb:        https://git.kernel.org/tip/d5173f7537505315557d8580e3a648f07f17deda
Author:        Peter Zijlstra <peterz@infradead.org>
AuthorDate:    Fri, 08 Nov 2024 10:32:02 +01:00
Committer:     Peter Zijlstra <peterz@infradead.org>
CommitterDate: Mon, 11 Nov 2024 11:49:42 +01:00

objtool: Exclude __tracepoints data from ENDBR checks

For some, as of yet unexplained reason, Clang-19, but not GCC,
generates and endless stream of:

drivers/iio/imu/bno055/bno055_ser.o: warning: objtool: __tracepoint_send_chunk+0x20: data relocation to !ENDBR: __SCT__tp_func_send_chunk+0x0
drivers/iio/imu/bno055/bno055_ser.o: warning: objtool: __tracepoint_cmd_retry+0x20: data relocation to !ENDBR: __SCT__tp_func_cmd_retry+0x0
drivers/iio/imu/bno055/bno055_ser.o: warning: objtool: __tracepoint_write_reg+0x20: data relocation to !ENDBR: __SCT__tp_func_write_reg+0x0
drivers/iio/imu/bno055/bno055_ser.o: warning: objtool: __tracepoint_read_reg+0x20: data relocation to !ENDBR: __SCT__tp_func_read_reg+0x0
drivers/iio/imu/bno055/bno055_ser.o: warning: objtool: __tracepoint_recv+0x20: data relocation to !ENDBR: __SCT__tp_func_recv+0x0

Which is entirely correct, but harmless. Add the __tracepoints section
to the exclusion list.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20241108184618.GG38786@noisy.programming.kicks-ass.net
---
 tools/objtool/check.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tools/objtool/check.c b/tools/objtool/check.c
index 7fc96c3..f7586f8 100644
--- a/tools/objtool/check.c
+++ b/tools/objtool/check.c
@@ -4573,6 +4573,7 @@ static int validate_ibt(struct objtool_file *file)
 		    !strcmp(sec->name, "__jump_table")			||
 		    !strcmp(sec->name, "__mcount_loc")			||
 		    !strcmp(sec->name, ".kcfi_traps")			||
+		    !strcmp(sec->name, "__tracepoints")			||
 		    strstr(sec->name, "__patchable_function_entries"))
 			continue;
Re: [tip: objtool/core] objtool: Exclude __tracepoints data from ENDBR checks
Posted by Huang, Kai 1 week, 5 days ago
On Mon, 2024-11-11 at 10:59 +0000, tip-bot2 for Peter Zijlstra wrote:
> The following commit has been merged into the objtool/core branch of tip:
> 
> Commit-ID:     d5173f7537505315557d8580e3a648f07f17deda
> Gitweb:        https://git.kernel.org/tip/d5173f7537505315557d8580e3a648f07f17deda
> Author:        Peter Zijlstra <peterz@infradead.org>
> AuthorDate:    Fri, 08 Nov 2024 10:32:02 +01:00
> Committer:     Peter Zijlstra <peterz@infradead.org>
> CommitterDate: Mon, 11 Nov 2024 11:49:42 +01:00
> 
> objtool: Exclude __tracepoints data from ENDBR checks
> 
> For some, as of yet unexplained reason, Clang-19, but not GCC,
> generates and endless stream of:
	    ^
Nit:  this looks like a grammar mistake?