[PATCH] [111/275] mptfusion: mptctl_release is required in mptctl.c

From: Andi Kleen
Date: Wed Mar 30 2011 - 17:47:06 EST


2.6.35-longterm review patch. If anyone has any objections, please let me know.

------------------
From: Kashyap, Desai <kashyap.desai@xxxxxxx>

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@xxxxxxx>
Signed-off-by: James Bottomley <James.Bottomley@xxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxx>
Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>

---
drivers/message/fusion/mptctl.c | 8 ++++++++
1 file changed, 8 insertions(+)

Index: linux-2.6.35.y/drivers/message/fusion/mptctl.c
===================================================================
--- linux-2.6.35.y.orig/drivers/message/fusion/mptctl.c 2011-03-29 22:51:24.407098651 -0700
+++ linux-2.6.35.y/drivers/message/fusion/mptctl.c 2011-03-29 23:03:00.501287344 -0700
@@ -588,6 +588,13 @@
}

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)
{
MPT_ADAPTER *ioc;
@@ -2796,6 +2803,7 @@
.llseek = no_llseek,
.fasync = mptctl_fasync,
.unlocked_ioctl = mptctl_ioctl,
+ .release = mptctl_release,
#ifdef CONFIG_COMPAT
.compat_ioctl = compat_mpctl_ioctl,
#endif
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/