Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc

* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
powerpc/pseries: Fix kexec regression caused by CPPR tracking

+12 -2
+12 -2
arch/powerpc/platforms/pseries/xics.c
··· 784 { 785 struct xics_cppr *os_cppr = &__get_cpu_var(xics_cppr); 786 787 - BUG_ON(os_cppr->index != 0); 788 789 - os_cppr->stack[os_cppr->index] = cppr; 790 791 if (firmware_has_feature(FW_FEATURE_LPAR)) 792 lpar_cppr_info(cppr); ··· 825 826 void xics_teardown_cpu(void) 827 { 828 int cpu = smp_processor_id(); 829 830 xics_set_cpu_priority(0); 831 832 /* Clear any pending IPI request */
··· 784 { 785 struct xics_cppr *os_cppr = &__get_cpu_var(xics_cppr); 786 787 + /* 788 + * we only really want to set the priority when there's 789 + * just one cppr value on the stack 790 + */ 791 + WARN_ON(os_cppr->index != 0); 792 793 + os_cppr->stack[0] = cppr; 794 795 if (firmware_has_feature(FW_FEATURE_LPAR)) 796 lpar_cppr_info(cppr); ··· 821 822 void xics_teardown_cpu(void) 823 { 824 + struct xics_cppr *os_cppr = &__get_cpu_var(xics_cppr); 825 int cpu = smp_processor_id(); 826 827 + /* 828 + * we have to reset the cppr index to 0 because we're 829 + * not going to return from the IPI 830 + */ 831 + os_cppr->index = 0; 832 xics_set_cpu_priority(0); 833 834 /* Clear any pending IPI request */