git-xstate
authorGNU Libc Maintainers <debian-glibc@lists.debian.org>
Sat, 17 May 2025 15:15:43 +0000 (17:15 +0200)
committerAurelien Jarno <aurel32@debian.org>
Sat, 17 May 2025 15:15:43 +0000 (17:15 +0200)
commit46189bafc7482f6c7a3c8f84cfb27fa3465f202e
tree83445db6276ff1fe640358304f446bbfb2d54fdd
parentbed8219c7e95c7ae31c0beab64dbec05d9b2f3aa
git-xstate

commit 6d6a6e2dd2133908e3f5cb8a2ed817ccb2a0bb06
Author: Luca Dariz <luca@orpolo.org>
Date:   Wed Mar 19 18:11:18 2025 +0100

    hurd: save xstate during signal handling

    * hurd/Makefile: add new tests
    * hurd/test-sig-rpc-interrupted.c: check xstate save and restore in
      the case where a signal is delivered to a thread which is waiting
      for an rpc. This test implements the rpc interruption protocol used
      by the hurd servers. It was so far passing on Debian thanks to the
      local-intr-msg-clobber.diff patch, which is now obsolete.
    * hurd/test-sig-xstate.c: check xstate save and restore in the case
      where a signal is delivered to a running thread, making sure that
      the xstate is modified in the signal handler.
    * hurd/test-xstate.h: add helpers to test xstate
    * sysdeps/mach/hurd/i386/bits/sigcontext.h: add xstate to the
      sigcontext structure.
    + sysdeps/mach/hurd/i386/sigreturn.c: restore xstate from the saved
      context
    * sysdeps/mach/hurd/x86/trampoline.c: save xstate if
      supported. Otherwise we fall back to the previous behaviour of
      ignoring xstate.
    * sysdeps/mach/hurd/x86_64/bits/sigcontext.h: add xstate to the
      sigcontext structure.
    * sysdeps/mach/hurd/x86_64/sigreturn.c: restore xstate from the saved
      context

Signed-off-by: Luca Dariz <luca@orpolo.org>
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
    Message-ID: <20250319171118.142163-1-luca@orpolo.org>

Gbp-Pq: Topic hurd-i386
Gbp-Pq: Name git-xstate.diff
hurd/Makefile
hurd/test-sig-rpc-interrupted.c [new file with mode: 0644]
hurd/test-sig-xstate.c [new file with mode: 0644]
hurd/test-xstate.h [new file with mode: 0644]
sysdeps/mach/hurd/i386/bits/sigcontext.h
sysdeps/mach/hurd/i386/sigreturn.c
sysdeps/mach/hurd/x86/trampoline.c
sysdeps/mach/hurd/x86_64/bits/sigcontext.h
sysdeps/mach/hurd/x86_64/sigreturn.c