-- On Sat, 27 Oct 2007, trem wrote: > Dragan Noveski wrote: > > LD arch/i386/crypto/built-in.o > > AS [M] arch/i386/crypto/aes-i586-asm.o > > CC [M] arch/i386/crypto/aes.o > > LD [M] arch/i386/crypto/aes-i586.o > > CC kernel/sched.o > > In file included from kernel/sched.c:863: > > kernel/sched_rt.c: In function 'rt_overloaded': > > kernel/sched_rt.c:21: error: 'struct rq' has no member named 'cpu' > > kernel/sched_rt.c: In function 'rt_overload': > > kernel/sched_rt.c:25: error: 'struct rq' has no member named 'cpu' > > kernel/sched_rt.c: In function 'rt_set_overload': > > kernel/sched_rt.c:29: error: 'struct rq' has no member named 'cpu' > > kernel/sched_rt.c:29: error: 'struct rq' has no member named 'cpu' > > kernel/sched_rt.c: In function 'rt_clear_overload': > > kernel/sched_rt.c:33: error: 'struct rq' has no member named 'cpu' > > kernel/sched_rt.c:33: error: 'struct rq' has no member named 'cpu' > > make[1]: *** [kernel/sched.o] Fehler 1 > > make: *** [kernel] Fehler 2 > > nowhiskey@murija2:/usr/src/linux-2.6.23.1$ > > > > > > ............ > > > > thanks and cheers, > > doc > > HI > > I've got the same error with one on my config. I've investigated a bit, > and I've seen that cpu is only defined in struct rq on SMP kernel. So I > think that you have a .config without SMP. To fix this problem, I > propose this patch : > > > Index: linux-2.6.23/kernel/sched_rt.c > =================================================================== > --- linux-2.6.23/kernel/sched_rt.c > +++ linux-2.6.23/kernel/sched_rt.c 2007-10-27 11:04:08.000000000 -0400 > @@ -18,19 +18,35 @@ > > static inline int rt_overloaded(struct rq *rq) > { > +#ifdef CONFIG_SMP > return !cpus_empty(*rt_overload_mask(rq->cpu)); > +#else > + return !cpus_empty(*rt_overload_mask(0)); > +#endif > } > static inline cpumask_t *rt_overload(struct rq *rq) > { > +#ifdef CONFIG_SMP > return rt_overload_mask(rq->cpu); > +#else > + return rt_overload_mask(0); > +#endif > } > static inline void rt_set_overload(struct rq *rq) > { > +#ifdef CONFIG_SMP > cpu_set(rq->cpu, *rt_overload_mask(rq->cpu)); > +#else > + cpu_set(0, *rt_overload_mask(0)); > +#endif > } > static inline void rt_clear_overload(struct rq *rq) > { > +#ifdef CONFIG_SMP > cpu_clear(rq->cpu, *rt_overload_mask(rq->cpu)); > +#else > + cpu_clear(0, *rt_overload_mask(0)); > +#endif > } > > /* Thanks trem for pointing out the problem. I'll write up a little cleaner patch. -- Steve - To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html