• Heiko Carstens's avatar
    s390/disassembler: add missing end marker for e7 table · 5c505387
    Heiko Carstens authored
    The e7 opcode table does not have an end marker. Hence when trying to
    find an unknown e7 instruction the code will access memory behind the
    table until it finds something that matches the opcode, or the kernel
    crashes, whatever comes first.
    
    This affects not only the in-kernel disassembler but also uprobes and
    kprobes which refuse to set a probe on unknown instructions, and
    therefore search the opcode tables to figure out if instructions are
    known or not.
    
    Cc: <stable@vger.kernel.org> # v3.18+
    Fixes: 3585cb02 ("s390/disassembler: add vector instructions")
    Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
    Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
    5c505387
dis.c 67.1 KB