diff options
author | Sebastian Ott <sebott@linux.vnet.ibm.com> | 2010-02-26 22:37:26 +0100 |
---|---|---|
committer | Martin Schwidefsky <sky@mschwide.boeblingen.de.ibm.com> | 2010-02-26 22:37:29 +0100 |
commit | b4563e891a043fe521e62f6f621b928641474ff3 (patch) | |
tree | 3f3af60351bed04d68f69ccd24f14b85fc2c4f81 /drivers/s390/cio/device.c | |
parent | 879acca58a904c25487c89ab11e23eb556fb13d3 (diff) |
[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>
Diffstat (limited to 'drivers/s390/cio/device.c')
0 files changed, 0 insertions, 0 deletions