Author: arekm                        Date: Mon Mar 26 17:12:51 2012 GMT
Module: packages                      Tag: LINUX_3_2
---- Log message:
- randomize eth address on 'broken' r8169 cards. Upstream doesn't want this 
patch but we do.

---- Files affected:
packages/kernel:
   kernel-small_fixes.patch (1.55 -> 1.55.2.1) 

---- Diffs:

================================================================
Index: packages/kernel/kernel-small_fixes.patch
diff -u packages/kernel/kernel-small_fixes.patch:1.55 
packages/kernel/kernel-small_fixes.patch:1.55.2.1
--- packages/kernel/kernel-small_fixes.patch:1.55       Fri Mar  9 22:39:02 2012
+++ packages/kernel/kernel-small_fixes.patch    Mon Mar 26 19:12:45 2012
@@ -282,3 +282,26 @@
 More majordomo info at  http://vger.kernel.org/majordomo-info.html
 Please read the FAQ at  http://www.tux.org/lkml/
 
+diff --git a/drivers/net/ethernet/realtek/r8169.c 
b/drivers/net/ethernet/realtek/r8169.c
+index 7a0c800..ec5ebbb 100644
+--- a/drivers/net/ethernet/realtek/r8169.c
++++ b/drivers/net/ethernet/realtek/r8169.c
+@@ -4103,6 +4103,14 @@ rtl8169_init_one(struct pci_dev *pdev, const struct 
pci_device_id *ent)
+       /* Get MAC address */
+       for (i = 0; i < ETH_ALEN; i++)
+               dev->dev_addr[i] = RTL_R8(MAC0 + i);
++
++      if (!is_valid_ether_addr(dev->dev_addr)) {
++              /* Report it and use a random ethernet address instead */
++              netdev_err(dev, "Invalid MAC address: %pM\n", dev->dev_addr);
++              random_ether_addr(dev->dev_addr);
++              netdev_info(dev, "Using random MAC address: %pM\n",
++                          dev->dev_addr);
++      }
+       memcpy(dev->perm_addr, dev->dev_addr, dev->addr_len);
+ 
+       SET_ETHTOOL_OPS(dev, &rtl8169_ethtool_ops);
+-- 
+1.7.7.3
+
+  
\ No newline at end of file
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/packages/kernel/kernel-small_fixes.patch?r1=1.55&r2=1.55.2.1

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to