Re: [PATCH net-next v3] net: skb: prevent the split of kfree_skb_reason() by gcc

From: Miguel Ojeda
Date: Mon Aug 15 2022 - 07:52:47 EST


On Mon, Aug 15, 2022 at 8:27 AM <menglong8.dong@xxxxxxxxx> wrote:
>
> include/linux/compiler-gcc.h | 12 ++++++++++++
> include/linux/compiler_types.h | 4 ++++

No, this should be in `compiler_attributes.h` like you had it before.

To be clear, what you did here would be fine, but it is the "old way"
(we added `compiler_attributes.h` to reduce the complexity of
`compiler-*` and `compiler_types.h` and make it a bit more
normalized).

Please take a moment and read how other attributes do it in
`compiler_attributes.h` with `__has_attribute`. Check, for instance,
`__copy`, which is very similar to your case (not supported by Clang
and ICC, except in your case GCC always supports at least since 5.1).

Cheers,
Miguel