mm/memory.c & ptrace.c

Emmanuel Tychon (
Wed, 21 May 1997 21:23:29 +0200 (MET DST)

Each time i try to compile 2.1.38, and 2.1.39, i got this error:

make[1]: Entering directory `/usr/src/linux-2.1/arch/i386/kernel'
gcc -D__KERNEL__ -I/usr/src/linux-2.1/include -Wall -Wstrict-prototypes -O2
-fomit-frame-pointer -D__SMP__ -pipe -fno-strength-reduce -m486 -malign-loops=2
-malign-jumps=2 -malign-functions=2 -DCPU=586 -D__SMP__ -c -o ptrace.o ptrace.c
ptrace.c: In function `get_long':
ptrace.c:86: warning: passing arg 1 of `handle_mm_fault' from incompatible
pointer type
ptrace.c:86: warning: passing arg 2 of `handle_mm_fault' makes integer from
pointer without a cast
ptrace.c:86: too many arguments to function `handle_mm_fault'

I check in the code, and found in mm/memory.c the function:

void handle_mm_fault(struct vm_area_struct * vma, unsigned long address,
int write_access)

which takes 3 arguemnts. But, in arch/i386/kernel/ptrace.c, i see a call to
this function:

handle_mm_fault(tsk, vma, addr, 0);

Witch gives 4 argument. If i delete the "tsk" argument in all the calls, it
works. I'm probably stupid, but i can't understand why some peoples can
complete de compilation whithout any modification in the kernel source code>.


       |||      |  Emmanuel Tychon,
       O-O      |  <>
       (_)      |  
   oOO-----OOo  |  Don't be assimilated, use Linux!
    | Linux |   |  
    \-------/   |  This email is powered by Linux 2.0.30