x86/hwmon: avoid deadlock on CPU removal in pkgtemp
authorJan Beulich <jbeulich@novell.com>
Mon, 13 Sep 2010 10:11:05 +0000 (10:11 +0000)
committerGuenter Roeck <guenter.roeck@ericsson.com>
Fri, 24 Sep 2010 18:44:18 +0000 (11:44 -0700)
commitd9bca4358286584cc22f4261ee3a60cad01aa4d4
treef18ecad6c5d1983d6c4b33544e405fb9680f000c
parent89a3fd35ba0318a7208e2c8d8ca6189f567d4a93
x86/hwmon: avoid deadlock on CPU removal in pkgtemp

pkgtemp_device_remove(), holding the list protecting mutex, calls
pkgtemp_device_add(), which itself wants to acquire the same mutex.
Holding the mutex over the entire loop body in pkgtemp_device_remove()
isn't really necessary, as long as the loop gets exited after
processing the matched CPU.

Once exiting the loop after removing an eventual match, there's no
need for using the "safe" list iterator anymore.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
Cc: Fenghua Yu <fenghua.yu@intel.com>
Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
drivers/hwmon/pkgtemp.c