aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-01-03cpumask: fix compile error when CONFIG_NR_CPUS is not definedMike Travis
CONFIG_NR_CPUS will be defined for all arch's whether SMP or not, but it may not have made it into all arches yet. Signed-off-by: Mike Travis <travis@sgi.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-01-03cpumask: use alloc_cpumask_var_node where appropriateMike Travis
Impact: Reduce inter-node memory traffic. Reduces inter-node memory traffic (offloading the global system bus) by allocating referenced struct cpumasks on the same node as the referring struct. Signed-off-by: Mike Travis <travis@sgi.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-01-03cpumask: convert shared_cpu_map in acpi_processor* structs to cpumask_var_tRusty Russell
Impact: Reduce memory usage, use new API. This is part of an effort to reduce structure sizes for machines configured with large NR_CPUS. cpumask_t gets replaced by cpumask_var_t, which is either struct cpumask[1] (small NR_CPUS) or struct cpumask * (large NR_CPUS). (Changes to powernow-k* by <travis>.) Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Mike Travis <travis@sgi.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-01-03x86: use cpumask_var_t in acpi/boot.cRusty Russell
Impact: reduce stack size, use new API. Replace cpumask_t with cpumask_var_t. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Mike Travis <travis@sgi.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-01-03x86: cleanup some remaining usages of NR_CPUS where s/b nr_cpu_idsMike Travis
Impact: Reduce future system panics due to cpumask operations using NR_CPUS Insure that code does not look at bits >= nr_cpu_ids as when cpumasks are allocated based on nr_cpu_ids, these extra bits will not be defined. Also some other minor updates: * change in to use cpu accessor function set_cpu_present() instead of directly accessing cpu_present_map w/cpu_clear() [arch/x86/kernel/reboot.c] * use cpumask_of() instead of &cpumask_of_cpu() [arch/x86/kernel/reboot.c] * optimize some cpu_mask_to_apicid_and functions. Signed-off-by: Mike Travis <travis@sgi.com> Acked-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-01-03sched: put back some stack hog changes that were undone in kernel/sched.cMike Travis
Impact: prevents panic from stack overflow on numa-capable machines. Some of the "removal of stack hogs" changes in kernel/sched.c by using node_to_cpumask_ptr were undone by the early cpumask API updates, and causes a panic due to stack overflow. This patch undoes those changes by using cpumask_of_node() which returns a 'const struct cpumask *'. In addition, cpu_coregoup_map is replaced with cpu_coregroup_mask further reducing stack usage. (Both of these updates removed 9 FIXME's!) Also: Pick up some remaining changes from the old 'cpumask_t' functions to the new 'struct cpumask *' functions. Optimize memory traffic by allocating each percpu local_cpu_mask on the same node as the referring cpu. Signed-off-by: Mike Travis <travis@sgi.com> Acked-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-01-03x86: enable cpus display of kernel_max and offlined cpusMike Travis
Impact: enables /sys/devices/system/cpu/{kernel_max,offline} user interface By setting total_cpus, the drivers/base/cpu.c will display the values of kernel_max (NR_CPUS-1) and the offlined cpu map. Signed-off-by: Mike Travis <travis@sgi.com> Acked-by: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-01-03ia64: cpumask fix for is_affinity_mask_valid()Ingo Molnar
Impact: build fix on ia64 ia64's default_affinity_write() still had old cpumask_t usage: /home/mingo/tip/kernel/irq/proc.c: In function `default_affinity_write': /home/mingo/tip/kernel/irq/proc.c:114: error: incompatible type for argument 1 of `is_affinity_mask_valid' make[3]: *** [kernel/irq/proc.o] Error 1 make[3]: *** Waiting for unfinished jobs.... update it to cpumask_var_t. Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-01-03cpumask: convert RCU implementations, fixIngo Molnar
Impact: cleanup This warning: kernel/rcuclassic.c: In function ‘rcu_start_batch’: kernel/rcuclassic.c:397: warning: passing argument 1 of ‘cpumask_andnot’ from incompatible pointer type triggers because one usage site of rcp->cpumask was not converted to to_cpumask(rcp->cpumask). There's no ill effects of this bug. Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-01-03Merge branch 'master' of ↵Ingo Molnar
git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-cpumask into cpus4096-v2
2009-01-03Merge branch 'master' of ↵Mike Travis
git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-cpumask into merge-rr-cpumask Conflicts: arch/x86/kernel/io_apic.c kernel/rcuclassic.c kernel/sched.c kernel/time/tick-sched.c Signed-off-by: Mike Travis <travis@sgi.com> [ mingo@elte.hu: backmerged typo fix for io_apic.c ] Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-01-03AMD IOMMU: remove now unnecessary #ifdefsJoerg Roedel
The #ifdef's are no longer necessary when the iommu-api and the amd iommu updates are merged together. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03Merge branches 'iommu/api' and 'iommu/amd' into for-linusJoerg Roedel
2009-01-03AMD IOMMU: prealloc_protection_domains should be staticJaswinder Singh Rajput
Impact: cleanup, reduce kernel size a bit, avoid sparse warning Fixes sparse warning: arch/x86/kernel/amd_iommu.c:1299:6: warning: symbol 'prealloc_protection_domains' was not declared. Should it be static? Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput@gmail.com> Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03kvm/iommu: fix compile warningJoerg Roedel
This fixes a compile warning about a variable thats maybe used uninitialized in the function. Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add statistics about total number of map requestsJoerg Roedel
Impact: see total number of map requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add statistics about allocated io memoryJoerg Roedel
Impact: see amount of allocated io memory in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for domain tlb flushesJoerg Roedel
Impact: see number of domain tlb flushes in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for single iommu domain tlb flushesJoerg Roedel
Impact: see number of single iommu domain tlb flushes in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for cross-page requestJoerg Roedel
Impact: see number of requests for more than one page in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for free_coherent requestsJoerg Roedel
Impact: see number of free_coherent requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for alloc_coherent requestsJoerg Roedel
Impact: see number of alloc_coherent requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for unmap_sg requestsJoerg Roedel
Impact: see number of unmap_sg requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for map_sg requestsJoerg Roedel
Impact: see number of map_sg requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for unmap_single requestsJoerg Roedel
Impact: see number of unmap_single requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for map_single requestsJoerg Roedel
Impact: see number of map_single requests in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add stats counter for completion wait eventsJoerg Roedel
Impact: see number of completion wait events in debugfs Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add init code for statistic collectionJoerg Roedel
Impact: create a new debugfs directory Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add necessary header defines for stats countingJoerg Roedel
Impact: add defines to make iommu stats collection configurable Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add Kconfig entry for statistic collection codeJoerg Roedel
Impact: adds new Kconfig entry Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: use dev_name in iommu_enable functionJoerg Roedel
Impact: cleanup Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: use calc_devid in prealloc_protection_domainsJoerg Roedel
Impact: cleanup Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: convert amd_iommu_isolate to boolJoerg Roedel
Impact: cleanup Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: convert iommu->need_sync to boolJoerg Roedel
Impact: use bool instead of int for iommu->need_sync Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: use dev_name instead of self-build print_devidJoerg Roedel
Impact: use generic dev_name instead of own function Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: allocate a new protection for hotplugged devicesJoerg Roedel
Impact: also hotplug devices benefit from device isolation Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add a domain flag for default domainsJoerg Roedel
Impact: adds a new protection domain flag Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: register functions for the IOMMU APIJoerg Roedel
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add domain address lookup function for IOMMU APIJoerg Roedel
Impact: add a generic function to lockup addresses in protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add domain unmap function for IOMMU APIJoerg Roedel
Impact: add a generic function to unmap pages into protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add domain map function for IOMMU APIJoerg Roedel
Impact: add a generic function to map pages into protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add device attach function for IOMMU APIJoerg Roedel
Impact: add a generic function to attach devices to protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add device detach function for IOMMU APIJoerg Roedel
Impact: add a generic function to detach devices from protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add domain destroy function for IOMMU APIJoerg Roedel
Impact: add a generic function for releasing protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add domain init function for IOMMU APIJoerg Roedel
Impact: add a generic function for allocation protection domains Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add domain cleanup helper functionJoerg Roedel
Impact: add a function to remove all devices from a domain Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add device notifier callbackJoerg Roedel
Impact: inform IOMMU about state change of a device in the driver core Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add device detach helper functionsJoerg Roedel
Impact: add helper functions to detach a device from a domain Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: rename set_device_domain functionJoerg Roedel
Impact: rename set_device_domain() to attach_device() Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
2009-01-03AMD IOMMU: add device reference counting for protection domainsJoerg Roedel
Impact: know how many devices are assigned to a domain Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>