lkml.org 
[lkml]   [2010]   [Sep]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: disabling group leader perf_event
    From
    2010/9/8 Paul Mackerras <paulus@samba.org>:
    >> We start with trivial (and useless) special case of something like:
    >>
    >> #define MAX_BYTECODE_SIZE 256
    >>
    >> int x86_bytecode_verify(char *opcodes, unsigned int len)
    >> {
    >>
    >>       if (len-1 > MAX_BYTECODE_SIZE-1)
    >>               return -EINVAL;
    >>
    >>       if (opcodes[0] != 0xc3) /* RET instruction */
    >>               return -EINVAL;
    >>
    >>       return 0;
    >> }
    >>
    >> ... and then we add checks for accepted/safe x86 patterns of
    >> instructions step by step - always keeping it 100% correct.
    >
    > So... I would be interested to see you add the case for the MOV
    > instruction. :)

    Heh, which one of them - there are tons of variants under 'mov' on
    x86? On a more serious note: the biggest problem is that you need to
    do verification during execution because you don't know the exact
    address until then for most addressing modes that use registers.

    Pekka
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2010-09-08 08:19    [W:0.022 / U:0.756 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site