Age | Commit message (Collapse) | Author |
|
|
|
packet, ie. an output error. This way, we'll be able to see if the
seized interfaces had tx packets queued.
ok claudio
|
|
we can dianose if those ever happen.
ok claudio
|
|
the latter does that itself.
ok claudio
|
|
ok dlg@
|
|
we now know the interface has already been stopped
|
|
reducing the amount of splnet/splx dancing required.. especially in the
worst case (of m_cldrop)
ok dlg kettenis damien
|
|
|
|
Alix boards suck a little bit less because it will be harder to live lock them
with traffic. Diff mostly adapted from sis(4).
OK kettenis@, dlg@, sthen@
|
|
from Brad; ok chris@
|
|
Otherwise the card can mess with mbufs that have been given to the
stack already. Fixes panics seen with a high rate of of small
packets and POOL_DEBUG enabled.
OK sthen@, chris@
|
|
mode; VR_RXCFG_RX_PROMISC isn't enough to allow reception of multicast
frames.
Discussed with Brad, ok dlg@.
|
|
from Brad; ok dlg.
|
|
|
|
m_head could be accessed after it had been freed, so do the access earlier.
from chris@.
|
|
via rhinefet. not yet used, but committing now so it isn't lost.
from chris@, ok dlg.
|
|
alix/net5501 with and without software vlan tagging, also with NFS (v2, v3,
UDP, TCP). Not used on earlier chips and does not introduce problems on
original EPIA board.
From chris@, based on enhancements in the FreeBSD driver.
"put it in then" dlg@, looks good to claudio@.
|
|
from the oldest vt86c100a datasheet to the newest vt6105m. FreeBSD
indicates that it is more reliable than VR_RXSTAT_ERR for detecting
error conditions, that its use results in less incorrectly dropped
packets). From chris@.
|
|
- s/FreeBSD/OpenBSD/ in comment, suggested by mpf
no binary change.
|
|
- add HWTAG capability to the quirks table. not yet used.
from chris@. no functional change.
|
|
- avoid the need for unnecessary mbuf copies on modern vr(4) devices
(ancient ones required longword-alignment, but this has not been the case
for several generations now). reduces cpu time, particularly for forwarded
traffic.
from chris@. tested by chris@, myself, Emilio Perea on various devices
including original VIA EPIA, Soekris net5501, pcengines.ch ALIX.
ok mpf. deraadt and dlg agree with committing at this stage.
|
|
interfaces. Therefore we now always start off with vr_link = 1.
Bug found and feedback by Emilio Perea.
OK sthen@
|
|
state change. Workaround by resetting the chip if necessary.
Also do not try to send packets if our link is down, as this triggers
watchdog timeouts. While there correct the VR_RXSTAT_RX_OK define
(not used yet). Changes inspired from FreeBSDs overhauled vr(4).
Testing, input and OK sthen@
|
|
between instances, saving space in the kernel. feedback from many (some
incorporated, some left for future work).
ok deraadt, kettenis, "why not" miod.
|
|
from the individual drivers now that ether_ioctl() handles this.
Shrinks the i386 kernels by..
RAMDISK - 2176 bytes
RAMDISKB - 1504 bytes
RAMDISKC - 736 bytes
Tested by naddy@/okan@/sthen@/brad@/todd@/jmc@ and lots of users.
Build tested on almost all archs by todd@/brad@
ok naddy@
|
|
now the offset into the first mbuf of the target chain before copying
the source data over. From FreeBSD.
Convert drivers' use of m_devget(). Mostly from thib@.
Update mbuf(9) man page.
ok claudio@, thib@
|
|
Move calling ether_ioctl() from the top of the ioctl function, which
at the moment does absolutely nothing, to the default switch case.
Thus allowing drivers to define their own ioctl handlers and then
falling back on ether_ioctl(). The only functional change this results
in at the moment is having all Ethernet drivers returning the proper
errno of ENOTTY instead of EINVAL/ENXIO when encountering unknown
ioctl's.
Shrinks the i386 kernels by..
RAMDISK - 1024 bytes
RAMDISKB - 1120 bytes
RAMDISKC - 832 bytes
Tested by martin@/jsing@/todd@/brad@
Build tested on almost all archs by todd@/brad@
ok jsing@
|
|
If the RX path runs into an out of mbuf scenario, the code
will leave the RX chain with a NULL'd mbuf-slot.
We now always reassign a valid mbuf, even if m_devget() fails.
OK brad@, thib@
|
|
Really just the low-hanging fruit of (hopefully) forthcoming timeout
conversions.
ok art@, krw@
|
|
|
|
o On non-strict alignment archs, dont copy the mbuf, every time, unload it, and send
it up the stack and just get a new one for the rx ring. We still do the copy on
strict alignment archs though...
o create a function to handle mbuf allocation for the rx ring, vr_mbuf_alloc(),
use it to allocate the mbufs and shuffle the bus dma setup around.
ideas/code from vic(4) and sis(4);
ok reyk@, brad@, dlg@
tested by many, been in snapshots for a while.
|
|
ok claudio
|
|
ok brad@ (w/ comments), reyk@
|
|
sys/netinet/in_pcb.c and sys/net/bridgestp.c ok henning@
sys/dev/pci/bktr/* ok jakemsr@
|
|
is found to have PCI power management capability. It has been
found that unconditionally touching this register with the original
VIA Rhine chipset, which does not have power management capability,
and due to the shorter width of the IO addess space, it is possible
for the vr(4) driver to do bad things with hw with IO address space
adjacent to a vr(4) adapter.
Tested by a few users, brad@ and jmc@.
ok dlg@
|
|
the Rhine's shift registers four and a half years ago (1.31).
From phk@FreeBSD
ok dlg@
Tested by brad@ and Jacob Yocom-Piatt.
|
|
OK claudio@
|
|
vr_init(): add debug printfs for some error conditions.
|
|
printf which will never be reached.
|
|
|
|
|
|
|
|
|
|
outbound), using a new BIOCSDIRFILT ioctl;
guidance, feedback and ok canacar@
|
|
|
|
|
|
From FreeBSD via Andrey Matveev
|
|
tested by Andrey Matveev
|
|
re-init if configuring the IP address.
tested by Andrey Matveev
|
|
checking the IFF_ALLMULTI flag.
- clean up vr_encap() a bit.
From: Andrey Matveev <evol at online dot ptt dot ru>
|