Module Name: src
Committed By: maxv
Date: Thu Nov 14 17:09:23 UTC 2019
Modified Files:
src/sys/arch/aarch64/aarch64: aarch64_machdep.c pmap.c
src/sys/arch/amd64/amd64: machdep.c
src/sys/arch/x86/x86: pmap.c
src/sys/sys: asan.h
Log Message:
Mark several kASan functions with __nothing, to avoid annoying #ifdefs.
Same as kCSan and kMSan.
To generate a diff of this commit:
cvs rdiff -u -r1.33 -r1.34 src/sys/arch/aarch64/aarch64/aarch64_machdep.c
cvs rdiff -u -r1.49 -r1.50 src/sys/arch/aarch64/aarch64/pmap.c
cvs rdiff -u -r1.340 -r1.341 src/sys/arch/amd64/amd64/machdep.c
cvs rdiff -u -r1.339 -r1.340 src/sys/arch/x86/x86/pmap.c
cvs rdiff -u -r1.11 -r1.12 src/sys/sys/asan.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/aarch64/aarch64/aarch64_machdep.c
diff -u src/sys/arch/aarch64/aarch64/aarch64_machdep.c:1.33 src/sys/arch/aarch64/aarch64/aarch64_machdep.c:1.34
--- src/sys/arch/aarch64/aarch64/aarch64_machdep.c:1.33 Thu Nov 14 16:48:51 2019
+++ src/sys/arch/aarch64/aarch64/aarch64_machdep.c Thu Nov 14 17:09:22 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: aarch64_machdep.c,v 1.33 2019/11/14 16:48:51 maxv Exp $ */
+/* $NetBSD: aarch64_machdep.c,v 1.34 2019/11/14 17:09:22 maxv Exp $ */
/*-
* Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(1, "$NetBSD: aarch64_machdep.c,v 1.33 2019/11/14 16:48:51 maxv Exp $");
+__KERNEL_RCSID(1, "$NetBSD: aarch64_machdep.c,v 1.34 2019/11/14 17:09:22 maxv Exp $");
#include "opt_arm_debug.h"
#include "opt_ddb.h"
@@ -434,9 +434,7 @@ initarm_common(vaddr_t kvm_base, vsize_t
*/
pmap_bootstrap(kernelvmstart, VM_MAX_KERNEL_ADDRESS);
-#ifdef KASAN
kasan_init();
-#endif
/*
* setup lwp0
Index: src/sys/arch/aarch64/aarch64/pmap.c
diff -u src/sys/arch/aarch64/aarch64/pmap.c:1.49 src/sys/arch/aarch64/aarch64/pmap.c:1.50
--- src/sys/arch/aarch64/aarch64/pmap.c:1.49 Thu Nov 14 16:48:51 2019
+++ src/sys/arch/aarch64/aarch64/pmap.c Thu Nov 14 17:09:22 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.49 2019/11/14 16:48:51 maxv Exp $ */
+/* $NetBSD: pmap.c,v 1.50 2019/11/14 17:09:22 maxv Exp $ */
/*
* Copyright (c) 2017 Ryo Shimizu <[email protected]>
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.49 2019/11/14 16:48:51 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.50 2019/11/14 17:09:22 maxv Exp $");
#include "opt_arm_debug.h"
#include "opt_ddb.h"
@@ -1681,11 +1681,9 @@ _pmap_enter(struct pmap *pm, vaddr_t va,
opte = atomic_swap_64(ptep, 0);
need_sync_icache = (prot & VM_PROT_EXECUTE);
-#ifdef KASAN
if (!user) {
kasan_shadow_map((void *)va, PAGE_SIZE);
}
-#endif
/* for lock ordering for pg and opg */
pgs[0] = pg;
Index: src/sys/arch/amd64/amd64/machdep.c
diff -u src/sys/arch/amd64/amd64/machdep.c:1.340 src/sys/arch/amd64/amd64/machdep.c:1.341
--- src/sys/arch/amd64/amd64/machdep.c:1.340 Thu Nov 14 16:48:51 2019
+++ src/sys/arch/amd64/amd64/machdep.c Thu Nov 14 17:09:23 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: machdep.c,v 1.340 2019/11/14 16:48:51 maxv Exp $ */
+/* $NetBSD: machdep.c,v 1.341 2019/11/14 17:09:23 maxv Exp $ */
/*
* Copyright (c) 1996, 1997, 1998, 2000, 2006, 2007, 2008, 2011
@@ -110,7 +110,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.340 2019/11/14 16:48:51 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.341 2019/11/14 17:09:23 maxv Exp $");
#include "opt_modular.h"
#include "opt_user_ldt.h"
@@ -1684,9 +1684,7 @@ init_x86_64(paddr_t first_avail)
init_pte();
-#ifdef KASAN
kasan_early_init((void *)lwp0uarea);
-#endif
uvm_lwp_setuarea(&lwp0, lwp0uarea);
@@ -1766,9 +1764,7 @@ init_x86_64(paddr_t first_avail)
init_x86_msgbuf();
-#ifdef KASAN
kasan_init();
-#endif
kcsan_init();
kmsan_init((void *)lwp0uarea);
Index: src/sys/arch/x86/x86/pmap.c
diff -u src/sys/arch/x86/x86/pmap.c:1.339 src/sys/arch/x86/x86/pmap.c:1.340
--- src/sys/arch/x86/x86/pmap.c:1.339 Thu Nov 14 16:23:52 2019
+++ src/sys/arch/x86/x86/pmap.c Thu Nov 14 17:09:23 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: pmap.c,v 1.339 2019/11/14 16:23:52 maxv Exp $ */
+/* $NetBSD: pmap.c,v 1.340 2019/11/14 17:09:23 maxv Exp $ */
/*
* Copyright (c) 2008, 2010, 2016, 2017 The NetBSD Foundation, Inc.
@@ -130,14 +130,13 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.339 2019/11/14 16:23:52 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.340 2019/11/14 17:09:23 maxv Exp $");
#include "opt_user_ldt.h"
#include "opt_lockdebug.h"
#include "opt_multiprocessor.h"
#include "opt_xen.h"
#include "opt_svs.h"
-#include "opt_kasan.h"
#include "opt_kaslr.h"
#include <sys/param.h>
@@ -4573,11 +4572,8 @@ pmap_growkernel(vaddr_t maxkvaddr)
}
#endif
-#ifdef KASAN
kasan_shadow_map((void *)pmap_maxkvaddr,
(size_t)(maxkvaddr - pmap_maxkvaddr));
-#endif
-
kmsan_shadow_map((void *)pmap_maxkvaddr,
(size_t)(maxkvaddr - pmap_maxkvaddr));
Index: src/sys/sys/asan.h
diff -u src/sys/sys/asan.h:1.11 src/sys/sys/asan.h:1.12
--- src/sys/sys/asan.h:1.11 Fri Oct 4 06:27:42 2019
+++ src/sys/sys/asan.h Thu Nov 14 17:09:23 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: asan.h,v 1.11 2019/10/04 06:27:42 maxv Exp $ */
+/* $NetBSD: asan.h,v 1.12 2019/11/14 17:09:23 maxv Exp $ */
/*
* Copyright (c) 2018-2019 The NetBSD Foundation, Inc.
@@ -60,9 +60,10 @@
#define KASAN_DMA_UIO 3
#define KASAN_DMA_RAW 4
-void kasan_shadow_map(void *, size_t);
void kasan_early_init(void *);
void kasan_init(void);
+void kasan_shadow_map(void *, size_t);
+
void kasan_softint(struct lwp *);
void kasan_dma_sync(bus_dmamap_t, bus_addr_t, bus_size_t, int);
@@ -71,6 +72,9 @@ void kasan_dma_load(bus_dmamap_t, void *
void kasan_add_redzone(size_t *);
void kasan_mark(const void *, size_t, size_t, uint8_t);
#else
+#define kasan_early_init(u) __nothing
+#define kasan_init() __nothing
+#define kasan_shadow_map(a, s) __nothing
#define kasan_dma_sync(m, a, s, o) __nothing
#define kasan_dma_load(m, b, s, o) __nothing
#define kasan_add_redzone(s) __nothing