]> git.baikalelectronics.ru Git - kernel.git/commit
amd64_edac: Fix driver module removal
authorBorislav Petkov <borislav.petkov@amd.com>
Sun, 26 Sep 2010 10:42:23 +0000 (12:42 +0200)
committerBorislav Petkov <borislav.petkov@amd.com>
Mon, 27 Sep 2010 10:52:58 +0000 (12:52 +0200)
commitfd47aaf8e76221439e21fd1dc4875f54f05d77c6
tree0d66f4d50dac7ad66997429e1f6ed702ec74afa5
parentec072098c725be025e3e63a8b71944452cd8e7c5
amd64_edac: Fix driver module removal

64aaff2abe9ba958bc4976821fb470614f39db2b removed the edac polling
mechanism in favor of using a notifier chain for conveying MCE
information to edac. However, the module removal path didn't test
whether the driver had setup the polling function workqueue at all and
the rmmod process was hanging in the kernel at try_to_del_timer_sync()
in the cancel_delayed_work() path, trying to cancel an uninitialized
work struct.

Fix that by adding a balancing check to the workqueue removal path.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
drivers/edac/edac_mc.c