glibc/sysdeps/mach
Sergey Bugaev e333759f77 hurd: Fix sc_i386_thread_state layout
The real i386_thread_state Mach structure has an alignment of 8 on
x86_64. However, in struct sigcontext, the compiler was packing sc_gs
(which is the first member of sc_i386_thread_state) into the same 8-byte
slot as sc_error; this resulted in the rest of sc_i386_thread_state
members having wrong offsets relative to each other, and the overall
sc_i386_thread_state layout mismatching that of i386_thread_state.

Fix this by explicitly adding the required padding members, and
statically asserting that this results in the desired alignment.

The same goes for sc_i386_float_state.

Checked on x86_64-gnu.

Signed-off-by: Sergey Bugaev <bugaevc@gmail.com>
Message-Id: <20230515083323.1358039-4-bugaevc@gmail.com>
2023-05-16 16:09:00 +02:00
..
htl Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
hurd hurd: Fix sc_i386_thread_state layout 2023-05-16 16:09:00 +02:00
i386 Define PC, SP and SYSRETURN for hurd x86_64 2023-02-20 01:33:15 +01:00
include Define __mig_strlen to support dynamically sized strings in hurd RPCs 2023-05-01 02:24:04 +02:00
sys Installed-header hygiene (BZ#20366): obsolete BSD u_* types. 2016-09-23 08:43:56 -04:00
x86 Define PC, SP and SYSRETURN for hurd x86_64 2023-02-20 01:33:15 +01:00
x86_64 hurd: Set up the basic tree for x86_64-gnu 2023-02-12 16:12:06 +01:00
_strerror.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
adjtime.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
clock_gettime.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
clock_nanosleep.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
configure Stop checking if MiG supports retcode. 2023-05-11 01:28:34 +02:00
configure.ac Stop checking if MiG supports retcode. 2023-05-11 01:28:34 +02:00
getloadavg.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
getpagesize.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
getsysstats.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
libc-lock.h mach, hurd: Drop __libc_lock_self0 2023-04-03 01:02:44 +02:00
libmachuser.abilist hurd: add base abilist files 2018-01-28 17:26:35 +01:00
mach_rpc.h Update hurd/hurdselect.c to be more portable. 2023-05-06 23:10:55 +02:00
Makefile Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
mprotect.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
msync.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
munmap.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
pagecopy.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
readonly-area.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
sched_yield.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
sleep.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
strerror_l.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
Subdirs * Makefile (subdir-target-args): New variable. 2006-02-28 07:11:04 +00:00
sysdep.h hurd: Remove __hurd_local_reply_port 2023-04-14 10:31:22 +00:00
thread_state.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
usleep.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
xpg-strerror.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00