Commit 9d907f1a authored by Josh Poimboeuf's avatar Josh Poimboeuf
Browse files

samples/ftrace: Fix asm function ELF annotations



Enable objtool coverage for the sample ftrace modules by adding ELF
annotations to the asm trampoline functions.

  samples/ftrace/ftrace-direct.o: warning: objtool: .text+0x0: unreachable instruction
  samples/ftrace/ftrace-direct-modify.o: warning: objtool: .text+0x0: unreachable instruction
  samples/ftrace/ftrace-direct-too.o: warning: objtool: .text+0x0: unreachable instruction

Reported-by: default avatarRandy Dunlap <rdunlap@infradead.org>
Signed-off-by: default avatarJosh Poimboeuf <jpoimboe@redhat.com>
parent 7c0577f4
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -20,18 +20,22 @@ static unsigned long my_ip = (unsigned long)schedule;

asm (
"	.pushsection    .text, \"ax\", @progbits\n"
"	.type		my_tramp1, @function\n"
"   my_tramp1:"
"	pushq %rbp\n"
"	movq %rsp, %rbp\n"
"	call my_direct_func1\n"
"	leave\n"
"	.size		my_tramp1, .-my_tramp1\n"
"	ret\n"
"	.type		my_tramp2, @function\n"
"   my_tramp2:"
"	pushq %rbp\n"
"	movq %rsp, %rbp\n"
"	call my_direct_func2\n"
"	leave\n"
"	ret\n"
"	.size		my_tramp2, .-my_tramp2\n"
"	.popsection\n"
);

+2 −0
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@ extern void my_tramp(void *);

asm (
"	.pushsection    .text, \"ax\", @progbits\n"
"	.type		my_tramp, @function\n"
"   my_tramp:"
"	pushq %rbp\n"
"	movq %rsp, %rbp\n"
@@ -27,6 +28,7 @@ asm (
"	popq %rdi\n"
"	leave\n"
"	ret\n"
"	.size		my_tramp, .-my_tramp\n"
"	.popsection\n"
);

+2 −0
Original line number Diff line number Diff line
@@ -13,6 +13,7 @@ extern void my_tramp(void *);

asm (
"	.pushsection    .text, \"ax\", @progbits\n"
"	.type		my_tramp, @function\n"
"   my_tramp:"
"	pushq %rbp\n"
"	movq %rsp, %rbp\n"
@@ -21,6 +22,7 @@ asm (
"	popq %rdi\n"
"	leave\n"
"	ret\n"
"	.size		my_tramp, .-my_tramp\n"
"	.popsection\n"
);