This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] S/390: xfail test POSIX/signal.h
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: Stefan Liebler <stli at linux dot vnet dot ibm dot com>
- Cc: <libc-alpha at sourceware dot org>
- Date: Fri, 14 Mar 2014 14:30:08 +0000
- Subject: Re: [PATCH] S/390: xfail test POSIX/signal.h
- Authentication-results: sourceware.org; auth=none
- References: <lfuu4d$uam$2 at ger dot gmane dot org>
On Fri, 14 Mar 2014, Stefan Liebler wrote:
> Hi,
>
> on S390x the conformance test conform/POSIX/signal.h/conform.out is failing,
> due to incorrect type.
> The member sa_flags in struct sigaction on s390x is defined
> as unsigned long instead of int due to the kernel struct.
> On other platforms, sa_flags is also unsigned long: ia64, sparc, hppa.
If you need to XFAIL such a test on an architecture-specific basis, the
XFAIL should have a comment explaining why the test is expected to fail.
However, in this case I don't see the need to XFAIL it. As far as I can
tell, the upper bits of sa_flags aren't actually assigned. So you should
be able to change the structure so that sa_flags is int, with an adjacent
padding field. This would mean random padding is passed to the kernel in
what the kernel thinks is the high part of the field, so you should either
get kernel agreement that this is OK, or make glibc's sigaction
implementation copy the structure and zero the padding.
(Again, file a bug in glibc Bugzilla before fixing it.)
--
Joseph S. Myers
joseph@codesourcery.com