ARC: [SMP] General Fixes
authorVineet Gupta <vgupta@synopsys.com>
Mon, 24 Feb 2014 03:42:50 +0000 (11:42 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 14 Nov 2014 16:59:56 +0000 (08:59 -0800)
commit c3441edd2dea83923421fd6050d2ffdc57696323 upstream.

-Pass the expected arg to non-boot park'ing routine
 (It worked so far because existing SMP backends don't use the arg)

-CONFIG_DEBUG_PREEMPT warning

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/arc/kernel/head.S
arch/arc/mm/cache_arc700.c

index 9919972..4ad0491 100644 (file)
        .globl stext
 stext:
        ;-------------------------------------------------------------------
-       ; Don't clobber r0-r4 yet. It might have bootloader provided info
+       ; Don't clobber r0-r2 yet. It might have bootloader provided info
        ;-------------------------------------------------------------------
 
        sr      @_int_vec_base_lds, [AUX_INTR_VEC_BASE]
 
 #ifdef CONFIG_SMP
-       ; Only Boot (Master) proceeds. Others wait in platform dependent way
+       ; Ensure Boot (Master) proceeds. Others wait in platform dependent way
        ;       IDENTITY Reg [ 3  2  1  0 ]
        ;       (cpu-id)             ^^^        => Zero for UP ARC700
        ;                                       => #Core-ID if SMP (Master 0)
@@ -39,7 +39,8 @@ stext:
        ; need to make sure only boot cpu takes this path.
        GET_CPU_ID  r5
        cmp     r5, 0
-       jnz     arc_platform_smp_wait_to_boot
+       mov.ne  r0, r5
+       jne     arc_platform_smp_wait_to_boot
 #endif
        ; Clear BSS before updating any globals
        ; XXX: use ZOL here
index 400c663..89edf79 100644 (file)
 #define DC_CTRL_INV_MODE_FLUSH  0x40
 #define DC_CTRL_FLUSH_STATUS    0x100
 
-char *arc_cache_mumbojumbo(int cpu_id, char *buf, int len)
+char *arc_cache_mumbojumbo(int c, char *buf, int len)
 {
        int n = 0;
-       unsigned int c = smp_processor_id();
 
 #define PR_CACHE(p, enb, str)                                          \
 {                                                                      \