Re: [patch] CFS scheduler, -v17

From: Gabriel C
Date: Fri Jun 15 2007 - 15:04:07 EST


Miguel Botón wrote:
On Friday 15 June 2007 18:28, Luiz Fernando N. Capitulino wrote:
Hmm, I'm getting this while compiling:

"""
LD .tmp_vmlinux1
kernel/built-in.o: In function `rq_clock':
/home/lcapitulino/src/kernels/upstream/linux-2.6-cfs/kernel/sched.c:321:
undefined reference to `cpu_of'
/home/lcapitulino/src/kernels/upstream/linux-2.6-cfs/kernel/sched.c:321:
undefined reference to `cpu_of'
/home/lcapitulino/src/kernels/upstream/linux-2.6-cfs/kernel/sched.c:321:
undefined reference to `cpu_of'
/home/lcapitulino/src/kernels/upstream/linux-2.6-cfs/kernel/sched.c:321:
undefined reference to `cpu_of'
/home/lcapitulino/src/kernels/upstream/linux-2.6-cfs/kernel/sched.c:321:
undefined reference to `cpu_of'
kernel/built-in.o:/home/lcapitulino/src/kernels/upstream/linux-2.6-cfs/kern
el/sched.c:321: more undefined references to `cpu_of' follow make: ***
[.tmp_vmlinux1] Error 1
"""

The code in question is really strange:

#ifdef CONFIG_SMP
...
static inline int cpu_of(struct rq *rq)
#ifdef CONFIG_SMP
return rq->cpu;
#else
return 0;
#endif
}
...
#endif

I patched kernel 2.6.21.5 with CFS v17 and I didn't experience this problem (I checked that piece of code and I didn't see something wrong).
Looks like it only appears in kernel 2.6.22-rc4.

I guess this code is missing #ifdef CONFIG_SMP ?

....

static inline unsigned long long rq_clock(struct rq *rq)
{
int this_cpu = smp_processor_id();

if (this_cpu == cpu_of(rq))
return __rq_clock(rq);

return rq->clock;
}


....

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