Now many people report this card simply not working in various Linux distros and kernels. My issue is different, it always works at 100mbit (eg. plugged into a 100mbit switch) but no matter what 1000M/gigabit switch I would try, it would never work.
The link would be up (the lights were on) and the OS detected the link as being up as well but it wouldn't work at all and could not pass data in or out (not even a ack/ping).
There is one simple solution and command I used on Linux Mint but should apply to most other kernels and distributions such as Debian, Ubuntu etc..:
rmmod forcedeth;modprobe forcedeth msi=0 msix=0&
*Do not forget the &/ampersand as if you are working remotely you will be cut off since the second part that brings the NIC back up will not get executed.
Make the change permanent
echo "rmmod forcedeth;modprobe forcedeth msi=0 msix=0&" >> /etc/rc.local
forcedeth, mcp, nforce, nvidia, nic, linux, gigabit, speedsnow, various, distros, kernels, mbit, eg, plugged, os, detected, wouldn, ack, ping, mint, distributions, debian, ubuntu, etc, rmmod, modprobe, msi, msix, ampersand, remotely, executed, echo, quot, rc,