ALSA: timer: Fix leak in events via snd_timer_user_ccallback
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / sound / sound_firmware.c
index e14903468051c0e761deebbd4a16343b062aa4af..b155137ee312a5105517718d483b2db322958943 100644 (file)
@@ -1,6 +1,7 @@
 #include <linux/vmalloc.h>
 #include <linux/module.h>
 #include <linux/fs.h>
+#include <linux/file.h>
 #include <linux/mm.h>
 #include <linux/sched.h>
 #include <asm/uaccess.h>
@@ -23,14 +24,14 @@ static int do_mod_firmware_load(const char *fn, char **fp)
        if (l <= 0 || l > 131072)
        {
                printk(KERN_INFO "Invalid firmware '%s'\n", fn);
-               filp_close(filp, NULL);
+               fput(filp);
                return 0;
        }
        dp = vmalloc(l);
        if (dp == NULL)
        {
                printk(KERN_INFO "Out of memory loading '%s'.\n", fn);
-               filp_close(filp, NULL);
+               fput(filp);
                return 0;
        }
        pos = 0;
@@ -38,10 +39,10 @@ static int do_mod_firmware_load(const char *fn, char **fp)
        {
                printk(KERN_INFO "Failed to read '%s'.\n", fn);
                vfree(dp);
-               filp_close(filp, NULL);
+               fput(filp);
                return 0;
        }
-       filp_close(filp, NULL);
+       fput(filp);
        *fp = dp;
        return (int) l;
 }