git-xstate
authorGNU Libc Maintainers <debian-glibc@lists.debian.org>
Thu, 17 Jul 2025 11:21:32 +0000 (13:21 +0200)
committerAurelien Jarno <aurel32@debian.org>
Thu, 17 Jul 2025 11:21:32 +0000 (13:21 +0200)
commit17b6bf557bda636f8ad5d4c3da33d52c494696c8
tree98772c50738808e7201aac3dfab91f96b966d8ea
parentccf8542bd766205e406b7420058d26076dc3c9fd
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