[PATCH] fix airo memory leak

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

 



fixes a memory leak: memory for the airo_devices list is allocated but
never freed.

against 2.6.0-test2-bk, but should apply to 2.4 as well...



--- 1.54/drivers/net/wireless/airo.c	Sun Jul 20 05:17:02 2003
+++ edited/drivers/net/wireless/airo.c	Sat Aug  2 17:33:24 2003
@@ -4038,12 +4038,23 @@
 	return 0;
 }
 
-static void del_airo_dev( struct net_device *dev ) {
-	struct net_device_list **p = &airo_devices;
-	while( *p && ( (*p)->dev != dev ) )
-		p = &(*p)->next;
-	if ( *p && (*p)->dev == dev )
-		*p = (*p)->next;
+static void del_airo_dev(struct net_device *dev)
+{
+	struct net_device_list *this = airo_devices, *prev = NULL;
+
+	while (this) {
+		if (this->dev == dev) {
+			if (prev)
+				prev->next = this->next;
+			else
+				airo_devices = this->next;
+			kfree(this);
+			break;	
+		}
+
+		prev = this;
+		this = this->next;
+	}
 }
 
 #ifdef CONFIG_PCI

-
: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux