| From 65b9a660ca056ff99a32538cbccb420e44422576 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Thu, 4 Jun 2020 13:37:10 -0700 |
| Subject: xtensa: fix __sync_fetch_and_{and,or}_4 declarations |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| From: Max Filippov <jcmvbkbc@gmail.com> |
| |
| [ Upstream commit 73f9941306d5ce030f3ffc7db425c7b2a798cf8e ] |
| |
| Building xtensa kernel with gcc-10 produces the following warnings: |
| arch/xtensa/kernel/xtensa_ksyms.c:90:15: warning: conflicting types |
| for built-in function ‘__sync_fetch_and_and_4’; |
| expected ‘unsigned int(volatile void *, unsigned int)’ |
| [-Wbuiltin-declaration-mismatch] |
| arch/xtensa/kernel/xtensa_ksyms.c:96:15: warning: conflicting types |
| for built-in function ‘__sync_fetch_and_or_4’; |
| expected ‘unsigned int(volatile void *, unsigned int)’ |
| [-Wbuiltin-declaration-mismatch] |
| |
| Fix declarations of these functions to avoid the warning. |
| |
| Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| arch/xtensa/kernel/xtensa_ksyms.c | 4 ++-- |
| 1 file changed, 2 insertions(+), 2 deletions(-) |
| |
| diff --git a/arch/xtensa/kernel/xtensa_ksyms.c b/arch/xtensa/kernel/xtensa_ksyms.c |
| index 9210b9cc4ec96..455c6ec4086c2 100644 |
| --- a/arch/xtensa/kernel/xtensa_ksyms.c |
| +++ b/arch/xtensa/kernel/xtensa_ksyms.c |
| @@ -82,13 +82,13 @@ void __xtensa_libgcc_window_spill(void) |
| } |
| EXPORT_SYMBOL(__xtensa_libgcc_window_spill); |
| |
| -unsigned long __sync_fetch_and_and_4(unsigned long *p, unsigned long v) |
| +unsigned int __sync_fetch_and_and_4(volatile void *p, unsigned int v) |
| { |
| BUG(); |
| } |
| EXPORT_SYMBOL(__sync_fetch_and_and_4); |
| |
| -unsigned long __sync_fetch_and_or_4(unsigned long *p, unsigned long v) |
| +unsigned int __sync_fetch_and_or_4(volatile void *p, unsigned int v) |
| { |
| BUG(); |
| } |
| -- |
| 2.25.1 |
| |