]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
mptfusion: mptctl_release is required in mptctl.c
authorKashyap, Desai <kashyap.desai@lsi.com>
Thu, 10 Feb 2011 06:22:21 +0000 (11:52 +0530)
committerAK <andi@firstfloor.org>
Thu, 31 Mar 2011 18:58:03 +0000 (11:58 -0700)
commit 84857c8bf83e8aa87afc57d2956ba01f11d82386 upstream.

Added missing release callback for file_operations mptctl_fops.
Without release callback there will be never freed. It remains on
mptctl's eent list even after the file is closed and released.

Relavent RHEL bugzilla is 660871

Signed-off-by: Kashyap Desai <kashyap.desai@lsi.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
drivers/message/fusion/mptctl.c

index f06b29193b4e4820965baa1ef84b6b01911993c4..4dbe5465f7281c00d40e4f5a08110eb1a294dc39 100644 (file)
@@ -587,6 +587,13 @@ mptctl_event_process(MPT_ADAPTER *ioc, EventNotificationReply_t *pEvReply)
        return 1;
 }
 
+static int
+mptctl_release(struct inode *inode, struct file *filep)
+{
+       fasync_helper(-1, filep, 0, &async_queue);
+       return 0;
+}
+
 static int
 mptctl_fasync(int fd, struct file *filep, int mode)
 {
@@ -2796,6 +2803,7 @@ static const struct file_operations mptctl_fops = {
        .llseek =       no_llseek,
        .fasync =       mptctl_fasync,
        .unlocked_ioctl = mptctl_ioctl,
+       .release =      mptctl_release,
 #ifdef CONFIG_COMPAT
        .compat_ioctl = compat_mpctl_ioctl,
 #endif