| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
217712 Fix a couple of incorrect variable names in the sysctl code.
217713 - Panic on the 82598 adapter due to reading FCOE registers that don't exit
- Make phy detection dynamic so adapters that support multiple types of
media can be properly identified by the interface layer
- Performance patch to the flow director (ixgbe_atr) code
- Fix intermittent data corruption on the 82599
- Add missing support code for buffer size and descriptors when doing
jumbo frames, also add 16K cluster support.
- Release RX lock when calling stack, this removes LOR problems.
217795 Remove TX_UNLOCK from the error path in local_timer, there is no LOCK
217796 Add missing case for Direct Attach 82598 in the dynamic phy detection
217797 Performance: don't run flow control shared code if nothing has changed
Approved by: re (bz)
Notes:
svn path=/releng/8.2/; revision=217917
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Pull ieee80211_ratectl_node_init() calls from drivers into net80211.
This fixes hostap mode for at least ral(4) and run(4), because there is
no sufficient call into drivers which could be used initialize the node
related ratectl variables.
Approved by: re (bz)
Notes:
svn path=/releng/8.2/; revision=217887
|
| |
|
|
|
|
|
|
|
|
|
| |
Fix for kern/152853, pullup in the wrong
place in em_xmit causes UDP failure. Thanks
to Petr Lampa for the patch.
Approved by: re (bz)
Notes:
svn path=/releng/8.2/; revision=217865
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- Pieces of the failure path in em_xmit got deleted along
the way, correct this.
- local_timer had a leftover TX_UNLOCK without matching
LOCK in the error path, remove it.
Approved by: re (bz)
Notes:
svn path=/releng/8.2/; revision=217860
|
| |
|
|
|
|
|
|
|
|
| |
Revert the ndis part of r212122, windrv_stub.c already adds a MODULE_VERSION
and this breaks loading miniport drivers from loader.conf
Approved by: re (kib)
Notes:
svn path=/releng/8.2/; revision=217837
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rework RX filter programming by providing separate handler for
DP8381[56] and SiS 900/7016 controllers. After r212119, sis(4) no
longer reinitializes controller if ALLMULTI/PROMISC was changed.
However, RX filter handling code assumed some bits of the RX filter
is programmed by driver initialization. This caused ALLMULTI/PROMISC
configuration is ignored under certain conditions.
Fix that issue by reprogramming all bits of RX filter register.
While I'm here follow recommended RX filter programming steps
recommended by National DP8381[56] data sheet(RX filter should be
is disabled before programming).
Reported by: Paul Schenkeveld < freebsd () psconsult dot nl >
Tested by: Paul Schenkeveld < freebsd () psconsult dot nl >
Approved by: re (bz)
Notes:
svn path=/releng/8.2/; revision=217803
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Allow IFM_FLAG0 to be set indicating that auto-negotiation with manual
configuration, which is used to work around issues with certain setups
(see r161237) by default, should not be triggered as it may in turn
cause harm in some edge cases.
- Even after masking the media with IFM_GMASK the result may have bits
besides the duplex ones set so just comparing it with IFM_FDX may lead
to false negatives.
- Announce PAUSE support also for manually selected 1000BASE-T, but for
all manually selected media types only in full-duplex mode. Announce
asymmetric PAUSE support only for manually selected 1000BASE-T.
- Simplify setting the manual configuration bits to only once after we
have figured them all out. This also means we no longer unnecessarily
update the hardware along the road.
- Remove a stale comment.
Reviewed by: yongari (plus additional testing)
Approved by: re (bz)
Notes:
svn path=/releng/8.2/; revision=217666
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For re(4) controllers that uses new jumbo frame scheme(RTL8168C/D/E),
limit maximum RX buffer size to RE_RX_DESC_BUFLEN instead of
blindly configuring it to 16KB. Due to lack of documentation, re(4)
didn't allow jumbo frame on these controllers. However it seems
controller is confused with jumbo frame such that it can DMA the
received frame to wrong address instead of splitting it into
multiple RX buffers. Of course, this caused panic.
Since re(4) does not support jumbo frames on these controllers,
make controller drop frame that is longer than RE_RX_DESC_BUFLEN
sized frame. Fortunately RTL810x controllers, which do not support
jumbo frame, have no such issues but this change also limited
maximum RX buffer size allowed to RTL810x controllers. Allowing
16KB RX buffer for controllers that have no such capability is
meaningless.
Approved by: re (bz)
Notes:
svn path=/releng/8.2/; revision=217647
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Apply DMA address space restriction to controllers that have 4GB
DMA boundary bug and runs with PCI-X mode. watchdog timeout was
observed on BCM5704 which lives behind certain PCI-X bridge(e.g.
AMD 8131 PCI-X bridge). It's still not clear whether the root
cause came from that PCI-X bridge or not. The watchdog timeout
indicates the issue is in TX path. If the bridge reorders TX
mailbox write accesses it would generate all kinds of problems but
I'm not sure. This should be revisited.
Early MFC requested by re@ for inclusion in 8.2-RC2/7.4-RC2.
Tested by: Michael L. Squires (mikes <> siralan dot org)
Approved by: re (kensmith)
Notes:
svn path=/releng/8.2/; revision=217233
|
| |
|
|
|
|
|
|
|
| |
input available.
Approved by: re (rwatson)
Notes:
svn path=/releng/8.2/; revision=217082
|
| |
|
|
|
|
|
|
|
| |
Fix parameters for wakeup(9) and tsleep(9).
Approved by: re (kib)
Notes:
svn path=/releng/8.2/; revision=217059
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The RX path is missing a few bus_dmamap_*() calls, this results in
modification of memory which was already free'd and eventually in:
wpi0: could not map mbuf (error 12)
wpi0: wpi_rx_intr: bus_dmamap_load failed, error 12
and an usuable device.
PR: kern/144898
Approved by: re (kib)
Notes:
svn path=/releng/8.2/; revision=216886
|
| |
|
|
|
|
|
|
|
|
|
| |
Re-add a status check which sneaked out during r214804.
This change can fix some USB error messages showing up
during bootup.
Approved by: re (kib)
Notes:
svn path=/releng/8.2/; revision=216720
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Fix panic while trying to use monitor mode. The iwn_cmd() calls issued by
iwn_config() want to msleep() on the mutex.
PR: kern/138427
Submitted by: Henry Hu <henry.hu.sh at gmail.com>
Approved by: re (kib)
Notes:
svn path=/releng/8.2/; revision=216710
|
| |
|
|
|
|
|
|
|
|
|
| |
'could not set power mode', 'device config failed' and other errors due
reading invalid memory.
Approved by: re (kib)
Obtained from: OpenBSD
Notes:
svn path=/stable/8/; revision=216610
|
| |
|
|
|
|
|
|
|
|
|
| |
a 2GHz channel with appropriate flags set to sc->config. Due to not zeroing
sc->config for auth/assoc those flags are still set while trying to connect
on a 5GHz channel.
Approved by: re (kib)
Notes:
svn path=/stable/8/; revision=216609
|
| |
|
|
|
|
|
|
|
|
| |
wpi_rfkill_resume() function will take care of the lock.
PR: kern/14489
Approved by: re (kib)
Notes:
svn path=/stable/8/; revision=216608
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
r215844, r216041, r216241, r216280, r216382, and r216385.
* Make blkfront not advertise a larger maximum I/O size than it can handle
for unaligned data (r216241)
* Correctly reserve CPU #0's DPCPU pages (r216041)
* Make machdep.independent_wallclock do what it claims (r216382)
* Don't round xen timecounter to the nearest tick (r215663), but decrease
its frequency to avoid wrapping at ~4.3s (r216385)
* Remove debugging code which caused a massing slowdown in fork-heavy
workloads (r215813)
* Add a missing page table flush before invalidating TLBs in pmap_qremove
(r215819+215844)
* In pmap_release, don't unpin pages which weren't pinned (r215525) and don't
KASSERT page mappings which don't exist (r215470); but do pmap_qremove all
the relevant pages (r215472)
* Don't unmask an event channel until after we register the interrupt handler
for it (r216280)
Approved by: re (rwatson)
Notes:
svn path=/stable/8/; revision=216602
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
pointer where data is to be returned by ibask() (currently unimplemented),
while __retval holds the value returned by the libgpib ibfoo() functions.
The confusion resulted in the ibfoo() functions returning an uninitialized
value except in situations where the GPIB activity has been terminated
abnormally.
Implement more of __ibsta: END and SRQI status bits (taken out of the
uPD7210 IRQ status).
Approved by: re (kib)
Notes:
svn path=/stable/8/; revision=216573
|
| |
|
|
|
|
|
|
|
|
|
| |
Remove the test for a minimum frame size from the IPV6 TX context
descriptor setup, when using VLANs and HW TAGGING the length of
an ICMP6 frame will fail this test and be discarded.
Approved by: re
Notes:
svn path=/stable/8/; revision=216467
|
| |
|
|
|
|
|
|
|
|
|
| |
Add IDs of HighPoint RocketRAID 62x cards (Marvell 88SE9128 chips).
PR: kern/152926
Submitted by: Mike Tancsa <mike@sentex.net>
Approved by: re (kib)
Notes:
svn path=/stable/8/; revision=216452
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Correct the RX discard and refresh_mbuf logic to match igb, the old
discard code could cause panics due to a bad pointer, now simply
have discard always free mbufs and depend on refresh. In the refresh
code, make sure the mbuf and soft buf struct are properly reset.
Approved by: re
Notes:
svn path=/stable/8/; revision=216440
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes for monitor mode:
- Do not call iwn_calib_reset() for monitor mode. We do not want to query
information and do runtime calibration while in monitor mode. Poking the
firmware with adjustments for calibration results in firmware asserts.
This could happened on RUN -> RUN transition only.
- Adjust blink rate for monitor mode. It's supposed to not freak out and
turn off after a while.
- While here, remove one useless assignment of calib.state, it gets
overwritten later in the function.
Approved by: re (kib)
Notes:
svn path=/stable/8/; revision=216412
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix scanning after loosing a connection. The firmware assumes that as long
as an association ID is set any scan is supposed to be a background scan.
This implies that the firmware will switch back to the associated channel
after a certain threshold, though, we are not notified about that. We
currently catch this case by a timer which will reset the firmware after
a 'scan timeout', though, upper layers are not notified about that and
will simply hang until manual intervention. Fix this by resetting the
firmware's knowledge about any association on RUN -> ASSOC and
!INIT -> SCAN transitions.
Approved by: re (kib)
Notes:
svn path=/stable/8/; revision=216411
|
| |
|
|
|
|
|
|
|
|
|
|
| |
For 6000 series and newer devices the DC calibration results are no
longer requested of the boot firmware. Instead of sending those results
to the runtime firmware the firmware is told to do the DC calibration
itself.
Approved by: re (kib)
Notes:
svn path=/stable/8/; revision=216392
|
| |
|
|
|
|
|
|
|
|
|
| |
VLANs and HW_TAGGING in IPv6 the tag is not yet
in the frame, and thus an ICMP6 packet fails this
condition and does not get sent.
Approved by: re
Notes:
svn path=/stable/8/; revision=216366
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If RX lockup workaround is enabled, fxp(4) will periodically reset
the controller to workaround silicon bug of i82557. Each reset will
re-establish link which in turn triggers MII status change
callback. The callback will try to reconfigure controller if the
controller is not i82557 to enable flow-control. This caused
endless link UP/DOWN when the workaround was enabled on non-i82557
controller.
To fix the issue, apply RX lockup workaround only for i82557.
Previously it blindly checked undocumented EEPROM location such
that it sometimes enabled the workaround for other controllers. At
this time, only i82557 is known to have the silicon bug.
This fixes a regression introduced in r215906 which enabled flow
control support for all controllers except i82557.
Reported by: Karl Denninger (karl <> denninger dot net)
Tested by: Karl Denninger (karl <> denninger dot net)
Approved by: re (kensmith)
Notes:
svn path=/stable/8/; revision=216264
|
| |
|
|
|
|
|
|
|
|
|
| |
Add device IDs for two more ServerWorks Host-PCI bridges so that we can
read their starting PCI bus number for older systems that do not support
ACPI (or have a broken _BBN method).
Approved by: re (kib)
Notes:
svn path=/stable/8/; revision=216123
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix a TSO checksum bug on mxge(4):
The Myri10GE NIC will assume all TSO frames contain partial checksum,
and will emit TSO segments with bad TCP checksums if a TSO frame
contains a full checksum. The mxge driver takes care to make sure
that TSO is disabled when checksum offload is disabled for this
reason. However, modules that modify packet contents (like pf) may
end up completing a checksum on a TSO frame, leading to the NIC emitting
TSO segments with bad checksums.
To workaround this, restore the partial checksum in the mxge driver
when we're fed a TSO frame with a full checksum.
Notes:
svn path=/stable/8/; revision=216054
|
| |
|
|
|
|
|
| |
Don't leak CCBs for every ABORT.
Notes:
svn path=/stable/8/; revision=216038
|
| |
|
|
|
|
|
| |
Treat PRLI the same as PLOGI and make a database entry for it (target mode).
Notes:
svn path=/stable/8/; revision=216037
|
| |
|
|
|
|
|
| |
Partially revert 208119. We were overwriting tunable settings.
Notes:
svn path=/stable/8/; revision=216036
|
| |
|
|
|
|
|
| |
Sync all u3g device ids from head.
Notes:
svn path=/stable/8/; revision=216035
|
| |
|
|
|
|
|
|
|
|
| |
Add flow control for 3C905B and newer controllers. Note, these
controllers support RX pause only.
Reviewed by: marius
Notes:
svn path=/stable/8/; revision=216033
|
| |
|
|
|
|
|
|
|
|
|
| |
Add flow control for all re(4) controllers. re(4) controllers do
not provide any MAC configuration interface for resolved flow
control parameters. There is even no register that configures water
mark which will control generation of pause frames.
However enabling flow control surely enhanced performance a lot.
Notes:
svn path=/stable/8/; revision=216031
|
| |
|
|
|
|
|
| |
Enable ethernet flow-control on all jme(4) controllers.
Notes:
svn path=/stable/8/; revision=216029
|
| |
|
|
|
|
|
|
|
|
|
| |
Allocate 1 MSI/MSI-X vector. Originally jme(4) was designed to
support multi-queue but the hardware limitation made it hard to
implement supporting multi-queue. Allocating more than necessary
vectors is resource waste and it can be added back when we
implement multi-queue support.
Notes:
svn path=/stable/8/; revision=216027
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Disable retrying RX descriptor loading. The counter is used to set
number of retry to be performed whenever controller found RX
descriptor was empty. RX empty interrupt is generated only when the
retry counter is over. Experimentation shows retrying RX descriptor
loading increased number of dropped frames under flow-control
enabled environments so disable it and have controller generate RX
empty interrupt as fast as it can.
While I'm here fix RXCSR_DESC_RT_CNT macro.
Notes:
svn path=/stable/8/; revision=216025
|
| |
|
|
|
|
|
|
| |
Enable ethernet flow-control on all alc(4) controllers. This change
should reduce a lot of dropped frames under high network load.
Notes:
svn path=/stable/8/; revision=216023
|
| |
|
|
|
|
|
|
| |
Add quirks for 3G MSC resets.
Add a man page for the usb_quirks module.
Notes:
svn path=/stable/8/; revision=216018
|
| |
|
|
|
|
|
|
|
| |
Allow pause support advertisement to be turned off again.
Submitted by: yongari (ip1000phy(4))
Notes:
svn path=/stable/8/; revision=216006
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Fix and implement missing parts of flow control support. This also removes
the dev.fxp.%d.noflow tunable as the same effect can now be achieved with
ifconfig(8) by setting the flowcontrol media option as desired (besides
the tunable never having a chance to actually enable flow control support
so far).
In joint forces with: yongari
Notes:
svn path=/stable/8/; revision=216002
|
| |
|
|
|
|
|
|
| |
Ensure Bay flow control is disabled as we're going to use IEEE 802.3 annex
31B full duplex flow control instead.
Notes:
svn path=/stable/8/; revision=216000
|
| |
|
|
|
|
|
| |
Allow umass to use bigger transactions for USB 3.0 devices.
Notes:
svn path=/stable/8/; revision=215987
|
| |
|
|
|
|
|
|
|
| |
Fix forwarding of Line Register Status changes to TTY layer.
PR: usb/149675
Notes:
svn path=/stable/8/; revision=215986
|
| |
|
|
|
|
|
| |
Correct IOCTL return code.
Notes:
svn path=/stable/8/; revision=215985
|
| |
|
|
|
|
|
|
|
|
|
| |
USB network (NCM driver):
- correct the ethernet payload remainder which
must be post-offseted by -14 bytes instead of
0 bytes. This is not very clearly defined in the
NCM specification.
Notes:
svn path=/stable/8/; revision=215981
|
| |
|
|
|
|
|
| |
Add new device IDs.
Notes:
svn path=/stable/8/; revision=215980
|
| |
|
|
| |
Notes:
svn path=/stable/8/; revision=215970
|
| |
|
|
|
|
|
| |
Don't zero 'Info' after setting it up in the ASR_IOCTL_COMPAT case.
Notes:
svn path=/stable/8/; revision=215953
|