2019-06-19 11:39:35

by jinho lim

[permalink] [raw]
Subject: [PATCH] arm64: remove useless condition

dump_instr function checks user_mode internally.

Signed-off-by: jinho lim <[email protected]>
---
arch/arm64/kernel/traps.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/arch/arm64/kernel/traps.c b/arch/arm64/kernel/traps.c
index ccc13b45d9b1..694e78b950ca 100644
--- a/arch/arm64/kernel/traps.c
+++ b/arch/arm64/kernel/traps.c
@@ -182,8 +182,7 @@ static int __die(const char *str, int err, struct pt_regs *regs)
print_modules();
show_regs(regs);

- if (!user_mode(regs))
- dump_instr(KERN_EMERG, regs);
+ dump_instr(KERN_EMERG, regs);

return ret;
}
--
2.13.0


2019-06-19 12:19:38

by Will Deacon

[permalink] [raw]
Subject: Re: [PATCH] arm64: remove useless condition

On Wed, Jun 19, 2019 at 08:38:57PM +0900, jinho lim wrote:
> dump_instr function checks user_mode internally.
>
> Signed-off-by: jinho lim <[email protected]>
> ---
> arch/arm64/kernel/traps.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/arch/arm64/kernel/traps.c b/arch/arm64/kernel/traps.c
> index ccc13b45d9b1..694e78b950ca 100644
> --- a/arch/arm64/kernel/traps.c
> +++ b/arch/arm64/kernel/traps.c
> @@ -182,8 +182,7 @@ static int __die(const char *str, int err, struct pt_regs *regs)
> print_modules();
> show_regs(regs);
>
> - if (!user_mode(regs))
> - dump_instr(KERN_EMERG, regs);
> + dump_instr(KERN_EMERG, regs);

I don't think this is right, because it means we'll now dump the current
user instruction on the die() path.

Instead, we should probably rename dump_instr to dump_kernel_instr(),
and have it return immediately if user_mode(regs). We can also kill
__dump_instr completely.

Will