This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug nptl/20965] New: x86_64: call/push/pop is invalid in inline assembly


https://sourceware.org/bugzilla/show_bug.cgi?id=20965

            Bug ID: 20965
           Summary: x86_64: call/push/pop is invalid in inline assembly
           Product: glibc
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: nptl
          Assignee: unassigned at sourceware dot org
          Reporter: fweimer at redhat dot com
                CC: drepper.fsp at gmail dot com
  Target Milestone: ---
             Flags: security-

Due to the red zone, it is currently not possible to write below the stack
without moving it below the red zone first.

I only found call instructions in inline assembly:

x86_64/lowlevellock.h:      "3:\tcallq __lll_lock_wait_private\n"
x86_64/lowlevellock.h:      "3:\tcallq __lll_lock_wait\n"
x86_64/lowlevellock.h: "3:\tcallq __lll_robust_lock_wait\n"
x86_64/lowlevellock.h:    "3:\tcallq __lll_lock_wait\n"
x86_64/lowlevellock.h: "3:\tcallq __lll_robust_lock_wait\n"
x86_64/lowlevellock.h:  "3:\tcallq __lll_timedlock_wait\n"
x86_64/lowlevellock.h:  "3:\tcallq __lll_robust_timedlock_wait\n"
x86_64/lowlevellock.h:      "3:\tcallq __lll_unlock_wake_private\n
x86_64/lowlevellock.h:      "3:\tcallq __lll_unlock_wake\n"
x86_64/lowlevellock.h:   "3:\tcallq __lll_unlock_wake\n"

x86_64/nptl/tls.h:                 "callq *%%fs:%P1" \
x86_64/x32/nptl/tls.h:             "callq *%q0" \

This may not be a problem today, but could change with changes in the GCC
optimizers.

Relevant gcc-help thread:

  <https://gcc.gnu.org/ml/gcc-help/2016-12/msg00056.html>

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]