Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Fri, 30 Dec 2016 17:26:57 -0500
From: Rich Felker <>
Subject: Re: PowerPC bits/user.h defining struct pt_regs

On Fri, Dec 30, 2016 at 01:04:45AM -0600, A. Wilcox wrote:
> Hash: SHA256
> While trying to compile packages on PowerPC that use the ptrace kernel
> interface - including gdb, psmisc, strace, systemtap, and other
> packages - we are always receiving this error:
> make[1]: Leaving directory
> '/usr/src/sys-process/psmisc-22.21-r3/work/psmisc-22.21'
> cd .. && make  am--refresh
> cd .. && make  am--refresh
> gcc -DHAVE_CONFIG_H -I. -I..    -Wall
> - -DLOCALEDIR=\"/usr/share/locale\"   -DPPC    -O2 -mlong-double-64
> - -ggdb -mcpu=G3 -fno-omit-frame-pointer -c -o peekfd.o peekfd.c
> In file included from /usr/include/sys/user.h:11:0,
>                  from peekfd.c:33:
> /usr/include/bits/user.h:1:8: error: redefinition of 'struct pt_regs'
>  struct pt_regs {
>         ^
> In file included from peekfd.c:30:0:
> /usr/include/asm/ptrace.h:31:8: note: originally defined here
>  struct pt_regs {
>         ^
> Removing the struct definition from bits/user.h fixes this error, but
> I'm not entirely sure when pt_regs should be visible.

This was discussed before but I don't remember the outcome. user.h
needs to provide struct pt_regs on powerpc, because struct user
includes members with that type.

It's possible that the right solution will end up being removal of
user.h from musl and providing it in a separate package that depends
on kernel headers, at least for some archs.

> Any help solving this issue, especially before 1.1.16 is cut, would be
> greatly helpful in getting a viable PowerPC environment for user
> enjoyment. :)

I don't think it's a problem that has a short-term solution. :(


Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.