[PATCH] signal: Use correct type for si_band in siginfo_t [BZ #23562]

Adhemerval Zanella adhemerval.zanella@linaro.org
Mon Oct 22 19:53:00 GMT 2018



On 22/10/2018 12:07, Joseph Myers wrote:
> This has broken the conform/ tests for SPARC, so that you now get:
> 
> FAIL: conform/POSIX2008/signal.h/conform
> FAIL: conform/POSIX2008/sys/wait.h/conform
> FAIL: conform/UNIX98/signal.h/conform
> FAIL: conform/UNIX98/sys/wait.h/conform
> FAIL: conform/XOPEN2K/signal.h/conform
> FAIL: conform/XOPEN2K/sys/wait.h/conform
> FAIL: conform/XOPEN2K8/signal.h/conform
> FAIL: conform/XOPEN2K8/sys/wait.h/conform
> FAIL: conform/XPG42/signal.h/conform
> FAIL: conform/XPG42/sys/wait.h/conform
> 
> because si_band no longer has the POSIX-specified type.
> 
> For 32-bit SPARC you should be able to use long int and so avoid the 
> failures, as that won't change the layout.  For 64-bit SPARC this would be 
> a case where the kernel having the wrong type means you need an 
> appropriately conditioned and commented XFAIL in signal.h-data and 
> sys/wait.h-data (and appropriately conditioned and commented 
> conformtest-xfail-conds definition in a relevant sysdeps Makefile to 
> define the condition that's used in the conform/ data changes).
> 

I think we should XFAIL for both 32-bit and 64-bit, siginfo_t is passed
directly by kernel in signal handlers and passed unmodified on sigtimedwait,
sigwait, and sigwaitinfo syscalls.



More information about the Libc-alpha mailing list