From: Dan Carpenter Date: Tue, 27 Nov 2012 16:35:09 +0000 (-0300) Subject: [media] rc: unlock on error in show_protocols() X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=30ebc5e44d057a1619ad63fe32c8c1670c37c4b8;p=openwrt%2Fstaging%2Fblogic.git [media] rc: unlock on error in show_protocols() We recently introduced a new return -ENODEV in this function but we need to unlock before returning. [mchehab@redhat.com: found two patches with the same fix. Merged SOB's/acks into one patch] Acked-by: Herton R. Krzesinski Signed-off-by: Dan Carpenter Cc: stable@vger.kernel.org Signed-off-by: Douglas Bagnall Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/rc/rc-main.c b/drivers/media/rc/rc-main.c index 601d1ac1c688..d593bc65b4ca 100644 --- a/drivers/media/rc/rc-main.c +++ b/drivers/media/rc/rc-main.c @@ -789,8 +789,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,