Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/i386/include Explain what is going on with the 64 b...
details: https://anonhg.NetBSD.org/src/rev/5a98f90ad200
branches: trunk
changeset: 328926:5a98f90ad200
user: christos <christos%NetBSD.org@localhost>
date: Thu Apr 24 19:23:00 2014 +0000
description:
Explain what is going on with the 64 bit atomic ops, and restore them
for pure kernel use.
diffstat:
sys/arch/i386/include/types.h | 10 ++++++----
1 files changed, 6 insertions(+), 4 deletions(-)
diffs (25 lines):
diff -r 4bdd6c94859d -r 5a98f90ad200 sys/arch/i386/include/types.h
--- a/sys/arch/i386/include/types.h Thu Apr 24 18:43:02 2014 +0000
+++ b/sys/arch/i386/include/types.h Thu Apr 24 19:23:00 2014 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: types.h,v 1.78 2014/04/22 14:09:19 christos Exp $ */
+/* $NetBSD: types.h,v 1.79 2014/04/24 19:23:00 christos Exp $ */
/*-
* Copyright (c) 1990 The Regents of the University of California.
@@ -109,10 +109,12 @@
#define __HAVE_SYSCALL_INTERN
#define __HAVE_MINIMAL_EMUL
#define __HAVE_OLD_DISKLABEL
-#if 0
+#if defined(_KERNEL) && !defined(_RUMPKERNEL) && !defined(_RUMP_NATIVE_ABI)
/*
- * < i586 does not have cmpxchg8b, and we compile for i486 by default.
- * Atomic64 ops are not currently used in the kernel.
+ * Processors < i586 do not have cmpxchg8b, and we compile for i486
+ * by default in userland. The kernel tsc driver uses them though,
+ * and handles < i586 * by patching. We don't want to expose them in
+ * userland, that is why we exclude rump.
*/
#define __HAVE_ATOMIC64_OPS
#endif
Home |
Main Index |
Thread Index |
Old Index