PING: [PATCH] libgcc/CET: Add _CET_ENDBR to __stack_split_initialize

H.J. Lu hjl.tools@gmail.com
Wed Apr 18 13:21:00 GMT 2018


On Thu, Apr 12, 2018 at 6:21 AM, H.J. Lu <hongjiu.lu@intel.com> wrote:
> Program received signal SIGSEGV, Segmentation fault.
> __stack_split_initialize ()
>     at /export/gnu/import/git/sources/gcc/libgcc/config/i386/morestack.S:751
> 751             leaq    -16000(%rsp),%rax       # We should have at least 16K.
> Missing separate debuginfos, use: dnf debuginfo-install libgcc-8.0.1-0.21.0.fc28.x86_64
> (gdb) disass
> Dump of assembler code for function __stack_split_initialize:
> => 0x0000000000402858 <+0>:     lea    -0x3e80(%rsp),%rax
>    0x0000000000402860 <+8>:     mov    %rax,%fs:0x70
>    0x0000000000402869 <+17>:    sub    $0x8,%rsp
>    0x000000000040286d <+21>:    mov    %rsp,%rdi
>    0x0000000000402870 <+24>:    mov    $0x3e80,%esi
>    0x0000000000402875 <+29>:    callq  0x401810 <__generic_morestack_set_initial_sp>
>    0x000000000040287a <+34>:    add    $0x8,%rsp
>    0x000000000040287e <+38>:    retq
> End of assembler dump.
> (gdb)
>
> This patch adds the missing ENDBR to __stack_split_initialize.
>
> OK for trunk?
>
> H.J.
> ---
>         PR libgcc/85379
>         * config/i386/morestack.S (__stack_split_initialize): Add
>         _CET_ENDBR.
> ---
>  libgcc/config/i386/morestack.S | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/libgcc/config/i386/morestack.S b/libgcc/config/i386/morestack.S
> index eca441a2867..99e65eaaff4 100644
> --- a/libgcc/config/i386/morestack.S
> +++ b/libgcc/config/i386/morestack.S
> @@ -730,6 +730,7 @@ __morestack_large_model:
>  #endif
>
>  __stack_split_initialize:
> +       _CET_ENDBR
>
>  #ifndef __x86_64__
>
> --
> 2.14.3
>

PING.

-- 
H.J.



More information about the Gcc-patches mailing list