| From: Marco Elver <elver@google.com> |
| Subject: kasan: fix build by including kernel.h |
| |
| The <linux/kasan.h> header relies on _RET_IP_ being defined, and had been |
| receiving that definition via inclusion of bug.h which includes kernel.h. |
| However, since f39650de687e ("kernel.h: split out panic and oops helpers") |
| that is no longer the case and get the following build error when building |
| CONFIG_KASAN_HW_TAGS on arm64: |
| |
| In file included from arch/arm64/mm/kasan_init.c:10: |
| ./include/linux/kasan.h: In function 'kasan_slab_free': |
| ./include/linux/kasan.h:230:39: error: '_RET_IP_' undeclared (first use in this function) |
| 230 | return __kasan_slab_free(s, object, _RET_IP_, init); |
| |
| Fix it by including kernel.h from kasan.h. |
| |
| Link: https://lkml.kernel.org/r/20210705072716.2125074-1-elver@google.com |
| Fixes: f39650de687e ("kernel.h: split out panic and oops helpers") |
| Signed-off-by: Marco Elver <elver@google.com> |
| Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> |
| Reviewed-by: Andrey Konovalov <andreyknvl@gmail.com> |
| Cc: Alexander Potapenko <glider@google.com> |
| Cc: Dmitry Vyukov <dvyukov@google.com> |
| Cc: Peter Collingbourne <pcc@google.com> |
| Cc: Catalin Marinas <catalin.marinas@arm.com> |
| Cc: Vincenzo Frascino <vincenzo.frascino@arm.com> |
| Cc: Andrey Ryabinin <ryabinin.a.a@gmail.com> |
| Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
| --- |
| |
| include/linux/kasan.h | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- a/include/linux/kasan.h~kasan-fix-build-by-including-kernelh |
| +++ a/include/linux/kasan.h |
| @@ -3,6 +3,7 @@ |
| #define _LINUX_KASAN_H |
| |
| #include <linux/bug.h> |
| +#include <linux/kernel.h> |
| #include <linux/static_key.h> |
| #include <linux/types.h> |
| |
| _ |