search for: cpumask_of_cpu

Displaying 20 results from an estimated 68 matches for "cpumask_of_cpu".

2007 Apr 18
1
[PATCH] Add smp_ops interface
...p.c @@ -483,7 +483,7 @@ void flush_tlb_all(void) * it goes straight through and wastes no time serializing * anything. Worst case is that we lose a reschedule ... */ -void smp_send_reschedule(int cpu) +void native_smp_send_reschedule(int cpu) { WARN_ON(cpu_is_offline(cpu)); send_IPI_mask(cpumask_of_cpu(cpu), RESCHEDULE_VECTOR); @@ -576,9 +576,9 @@ static int __smp_call_function_mask(cpum * 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_mask(cpumask_t mask, - void (*func)(void *),...
2007 Apr 18
1
[PATCH] Add smp_ops interface
...p.c @@ -483,7 +483,7 @@ void flush_tlb_all(void) * it goes straight through and wastes no time serializing * anything. Worst case is that we lose a reschedule ... */ -void smp_send_reschedule(int cpu) +void native_smp_send_reschedule(int cpu) { WARN_ON(cpu_is_offline(cpu)); send_IPI_mask(cpumask_of_cpu(cpu), RESCHEDULE_VECTOR); @@ -576,9 +576,9 @@ static int __smp_call_function_mask(cpum * 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_mask(cpumask_t mask, - void (*func)(void *),...
2008 Aug 13
1
[PATCH] stop_machine: wean Xen off stop_machine_run
...3 10:48:27 2008 +1000 +++ b/drivers/xen/manage.c Wed Aug 13 15:50:02 2008 +1000 @@ -102,7 +102,7 @@ static void do_suspend(void) /* XXX use normal device tree? */ xenbus_suspend(); - err = stop_machine_run(xen_suspend, &cancelled, 0); + err = stop_machine(xen_suspend, &cancelled, &cpumask_of_cpu(0)); if (err) { printk(KERN_ERR "failed to start xen_suspend: %d\n", err); goto out;
2007 Apr 18
2
[PATCH] Simplify smp_call_function*() by using common implementation
...function_single(int cpu, void (*func) (void *info), void *info, + int nonatomic, int wait) +{ + /* prevent preemption and reschedule on another processor */ + int ret; + int me = get_cpu(); + if (cpu == me) { + WARN_ON(1); + put_cpu(); + return -EBUSY; + } + + ret = smp_call_function_mask(cpumask_of_cpu(cpu), func, info, wait); + + put_cpu(); + return ret; +} +EXPORT_SYMBOL(smp_call_function_single); static void stop_this_cpu (void * dummy) { @@ -598,7 +664,7 @@ void smp_send_stop(void) unsigned long flags; local_irq_save(flags); - __smp_call_function(stop_this_cpu, NULL, 0, 0); + __smp_...
2007 Apr 18
2
[PATCH] Simplify smp_call_function*() by using common implementation
...function_single(int cpu, void (*func) (void *info), void *info, + int nonatomic, int wait) +{ + /* prevent preemption and reschedule on another processor */ + int ret; + int me = get_cpu(); + if (cpu == me) { + WARN_ON(1); + put_cpu(); + return -EBUSY; + } + + ret = smp_call_function_mask(cpumask_of_cpu(cpu), func, info, wait); + + put_cpu(); + return ret; +} +EXPORT_SYMBOL(smp_call_function_single); static void stop_this_cpu (void * dummy) { @@ -598,7 +664,7 @@ void smp_send_stop(void) unsigned long flags; local_irq_save(flags); - __smp_call_function(stop_this_cpu, NULL, 0, 0); + __smp_...
2007 Apr 18
2
[PATCH 12/12; UPDATED] xen-ldt
...def CONFIG_SMP /* avoids "defined but not used" warnig */ static void flush_ldt(void *null) @@ -58,16 +59,22 @@ #ifdef CONFIG_SMP cpumask_t mask; preempt_disable(); + make_pages_readonly(pc->ldt, (pc->size * LDT_ENTRY_SIZE) / + PAGE_SIZE); load_LDT(pc); mask = cpumask_of_cpu(smp_processor_id()); if (!cpus_equal(current->mm->cpu_vm_mask, mask)) smp_call_function(flush_ldt, NULL, 1, 1); preempt_enable(); #else + make_pages_readonly(pc->ldt, (pc->size * LDT_ENTRY_SIZE) / + PAGE_SIZE); load_LDT(pc); #endif } if (oldsize) { + make_pa...
2007 Apr 18
2
[PATCH 12/12; UPDATED] xen-ldt
...def CONFIG_SMP /* avoids "defined but not used" warnig */ static void flush_ldt(void *null) @@ -58,16 +59,22 @@ #ifdef CONFIG_SMP cpumask_t mask; preempt_disable(); + make_pages_readonly(pc->ldt, (pc->size * LDT_ENTRY_SIZE) / + PAGE_SIZE); load_LDT(pc); mask = cpumask_of_cpu(smp_processor_id()); if (!cpus_equal(current->mm->cpu_vm_mask, mask)) smp_call_function(flush_ldt, NULL, 1, 1); preempt_enable(); #else + make_pages_readonly(pc->ldt, (pc->size * LDT_ENTRY_SIZE) / + PAGE_SIZE); load_LDT(pc); #endif } if (oldsize) { + make_pa...
2007 Sep 08
4
[PATCH] Unified shutdown code
...e != TEARDOWN_TYPE_EARLY ) + { + /* Ensure we are the boot CPU. */ + if ( GET_APIC_ID(apic_read(APIC_ID)) != boot_cpu_physical_apicid ) + { + printk("machine_teardown() not called on BSP\n"); + /* Send IPI to the boot CPU (logical cpu 0). */ + on_selected_cpus(cpumask_of_cpu(0), (void *)machine_teardown, + (void *)(unsigned long)type, 1, 0); + /* park us until smp_send_stop() sends us to shutdown handler */ + for ( ; ; ) + safe_halt(); + } + } watchdog_disable(); + console_start_sync(); - local_irq_enable(); - - /* Ensure w...
2007 Apr 28
3
[PATCH] i386: introduce voyager smp_ops, fix voyager build
...+468,7 @@ void flush_tlb_all(void) * it goes straight through and wastes no time serializing * anything. Worst case is that we lose a reschedule ... */ -void native_smp_send_reschedule(int cpu) +static void native_smp_send_reschedule(int cpu) { WARN_ON(cpu_is_offline(cpu)); send_IPI_mask(cpumask_of_cpu(cpu), RESCHEDULE_VECTOR); @@ -547,9 +547,10 @@ static void __smp_call_function(void (*f * You must not call this function with disabled interrupts or from a * hardware interrupt handler or from a bottom half handler. */ -int native_smp_call_function_mask(cpumask_t mask, - void (*func)(vo...
2007 Apr 28
3
[PATCH] i386: introduce voyager smp_ops, fix voyager build
...+468,7 @@ void flush_tlb_all(void) * it goes straight through and wastes no time serializing * anything. Worst case is that we lose a reschedule ... */ -void native_smp_send_reschedule(int cpu) +static void native_smp_send_reschedule(int cpu) { WARN_ON(cpu_is_offline(cpu)); send_IPI_mask(cpumask_of_cpu(cpu), RESCHEDULE_VECTOR); @@ -547,9 +547,10 @@ static void __smp_call_function(void (*f * You must not call this function with disabled interrupts or from a * hardware interrupt handler or from a bottom half handler. */ -int native_smp_call_function_mask(cpumask_t mask, - void (*func)(vo...
2007 Apr 18
0
[PATCH 13/14] i386 / Introduce hypervisor ldt hooks
...lloc.h> #ifdef CONFIG_SMP /* avoids "defined but not used" warning */ static void flush_ldt(void *null) @@ -59,16 +60,19 @@ #ifdef CONFIG_SMP cpumask_t mask; preempt_disable(); + SetPagesLDT(pc->ldt, (pc->size * LDT_ENTRY_SIZE) / PAGE_SIZE); load_LDT(pc); mask = cpumask_of_cpu(smp_processor_id()); if (!cpus_equal(current->mm->cpu_vm_mask, mask)) smp_call_function(flush_ldt, NULL, 1, 1); preempt_enable(); #else + SetPagesLDT(pc->ldt, (pc->size * LDT_ENTRY_SIZE) / PAGE_SIZE); load_LDT(pc); #endif } if (oldsize) { + ClearPagesLDT(oldldt, (ol...
2011 Oct 17
0
[PATCH] powernow: don't read never initialoized structure member
...now about dependency only when software - * coordination is required. - */ if (policy->shared_type == CPUFREQ_SHARED_TYPE_ALL || policy->shared_type == CPUFREQ_SHARED_TYPE_ANY) { - policy->cpus = perf->shared_cpu_map; - } else { - policy->cpus = cpumask_of_cpu(cpu); + printk("Unsupported sharing type\n"); + result = -ENODEV; + goto err_unreg; } + cpumask_copy(&policy->cpus, cpumask_of(cpu)); /* capability check */ if (perf->state_count <= 1) { --- a/xen/include/acpi/cpufreq/processor_per...
2007 Apr 18
0
[PATCH 13/14] i386 / Introduce hypervisor ldt hooks
...lloc.h> #ifdef CONFIG_SMP /* avoids "defined but not used" warning */ static void flush_ldt(void *null) @@ -59,16 +60,19 @@ #ifdef CONFIG_SMP cpumask_t mask; preempt_disable(); + SetPagesLDT(pc->ldt, (pc->size * LDT_ENTRY_SIZE) / PAGE_SIZE); load_LDT(pc); mask = cpumask_of_cpu(smp_processor_id()); if (!cpus_equal(current->mm->cpu_vm_mask, mask)) smp_call_function(flush_ldt, NULL, 1, 1); preempt_enable(); #else + SetPagesLDT(pc->ldt, (pc->size * LDT_ENTRY_SIZE) / PAGE_SIZE); load_LDT(pc); #endif } if (oldsize) { + ClearPagesLDT(oldldt, (ol...
2007 Apr 18
0
[PATCH 12/12] xen-ldt
...def CONFIG_SMP /* avoids "defined but not used" warnig */ static void flush_ldt(void *null) @@ -58,16 +59,22 @@ #ifdef CONFIG_SMP cpumask_t mask; preempt_disable(); + make_pages_readonly(pc->ldt, (pc->size * LDT_ENTRY_SIZE) / + PAGE_SIZE); load_LDT(pc); mask = cpumask_of_cpu(smp_processor_id()); if (!cpus_equal(current->mm->cpu_vm_mask, mask)) smp_call_function(flush_ldt, NULL, 1, 1); preempt_enable(); #else + make_pages_readonly(pc->ldt, (pc->size * LDT_ENTRY_SIZE) / + PAGE_SIZE); load_LDT(pc); #endif } if (oldsize) { + make_pa...
2007 Apr 18
0
[PATCH 12/12] xen-ldt
...def CONFIG_SMP /* avoids "defined but not used" warnig */ static void flush_ldt(void *null) @@ -58,16 +59,22 @@ #ifdef CONFIG_SMP cpumask_t mask; preempt_disable(); + make_pages_readonly(pc->ldt, (pc->size * LDT_ENTRY_SIZE) / + PAGE_SIZE); load_LDT(pc); mask = cpumask_of_cpu(smp_processor_id()); if (!cpus_equal(current->mm->cpu_vm_mask, mask)) smp_call_function(flush_ldt, NULL, 1, 1); preempt_enable(); #else + make_pages_readonly(pc->ldt, (pc->size * LDT_ENTRY_SIZE) / + PAGE_SIZE); load_LDT(pc); #endif } if (oldsize) { + make_pa...
2007 Jul 22
0
[PATCH] Fix lguest clock when jiffies not available
...CTHZ) << 8; - lguest_clock.mask = CLOCKSOURCE_MASK(32); } clock_base = lguest_clock_read(); clocksource_register(&lguest_clock); + paravirt_ops.sched_clock = lguest_sched_clock; /* We can't set cpumask in the initializer: damn C limitations! */ lguest_clockevent.cpumask = cpumask_of_cpu(0); @@ -590,7 +596,6 @@ __init void lguest_init(void *boot) paravirt_ops.time_init = lguest_time_init; paravirt_ops.set_lazy_mode = lguest_lazy_mode; paravirt_ops.wbinvd = lguest_wbinvd; - paravirt_ops.sched_clock = lguest_sched_clock; hcall(LHCALL_LGUEST_INIT, __pa(&lguest_data), 0,...
2007 Jul 22
0
[PATCH] Fix lguest clock when jiffies not available
...CTHZ) << 8; - lguest_clock.mask = CLOCKSOURCE_MASK(32); } clock_base = lguest_clock_read(); clocksource_register(&lguest_clock); + paravirt_ops.sched_clock = lguest_sched_clock; /* We can't set cpumask in the initializer: damn C limitations! */ lguest_clockevent.cpumask = cpumask_of_cpu(0); @@ -590,7 +596,6 @@ __init void lguest_init(void *boot) paravirt_ops.time_init = lguest_time_init; paravirt_ops.set_lazy_mode = lguest_lazy_mode; paravirt_ops.wbinvd = lguest_wbinvd; - paravirt_ops.sched_clock = lguest_sched_clock; hcall(LHCALL_LGUEST_INIT, __pa(&lguest_data), 0,...
2007 Aug 30
0
[PATCH][Retry 1] 1/4: cpufreq/PowerNow! in Xen: Xen timer changes
...their respective physical CPUs. */ v->processor = processor; - if ( is_idle_domain(d) || ((d->domain_id == 0) && opt_dom0_vcpus_pin) ) + if ( is_idle_domain(d) || ((d->domain_id == 0) && ( opt_cpufreq || opt_dom0_vcpus_pin) ) ) v->cpu_affinity = cpumask_of_cpu(processor); else cpus_setall(v->cpu_affinity); @@ -254,7 +256,7 @@ int vcpu_set_affinity(struct vcpu *v, cp { cpumask_t online_affinity; - if ( (v->domain->domain_id == 0) && opt_dom0_vcpus_pin ) + if ( (v->domain->domain_id == 0) && ( opt_...
2007 Oct 31
3
[PATCH 0/7] (Re-)introducing pvops for x86_64 - Consolidation part
Hi folks, Here is the result of the latest work on the pvops front, after the x86 arch merge. From the functionality point of view, almost nothing was changed, except for proper vsmp support - which was discussed, but not implemented before - and the introduction of smp_ops in x86_64, which eased the merging of the smp header. Speaking of the merge, a significant part (although not majority) of
2007 Oct 31
3
[PATCH 0/7] (Re-)introducing pvops for x86_64 - Consolidation part
Hi folks, Here is the result of the latest work on the pvops front, after the x86 arch merge. From the functionality point of view, almost nothing was changed, except for proper vsmp support - which was discussed, but not implemented before - and the introduction of smp_ops in x86_64, which eased the merging of the smp header. Speaking of the merge, a significant part (although not majority) of