diff options
author | peter <peter@FreeBSD.org> | 2001-12-07 00:58:37 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 2001-12-07 00:58:37 +0000 |
commit | fc9cc438f0e444457f9e1c991ad7acdfea764209 (patch) | |
tree | 7c4ba06e3e83b8a8d1f7269ee63e4d52ebc23cc1 /sys/pci/if_sis.c | |
parent | 4cfbfee7bf71c68b2b802bf53a064148f9a12888 (diff) | |
download | FreeBSD-src-fc9cc438f0e444457f9e1c991ad7acdfea764209.zip FreeBSD-src-fc9cc438f0e444457f9e1c991ad7acdfea764209.tar.gz |
MFS (merge from stable): rev 1.13.4.13, fix ordering of IFF_RUNNING mods.
The reason we are required to commit to -current first is so that later
MFC's do not risk the loss of existing bug fixes. Even if this was not
strictly required in -current, it should still be fixed there too.
Diffstat (limited to 'sys/pci/if_sis.c')
-rw-r--r-- | sys/pci/if_sis.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/pci/if_sis.c b/sys/pci/if_sis.c index 5a5c0b8..e74cfa0 100644 --- a/sys/pci/if_sis.c +++ b/sys/pci/if_sis.c @@ -1908,6 +1908,9 @@ static void sis_stop(sc) ifp->if_timer = 0; untimeout(sis_tick, sc, sc->sis_stat_ch); + + ifp->if_flags &= ~(IFF_RUNNING | IFF_OACTIVE); + CSR_WRITE_4(sc, SIS_IER, 0); CSR_WRITE_4(sc, SIS_IMR, 0); SIS_SETBIT(sc, SIS_CSR, SIS_CSR_TX_DISABLE|SIS_CSR_RX_DISABLE); @@ -1950,8 +1953,6 @@ static void sis_stop(sc) bzero(sc->sis_ldata.sis_tx_list, sizeof(sc->sis_ldata.sis_tx_list)); - ifp->if_flags &= ~(IFF_RUNNING | IFF_OACTIVE); - SIS_UNLOCK(sc); return; |