• D
    x86, um: actually mark system call tables readonly · b485342b
    Daniel Borkmann 提交于
    Commit a074335a ("x86, um: Mark system call tables readonly") was
    supposed to mark the sys_call_table in UML as RO by adding the const,
    but it doesn't have the desired effect as it's nevertheless being placed
    into the data section since __cacheline_aligned enforces sys_call_table
    being placed into .data..cacheline_aligned instead. We need to use
    the ____cacheline_aligned version instead to fix this issue.
    
    Before:
    
    $ nm -v arch/x86/um/sys_call_table_64.o | grep -1 "sys_call_table"
                     U sys_writev
    0000000000000000 D sys_call_table
    0000000000000000 D syscall_table_size
    
    After:
    
    $ nm -v arch/x86/um/sys_call_table_64.o | grep -1 "sys_call_table"
                     U sys_writev
    0000000000000000 R sys_call_table
    0000000000000000 D syscall_table_size
    
    Fixes: a074335a ("x86, um: Mark system call tables readonly")
    Cc: H. Peter Anvin <hpa@zytor.com>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: NDaniel Borkmann <dborkman@redhat.com>
    Signed-off-by: NRichard Weinberger <richard@nod.at>
    b485342b
sys_call_table_32.c 1.1 KB