diff options
author | Andrew Morton <akpm@osdl.org> | 2005-10-25 11:00:56 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-10-25 13:51:48 -0700 |
commit | 444d1d9bb5b724f03344c9317bc01d54a9b39073 (patch) | |
tree | 6514f1acdc991777e6703510753f6988cbd00654 /arch/ia64/kernel/irq.c | |
parent | 0db9ae4a79381a5a3d272ccb51851c48c4bcbb6d (diff) | |
download | op-kernel-dev-444d1d9bb5b724f03344c9317bc01d54a9b39073.zip op-kernel-dev-444d1d9bb5b724f03344c9317bc01d54a9b39073.tar.gz |
[PATCH] qlogic lockup fix
If qla2x00_probe_one()'s call to qla2x00_iospace_config() fails, we call
qla2x00_free_device() to clean up. But because ha->dpc_pid hasn't been set
yet, qla2x00_free_device() tries to stop a kernel thread which hasn't started
yet. It does wait_for_completion() against an uninitialised completion struct
and the kernel hangs up.
Fix it by initialising ha->dpc_pid a bit earlier.
Cc: Andrew Vasquez <andrew.vasquez@qlogic.com>
Cc: James Bottomley <James.Bottomley@steeleye.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/ia64/kernel/irq.c')
0 files changed, 0 insertions, 0 deletions