From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Xiaotian Feng <xtfeng@gmail.com>
Cc: Alex <mysqlstudent@gmail.com>, lkml <linux-kernel@vger.kernel.org>
Subject: Re: 2.6.32-rc5-git3 compile problems
Date: Tue, 27 Oct 2009 23:37:37 -0700 [thread overview]
Message-ID: <20091028063737.GA6632@linux.vnet.ibm.com> (raw)
In-Reply-To: <7b6bb4a50910272007i2c931012y13d204402d65a589@mail.gmail.com>
On Wed, Oct 28, 2009 at 11:07:13AM +0800, Xiaotian Feng wrote:
> Try this patch, thanks.
> ---
> index b40ac57..04a4272 100644
> --- a/kernel/rcutree.h
> +++ b/kernel/rcutree.h
> @@ -292,8 +292,24 @@ DECLARE_PER_CPU(struct rcu_data, rcu_preempt_data);
>
> #else /* #ifdef RCU_TREE_NONCORE */
>
> -/* Forward declarations for rcutree_plugin.h */
> -static inline void rcu_bootup_announce(void);
> +#ifdef CONFIG_TREE_PREEMPT_RCU
> +/*
> + * Tell them what RCU they are running.
> + */
> +static inline void rcu_bootup_announce(void)
> +{
> + printk(KERN_INFO
> + "Experimental preemptable hierarchical RCU implementation.\n");
> +}
> +#else
> +/*
> + * Tell them what RCU they are running.
> + */
> +static inline void rcu_bootup_announce(void)
> +{
> + printk(KERN_INFO "Hierarchical RCU implementation.\n");
> +}
> +#endif
> long rcu_batches_completed(void);
> static void rcu_preempt_note_context_switch(int cpu);
> static int rcu_preempted_readers(struct rcu_node *rnp);
> diff --git a/kernel/rcutree_plugin.h b/kernel/rcutree_plugin.h
> index c0cb783..1b96445 100644
> --- a/kernel/rcutree_plugin.h
> +++ b/kernel/rcutree_plugin.h
> @@ -31,15 +31,6 @@ struct rcu_state rcu_preempt_state =
> RCU_STATE_INITIALIZER(rcu_preempt_state);
> DEFINE_PER_CPU(struct rcu_data, rcu_preempt_data);
>
> /*
> - * Tell them what RCU they are running.
> - */
> -static inline void rcu_bootup_announce(void)
Given that this is anything but performance-critical, could we instead
remove the "inline" above and on the forward declaration, possibly
also marking as __init?
Or am I misunderstanding the problem?
Thanx, Paul
> -{
> - printk(KERN_INFO
> - "Experimental preemptable hierarchical RCU implementation.\n");
> -}
> -
> -/*
> * Return the number of RCU-preempt batches processed thus far
> * for debug and statistics.
> */
> @@ -462,14 +453,6 @@ void exit_rcu(void)
> #else /* #ifdef CONFIG_TREE_PREEMPT_RCU */
>
> /*
> - * Tell them what RCU they are running.
> - */
> -static inline void rcu_bootup_announce(void)
> -{
> - printk(KERN_INFO "Hierarchical RCU implementation.\n");
> -}
> -
> -/*
> * Return the number of RCU batches processed thus far for debug & stats.
> */
> long rcu_batches_completed(void)
>
> On Wed, Oct 28, 2009 at 4:50 AM, Alex <mysqlstudent@gmail.com> wrote:
> > Hi,
> >
> > I receive the following error when using defconfig on 2.6.32-rc5-git3:
> >
> > CC kernel/seccomp.o
> > CC kernel/rcutree.o
> > kernel/rcutree.c: In function `__rcu_init':
> > kernel/rcutree.h:296: sorry, unimplemented: inlining failed in call to
> > 'rcu_bootup_announce': function body not available
> > kernel/rcutree.c:1702: sorry, unimplemented: called from here
> > make[1]: *** [kernel/rcutree.o] Error 1
> > make: *** [kernel] Error 2
> >
> > Is this something I'm doing wrong? I'm actually trying to compile
> > 2.6.31.5 with the default config, and it too fails, for another
> > reason. I'm having difficulty compiling 2.6.31 and 2.6.31.5 on x86
> > with gcc-3.4.4 and binutils-2.20.51.0.2. I'm also using glibc-2.3.6.
> >
> > AS arch/x86/lib/thunk_32.o
> > CC arch/x86/lib/usercopy_32.o
> > AR arch/x86/lib/lib.a
> > LD vmlinux.o
> > MODPOST vmlinux.o
> > GEN .version
> > CHK include/linux/compile.h
> > UPD include/linux/compile.h
> > CC init/version.o
> > LD init/built-in.o
> > LD .tmp_vmlinux1
> > drivers/built-in.o: In function `con_init':
> > vt.c:(.init.text+0x3c5b): undefined reference to `.L1446'
> > make: *** [.tmp_vmlinux1] Error 1
> >
> > I'd sure appreciate any pointers on how to troubleshoot this.
> >
> > Thanks,
> > Alex
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at http://www.tux.org/lkml/
> >
next prev parent reply other threads:[~2009-10-28 6:37 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-27 20:50 2.6.32-rc5-git3 compile problems Alex
2009-10-28 3:07 ` Xiaotian Feng
2009-10-28 6:37 ` Paul E. McKenney [this message]
2009-10-28 16:00 ` Alex
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20091028063737.GA6632@linux.vnet.ibm.com \
--to=paulmck@linux.vnet.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mysqlstudent@gmail.com \
--cc=xtfeng@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.