[libcxx-commits] [PATCH] D136667: Check return address stored in normal stack and CET shadow stack in unwind process phase2
    xiongji90 via Phabricator via libcxx-commits 
    libcxx-commits at lists.llvm.org
       
    Tue Nov  1 01:58:15 PDT 2022
    
    
  
xiongji90 added a comment.
Hi, @MaskRay 
Unnecessary check in forced unwind is removed. This patch is to align with libgcc's behavior in stack unwinding process on CET enabled platform. libgcc added check in stacking unwinding phase2, we need to go through the stacks to count how many stack frames to skip when CET is enabled and we can enhance security by comparing return addr in normal stack against CET shadow stack at the same time. If return addr in the 2 stacks don't match, it means the normal stack has been corrupted by someone and we can report fatal error in advance.
Thanks very much.
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D136667/new/
https://reviews.llvm.org/D136667
    
    
More information about the libcxx-commits
mailing list