Official MINIX sources - Automatically replicated from gerrit.minix3.org
Go to file
David van Moolenbroek 47db417b1a lance: perform full reinitialization for restarts
When performing a restart (CSR0 STOP, STRT), the behavior regarding
the NIC's current RX/TX descriptor ring counters varies between cards:
older LANCE cards do not reset the counters; newer PCnet cards do
reset them; VirtualBox's emulation is once again broken in that it
claims to emulate newer cards but implements the older behavior.

Changing the card's receive mode requires such a restart, and now that
the system can actually change receive modes dynamically as part of
normal network operation, this results in the lance driver breaking
all the time on at least VirtualBox.

Instead of trying to figure out exactly what is going on with the
counters during a restart, we now simply perform a full-blown
reinitialization every time the NIC is restarted.  That leaves no
ambiguity regarding the counters, and appears to be what drivers on
other OSes do as well.  As a bonus, this approach actually saves code.

Change-Id: I60fad2df6de4616d5de2cec39c09b60c15d854fb
2017-04-30 13:15:50 +00:00
bin Import NetBSD ps(1) 2016-01-13 20:32:52 +01:00
common w(1): switch to libkvm 2016-01-13 20:32:50 +01:00
crypto etc: synchronize master.password, group to NetBSD 2017-02-18 21:37:24 +00:00
dist/pf/sbin/pfctl Import a subset of PF distribution files 2016-06-18 12:20:46 +00:00
distrib Import NetBSD httpd(8) 2017-03-21 22:00:31 +00:00
docs Initial import of NetBSD rc system 2017-02-23 14:08:39 +00:00
etc Import NetBSD httpd(8) 2017-03-21 22:00:31 +00:00
external Import NetBSD tcpdump(8) 2017-03-21 22:00:21 +00:00
games Fix ARM noassert builds -g/-O{s/0/1/2/3} 2016-01-24 18:56:38 +01:00
gnu Fix the process for GNU tools on MINIX 2016-11-30 08:42:36 +01:00
include Enable a few more NetBSD functions 2017-03-09 23:40:09 +00:00
lib Import NetBSD libpcap 2017-03-21 22:00:18 +00:00
libexec ftpd(8): drop some MINIX-specific changes 2017-03-21 22:00:34 +00:00
minix lance: perform full reinitialization for restarts 2017-04-30 13:15:50 +00:00
releasetools Retire inet: the previous MINIX TCP/IP service 2017-03-09 23:39:58 +00:00
sbin Import NetBSD ping6(8) 2017-03-09 23:40:15 +00:00
share Import NetBSD resolvconf(8) 2017-03-09 23:40:18 +00:00
sys Import NetBSD libpcap 2017-03-21 22:00:18 +00:00
tests tests: add most kyua kernel tests 2016-01-16 14:04:25 +01:00
tools Improve the process for GNU tools 2016-09-01 21:16:13 +02:00
usr.bin Import NetBSD telnet(1) 2017-03-09 23:40:16 +00:00
usr.sbin syslogd(8): drop some MINIX-specific changes 2017-03-21 22:00:37 +00:00
.gitignore Initial import of NetBSD rc system 2017-02-23 14:08:39 +00:00
.gitreview build:update 'git review' config to match gerrit.minix3.org 2014-07-28 17:05:15 +02:00
build.sh NetBSD re-synchronization of the source tree 2016-01-13 20:32:14 +01:00
LICENSE Fix parameter parsing in cut 2010-01-21 10:16:05 +00:00
Makefile NetBSD re-synchronization of the source tree 2016-01-13 20:32:14 +01:00
Makefile.inc Synchronize on NetBSD-CVS (2013/12/1 12:00:00 UTC) 2014-07-28 17:05:06 +02:00