Mercurial > illumos > illumos-gate
changeset 13192:517dd7bce70e
143 rge driver stalls during network receive load on Toshiba A300
Reviewed by: garrett@nexenta.com
Approved by: garrett@nexenta.com
author | Alexander Eremin <a.eremin@nexenta.com> |
---|---|
date | Mon, 20 Sep 2010 22:29:01 +0400 |
parents | 0b65a6e42434 |
children | c50e16fa675f |
files | usr/src/uts/common/io/rge/rge.h usr/src/uts/common/io/rge/rge_chip.c |
diffstat | 2 files changed, 3 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/usr/src/uts/common/io/rge/rge.h Mon Sep 20 11:11:50 2010 +0400 +++ b/usr/src/uts/common/io/rge/rge.h Mon Sep 20 22:29:01 2010 +0400 @@ -348,6 +348,7 @@ uint8_t clsize; /* cache-line-size */ uint8_t latency; /* latency-timer */ boolean_t is_pcie; + boolean_t enable_mac_first; uint32_t mac_ver; uint32_t phy_ver; uint32_t rxconfig;
--- a/usr/src/uts/common/io/rge/rge_chip.c Mon Sep 20 11:11:50 2010 +0400 +++ b/usr/src/uts/common/io/rge/rge_chip.c Mon Sep 20 22:29:01 2010 +0400 @@ -710,6 +710,7 @@ /* * Workaround for 8101E_C */ + chip->enable_mac_first = !chip->is_pcie; if (chip->mac_ver == MAC_VER_8101E_C) { chip->is_pcie = B_FALSE; } @@ -938,7 +939,7 @@ /* * Start transmit/receive before set tx/rx configuration register */ - if (!chip->is_pcie) + if (chip->enable_mac_first) rge_reg_set8(rgep, RT_COMMAND_REG, RT_COMMAND_RX_ENABLE | RT_COMMAND_TX_ENABLE);