aboutsummaryrefslogtreecommitdiff
path: root/sys/sys/types.h
diff options
context:
space:
mode:
authorMarcel Moolenaar <marcel@FreeBSD.org>2004-03-20 20:41:40 +0000
committerMarcel Moolenaar <marcel@FreeBSD.org>2004-03-20 20:41:40 +0000
commita36bdc0606a8d14be70d86fff441a08a4b2f9116 (patch)
tree36b15af5753b49fc795c2c808ed4a19a85446edd /sys/sys/types.h
parent322b1dc4b02fc3bd32ea1e09ef594a5212312cc4 (diff)
downloadsrc-a36bdc0606a8d14be70d86fff441a08a4b2f9116.tar.gz
src-a36bdc0606a8d14be70d86fff441a08a4b2f9116.zip
Introduce the cpumask_t type. The purpose of the type is to create a
level of abstraction for any and all CPU mask and CPU bitmap variables so that platforms have the ability to break free from the hard limit of 32 CPUs, simply because we don't have more bits in an u_int. Note that the type is not supposed to solve massive parallelism, where the number of CPUs can be larger than the width of the widest integral type. As such, cpumask_t is not supposed to be a compound type. If such would be necessary in the future, we can deal with the issues then and there. For now, it can be assumed that the type is integral and unsigned. With this commit, all MD definitions start off as u_int. This allows us to phase-in cpumask_t at our leasure without breaking anything. Once cpumask_t is used consistently, platforms can switch to wider (or smaller) types if such would be beneficial (or not; whatever :-) Compile-tested on: i386
Notes
Notes: svn path=/head/; revision=127239
Diffstat (limited to 'sys/sys/types.h')
-rw-r--r--sys/sys/types.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/sys/types.h b/sys/sys/types.h
index d20581ce7418..ac31bb7810b8 100644
--- a/sys/sys/types.h
+++ b/sys/sys/types.h
@@ -255,6 +255,7 @@ typedef __vm_size_t vm_size_t;
#ifdef _KERNEL
typedef int boolean_t;
+typedef __cpumask_t cpumask_t;
typedef __intfptr_t intfptr_t;
/*-