freebsd-dev/gnu/usr.bin
Attilio Rao 71a19bdc64 Commit the support for removing cpumask_t and replacing it directly with
cpuset_t objects.
That is going to offer the underlying support for a simple bump of
MAXCPU and then support for number of cpus > 32 (as it is today).

Right now, cpumask_t is an int, 32 bits on all our supported architecture.
cpumask_t on the other side is implemented as an array of longs, and
easilly extendible by definition.

The architectures touched by this commit are the following:
- amd64
- i386
- pc98
- arm
- ia64
- XEN

while the others are still missing.
Userland is believed to be fully converted with the changes contained
here.

Some technical notes:
- This commit may be considered an ABI nop for all the architectures
  different from amd64 and ia64 (and sparc64 in the future)
- per-cpu members, which are now converted to cpuset_t, needs to be
  accessed avoiding migration, because the size of cpuset_t should be
  considered unknown
- size of cpuset_t objects is different from kernel and userland (this is
  primirally done in order to leave some more space in userland to cope
  with KBI extensions). If you need to access kernel cpuset_t from the
  userland please refer to example in this patch on how to do that
  correctly (kgdb may be a good source, for example).
- Support for other architectures is going to be added soon
- Only MAXCPU for amd64 is bumped now

The patch has been tested by sbruno and Nicholas Esborn on opteron
4 x 12 pack CPUs. More testing on big SMP is expected to came soon.
pluknet tested the patch with his 8-ways on both amd64 and i386.

Tested by:	pluknet, sbruno, gianni, Nicholas Esborn
Reviewed by:	jeff, jhb, sbruno
2011-05-05 14:39:14 +00:00
..
binutils Change the load address from offset 0 in region 1 to offset 4G in region 0. 2011-03-22 17:19:35 +00:00
cc Remove libobjc and other Objective-C related components, as these are 2011-04-17 21:03:23 +00:00
cvs Fix buildworld -DNO_CLEAN when using with Perforce, which marks files as 2010-08-12 20:46:49 +00:00
dialog Add libm to the dependencies section. 2011-01-18 14:58:12 +00:00
diff Change all our own code to use st_*tim instead of st_*timespec. 2010-03-28 13:16:08 +00:00
diff3 POSIX patch(1) would treat -b as different meaning (the functionality 2010-02-22 22:32:24 +00:00
dtc Sanitize CFLAGS and add WARNS?=2. The hardcoding of -Os -fPIC 2010-07-15 02:22:50 +00:00
gdb Commit the support for removing cpumask_t and replacing it directly with 2011-05-05 14:39:14 +00:00
gperf Remove getopt*.c, we already have compatible getopt_long() in libc 2004-02-17 01:49:20 +00:00
grep For files not named on the command line, only the basename is compared 2009-01-30 00:22:08 +00:00
groff Add back soon-to-be-release FreeBSD 7.4 which got clobbered in the previous 2011-02-13 22:17:49 +00:00
patch The buffer returned by fgenln is not a "C" string and might not be NUL 2009-09-16 19:53:29 +00:00
rcs Remove kludges intended to support src trees with partial obj trees. 2005-06-10 06:12:53 +00:00
sdiff POSIX patch(1) would treat -b as different meaning (the functionality 2010-02-22 22:32:24 +00:00
send-pr Add 'arm' category. 2008-04-23 03:05:31 +00:00
sort Add strndup(3) prototype to string.h. 2008-12-08 21:04:24 +00:00
texinfo Catch up with the demise of /usr/X11R6 2007-09-19 14:21:18 +00:00
Makefile Retire GNU man in favor of the newly written BSDL version. 2010-10-03 22:24:14 +00:00
Makefile.inc