]> git.baikalelectronics.ru Git - kernel.git/commit
s390/cio: fix premature wakeup during chp configure
authorSebastian Ott <sebott@linux.vnet.ibm.com>
Tue, 19 Jul 2016 08:53:35 +0000 (10:53 +0200)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Sun, 31 Jul 2016 09:27:57 +0000 (05:27 -0400)
commit0a075b6b9c0b3fb37d7ee1f65f300a13e30791ad
tree942a35fdef5895cc8e29e7633c204271597e9e5b
parent643d52c213410d5098833116e651f873cf3432c7
s390/cio: fix premature wakeup during chp configure

We store requests for channel path configure operations in an array but
maintain an additional cfg_busy variable (indicating if we have requests
stored in said array). When 2 tasks request a channel path configure
operation cfg_busy could be set to 0 even if we still have unprocessed
requests. This would lead to the second task being woken up although its
request was not processed yet.

Fix that by getting rid of cfg_busy and use the chp_cfg_task array
in the wake up condition.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Reviewed-by: Peter Oberparleiter <oberpar@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
drivers/s390/cio/chp.c