diff options
author | Sylwester Nawrocki <s.nawrocki@samsung.com> | 2012-08-16 10:15:00 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-09-15 09:40:48 -0400 |
commit | 59683b38b2e82a5d68ce11b8caa9d99ad69f7d76 (patch) | |
tree | 78745de19969fb96ad0658c4b545f3f605ab0475 | |
parent | 8e6db30de7f994d388d996d508cf1ca043f2a455 (diff) |
[media] m5mols: Add missing free_irq() on error path
Make sure the interrupt is freed when driver probing fails.
Reported-by: Marek Szyprowski <m.szyprowski@samsung.com>
Cc: HeungJun Kim <riverful.kim@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r-- | drivers/media/video/m5mols/m5mols_core.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/media/video/m5mols/m5mols_core.c b/drivers/media/video/m5mols/m5mols_core.c index ac7d28b6ddf2..8bf6599a4c1a 100644 --- a/drivers/media/video/m5mols/m5mols_core.c +++ b/drivers/media/video/m5mols/m5mols_core.c | |||
@@ -931,7 +931,7 @@ static int __devinit m5mols_probe(struct i2c_client *client, | |||
931 | 931 | ||
932 | ret = m5mols_sensor_power(info, true); | 932 | ret = m5mols_sensor_power(info, true); |
933 | if (ret) | 933 | if (ret) |
934 | goto out_me; | 934 | goto out_irq; |
935 | 935 | ||
936 | ret = m5mols_fw_start(sd); | 936 | ret = m5mols_fw_start(sd); |
937 | if (!ret) | 937 | if (!ret) |
@@ -940,6 +940,8 @@ static int __devinit m5mols_probe(struct i2c_client *client, | |||
940 | m5mols_sensor_power(info, false); | 940 | m5mols_sensor_power(info, false); |
941 | if (!ret) | 941 | if (!ret) |
942 | return 0; | 942 | return 0; |
943 | out_irq: | ||
944 | free_irq(client->irq, sd); | ||
943 | out_me: | 945 | out_me: |
944 | media_entity_cleanup(&sd->entity); | 946 | media_entity_cleanup(&sd->entity); |
945 | out_reg: | 947 | out_reg: |