Re: [PATCH v2] mm/page_alloc.c: inline __rmqueue()

From: Andi Kleen
Date: Tue Oct 10 2017 - 18:27:20 EST


> `inline' is basically advisory (or ignored) in modern gcc's. So gcc
> has felt free to ignore it in __rmqueue_fallback and __rmqueue_smallest
> because gcc thinks it knows best. That's why we created
> __always_inline, to grab gcc by the scruff of its neck.
>
> So... I think this patch could do with quite a bit more care, tuning
> and testing with various gcc versions.

We should just everything in the hot path mark __always_inline.

-Andi