Age | Commit message (Collapse) | Author |
|
from nvme(4) on sparc64 as the OBP device paths contain namespace identifiers
that we end up matching to targets when trying to find the device we booted
from. Also results in (slightly) cleaner code and less confusion as the
numbers now match instead of being off-by-one.
ok dlg@
|
|
tested by myself, jmc@, and Tracey Emery
|
|
Linux ath9k does the same.
tested by myself, jmc@, and Tracey Emery
|
|
All callers sleep indefinitely.
With help from visa@.
ok visa@, ratchov@, kn@
|
|
to be overridden from ACPI
|
|
ok jmatthew
|
|
the limited ring for asynchronous can easily overflow.
Work around this by chaining the mbufs into a list.
Fixes a panic for jcs@
ok stsp@
|
|
ok kn@
|
|
HBA after ahci_default_port_start() sets AHCI_PREG_CMD_ST. The AHCI
spec. rev. 1.3 only requires the inverse to be true, i. e. that a
HBA clears AHCI_PREG_CMD_CR when AHCI_PREG_CMD_ST gets cleared by
software/driver. In fact, some HBAs will not raise AHCI_PREG_CMD_CR
as an immediate consequence of AHCI_PREG_CMD_ST being set. Actually
neither the FreeBSD, Linux nor NetBSD counterpart of ahci(4) has an
analogous check. Disabling that wait fixes "failed to start command
DMA on port N, disabling" bails during attach.
From Marius Strobl
ok deraadt@ jmatthew@
|
|
commands are in flight and all corresponding threads are sleeping
waiting for a response, the first command to timeout will clear the
command queue. The remaining threads once awake will then try to remove
a dequeued command from the queue, leading to corruption. Instead,
remove commands from the queue before waking up the sleeping thread.
A quirk is still needed to handle the case where tsleep() returns
successfully during suspend.
ok mpi@ visa@
Reported-by: syzbot+fe74fc50c630bfa26302@syzkaller.appspotmail.com
|
|
|
|
all nodes and set the link down, this already happened the first
time we went to SCAN mode. This brings us in line with the net80211
stack and fixes an incomplete node list during ifconfig(8) scan.
|
|
ok jmatthew@
|
|
ok stsp@
|
|
Problem reported and fix tested by Stephane Guedon
ok jca@ mpi@
|
|
From Miod
OK tedu@
|
|
in ieee80211com's ic_flags because we haven't been paying attention to
them (they're not in the same place in the code and hence easy to miss).
Move them to a dedicated variable to avoid this problem in the future.
Add a new 'stayauth' nwflag which can be set to let net80211 ignore
deauth frames. This can be useful when deauth frames are being
persistently spoofed by an attacker. Idea from beck@
ok beck@ phessler@
|
|
The Mac EFI firmware enables the wireless controller, but does not disable it,
so it continues to receive packets and signal interrupts. This
was originally seen as an interrupt storm that consumes about 50% of
CPU0 on affected machines. The issue was originally discovered in 2012 by
Matthew Garret with a partial fix in Grub, then Lukas Wunner added a fix for
the Linux kernel in 2016.
This piggy-backs on the most-related driver (bwi) for the purpose of detection
and mapping the control registers, but does not actually register the driver if
the affected chip is detected.
See this archived discussion for further analysis of the bug:
https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1165355.html
ok kettenis stsp
|
|
ok deraadt mpi
|
|
|
|
Because the RTC is still ticking it is theoretically possible for the
second to roll over while we are reading the clock. This is basically
impossible on real/practical hardware but is an interesting corner case
for e.g. a VM reading an emulated MC146818 during an exit to userspace.
This doesn't check *every* register, so if it takes you a multiple of
60 seconds to read the RTC this change won't help you. But you've got
bigger problems at that point.
"no objections" kettenis@/mlarkin@, "fine idea" deraadt
|
|
in x_media_change(), return the errno from ieee80211_media_change() and
do the error check from x_init().
ok stsp@, jmatthew@, phessler@
|
|
a 16-bit value, so we have to use letoh16() instead of letoh32().
Also properly cast it to signed, so that it can be sign-extended
properly.
ok stsp@
|
|
Tested with TP-LINK TL-WN821N V3.
ok stsp@
|
|
Fixes kevlo's TL-WN821nv3.
test & ok kevlo@
|
|
since those fetched from the controller may not be correct
also attach on intel 300 series devices
ok kettenis
|
|
to reset/enable MCU
- there's no need to enable 1.2V power for rtl8192eu
ok jmatthew@
|
|
(reverting most of r1.60 of mfi.c, oddly enough)
ok dlg@
tested on a SAS2008 (perc h310)
|
|
We now update the chip with values for SIFS interval and ACK/RTS/CTS
timeout when configuration changes occur, like Linux ath9k does.
Tested by myself, juanfra@, jmc@ on AR9280 and AR9271.
|
|
Improves throughput and latency on 11n networks.
Tested by myself, jmc@, jcs@, phessler@, benno@
|
|
tcpdump -i athn0 -y IEEE802_11_RADIO was showing a SHORTPRE flag on most
frames because a PHY type check was missing from the bpf tap code path.
Short preamble only applies to 2, 5.5, and 11 MBit/s CCK frames.
|
|
ok patrick@ mpi@
|
|
error cases.
|
|
This task is used to deliver mbufs (for events, not data), but it's
possible that the queue overruns. In that case it does leak mbufs.
For now, assert the size to see if we hit the issue.
|
|
Update default/min/max noisefloor values to those used by Linux ath9k.
Tested by jmc, juanfra, kn, and myself, on 9280 and 9271 devices.
|
|
C99 inline semantics resulted in undefined symbols.
OK deraadt@ mpi@ dlg@
|
|
Code for this was already present, it was just not being called yet.
Tested on AR9280 and AR9271 by jmc@, kevlo@, jmatthew@, juanfra@, and myself.
|
|
ifconfig asks for such information.
ok patrick@
|
|
on the console.
Issue reported by deraadt@.
ok deraadt@, mpi@
|
|
Based on a diff from Jesper Wallin.
ok jmatthew@, stsp@
|
|
bit more time after a warm reset.
|
|
While here sort vendors.
Tested by jmatthew@
ok stsp@, jmatthew@
|
|
These show up with a variety of vendor/product ids, but the driver will
only match those we've tested so far.
help and testing from kevlo@
ok stsp@ kevlo@
|
|
m_leadingspace() and m_trailingspace(). Convert all callers to call
directly the functions and remove the defines.
OK krw@, mpi@
|
|
ok guenther@ tb@ deraadt@
|
|
RTL8723AE, like we alreay do for RTL8188C/RTL8192C.
ok jmatthew@
|
|
Tested by me and James Hastings.
|
|
ok kevlo@ stsp@
|
|
number and the fragment number, so shift it to get just the sequence number
for the tx descriptor. While here, add a #define for the flag in the same
field that enables hardware sequence numbering, and use existing constants
for some R92C_RSV_CTRL writes.
prompted by feedback from kevlo@ on another diff, tested on 8188CE, EE, EU
ok stsp@ kevlo@
|
|
makes it more readable.
ok stsp@ and jmatthew@
|