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] [thread-next>] [day] [month] [year] [list]
Date:   Fri, 13 Nov 2020 11:30:52 -0600
From:   Josh Poimboeuf <jpoimboe@...hat.com>
To:     Vasily Gorbik <gor@...ux.ibm.com>
Cc:     Masami Hiramatsu <mhiramat@...nel.org>,
        Peter Zijlstra <peterz@...radead.org>,
        Thomas Gleixner <tglx@...utronix.de>,
        Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
        x86@...nel.org, "H. Peter Anvin" <hpa@...or.com>,
        Miroslav Benes <mbenes@...e.cz>,
        Alexandre Chartre <alexandre.chartre@...cle.com>,
        Julien Thierry <jthierry@...hat.com>,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH] x86/insn: Fix vector instructions decoding on big endian

On Fri, Nov 13, 2020 at 05:09:54PM +0100, Vasily Gorbik wrote:
> Running instruction decoder posttest on s390 with allyesconfig shows
> errors. Instructions used in couple of kernel objects could not be
> correctly decoded on big endian system.
> 
> insn_decoder_test: warning: objdump says 6 bytes, but insn_get_length() says 5
> insn_decoder_test: warning: Found an x86 instruction decoder bug, please report this.
> insn_decoder_test: warning: ffffffff831eb4e1:    62 d1 fd 48 7f 04 24    vmovdqa64 %zmm0,(%r12)
> insn_decoder_test: warning: objdump says 7 bytes, but insn_get_length() says 6
> insn_decoder_test: warning: Found an x86 instruction decoder bug, please report this.
> insn_decoder_test: warning: ffffffff831eb4e8:    62 51 fd 48 7f 44 24 01         vmovdqa64 %zmm8,0x40(%r12)
> insn_decoder_test: warning: objdump says 8 bytes, but insn_get_length() says 6
> 
> This is because in few places instruction field bytes are set directly
> with further usage of "value". To address that introduce and use
> insn_set_byte() helper, which correctly updates "value" on big endian
> systems.
> 
> Signed-off-by: Vasily Gorbik <gor@...ux.ibm.com>
> ---
>  Please let me know if this patch is good as it is or I should squash it
>  into the patch 2 of my patch series and resend it again.

It all looks good to me, thanks!

Masami, does this patch look good, and also patches 1-2 of the series?
(I think you previously ACKed patch 2).

-- 
Josh

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ