freebsd-dev/sys/arm
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
..
arm Commit the support for removing cpumask_t and replacing it directly with 2011-05-05 14:39:14 +00:00
at91 Typo fix 2011-04-25 18:15:45 +00:00
compile
conf Fix build of this kernel config. The ath(4) bits need the 11n frame format 2011-04-29 14:01:49 +00:00
econa We don't need to call EOWRITE4(sc, EHCI_USBINTR, 0) directly from each EHCI 2011-04-12 07:49:11 +00:00
include Commit the support for removing cpumask_t and replacing it directly with 2011-05-05 14:39:14 +00:00
mv Add basic support for the Marvell Orion TS-7800. 2011-04-15 13:37:43 +00:00
s3c2xx0 Get myself a brain, move the call to init_param1() before the first use in 2011-02-21 13:11:05 +00:00
sa11x0 Call init_param1() much earlier, so that msgbufsize is non-zero when we want 2011-02-13 20:02:46 +00:00
xscale Call init_param1() much earlier, so that msgbufsize is non-zero when we want 2011-04-19 15:05:12 +00:00