commit | 98c1c6825247c71e3d8a9a5439ba21fce7563014 | [log] [tgz] |
---|---|---|
author | Heiko Carstens <heiko.carstens@de.ibm.com> | Thu Mar 26 15:24:09 2009 +0100 |
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | Thu Mar 26 15:24:13 2009 +0100 |
tree | 6e2311aff5eefba2aaad2f09b1c11b7b2b0eceae | |
parent | e74fe0cec92439115630b51195444b89b910800a [diff] |
[S390] cio/crw: add/fix locking The crw_unregister_handler uses xchg + synchronize_sched when unregistering a crw_handler. This doesn't protect crw_collect_info to potentially jump to NULL since it has unlocked code like this: if (crw_handlers[i]) crw_handlers[i](NULL, NULL, 1); So add a mutex which protects the crw handler array for changes. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>