diff options
| -rw-r--r-- | kernel/padata.c | 74 |
1 files changed, 37 insertions, 37 deletions
diff --git a/kernel/padata.c b/kernel/padata.c index 67ddd4acde9d..993278895ccc 100644 --- a/kernel/padata.c +++ b/kernel/padata.c | |||
| @@ -647,6 +647,43 @@ out: | |||
| 647 | } | 647 | } |
| 648 | EXPORT_SYMBOL(padata_set_cpumask); | 648 | EXPORT_SYMBOL(padata_set_cpumask); |
| 649 | 649 | ||
| 650 | /** | ||
| 651 | * padata_start - start the parallel processing | ||
| 652 | * | ||
| 653 | * @pinst: padata instance to start | ||
| 654 | */ | ||
| 655 | int padata_start(struct padata_instance *pinst) | ||
| 656 | { | ||
| 657 | int err = 0; | ||
| 658 | |||
| 659 | mutex_lock(&pinst->lock); | ||
| 660 | |||
| 661 | if (pinst->flags & PADATA_INVALID) | ||
| 662 | err = -EINVAL; | ||
| 663 | |||
| 664 | __padata_start(pinst); | ||
| 665 | |||
| 666 | mutex_unlock(&pinst->lock); | ||
| 667 | |||
| 668 | return err; | ||
| 669 | } | ||
| 670 | EXPORT_SYMBOL(padata_start); | ||
| 671 | |||
| 672 | /** | ||
| 673 | * padata_stop - stop the parallel processing | ||
| 674 | * | ||
| 675 | * @pinst: padata instance to stop | ||
| 676 | */ | ||
| 677 | void padata_stop(struct padata_instance *pinst) | ||
| 678 | { | ||
| 679 | mutex_lock(&pinst->lock); | ||
| 680 | __padata_stop(pinst); | ||
| 681 | mutex_unlock(&pinst->lock); | ||
| 682 | } | ||
| 683 | EXPORT_SYMBOL(padata_stop); | ||
| 684 | |||
| 685 | #ifdef CONFIG_HOTPLUG_CPU | ||
| 686 | |||
| 650 | static int __padata_add_cpu(struct padata_instance *pinst, int cpu) | 687 | static int __padata_add_cpu(struct padata_instance *pinst, int cpu) |
| 651 | { | 688 | { |
| 652 | struct parallel_data *pd; | 689 | struct parallel_data *pd; |
| @@ -726,43 +763,6 @@ int padata_remove_cpu(struct padata_instance *pinst, int cpu, int mask) | |||
| 726 | } | 763 | } |
| 727 | EXPORT_SYMBOL(padata_remove_cpu); | 764 | EXPORT_SYMBOL(padata_remove_cpu); |
| 728 | 765 | ||
| 729 | /** | ||
| 730 | * padata_start - start the parallel processing | ||
| 731 | * | ||
| 732 | * @pinst: padata instance to start | ||
| 733 | */ | ||
| 734 | int padata_start(struct padata_instance *pinst) | ||
| 735 | { | ||
| 736 | int err = 0; | ||
| 737 | |||
| 738 | mutex_lock(&pinst->lock); | ||
| 739 | |||
| 740 | if (pinst->flags & PADATA_INVALID) | ||
| 741 | err =-EINVAL; | ||
| 742 | |||
| 743 | __padata_start(pinst); | ||
| 744 | |||
| 745 | mutex_unlock(&pinst->lock); | ||
| 746 | |||
| 747 | return err; | ||
| 748 | } | ||
| 749 | EXPORT_SYMBOL(padata_start); | ||
| 750 | |||
| 751 | /** | ||
| 752 | * padata_stop - stop the parallel processing | ||
| 753 | * | ||
| 754 | * @pinst: padata instance to stop | ||
| 755 | */ | ||
| 756 | void padata_stop(struct padata_instance *pinst) | ||
| 757 | { | ||
| 758 | mutex_lock(&pinst->lock); | ||
| 759 | __padata_stop(pinst); | ||
| 760 | mutex_unlock(&pinst->lock); | ||
| 761 | } | ||
| 762 | EXPORT_SYMBOL(padata_stop); | ||
| 763 | |||
| 764 | #ifdef CONFIG_HOTPLUG_CPU | ||
| 765 | |||
| 766 | static inline int pinst_has_cpu(struct padata_instance *pinst, int cpu) | 766 | static inline int pinst_has_cpu(struct padata_instance *pinst, int cpu) |
| 767 | { | 767 | { |
| 768 | return cpumask_test_cpu(cpu, pinst->cpumask.pcpu) || | 768 | return cpumask_test_cpu(cpu, pinst->cpumask.pcpu) || |
