linux_dsm_epyc7002/drivers/s390/char
Martin Schwidefsky 8b646bd759 [S390] rework smp code
Define struct pcpu and merge some of the NR_CPUS arrays into it, including
__cpu_logical_map, current_set and smp_cpu_state. Split smp related
functions to those operating on physical cpus and the functions operating
on a logical cpu number. Make the functions for physical cpus use a
pointer to a struct pcpu. This hides the knowledge about cpu addresses in
smp.c, entry[64].S and swsusp_asm64.S, thus remove the sigp.h header.

The PSW restart mechanism is used to start secondary cpus, calling a
function on an online cpu, calling a function on the ipl cpu, and for
the nmi signal. Replace the different assembler functions with a
single function restart_int_handler. The new entry point calls a function
whose pointer is stored in the lowcore of the target cpu and it can wait
for the source cpu to stop. This covers all existing use cases.

Overall the code is now simpler and there are ~380 lines less code.

Reviewed-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2012-03-11 11:59:28 -04:00
..
con3215.c [S390] 3215 deadlock with tty_wakeup 2012-02-17 10:29:33 +01:00
con3270.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
ctrlchar.c Input: sysrq - drop tty argument form handle_sysrq() 2010-08-21 00:34:45 -07:00
ctrlchar.h
defkeymap.c
defkeymap.map
fs3270.c compat: fix compile breakage on s390 2012-02-27 07:54:27 -08:00
Kconfig [S390] kconfig: remove tape interface support comment 2011-07-24 10:48:00 +02:00
keyboard.c Merge branch 'tty-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6 2011-03-16 15:11:04 -07:00
keyboard.h tty: phase out of ioctl file pointer for tty3270 as well 2011-02-25 09:56:13 -08:00
Makefile [S390] get CPC image name 2011-05-23 10:24:32 +02:00
monreader.c llseek: automatically add .llseek fop 2010-10-15 15:53:27 +02:00
monwriter.c [S390] monwriter: fix return code handling 2011-05-23 10:24:29 +02:00
raw3270.c module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
raw3270.h
sclp_async.c [S390] sclp_async: Use kstrtoul_from_user 2011-08-03 16:44:20 +02:00
sclp_cmd.c [S390] cleanup psw related bits and pieces 2011-10-30 15:16:43 +01:00
sclp_con.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
sclp_config.c cpu: convert 'cpu' and 'machinecheck' sysdev_class to a regular subsystem 2011-12-21 14:29:42 -08:00
sclp_cpi_sys.c s390: add missing module.h/export.h includes 2011-10-31 19:30:58 -04:00
sclp_cpi_sys.h
sclp_cpi.c
sclp_ocf.c [S390] get CPC image name 2011-05-23 10:24:32 +02:00
sclp_quiesce.c [S390] rework smp code 2012-03-11 11:59:28 -04:00
sclp_rw.c
sclp_rw.h
sclp_sdias.c [S390] get rid of unused variables 2011-05-23 10:24:28 +02:00
sclp_tty.c [S390] sclp: event buffer dissection 2011-05-23 10:24:31 +02:00
sclp_tty.h
sclp_vt220.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
sclp.c [S390] irq: merge irq.c and s390_ext.c 2011-05-26 09:48:24 +02:00
sclp.h [S390] get CPC image name 2011-05-23 10:24:32 +02:00
tape_34xx.c [S390] fix mismatch in summation of I/O IRQ statistics 2011-10-30 15:16:15 +01:00
tape_3590.c [S390] fix mismatch in summation of I/O IRQ statistics 2011-10-30 15:16:15 +01:00
tape_3590.h
tape_char.c Fix common misspellings 2011-03-31 11:26:23 -03:00
tape_class.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
tape_class.h s390: tape_class.h: remove kobj_map.h inclusion 2011-12-13 11:17:40 -08:00
tape_core.c [S390] fix mismatch in summation of I/O IRQ statistics 2011-10-30 15:16:15 +01:00
tape_proc.c [S390] tape: Add pr_fmt() macro to all tape source files 2009-12-18 17:43:32 +01:00
tape_std.c [S390] tape: remove unused/not handled return codes 2011-05-23 10:24:29 +02:00
tape_std.h
tape.h [S390] tape: deadlock on system work queue 2011-03-03 17:56:14 +01:00
tty3270.c Fix common misspellings 2011-03-31 11:26:23 -03:00
tty3270.h
vmcp.c compat: fix compile breakage on s390 2012-02-27 07:54:27 -08:00
vmcp.h
vmlogrdr.c atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
vmur.c Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux 2011-11-06 19:44:47 -08:00
vmur.h
vmwatchdog.c module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
zcore.c [S390] rework smp code 2012-03-11 11:59:28 -04:00