Commit Graph

9 Commits

Author SHA1 Message Date
matt
6e660710b6 Some constification.
Add kcpuset_clone, kcpuset_insersection, kcpuset_remove,
kcpuset_ffs, kcpuset_ffs_intersecting,
kcpuset_atomicly_merge, kcpuset_atomicly_intersect, kcpuset_atomicly_remove
2013-07-17 22:36:26 +00:00
rmind
4dc5d07777 Rename kcpuset_copybits() to kcpuset_export_u32() and thus be more specific
about the interface.
2012-09-16 22:09:33 +00:00
rmind
f5661bef75 kcpuset_copybits: fix potential endianness problem. Spotted by matt@. 2012-08-20 22:01:29 +00:00
rmind
e75fa0930a Few fixes for Xen:
- cpu_load_pmap: use atomic kcpuset(9) operations; fixes rare crashes.
- Add kcpuset_copybits(9) and replace xen_kcpuset2bits().  Avoids incorrect
  ncpu problem in early boot.  Also, micro-optimises xen_mcast_invlpg() and
  xen_mcast_tlbflush() routines.

Tested by chs@.
2012-06-06 22:22:41 +00:00
rmind
0c79472223 - Convert x86 MD code, mainly pmap(9) e.g. TLB shootdown code, to use
kcpuset(9) and thus replace hardcoded CPU bitmasks.  This removes the
  limitation of maximum CPUs.

- Support up to 256 CPUs on amd64 architecture by default.

Bug fixes, improvements, completion of Xen part and testing on 64-core
AMD Opteron(tm) Processor 6282 SE (also, as Xen HVM domU with 128 CPUs)
by Manuel Bouyer.
2012-04-20 22:23:24 +00:00
rmind
c0a0b7fb10 - Add kcpuset_isotherset() and kcpuset_countset().
- Fix KC_NFIELDS_EARLY.  Make kcpuset_isset() return bool.
2012-01-29 19:08:26 +00:00
rmind
e71c0035e7 - Add an argument to kcpuset_create() for zeroing.
- Add kcpuset_atomic_set(), kcpuset_atomic_clear() and kcpuset_merge().
2011-08-07 21:38:32 +00:00
rmind
501dd321fb Remove LW_AFFINITY flag and fix some bugs affinity mask handling. 2011-08-07 21:13:05 +00:00
rmind
52b220e91d Add kcpuset(9) - a reworked dynamic CPU set implementation for kernel.
Suitable for use during the early boot.  MD and other implementations
should be replaced with this interface.

Discussed on: tech-kern@
2011-08-07 13:33:01 +00:00