diff options
author | Ursula Braun <braunu@de.ibm.com> | 2007-07-15 04:03:41 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2007-07-15 04:03:41 +0200 |
commit | 13fdc9a74df0fec70f421c6891e184ed8c3b9088 (patch) | |
tree | efd81d0f35e2300ee86e538fa8c136654c7c0dae /kernel | |
parent | [AF_IUCV]: Improve description of IUCV and AFIUCV configuration options. (diff) | |
download | linux-13fdc9a74df0fec70f421c6891e184ed8c3b9088.tar.xz linux-13fdc9a74df0fec70f421c6891e184ed8c3b9088.zip |
[AF_IUCV]: Avoid deadlock between iucv_path_connect and tasklet.
An iucv deadlock may occur, where one CPU is spinning on the
iucv_table_lock for iucv_tasklet_fn(), while another CPU is holding
the iucv_table_lock for an iucv_path_connect() and is waiting for
the first CPU in an smp_call_function.
Solution: replace spin_lock in iucv_tasklet_fn by spin_trylock and
reschedule tasklet in case of non-granted lock.
Signed-off-by: Ursula Braun <braunu@de.ibm.com>
Acked-by: Frank Pavlic <fpavlic@de.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'kernel')
0 files changed, 0 insertions, 0 deletions