Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

2.6.27-rc5-mm1 compilation fix with gcc 3.4.6

0 views
Skip to first unread message

Krzysztof Helt

unread,
Sep 5, 2008, 5:40:13 PM9/5/08
to
Hi Andrew,

I found that 2.6.27-rc5-mm1 does not compile with gcc 3.4.6.
The error is:
CC kernel/sched.o
kernel/sched.c: In function `start_rt_bandwidth':
kernel/sched.c:208: sorry, unimplemented: inlining failed in call to 'rt_bandwidth_enabled': function body not available
kernel/sched.c:214: sorry, unimplemented: called from here
make[1]: *** [kernel/sched.o] Error 1
make: *** [kernel] Error 2

It seems that the gcc 3.4.6 requires full inline definition before first usage.
The patch below fixes the compilation problem.

Regards,
Krzysztof

Signed-off-by: Krzysztof Helt <krzysz...@wp.pl> (if needed>

diff -urp linux-ref/kernel/sched.c linux-mm/kernel/sched.c
--- linux-ref/kernel/sched.c 2008-09-05 23:39:02.000000000 +0200
+++ linux-mm/kernel/sched.c 2008-09-05 23:41:12.779563125 +0200
@@ -205,7 +205,10 @@ void init_rt_bandwidth(struct rt_bandwid
rt_b->rt_period_timer.cb_mode = HRTIMER_CB_IRQSAFE_NO_SOFTIRQ;
}

-static inline int rt_bandwidth_enabled(void);
+static inline int rt_bandwidth_enabled(void)
+{
+ return sysctl_sched_rt_runtime >= 0;
+}

static void start_rt_bandwidth(struct rt_bandwidth *rt_b)
{
@@ -844,11 +847,6 @@ static inline u64 global_rt_runtime(void
return (u64)sysctl_sched_rt_runtime * NSEC_PER_USEC;
}

-static inline int rt_bandwidth_enabled(void)
-{
- return sysctl_sched_rt_runtime >= 0;
-}
-
#ifndef prepare_arch_switch
# define prepare_arch_switch(next) do { } while (0)
#endif


----------------------------------------------------------------------
Nie zwlekaj! Tapetuj z nami!
Sprawdz >> http://link.interia.pl/f1f01

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

Ingo Molnar

unread,
Sep 6, 2008, 9:20:07 AM9/6/08
to

* Krzysztof Helt <krzysz...@poczta.fm> wrote:

> Hi Andrew,
>
> I found that 2.6.27-rc5-mm1 does not compile with gcc 3.4.6.
> The error is:
> CC kernel/sched.o
> kernel/sched.c: In function `start_rt_bandwidth':
> kernel/sched.c:208: sorry, unimplemented: inlining failed in call to 'rt_bandwidth_enabled': function body not available
> kernel/sched.c:214: sorry, unimplemented: called from here
> make[1]: *** [kernel/sched.o] Error 1
> make: *** [kernel] Error 2
>
> It seems that the gcc 3.4.6 requires full inline definition before
> first usage. The patch below fixes the compilation problem.

applied to tip/sched/rt, thanks Krzysztof!

Ingo

0 new messages