2001-11-24 01:13:04

by listmail

[permalink] [raw]
Subject: Error: compiling with preempt-kernel-rml-2.4.15-1.patch

I applied the preempt-kernel-rml-2.4.15-1.patch file to a clean
just untarred 2.14.15 kernel source, and began to compile got the
following error.
I know the source is good, I compiled a non-patched Kernel from the same
archive earlier, re-extracted after the error, repeated, redownloaded,
reextracted. repeated.

ran
make menuconfig
make dep
make clean
make bzImage



root@majere:/usr/src/linux# make bzImage
gcc -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -o
scripts/split-include scripts/split-include.c
scripts/split-include include/linux/autoconf.h include/config
gcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes
-Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common
-pipe -mpreferred-stack-boundary=2 -march=i686 -c -o init/main.o
init/main.c
. scripts/mkversion > .tmpversion
gcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes
-Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common
-pipe -mpreferred-stack-boundary=2 -march=i686 -DUTS_MACHINE='"i386"' -c
-o init/version.o init/version.c
make CFLAGS="-D__KERNEL__ -I/usr/src/linux/include -Wall
-Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer
-fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2
-march=i686 " -C kernel
make[1]: Entering directory `/usr/src/linux/kernel'
make all_targets
make[2]: Entering directory `/usr/src/linux/kernel'
gcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes
-Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common
-pipe -mpreferred-stack-boundary=2 -march=i686 -fno-omit-frame-pointer
-c -o sched.o sched.c
sched.c: In function `__schedule_tail':
sched.c:509: structure has no member named `has_cpu'
make[2]: *** [sched.o] Error 1
make[2]: Leaving directory `/usr/src/linux/kernel'
make[1]: *** [first_rule] Error 2
make[1]: Leaving directory `/usr/src/linux/kernel'
make: *** [_dir_kernel] Error 2
root@majere:/usr/src/linux#


2001-11-24 01:23:04

by Robert Love

[permalink] [raw]
Subject: Re: Error: compiling with preempt-kernel-rml-2.4.15-1.patch

On Fri, 2001-11-23 at 19:13, [email protected] wrote:
> I applied the preempt-kernel-rml-2.4.15-1.patch file to a clean
> just untarred 2.14.15 kernel source, and began to compile got the
> following error.
> I know the source is good, I compiled a non-patched Kernel from the same
> archive earlier, re-extracted after the error, repeated, redownloaded,
> reextracted. repeated.

Hm, that is what I get for trying to get a release out while away for
Thanksgiving ...

try changing:
if (task_on_runqueue(prev) && !prev->has_cpu)
to:
if (task_on_runqueue(prev) && !task_has_cpu(prev))
in kernel/sched.c on line 509.

I'll put a new revision of the patch out when I get a chance ...

Robert Love


2001-11-24 01:46:07

by Steven Walter

[permalink] [raw]
Subject: Re: Error: compiling with preempt-kernel-rml-2.4.15-1.patch

On Fri, Nov 23, 2001 at 07:13:50PM -0500, [email protected] wrote:
> I applied the preempt-kernel-rml-2.4.15-1.patch file to a clean
> just untarred 2.14.15 kernel source, and began to compile got the
> following error.
> I know the source is good, I compiled a non-patched Kernel from the same
> archive earlier, re-extracted after the error, repeated, redownloaded,
> reextracted. repeated.
>
> make[2]: Entering directory `/usr/src/linux/kernel'
> gcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes
> -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common
> -pipe -mpreferred-stack-boundary=2 -march=i686 -fno-omit-frame-pointer
> -c -o sched.o sched.c
> sched.c: In function `__schedule_tail':
> sched.c:509: structure has no member named `has_cpu'
> make[2]: *** [sched.o] Error 1
> make[2]: Leaving directory `/usr/src/linux/kernel'
> make[1]: *** [first_rule] Error 2
> make[1]: Leaving directory `/usr/src/linux/kernel'
> make: *** [_dir_kernel] Error 2
> root@majere:/usr/src/linux#

Looks like the patch misses a place to has x->has_cpu to task_has_cpu(x)
Shouldn't be difficult for you to change it.
--
-Steven
In a time of universal deceit, telling the truth is a revolutionary act.
-- George Orwell
He's alive. He's alive! Oh, that fellow at RadioShack said I was mad!
Well, who's mad now?
-- Montgomery C. Burns

2001-11-24 16:45:27

by Robert Love

[permalink] [raw]
Subject: Re: Error: compiling with preempt-kernel-rml-2.4.15-1.patch

On Fri, 2001-11-23 at 20:42, Steven Walter wrote:

> Looks like the patch misses a place to has x->has_cpu to task_has_cpu(x)
> Shouldn't be difficult for you to change it.

Indeed. I put preempt-kernel-rml-2.4.15-2 up at kernel.org:

ftp://ftp.kernel.org/pub/linux/kernel/people/rml/

which fixes the problem. I believe kernel.org is now up ...

Robert Love