lkml.org 
[lkml]   [2019]   [Dec]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[RFC PATCH v6 7/7] x86/unwind/orc: remove run-time ORC unwind tables sort
    Date
    The orc_unwind and orc_unwind_ip tables are sorted in vmlinux link phase
    at build time, just remove the run-time sort.

    Signed-off-by: Shile Zhang <shile.zhang@linux.alibaba.com>
    Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
    ---
    arch/x86/kernel/unwind_orc.c | 8 +++++---
    scripts/link-vmlinux.sh | 5 ++++-
    2 files changed, 9 insertions(+), 4 deletions(-)

    diff --git a/arch/x86/kernel/unwind_orc.c b/arch/x86/kernel/unwind_orc.c
    index 332ae6530fa8..280da6fa9922 100644
    --- a/arch/x86/kernel/unwind_orc.c
    +++ b/arch/x86/kernel/unwind_orc.c
    @@ -273,9 +273,11 @@ void __init unwind_init(void)
    return;
    }

    - /* Sort the .orc_unwind and .orc_unwind_ip tables: */
    - sort(__start_orc_unwind_ip, num_entries, sizeof(int), orc_sort_cmp,
    - orc_sort_swap);
    + /*
    + * Note, orc_unwind and orc_unwind_ip tables has been sorted in
    + * vmlinux link phase by sorttable tool at build time.
    + * Its ready for binary search now.
    + */

    /* Initialize the fast lookup table: */
    lookup_num_blocks = orc_lookup_end - orc_lookup;
    diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh
    index 01978d1e4c13..f0f08e2bbcd5 100755
    --- a/scripts/link-vmlinux.sh
    +++ b/scripts/link-vmlinux.sh
    @@ -300,7 +300,10 @@ vmlinux_link vmlinux "${kallsymso}" ${btf_vmlinux_bin_o}

    if [ -n "${CONFIG_BUILDTIME_TABLE_SORT}" ]; then
    info SORTTAB vmlinux
    - sorttable vmlinux
    + if ! sorttable vmlinux; then
    + echo >&2 Failed to sort kernel tables
    + exit 1
    + fi
    fi

    info SYSMAP System.map
    --
    2.24.0.rc2
    \
     
     \ /
      Last update: 2019-12-04 01:47    [W:2.205 / U:0.796 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site