| From miguel.ojeda.sandonis@gmail.com Mon Aug 5 13:30:44 2019 |
| From: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com> |
| Date: Fri, 2 Aug 2019 12:37:56 +0200 |
| Subject: Backport minimal compiler_attributes.h to support GCC 9 |
| To: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| Cc: stable@vger.kernel.org, Miguel Ojeda <miguel.ojeda.sandonis@gmail.com> |
| Message-ID: <20190802103757.31397-1-miguel.ojeda.sandonis@gmail.com> |
| |
| From: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com> |
| |
| This adds support for __copy to v4.9.y so that we can use it in |
| init/exit_module to avoid -Werror=missing-attributes errors on GCC 9. |
| |
| Link: https://lore.kernel.org/lkml/259986242.BvXPX32bHu@devpool35/ |
| Cc: <stable@vger.kernel.org> |
| Suggested-by: Rolf Eike Beer <eb@emlix.com> |
| Signed-off-by: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| include/linux/compiler.h | 16 ++++++++++++++++ |
| 1 file changed, 16 insertions(+) |
| |
| --- a/include/linux/compiler.h |
| +++ b/include/linux/compiler.h |
| @@ -54,6 +54,22 @@ extern void __chk_io_ptr(const volatile |
| |
| #ifdef __KERNEL__ |
| |
| +/* |
| + * Minimal backport of compiler_attributes.h to add support for __copy |
| + * to v4.9.y so that we can use it in init/exit_module to avoid |
| + * -Werror=missing-attributes errors on GCC 9. |
| + */ |
| +#ifndef __has_attribute |
| +# define __has_attribute(x) __GCC4_has_attribute_##x |
| +# define __GCC4_has_attribute___copy__ 0 |
| +#endif |
| + |
| +#if __has_attribute(__copy__) |
| +# define __copy(symbol) __attribute__((__copy__(symbol))) |
| +#else |
| +# define __copy(symbol) |
| +#endif |
| + |
| #ifdef __GNUC__ |
| #include <linux/compiler-gcc.h> |
| #endif |