[PATCH 1/2] IB: fix potential ib_umad leak

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Free all unclaimed MAD receive buffers when userspace closes our file
so we don't leak memory.

Signed-off-by: Roland Dreier <[email protected]>

---

 drivers/infiniband/core/user_mad.c |    4 ++++
 1 files changed, 4 insertions(+)



--- linux-git.orig/drivers/infiniband/core/user_mad.c	2005-05-24 15:11:25.795151912 -0700
+++ linux-git/drivers/infiniband/core/user_mad.c	2005-05-24 15:17:39.800453121 -0700
@@ -499,6 +499,7 @@
 static int ib_umad_close(struct inode *inode, struct file *filp)
 {
 	struct ib_umad_file *file = filp->private_data;
+	struct ib_umad_packet *packet, *tmp;
 	int i;
 
 	for (i = 0; i < IB_UMAD_MAX_AGENTS; ++i)
@@ -507,6 +508,9 @@
 			ib_unregister_mad_agent(file->agent[i]);
 		}
 
+	list_for_each_entry_safe(packet, tmp, &file->recv_list, list)
+		kfree(packet);
+
 	kfree(file);
 
 	return 0;

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux