SIS 900 warning fixes + bogus mcast set_bit

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

 



sis900.c tries to printk longs as ints.

Furthermore, it contains the following around line 2095 in 2.5.44:

for (i = 0, mclist = net_dev->mc_list; mclist && i < net_dev->mc_count;
     i++, mclist = mclist->next)
	set_bit(sis900_compute_hashtable_index(mclist->dmi_addr, revision),
		mc_filter);

where mc_filter is u16 mc_filter[16]. This looks highly bogus, perhaps it
should be mc_filter[i].

A fix for the warning is attached, please apply.

--- linux-2.5.44/drivers/net/sis900.c~orig	Wed Oct 23 19:50:40 2002
+++ linux-2.5.44/drivers/net/sis900.c	Wed Oct 23 19:53:34 2002
@@ -973,7 +973,7 @@
 		outl(w, ioaddr + rfdr);
 
 		if (sis900_debug > 2) {
-			printk(KERN_INFO "%s: Receive Filter Addrss[%d]=%x\n",
+			printk(KERN_INFO "%s: Receive Filter Addrss[%d]=%lx\n",
 			       net_dev->name, i, inl(ioaddr + rfdr));
 		}
 	}
@@ -1011,7 +1011,7 @@
 	/* load Transmit Descriptor Register */
 	outl(sis_priv->tx_ring_dma, ioaddr + txdp);
 	if (sis900_debug > 2)
-		printk(KERN_INFO "%s: TX descriptor register loaded with: %8.8x\n",
+		printk(KERN_INFO "%s: TX descriptor register loaded with: %8.8lx\n",
 		       net_dev->name, inl(ioaddr + txdp));
 }
 
@@ -1065,7 +1065,7 @@
 	/* load Receive Descriptor Register */
 	outl(sis_priv->rx_ring_dma, ioaddr + rxdp);
 	if (sis900_debug > 2)
-		printk(KERN_INFO "%s: RX descriptor register loaded with: %8.8x\n",
+		printk(KERN_INFO "%s: RX descriptor register loaded with: %8.8lx\n",
 		       net_dev->name, inl(ioaddr + rxdp));
 }
 
@@ -1408,7 +1408,7 @@
 	unsigned long flags;
 	int i;
 
-	printk(KERN_INFO "%s: Transmit timeout, status %8.8x %8.8x \n",
+	printk(KERN_INFO "%s: Transmit timeout, status %8.8lx %8.8lx \n",
 	       net_dev->name, inl(ioaddr + cr), inl(ioaddr + isr));
 
 	/* Disable interrupts by clearing the interrupt mask. */
@@ -1570,7 +1570,7 @@
 
 	if (sis900_debug > 3)
 		printk(KERN_INFO "%s: exiting interrupt, "
-		       "interrupt status = 0x%#8.8x.\n",
+		       "interrupt status = 0x%#8.8lx.\n",
 		       net_dev->name, inl(ioaddr + isr));
 	
 	spin_unlock (&sis_priv->lock);



-- 
http://www.PowerDNS.com          Versatile DNS Software & Services
http://lartc.org           Linux Advanced Routing & Traffic Control HOWTO
-
: 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