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
