2.2.20-pre11 fails to compile (still)

Bruce Harada (bruce@ask.ne.jp)
Mon, 29 Oct 2001 06:39:06 +0900


I sent a similar report to the list earlier. I've had some more time to look at
the problem myself, but 2.2.20-pre11 still fails to compile for me, as it stops
in the changes in process.c, signal.c and traps.c. Examples of the errors are:

-------
make[1]: Entering directory `/usr/src/linux-2.2.20/arch/i386/kernel'
cc -D__KERNEL__ -I/usr/src/linux-2.2.20/include -Wall -Wstrict-prototypes -O2
-fomit-frame-pointer -pipe -fno-strength-reduce -m486 -malign-loops=2
-malign-jumps=2 -malign-functions=2 -DCPU=586 -c -o process.o process.c
process.c: In function `sys_execve':
process.c:812: structure has no member named `ptrace'
process.c:812: `PT_DTRACE' undeclared (first use this function)
process.c:812: (Each undeclared identifier is reported only once
process.c:812: for each function it appears in.)
make[1]: *** [process.o] Error 1
make[1]: Leaving directory `/usr/src/linux-2.2.20/arch/i386/kernel'
make: *** [_dir_arch/i386/kernel] Error 2
-------

I reverted the change:

- current->flags &= ~PF_DTRACE;
+ current->ptrace &= ~PT_DTRACE;

and process.c then compiled. However, signals.c then hit a problem with the
following change:

- if ((current->flags & PF_PTRACED) && signr != SIGKILL) {
+ if ((current->ptrace & PT_PTRACED) && signr != SIGKILL) {

After reverting that, the compile then stops in traps.c:

-------
cc -D__KERNEL__ -I/usr/src/linux-2.2.20/include -Wall -Wstrict-prototypes -O2
-fomit-frame-pointer -pipe -fno-strength-reduce -m486 -malign-loops=2
-malign-jumps=2 -malign-functions=2 -DCPU=586 -c -o traps.o traps.c
traps.c: In function `do_debug':
traps.c:383: structure has no member named `ptrace'
traps.c:383: `PT_DTRACE' undeclared (first use this function)
traps.c:383: (Each undeclared identifier is reported only once
traps.c:383: for each function it appears in.)
traps.c:383: `PT_PTRACED' undeclared (first use this function)
make[1]: *** [traps.o] Error 1
make[1]: Leaving directory `/usr/src/linux-2.2.20/arch/i386/kernel'
make: *** [_dir_arch/i386/kernel] Error 2
-------

I believe these changes are related to the SUID ptrace fixes, but why am I
missing the definitions for these symbols? I can keep on reverting the changes
to get it compiled, but I'd rather figure out what's going wrong.
The system is an old Slackware 3.6 box with libc5 (ver 5.4.46).

Bruce
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/