lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAAhV-H5oVTpGiW6T8dMSiGVe8KtAtUt2Q2sb5nEwc9PUJyqUnw@mail.gmail.com>
Date:   Tue, 27 Sep 2022 13:03:01 +0800
From:   Huacai Chen <chenhuacai@...nel.org>
To:     Jun Yi <yijun@...ngson.cn>
Cc:     Guo Ren <guoren@...nel.org>, WANG Xuerui <kernel@...0n.name>,
        Tiezhu Yang <yangtiezhu@...ngson.cn>,
        Jiaxun Yang <jiaxun.yang@...goat.com>,
        Qing Zhang <zhangqing@...ngson.cn>,
        Mao Bibo <maobibo@...ngson.cn>,
        Jianmin Lv <lvjianmin@...ngson.cn>, loongarch@...ts.linux.dev,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3] LoongArch: Fixup do_ri csr_era

Hi, all,

I clean up do_ri() further based on this patch [1], thanks.

[1] https://lore.kernel.org/loongarch/20220927045820.2770062-1-chenhuacai@loongson.cn/T/#u


On Tue, Sep 27, 2022 at 11:10 AM Jun Yi <yijun@...ngson.cn> wrote:
>
> do_ri is porting from mips, mipsr6 use do_ri to emulate some fp
> instructions, but Loongarch do not need to emulate these instructions.
>
> And the regs->csr_era be always recovered to ths old_era =
> regs->csr_era, so the compute_return_era is useless.
>
> On 9/27/22 07:41, Guo Ren wrote:
> > On Mon, Sep 26, 2022 at 8:27 PM Jun Yi <yijun@...ngson.cn> wrote:
> >>
> >> csr_era of pt_regs in do_ri should not add 4 to point to the
> >> next instruction.
> > The comment does not make sense. I think it wants to skip some
> > instructions, but your patch broke that.
> >
> >>
> >> Signed-off-by: Jun Yi <yijun@...ngson.cn>
> >> ---
> >>   arch/loongarch/kernel/traps.c | 2 --
> >>   1 file changed, 2 deletions(-)
> >>
> >> diff --git a/arch/loongarch/kernel/traps.c b/arch/loongarch/kernel/traps.c
> >> index aa1c95aaf595..ec888eda3d45 100644
> >> --- a/arch/loongarch/kernel/traps.c
> >> +++ b/arch/loongarch/kernel/traps.c
> >> @@ -477,8 +477,6 @@ asmlinkage void noinstr do_ri(struct pt_regs *regs)
> >>
> >>          die_if_kernel("Reserved instruction in kernel code", regs);
> >>
> >> -       compute_return_era(regs);
> >> -
> >>          if (unlikely(get_user(opcode, era) < 0)) {
> >>                  status = SIGSEGV;
> >>                  current->thread.error_code = 1;
> >> --
> >> 2.31.1
> >>
> >
> >
>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ