summaryrefslogtreecommitdiff
path: root/include/linux/cpu.h
AgeCommit message (Collapse)Author
2005-09-02[PATCH] remove driverfs references from include/linux/cpu.h and ↵Rolf Eike Beer
net/sunrpc/rpc_pipe.c This patch is against 2.6.10, but still applies cleanly. It's just s/driverfs/sysfs/ in these two files. Signed-off-by: Rolf Eike Beer <eike-kernel@sf-tec.de> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-06-25[PATCH] make smp_prepare_cpu to a weak functionAshok Raj
I really wish smp_prepare_cpu() would disappear eventually. In the interim this is ideally a weak function, so we dont end up changing several places to define this dummy in headers. Today since the dummy declaration is done only in drivers/base/cpu.c but the function is called in kernel/power/smp.c i get undefined reference in my cpu hotplug code for x86_64 under development. Signed-off-by: Ashok Raj <ashok.raj@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2004-10-27IA64 CPU hotplug topologyLen Brown
Extend support for dynamic registration and unregistration of the cpu, by implementing and exporting arch_register_cpu()/arch_unregister_cpu(). Also combine multiple implementation of topology_init() functions to single topology_init() in case of ia64 architecture. Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
2004-08-23Use inline function instead of macro.Linus Torvalds
This means we won't get any warnings about unused variables - they _are_ used in some configurations.
2004-06-17[PATCH] don't create cpu/online sysfs fileAshok Raj
This file provides ability for caller of register_cpu() to either create a control file, or not. This can be handy if a particular platform decides that certain CPU's are not removable. Hence would like to not create a control file. Signed-off-by: Dave Hansen <haveblue@us.ibm.com> Signed-off-by: Ashok Raj <ashok.raj@intel.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2004-06-02[PATCH] use c99 struct initializer in hotcpu_notifierAndrew Morton
From: Nathan Lynch <nathanl@austin.ibm.com> The hotcpu_notifier macro does not properly record the given priority in the notifier block. This causes trouble only for callers which specify a non-zero priority, of which there are none (yet). Signed-off-by: Nathan Lynch <nathanl@austin.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2004-03-18[PATCH] Hotplug CPUs: cpu_down()Rusty Russell
Implement cpu_down(): uses stop_machine to freeze the machine, then uses (arch-specific) __cpu_disable() and migrate_all_tasks(). Whole thing under CONFIG_HOTPLUG_CPU, so doesn't break archs which don't define that.
2004-03-08[PATCH] minor cleanups for hotplug CPUsRusty Russell
Note that without CONFIG_HOTPLUG_CPU, online cpus == possible cpus, so substitutions are a noop. - Changes show_stat to print out stats for every possible cpu, not just online CPUs. - Allocate mem in stat_open on possible, not online_cpus. - Add conventient macros to cpu.h: especially cpu_is_offline() for testing if a cpu is still online. - Add a num_possible_cpus() similar to num_online_cpus(), and define cpu_possible_mask for UP. - Allow printk on down cpus once system is running. - Mask cpumask with possible, not online cpus, for sys_getaffinity().
2004-02-03[PATCH] lock_cpu_hotplug only if CONFIG_CPU_HOTPLUGAndrew Morton
From: Rusty Russell <rusty@rustcorp.com.au> The cpucontrol mutex is not required when no cpus can go up and down. Andrew wrote a wrapper for it to avoid #ifdefs, this expands that to only be defined for CONFIG_HOTPLUG_CPU, and uses it everywhere. The only downside is that the cpucontrol lock was overloaded by my recent patch to net/core/flow.c to protect it from reentrance, so this reintroduces the local flow_flush_sem. This code isn't speed critical, so taking two locks when CONFIG_HOTPLUG_CPU=y is not really an issue.
2004-01-22[PATCH] Fix CPU hotplug in networkingAndrew Morton
The code directly accessed the "cpucontrol" semaphore used for CPU hotplug. That doesn't work all that well, since the semaphore doesn't even exist on UP.
2003-06-10Hand mergePatrick Mochel
2003-06-10[cpu] Use sysdev.h instead of device.h and export cpu_sysdev_classPatrick Mochel
2003-06-06[PATCH] Move cpu notifiers et al to cpu.hRusty Russell
Trivial patch: when these were introduced cpu.h didn't exist.
2003-05-09[PATCH] cpufreq class fixJonathan Corbet
2002-11-10[PATCH] In-kernel Module LoaderRusty Russell
This is an implementation of the in-kernel module loader extending the try_inc_mod_count() primitive and making its use compulsory. This has the benifit of simplicity, and similarity to the existing scheme. To reduce the cost of the constant increments and decrements, reference counters are lockless and per-cpu. Eliminated (coming in following patches): o Modversions o Module parameters o kallsyms o EXPORT_SYMBOL_GPL and MODULE_LICENCE checks o DEVICE_TABLE support. New features: o Typesafe symbol_get/symbol_put o Single "insert this module" syscall interface allows trivial userspace. o Raceless loading and unloading You will need the trivial replacement module utilities from: http://ozlabs.org/~rusty/module-init-tools-0.6.tar.gz
2002-10-31[PATCH] driverfs topology cleanupAndrew Morton
From Matthew Dobson. This final patch from Matthew cleans up a few leftovers which were noted after the code had been reviewed and tested a bit in the -mm patchsets. 1) Update register_XXX and arch_register_XXX functions to return int instead of void. Functions calling these functions should know if they completed successfully to take appropriate further registration action, or not bother. 2) Drop some pointless error checking in the arch_register_XXX functions.
2002-10-31[PATCH] Update/Create core files for DriverFS Topology.Andrew Morton
From Matthew Dobson. Update/Create core files for DriverFS Topology. This patch creates the generic structures that are (will be) embedded in the per-arch structures. Also creates calls to register these generic structures (CPUs, MemBlks, & Nodes). Note that without arch-specific structures in which to embed these structures, and an arch-specific initialization routine, these functions/structures remain unused.
2002-09-23driver model: add support for CPUs.Patrick Mochel
- Create struct cpu to generically describe cpus (it simply contains a struct sys_device in it). - Define an array of size NR_CPUS in arch/i386/kernel/cpu/common.c and register each on bootup. This gives us something like: # tree -d /sys/root/sys/ /sys/root/sys/ |-- cpu0 |-- pic0 `-- rtc0 and: # tree -d /sys/bus/system/devices/ /sys/bus/system/devices/ |-- cpu0 -> ../../../root/sys/cpu0 - Define arch-specific CPU driver that's also registered on boot. That gives us: # tree -d /sys/bus/system/drivers/ /sys/bus/system/drivers/ |-- cpu - Create a CPU device class that's registered very early. That gives us all the CPUs in the system in one place: # tree -d /sys/class/cpu/ /sys/class/cpu/ |-- devices | `-- 0 -> ../../../root/sys/cpu0 `-- drivers Other archs are encouraged to do the same.