On 07/18/2017 09:39 AM, Dmitry V. Levin wrote:
On Tue, Jul 18, 2017 at 09:31:49AM -0400, Carlos O'Donell wrote:
On 07/18/2017 06:20 AM, Dmitry V. Levin wrote:
Mark Wielaard has spotted [1] a regression that I missed during review.
After this change, this test case fails to compile with the following
diagnostics:
$ gcc -c -xc -o/dev/null - <<'EOF'
#include <asm/ptrace.h>
#include <sys/ptrace.h>
EOF
This is a linux/glibc header coordination issue.
Not really, this is a new issue since glibc-2.25.
It is both a new issue and a header coordination issue, the two are not
mutually exclusive.
https://sourceware.org/glibc/wiki/Synchronizing_Headers
This project doesn't appear to be alive, unfortunately.
The project is alive. We are the project. We need to send patches upstream
to the Linux kernel to keep fixing inclusion ordering issues where we need
them fixed.
When 2.27 opens I have a pile of header inclusion ordering fixes I want to
propose along with tests for them, but I haven't had a chance to submit. So
we can discuss this in a few weeks.
The following change fixes this and similar compilation issues that arise
when sys/ptrace.h is included after linux/ptrace.h:
This is a known conflict, and needs to be fixed properly using libc-compat.h
on the kernel side and the appropriate defines on the glibc side.
No, there was no conflict between asm/ptrace.h and sys/ptrace.h on s390
in glibc-2.25, and we should avoid introducing new conflicts.
I have not verified that inclusion worked on both orders, if it did, then
this is indeed a regression.