android_kernel_xiaomi_sdm845/arch/s390
Sebastian Ott b4563e891a [S390] cio: wait for channel report
To fetch a pending channel report word (crw) we use a kernel
thread which triggers stcrw and sleeps on a semaphore. The s390
machine check handler uses crw_handle_channel_report to handle
one crw if needed.

This patch replaces the semaphore with a waitqueue (to block the
kernel thread) and an atomic_t (to count the number of pending
requests).

By this we achieve the ability to force this thread to check for
a pending crw (independent on when it is triggered by the machine
check handler) and wait for this action to finish.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2010-02-26 22:37:29 +01:00
..
appldata const: constify remaining dev_pm_ops 2009-12-15 08:53:25 -08:00
boot kbuild: use INSTALLKERNEL to select customized installkernel script 2009-09-20 12:18:14 +02:00
crypto [S390] s390: PTR_ERR return of wrong pointer in fallback_init_cip() 2009-12-18 17:43:31 +01:00
hypfs [S390] Use strim instead of strstrip to avoid false warnings. 2009-12-18 17:43:33 +01:00
include/asm [S390] cio: wait for channel report 2010-02-26 22:37:29 +01:00
kernel [S390] fix single stepped svcs with TRACE_IRQFLAGS=y 2010-01-27 10:12:49 +01:00
kvm KVM: S390: fix potential array overrun in intercept handling 2010-01-25 12:26:39 -02:00
lib [S390] uaccess: implement strict user copy checks 2010-02-26 22:37:29 +01:00
math-emu tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
mm [S390] use helpers for rlimits 2010-01-13 20:44:45 +01:00
oprofile Combine instrumentation menus in kernel/Kconfig.instrumentation 2007-10-19 11:53:54 -07:00
defconfig [S390] Update default configuration. 2010-01-04 09:05:58 +01:00
Kconfig [S390] Improve address space mode selection. 2009-12-07 12:51:33 +01:00
Kconfig.debug [S390] uaccess: implement strict user copy checks 2010-02-26 22:37:29 +01:00
Makefile [S390] hibernation: merge files and move to kernel/ 2009-09-11 10:29:45 +02:00