lkml.org 
[lkml]   [2015]   [Jul]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v8 15/21] x86/asm/crypto: Move jump_table to .rodata section
    Date
    stackvalidate reports the following warning:

    stackvalidate: arch/x86/crypto/crc32c-pcl-intel-asm_64.o: crc_pcl()+0x11dd: can't decode instruction

    It gets confused when trying to decode jump_table data. Move jump_table
    to the .rodata section which is a more appropriate home for read-only
    data.

    Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
    ---
    arch/x86/crypto/crc32c-pcl-intel-asm_64.S | 8 ++++----
    1 file changed, 4 insertions(+), 4 deletions(-)

    diff --git a/arch/x86/crypto/crc32c-pcl-intel-asm_64.S b/arch/x86/crypto/crc32c-pcl-intel-asm_64.S
    index 225be06..dc05f01 100644
    --- a/arch/x86/crypto/crc32c-pcl-intel-asm_64.S
    +++ b/arch/x86/crypto/crc32c-pcl-intel-asm_64.S
    @@ -170,8 +170,8 @@ continue_block:
    ## branch into array
    lea jump_table(%rip), bufp
    movzxw (bufp, %rax, 2), len
    - offset=crc_array-jump_table
    - lea offset(bufp, len, 1), bufp
    + lea crc_array(%rip), bufp
    + lea (bufp, len, 1), bufp
    jmp *bufp

    ################################################################
    @@ -310,7 +310,9 @@ do_return:
    popq %rdi
    popq %rbx
    ret
    +ENDPROC(crc_pcl)

    +.section .rodata, "a", %progbits
    ################################################################
    ## jump table Table is 129 entries x 2 bytes each
    ################################################################
    @@ -324,13 +326,11 @@ JMPTBL_ENTRY %i
    i=i+1
    .endr

    -ENDPROC(crc_pcl)

    ################################################################
    ## PCLMULQDQ tables
    ## Table is 128 entries x 2 words (8 bytes) each
    ################################################################
    -.section .rotata, "a", %progbits
    .align 8
    K_table:
    .long 0x493c7d27, 0x00000001
    --
    2.1.0


    \
     
     \ /
      Last update: 2015-07-28 17:01    [W:4.129 / U:1.396 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site