Re: [PATCH] kgdb: more barrier in blank weak function

Andrew Morton
2008-12-27T08:36:57Z

On Sat, 27 Dec 2008 09:17:37 +0100 Ingo Molnar <mingo@elte.hu> wrote:

>
> * Yinghai Lu <yinghai@kernel.org> wrote:
>
> > Impact: fix panic possible panic etc
> >
> > some compiler seems to inline the weak global function if no line in it
>
> > kgdb_post_primary_code(struct pt_regs *regs, int e_vector, int err_code)
> > {
> > - return;
> > + barrier();
> > }
>
> > void __weak kgdb_disable_hw_debug(struct pt_regs *regs)
> > {
> > + barrier();
> > }
>
> seems like the barrier() is not enough - the only safe sequence seems to
> be to turn it into a function that returns an integer.
>

Give up, and ban that gcc version? Adrian had a patch a while back,
but I don't know how he worked out the affected compiler versions.