Fixing Broadcom BCM5762 for Ubuntu 14.0420. Feb '16

Broadcom is continuously doing terrible work with their wired and wireless cards, basically any other hardware vendor is doing better job maintaining open-source drivers than Broadcom.

Important

Avoid procuring Broadcom equipment

HP EliteDesk 705 G1 SFF contains Broadcom BCM5762 (14e4:1687) wired ethernet and at least with kernels from 3.13 up to 4.1 the machine loses connectivity if there is high load on the network interface 1.

It took several days to come up with a workaround for the issue and here it is. Following disables some fancy DMA functionality on the card keeping it at least usable:

ethtool -K eth0 highdma off

Create /etc/udev/rules.d/80-tg3-fix.rules with following content to make the changes permanent:

ACTION=="add", SUBSYSTEM=="net", ATTRS{vendor}=="0x14e4", ATTRS{device}=="0x1687", RUN+="/sbin/ethtool -K %k highdma off"

If you're using Puppet simply add following to your manifest:

file { "/etc/udev/rules.d/80-tg3-fix.rules":
    ensure => present,
    mode => 644,
    owner => root,
    group => root,
    content => 'ACTION=="add", SUBSYSTEM=="net", ATTRS{vendor}=="0x14e4", ATTRS{device}=="0x1687", RUN+="/sbin/ethtool -K %k highdma off"'
}

Hopefully the fix will be merged upstream soon.

1

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1447664

Ubuntu Linux Broadcom ethtool