search for: cpu_online_map

Displaying 20 results from an estimated 83 matches for "cpu_online_map".

2013 Jun 20
3
[PATCH V2 1/2] cpufreq, xenpm: fix cpufreq and xenpm mismatch
Currently cpufreq and xenpm are out of sync. Fix cpufreq reporting of if turbo mode is enabled or not. Fix xenpm to not decode for tristate, but a boolean. Signed-off-by: Jacob Shin <jacob.shin@amd.com> --- tools/misc/xenpm.c | 14 +++----------- xen/drivers/cpufreq/utility.c | 2 +- 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/tools/misc/xenpm.c
2005 May 11
1
RE: recent major -unstable changes cause ia64 build to bebroken
> Another new problem due to a common change... > > xen/include/xen/cpumask.h declares: > > extern cpumask_t cpu_online_map; > > However, with CONFIG_SMP off, xen/include/xen/smp.h defines > cpu_online_map to 1. It''s daft that we even have a CONFIG_SMP option in Xen. It spends most of its time broken because no-one using x86 builds it, and you won''t even be able to buy any non SMP hardware...
2012 Aug 16
5
[PATCH] AMD, powernow: Update P-state directly when _PSD's CoordType is DOMAIN_COORD_TYPE_HW_ALL
...+112,7 @@ static int powernow_cpufreq_target(struc target_freq, relation, &next_state); if (unlikely(result)) - return -ENODEV; - - cpumask_and(&online_policy_cpus, policy->cpus, &cpu_online_map); + return result; next_perf_state = data->freq_table[next_state].index; if (perf->state == next_perf_state) { @@ -137,26 +122,28 @@ static int powernow_cpufreq_target(struc return 0; } - if (policy->shared_type != CPUFREQ_SHARED_TYPE_ANY) -...
2011 Oct 20
0
[PATCH 07/12] cpufreq: allocate CPU masks dynamically
...freq/cpufreq.c 2011-10-12 08:35:12.000000000 +0200 +++ 2011-09-20/xen/arch/x86/acpi/cpufreq/cpufreq.c 2011-10-14 14:55:07.000000000 +0200 @@ -446,7 +446,7 @@ static int acpi_cpufreq_target(struct cp if (unlikely(result)) return -ENODEV; - cpumask_and(&online_policy_cpus, &cpu_online_map, &policy->cpus); + cpumask_and(&online_policy_cpus, &cpu_online_map, policy->cpus); next_perf_state = data->freq_table[next_state].index; if (perf->state == next_perf_state) { --- 2011-09-20.orig/xen/arch/x86/acpi/cpufreq/powernow.c 2011-10-14 09:48:25.0000000...
2012 Oct 11
14
alloc_heap_pages is low efficient with more CPUs
...c_heap_pages( unsigned int zone_lo, unsigned int zone_hi, unsigned int node, unsigned int order, unsigned int memflags) { if ( pg[i].u.free.need_tlbflush ) { /* Add in extra CPUs that need flushing because of this page. */ cpus_andnot(extra_cpus_mask, cpu_online_map, mask); tlbflush_filter(extra_cpus_mask, pg[i].tlbflush_timestamp); cpus_or(mask, mask, extra_cpus_mask); } } 1 in the first starting, most of need_tlbflush=NULL, so cost little; in the second one, most of RAM have been used thus makes need_tlbflush=true, so cos...
2012 Mar 09
10
[PATCH 0 of 9] (v2) arm: SMP boot
This patch series implements SMP boot for arch/arm, as far as getting all CPUs up and running the idle loop. Changes from v1: - moved barriers out of loop in udelay() - dropped broken GIC change in favour of explanatory comment - made the increment of ready_cpus atomic (I couldn''t move the increment to before signalling the next CPU because the PT switch has to happen between
2012 Mar 27
0
[PATCH 2/4] x86/hpet: replace disabling of legacy broadcast
...return; + } hpet_write32(*hpet_boot_cfg & ~HPET_CFG_ENABLE, HPET_CFG); --- a/xen/arch/x86/smp.c +++ b/xen/arch/x86/smp.c @@ -349,12 +349,13 @@ void __stop_this_cpu(void) */ clts(); asm volatile ( "fninit" ); + + cpumask_clear_cpu(smp_processor_id(), &cpu_online_map); } static void stop_this_cpu(void *dummy) { __stop_this_cpu(); - cpumask_clear_cpu(smp_processor_id(), &cpu_online_map); for ( ; ; ) halt(); } _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xe...
2007 Apr 18
2
[PATCH] Simplify smp_call_function*() by using common implementation
...tion_mask(cpumask_t mask, + void (*func)(void *), void *info, + int wait) { struct call_data_struct data; - int cpus = num_online_cpus() - 1; + cpumask_t allbutself; + int cpus; + + /* Can deadlock when called with interrupts disabled */ + WARN_ON(irqs_disabled()); + + allbutself = cpu_online_map; + cpu_clear(smp_processor_id(), allbutself); + + cpus_and(mask, mask, allbutself); + cpus = cpus_weight(mask); if (!cpus) - return; + return 0; data.func = func; data.info = info; @@ -533,9 +545,12 @@ static void __smp_call_function(void (*f call_data = &data; mb(); - - /* S...
2007 Apr 18
2
[PATCH] Simplify smp_call_function*() by using common implementation
...tion_mask(cpumask_t mask, + void (*func)(void *), void *info, + int wait) { struct call_data_struct data; - int cpus = num_online_cpus() - 1; + cpumask_t allbutself; + int cpus; + + /* Can deadlock when called with interrupts disabled */ + WARN_ON(irqs_disabled()); + + allbutself = cpu_online_map; + cpu_clear(smp_processor_id(), allbutself); + + cpus_and(mask, mask, allbutself); + cpus = cpus_weight(mask); if (!cpus) - return; + return 0; data.func = func; data.info = info; @@ -533,9 +545,12 @@ static void __smp_call_function(void (*f call_data = &data; mb(); - - /* S...
2007 Apr 28
3
[PATCH] i386: introduce voyager smp_ops, fix voyager build
...he target cpu calls @func. - * - * You must not call this function with disabled interrupts or from a - * hardware interrupt handler or from a bottom half handler. - */ -int smp_call_function(void (*func) (void *info), void *info, int nonatomic, - int wait) -{ - return smp_call_function_mask(cpu_online_map, func, info, wait); -} -EXPORT_SYMBOL(smp_call_function); - -/** - * smp_call_function_single - Run a function on another CPU - * @cpu: The target CPU. Cannot be the calling CPU. - * @func: The function to run. This must be fast and non-blocking. - * @info: An arbitrary pointer to pass to the func...
2007 Apr 28
3
[PATCH] i386: introduce voyager smp_ops, fix voyager build
...he target cpu calls @func. - * - * You must not call this function with disabled interrupts or from a - * hardware interrupt handler or from a bottom half handler. - */ -int smp_call_function(void (*func) (void *info), void *info, int nonatomic, - int wait) -{ - return smp_call_function_mask(cpu_online_map, func, info, wait); -} -EXPORT_SYMBOL(smp_call_function); - -/** - * smp_call_function_single - Run a function on another CPU - * @cpu: The target CPU. Cannot be the calling CPU. - * @func: The function to run. This must be fast and non-blocking. - * @info: An arbitrary pointer to pass to the func...
2009 Jul 15
0
[PATCH] rename for_each_cpu() to for_each_possible_cpu()
...9-07-15 10:04:01.000000000 +0200 @@ -61,7 +61,7 @@ * * int any_online_cpu(mask) First online cpu in mask, or NR_CPUS * - * for_each_cpu(cpu) for-loop cpu over cpu_possible_map + * for_each_possible_cpu(cpu) for-loop cpu over cpu_possible_map * for_each_online_cpu(cpu) for-loop cpu over cpu_online_map * for_each_present_cpu(cpu) for-loop cpu over cpu_present_map * @@ -402,9 +402,9 @@ extern cpumask_t cpu_present_map; cpu; \ }) -#define for_each_cpu(cpu) for_each_cpu_mask((cpu), cpu_possible_map) -#define for_each_online_cpu(cpu) for_each_cpu_mask((cpu), cpu_online_map) -#define...
2013 May 07
1
[PATCH V2] xen/arm: implement smp_call_function
...info); - void *info; - int wait; - cpumask_t selected; -} call_data; - -void smp_call_function( - void (*func) (void *info), - void *info, - int wait) +void smp_send_call_function_mask(const cpumask_t *mask) { - cpumask_t allbutself; - - cpumask_andnot(&allbutself, &cpu_online_map, - cpumask_of(smp_processor_id())); - on_selected_cpus(&allbutself, func, info, wait); -} - -void on_selected_cpus( - const cpumask_t *selected, - void (*func) (void *info), - void *info, - int wait) -{ - unsigned int nr_cpus; - - ASSERT(local_irq_is_enabl...
2007 Sep 08
4
[PATCH] Unified shutdown code
...*d) { diff -r a53aaea4c698 -r a85c4081738a xen/arch/x86/smp.c --- a/xen/arch/x86/smp.c Fri Sep 07 19:54:29 2007 +0100 +++ b/xen/arch/x86/smp.c Fri Sep 07 17:37:01 2007 -0700 @@ -306,12 +306,13 @@ int on_selected_cpus( static void stop_this_cpu (void *dummy) { - cpu_clear(smp_processor_id(), cpu_online_map); - local_irq_disable(); disable_local_APIC(); hvm_cpu_down(); + /* not really offline until just before we halt */ + cpu_clear(smp_processor_id(), cpu_online_map); + for ( ; ; ) __asm__ __volatile__ ( "hlt" ); } diff -r a53aaea4c698 -r a85c4081738a x...
2011 Sep 07
10
[PATCH] IRQ: Group IRQ_MOVE_CLEANUP_VECTOR with other hypervisor IPIs
...genapic->send_IPI_self(MOVE_CLEANUP_VECTOR); TRACE_3D(TRC_HW_IRQ_MOVE_CLEANUP_DELAY, irq, vector, smp_processor_id()); goto unlock; @@ -513,7 +513,7 @@ static void send_cleanup_vector(struct i cpus_and(cleanup_mask, cfg->old_cpu_mask, cpu_online_map); cfg->move_cleanup_count = cpus_weight(cleanup_mask); - genapic->send_IPI_mask(&cleanup_mask, IRQ_MOVE_CLEANUP_VECTOR); + genapic->send_IPI_mask(&cleanup_mask, MOVE_CLEANUP_VECTOR); cfg->move_in_progress = 0; } diff -r 0268e7380953 -r c7884dbb6f7d xen/arch/x8...
2013 Sep 26
8
[PATCH v5 0/7] Dissociate logical and gic/hardware CPU ID
Hi, This is the fifth version of this patch series. With the Versatile Express TC2, it''s possible to boot only with A7 or A15. If the user choose to boot with only A7, the CPU ID will start at 0x100. As Xen relies on it to set the logical ID and the GIC, it won''t be possible to use Xen with this use case. This patch series is divided in 3 parts: - Patch 1: prepare Xen
2009 Sep 30
0
[PATCH] Disable HPET broadcast mode on kexec
...; legacy_hpet_event.flags |= HPET_EVT_DISABLE; @@ -619,7 +620,7 @@ cfg &= ~HPET_CFG_LEGACY; hpet_write32(cfg, HPET_CFG); - spin_unlock_irq(&legacy_hpet_event.lock); + spin_unlock_irqrestore(&legacy_hpet_event.lock, flags); smp_send_event_check_mask(&cpu_online_map); } _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
2008 Jun 10
0
[PATCH] xen: add xen_arch_resume()/xen_timer_resume hook for ia64 support.
...3 +++ 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/arch/x86/xen/suspend.c b/arch/x86/xen/suspend.c index 251669a..2a234db 100644 --- a/arch/x86/xen/suspend.c +++ b/arch/x86/xen/suspend.c @@ -38,8 +38,11 @@ void xen_post_suspend(int suspend_cancelled) xen_cpu_initialized_map = cpu_online_map; #endif xen_vcpu_restore(); - xen_timer_resume(); } } +void xen_arch_resume(void) +{ + /* nothing */ +} diff --git a/arch/x86/xen/xen-ops.h b/arch/x86/xen/xen-ops.h index 9a05559..a457e03 100644 --- a/arch/x86/xen/xen-ops.h +++ b/arch/x86/xen/xen-ops.h @@ -37,7 +37,6 @@ void __init xen_...
2008 Jun 10
0
[PATCH] xen: add xen_arch_resume()/xen_timer_resume hook for ia64 support.
...3 +++ 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/arch/x86/xen/suspend.c b/arch/x86/xen/suspend.c index 251669a..2a234db 100644 --- a/arch/x86/xen/suspend.c +++ b/arch/x86/xen/suspend.c @@ -38,8 +38,11 @@ void xen_post_suspend(int suspend_cancelled) xen_cpu_initialized_map = cpu_online_map; #endif xen_vcpu_restore(); - xen_timer_resume(); } } +void xen_arch_resume(void) +{ + /* nothing */ +} diff --git a/arch/x86/xen/xen-ops.h b/arch/x86/xen/xen-ops.h index 9a05559..a457e03 100644 --- a/arch/x86/xen/xen-ops.h +++ b/arch/x86/xen/xen-ops.h @@ -37,7 +37,6 @@ void __init xen_...
2008 Jun 10
0
[PATCH] xen: add xen_arch_resume()/xen_timer_resume hook for ia64 support.
...3 +++ 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/arch/x86/xen/suspend.c b/arch/x86/xen/suspend.c index 251669a..2a234db 100644 --- a/arch/x86/xen/suspend.c +++ b/arch/x86/xen/suspend.c @@ -38,8 +38,11 @@ void xen_post_suspend(int suspend_cancelled) xen_cpu_initialized_map = cpu_online_map; #endif xen_vcpu_restore(); - xen_timer_resume(); } } +void xen_arch_resume(void) +{ + /* nothing */ +} diff --git a/arch/x86/xen/xen-ops.h b/arch/x86/xen/xen-ops.h index 9a05559..a457e03 100644 --- a/arch/x86/xen/xen-ops.h +++ b/arch/x86/xen/xen-ops.h @@ -37,7 +37,6 @@ void __init xen_...