diff mbox

[1/2] tools/stacktool: Add __reiserfs_panic to global_noreturns list

Message ID 1453499078-9330-2-git-send-email-chris.j.arges@canonical.com (mailing list archive)
State New, archived
Headers show

Commit Message

Chris J Arges Jan. 22, 2016, 9:44 p.m. UTC
The following false positives were noticed with stacktool:
  stacktool: fs/reiserfs/namei.o: set_de_name_and_namelen()+0x9e: return without frame pointer restore
  stacktool: fs/reiserfs/namei.o: set_de_name_and_namelen()+0x89: duplicate frame pointer save
  stacktool: fs/reiserfs/namei.o: set_de_name_and_namelen()+0x8a: duplicate frame pointer setup
  stacktool: fs/reiserfs/namei.o: set_de_name_and_namelen()+0x9e: frame pointer state mismatch
  stacktool: fs/reiserfs/namei.o: set_de_name_and_namelen()+0x0: frame pointer state mismatch

These all call into '__reiserfs_panic' which has a noreturn attribute. Add this
to the global list because this particular attribute cannot be determined from
reading the ELF object.

Signed-off-by: Chris J Arges <chris.j.arges@canonical.com>
---
 tools/stacktool/builtin-check.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Josh Poimboeuf Jan. 25, 2016, 3:04 p.m. UTC | #1
On Fri, Jan 22, 2016 at 03:44:37PM -0600, Chris J Arges wrote:
> The following false positives were noticed with stacktool:
>   stacktool: fs/reiserfs/namei.o: set_de_name_and_namelen()+0x9e: return without frame pointer restore
>   stacktool: fs/reiserfs/namei.o: set_de_name_and_namelen()+0x89: duplicate frame pointer save
>   stacktool: fs/reiserfs/namei.o: set_de_name_and_namelen()+0x8a: duplicate frame pointer setup
>   stacktool: fs/reiserfs/namei.o: set_de_name_and_namelen()+0x9e: frame pointer state mismatch
>   stacktool: fs/reiserfs/namei.o: set_de_name_and_namelen()+0x0: frame pointer state mismatch
> 
> These all call into '__reiserfs_panic' which has a noreturn attribute. Add this
> to the global list because this particular attribute cannot be determined from
> reading the ELF object.
> 
> Signed-off-by: Chris J Arges <chris.j.arges@canonical.com>

Acked-by: Josh Poimboeuf <jpoimboe@redhat.com>

> ---
>  tools/stacktool/builtin-check.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/tools/stacktool/builtin-check.c b/tools/stacktool/builtin-check.c
> index 5b0e91f..23fa93d2 100644
> --- a/tools/stacktool/builtin-check.c
> +++ b/tools/stacktool/builtin-check.c
> @@ -139,6 +139,7 @@ static bool dead_end_function(struct stacktool_file *file, struct symbol *func)
>  		"__module_put_and_exit",
>  		"complete_and_exit",
>  		"kvm_spurious_fault",
> +		"__reiserfs_panic",
>  	};
>  
>  	if (func->bind == STB_WEAK)
> -- 
> 2.5.0
>
diff mbox

Patch

diff --git a/tools/stacktool/builtin-check.c b/tools/stacktool/builtin-check.c
index 5b0e91f..23fa93d2 100644
--- a/tools/stacktool/builtin-check.c
+++ b/tools/stacktool/builtin-check.c
@@ -139,6 +139,7 @@  static bool dead_end_function(struct stacktool_file *file, struct symbol *func)
 		"__module_put_and_exit",
 		"complete_and_exit",
 		"kvm_spurious_fault",
+		"__reiserfs_panic",
 	};
 
 	if (func->bind == STB_WEAK)