>From 47aadfdaa5a6e5c3d8f1bf2b5be4c4a4156085ee Mon Sep 17 00:00:00 2001
From: Douglas Bagnall <douglas@paradise.net.nz>
Date: Tue, 7 Aug 2012 19:30:36 +1200
Subject: [PATCH] Unlock the rc_dev lock when the raw device is missing
As pointed out by Ben Hutchings, after commit 720bb6436, the lock was
being taken and not released when an rc_dev has a NULL raw device.
Cc: <stable@vger.kernel.org>
Reported-by: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Douglas Bagnall <douglas@paradise.net.nz>
Acked-by: Herton R. Krzesinski <herton.krzesinski@canonical.com>
---
drivers/media/rc/rc-main.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
@@ -778,9 +778,10 @@ static ssize_t show_protocols(struct device *device,
} else if (dev->raw) {
enabled = dev->raw->enabled_protocols;
allowed = ir_raw_get_allowed_protocols();
- } else
+ } else {
+ mutex_unlock(&dev->lock);
return -ENODEV;
-
+ }
IR_dprintk(1, "allowed - 0x%llx, enabled - 0x%llx\n",
(long long)allowed,
(long long)enabled);
--
1.7.9.5