aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/applicom.c
diff options
context:
space:
mode:
authorPaul Parsons <lost.distance@yahoo.com>2011-05-12 21:46:03 -0400
committerJiri Kosina <jkosina@suse.cz>2011-05-23 06:50:43 -0400
commitfda5fe19725edd6805f2fd742235d1a0d0ba93f5 (patch)
tree86c5e5e7fe1b41ecf18233149f6a1f7a60b4cd45 /drivers/char/applicom.c
parent81024fc41a9353160bc445fda4f96d1aa5e82791 (diff)
apm-emulation: apm_mutex breaks ACK; remove it
apm_mutex is locked by a process (e.g. apm -s) at the start of apm_ioctl() and remains locked while pm_suspend() is called. Any subsequent process trying to ACK the suspend (e.g. apmd) is then blocked at the start of apm_ioctl(), causing the suspend to be delayed for 5 seconds in apm_suspend_notifier() while the ACK times out. In short, ACKs don't work. The driver's data structures are sufficiently protected by assorted locks. And pm_suspend() has its own mutex to prevent reentrancy. Consequently there is no obvious requirement for apm_mutex, which evolved from earlier BKL calls. So let's remove it. Signed-off-by: Paul Parsons <lost.distance@yahoo.com> Acked-by: Rafael J. Wysocki <rjw@sisk.pl> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/char/applicom.c')
0 files changed, 0 insertions, 0 deletions