@@ -649,12 +649,8 @@ void flush_smp_call_function_queue(void)
649649}
650650
651651static int __smp_call_function_single (int cpu , smp_call_func_t func ,
652- <<<<<<< HEAD
653- void * info , const struct cpumask * mask , int wait )
654- == == == =
655652 void * info , const struct cpumask * mask ,
656653 bool wait )
657- >>>>>>> 7.2 /preempt - ipi
658654{
659655 call_single_data_t * csd ;
660656 call_single_data_t csd_stack = {
@@ -726,17 +722,6 @@ static int __smp_call_function_single(int cpu, smp_call_func_t func,
726722
727723/**
728724 * smp_call_function_single - Run a function on a specific CPU
729- <<<<<<< HEAD
730- * @cpu: Specific target CPU for this function.
731- * @func: The function to run. This must be fast and non-blocking.
732- * @info: An arbitrary pointer to pass to the function.
733- * @wait: If true, wait until function has completed on other CPUs.
734- *
735- * Returns: %0 on success, else a negative status code.
736- */
737- int smp_call_function_single (int cpu , smp_call_func_t func , void * info ,
738- int wait )
739- == == == =
740725 * @cpu: Specific target CPU for this function.
741726 * @func: The function to run. This must be fast and non-blocking.
742727 * @info: An arbitrary pointer to pass to the function.
@@ -745,7 +730,6 @@ int smp_call_function_single(int cpu, smp_call_func_t func, void *info,
745730 * Returns: %0 on success, else a negative status code.
746731 */
747732int smp_call_function_single (int cpu , smp_call_func_t func , void * info , bool wait )
748- >>>>>>> 7.2 /preempt - ipi
749733{
750734 return __smp_call_function_single (cpu , func , info , NULL , wait );
751735}
@@ -874,29 +858,16 @@ static void smp_call_function_many_cond(const struct cpumask *mask,
874858 unsigned int scf_flags ,
875859 smp_cond_func_t cond_func )
876860{
877- <<<<<<< HEAD
878- int cpu , last_cpu , this_cpu ;
879- struct call_function_data * cfd ;
880- bool wait = scf_flags & SCF_WAIT ;
881- struct cpumask * cpumask , * task_mask ;
882- int nr_cpus = 0 ;
883- = == == ==
884861 struct cpumask * cpumask , * task_mask ;
885862 bool wait = scf_flags & SCF_WAIT ;
886863 struct call_function_data * cfd ;
887864 int cpu , last_cpu , this_cpu ;
888- >>>>>>> 7.2 /preempt - ipi
889865 bool run_remote = false;
890866 int nr_cpus = 0 ;
891867
892868 this_cpu = get_cpu ();
893- <<<<<<< HEAD
894- task_mask = smp_task_ipi_mask (current );
895- cfd = this_cpu_ptr (& cfd_data );
896- = == == ==
897869 cfd = this_cpu_ptr (& cfd_data );
898870 task_mask = smp_task_ipi_mask (current );
899- >>>>>>> 7.2 /preempt - ipi
900871 if (task_mask )
901872 cpumask = task_mask ;
902873 else
@@ -981,17 +952,6 @@ static void smp_call_function_many_cond(const struct cpumask *mask,
981952 }
982953
983954 /*
984- <<<<<<< HEAD
985- * Waiting for completion can take time, especially with many CPUs.
986- * On a PREEMPT kernel a per-task cpumask is used to track CPUs with
987- * pending IPI requests. This allows preemption to be enabled before
988- * waiting. On a !PREEMPT kernel the cpumask is shared and the call
989- * must block until completion to avoid modifications by another caller
990- * on this CPU.
991- */
992- if (task_mask )
993- put_cpu ();
994- = == == ==
995955 * The IPI work has been queued and dispatched. On PREEMPT kernels,
996956 * tasks created through dup_task_struct() have task-local wait masks.
997957 * The boot init_task can fall back to cfd->cpumask when the mask is
@@ -1000,7 +960,6 @@ static void smp_call_function_many_cond(const struct cpumask *mask,
1000960 * another task, so the per-CPU mask remains protected.
1001961 */
1002962 put_cpu ();
1003- >>>>>>> 7.2 /preempt - ipi
1004963
1005964 if (run_remote && wait ) {
1006965 for_each_cpu (cpu , cpumask ) {
@@ -1052,11 +1011,7 @@ EXPORT_SYMBOL(smp_call_function_many);
10521011void smp_call_function (smp_call_func_t func , void * info , int wait )
10531012{
10541013 smp_call_function_many_cond (cpu_online_mask , func , info ,
1055- <<<<<<< HEAD
1056- wait ? SCF_WAIT : 0 , NULL );
1057- = == == ==
10581014 wait ? SCF_WAIT : 0 , NULL );
1059- >>>>>>> 7.2 /preempt - ipi
10601015}
10611016EXPORT_SYMBOL (smp_call_function );
10621017
0 commit comments