Re: [PATCH] gcc 3.1 breaks wchan

Linus Torvalds (torvalds@transmeta.com)
Wed, 24 Apr 2002 21:59:38 -0700 (PDT)


On Thu, 25 Apr 2002, Anton Blanchard wrote:
>
> I noticed on a ppc64 kernel compiled with gcc 3.1 that context_switch
> was left out of line. It ended up outside of the
> scheduling_functions_start_here/end_here placeholders which breaks
> wchan.
>
> This is one place where we require the code to be inline, so we should use
> extern.

ABSOLUTELY NOT!

"extern inline" does not guarantee inlining. It only guarantees that _if_
the code isn't inlined, it also won't be compiled as a static function.

Complain to the gcc guys, they've made up some not-backwards-compatible
thing called "always_inline" or something, apparently without any way to
know whether it is supported or not.

Linus

-
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/