This patch fixes several sparse warnings for fault.c:
arch/arm64/mm/fault.c:493:24: sparse: warning: incorrect type in return expression (different base types)
arch/arm64/mm/fault.c:493:24: sparse: expected restricted vm_fault_t
arch/arm64/mm/fault.c:493:24: sparse: got int
arch/arm64/mm/fault.c:501:32: sparse: warning: incorrect type in return expression (different base types)
arch/arm64/mm/fault.c:501:32: sparse: expected restricted vm_fault_t
arch/arm64/mm/fault.c:501:32: sparse: got int
arch/arm64/mm/fault.c:503:32: sparse: warning: incorrect type in return expression (different base types)
arch/arm64/mm/fault.c:503:32: sparse: expected restricted vm_fault_t
arch/arm64/mm/fault.c:503:32: sparse: got int
arch/arm64/mm/fault.c:511:24: sparse: warning: incorrect type in return expression (different base types)
arch/arm64/mm/fault.c:511:24: sparse: expected restricted vm_fault_t
arch/arm64/mm/fault.c:511:24: sparse: got int
arch/arm64/mm/fault.c:670:13: sparse: warning: restricted vm_fault_t degrades to integer
arch/arm64/mm/fault.c:670:13: sparse: warning: restricted vm_fault_t degrades to integer
arch/arm64/mm/fault.c:713:39: sparse: warning: restricted vm_fault_t degrades to integer
Reported-by: kernel test robot <[email protected]>
Signed-off-by: Min-Hua Chen <[email protected]>
---
arch/arm64/mm/fault.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/mm/fault.c b/arch/arm64/mm/fault.c
index 9e0db5c387e3..cb21ccd7940d 100644
--- a/arch/arm64/mm/fault.c
+++ b/arch/arm64/mm/fault.c
@@ -480,8 +480,8 @@ static void do_bad_area(unsigned long far, unsigned long esr,
}
}
-#define VM_FAULT_BADMAP 0x010000
-#define VM_FAULT_BADACCESS 0x020000
+#define VM_FAULT_BADMAP ((__force vm_fault_t)0x010000)
+#define VM_FAULT_BADACCESS ((__force vm_fault_t)0x020000)
static vm_fault_t __do_page_fault(struct mm_struct *mm, unsigned long addr,
unsigned int mm_flags, unsigned long vm_flags,
--
2.34.1
On Tue, 2 May 2023 23:19:06 +0800, Min-Hua Chen wrote:
> This patch fixes several sparse warnings for fault.c:
>
> arch/arm64/mm/fault.c:493:24: sparse: warning: incorrect type in return expression (different base types)
> arch/arm64/mm/fault.c:493:24: sparse: expected restricted vm_fault_t
> arch/arm64/mm/fault.c:493:24: sparse: got int
> arch/arm64/mm/fault.c:501:32: sparse: warning: incorrect type in return expression (different base types)
> arch/arm64/mm/fault.c:501:32: sparse: expected restricted vm_fault_t
> arch/arm64/mm/fault.c:501:32: sparse: got int
> arch/arm64/mm/fault.c:503:32: sparse: warning: incorrect type in return expression (different base types)
> arch/arm64/mm/fault.c:503:32: sparse: expected restricted vm_fault_t
> arch/arm64/mm/fault.c:503:32: sparse: got int
> arch/arm64/mm/fault.c:511:24: sparse: warning: incorrect type in return expression (different base types)
> arch/arm64/mm/fault.c:511:24: sparse: expected restricted vm_fault_t
> arch/arm64/mm/fault.c:511:24: sparse: got int
> arch/arm64/mm/fault.c:670:13: sparse: warning: restricted vm_fault_t degrades to integer
> arch/arm64/mm/fault.c:670:13: sparse: warning: restricted vm_fault_t degrades to integer
> arch/arm64/mm/fault.c:713:39: sparse: warning: restricted vm_fault_t degrades to integer
>
> [...]
Applied to arm64 (for-next/fixes), thanks!
[1/1] arm64/mm: mark private VM_FAULT_X defines as vm_fault_t
https://git.kernel.org/arm64/c/d91d58087806
Cheers,
--
Will
https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev