X-Git-Url: http://pilppa.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=include%2Fasm-s390%2Fsmp.h;h=7097c96ed026ff41fb9b4467be56e6c18bdac9df;hb=d86f90f9913d27bb968132bf63499c56bca56db6;hp=9fb02e9779c9fe470d9386f02901a0ee16f46062;hpb=6bbd9b6d694ff7242d63cda2faac4bd59ee4328e;p=linux-2.6-omap-h63xx.git diff --git a/include/asm-s390/smp.h b/include/asm-s390/smp.h index 9fb02e9779c..7097c96ed02 100644 --- a/include/asm-s390/smp.h +++ b/include/asm-s390/smp.h @@ -18,6 +18,7 @@ #include #include +#include /* s390 specific smp.c headers @@ -56,7 +57,7 @@ static inline __u16 hard_smp_processor_id(void) { __u16 cpu_address; - __asm__ ("stap %0\n" : "=m" (cpu_address)); + asm volatile("stap %0" : "=m" (cpu_address)); return cpu_address; } @@ -101,6 +102,13 @@ smp_call_function_on(void (*func) (void *info), void *info, func(info); return 0; } + +static inline void smp_send_stop(void) +{ + /* Disable all interrupts/machine checks */ + __load_psw_mask(PSW_KERNEL_BITS & ~PSW_MASK_MCHECK); +} + #define smp_cpu_not_running(cpu) 1 #define smp_get_cpu(cpu) ({ 0; }) #define smp_put_cpu(cpu) ({ 0; })