opnsense-src/sys
Adrian Chadd af2441fbc7 [ath] Attempt to fix epoch handling.
The epoch stuff with taskqueues works fine if the driver never calls
the receive path in other contexts, but this driver does.  If there was
a chip reset during active receive then part of the reset will call
the receive path to flush out any active packets before reinitialising
the receive queue and that needs to be done with the epoch held.

So:

* make the receive task a normal task again
* explicitly call epoch enter/exit around the legacy and newer DMA
  receive paths
* add a couple of epoch asserts to ensure that the receive packet
  path itself is called with epoch held.

This fixes it on my Atom eeepc laptop (circa 2010!) that I did
all of my initial 802.11n work in this driver and net80211.

Tested:

* AR9285, STA mode

TODO:

* Test on EDMA chipset (AR9380)
* Test in AP/adhoc modes, just to be sure (eg for beacon
  receive processing in particular.)
2020-02-20 07:12:43 +00:00
..
amd64 amd64: keep PTE bitmasks in sync with target pmap during pv reclaim 2020-02-18 00:02:20 +00:00
arm Fix the following -Werror warning from clang 10.0.0: 2020-02-18 17:55:24 +00:00
arm64 arm64: remove no longer needed atomic_load_ptr casts 2020-02-14 23:17:18 +00:00
bsm Jail and capability mode for shm_rename; add audit support for shm_rename 2019-11-18 13:31:16 +00:00
cam Add rudamentary support for UFS to probe whether a block device supports the 2020-02-16 23:10:59 +00:00
cddl Remove duplicate dbufs accounting. 2020-02-07 15:50:47 +00:00
compat Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (2 of many) 2020-02-15 18:54:59 +00:00
conf Add chacha20poly1305 support to crypto build 2020-02-16 00:03:09 +00:00
contrib Add chacha20poly1305 support to crypto build 2020-02-16 00:03:09 +00:00
crypto Fix the armv8 crypto driver after r354170. 2019-10-30 10:41:10 +00:00
ddb Add KERNEL_PANICKED macro for use in place of direct panicstr tests 2020-01-12 06:07:54 +00:00
dev [ath] Attempt to fix epoch handling. 2020-02-20 07:12:43 +00:00
dts Add an overlay for RK3328 USB3 node. 2020-01-29 12:10:42 +00:00
fs Add a EXT2FS-specific implementation for lseek(SEEK_DATA). 2020-02-18 16:39:57 +00:00
gdb Add KERNEL_PANICKED macro for use in place of direct panicstr tests 2020-01-12 06:07:54 +00:00
geom geli taste: allow GELIBOOT tagged providers as well 2020-02-07 21:36:14 +00:00
gnu Import DTS files for riscv from Linux 5.4 2019-12-03 09:12:53 +00:00
i386 i386: remove no longer needed atomic_load_ptr casts 2020-02-14 23:17:37 +00:00
isa sc(4) md bits: stop setting sc->kbd entirely 2019-12-30 02:07:55 +00:00
kern Eliminate some unnecessary uses of UMA_ZONE_VM. Only zones involved in 2020-02-19 08:17:27 +00:00
kgssapi Stop using des_cblock * for arguments to DES functions. 2019-08-26 17:25:07 +00:00
libkern random(9): Deprecate random(9), remove meaningless srandom(9) 2019-12-26 19:41:09 +00:00
mips mips: fix kernel build after r357804 2020-02-14 20:25:04 +00:00
modules Fix build of some modules for some kernel configs. 2020-02-16 15:43:28 +00:00
net Partially revert VNET change and expand VNET structure. 2020-02-17 11:08:50 +00:00
net80211 net80211: Move rate printing in amrr_node_stats() to a separate method 2020-01-17 22:04:11 +00:00
netgraph ng_nat: avoid panic if attached directly to ng_ether and got short packet 2020-02-12 00:31:00 +00:00
netinet Epochify SCTP. 2020-02-18 21:25:17 +00:00
netinet6 Epochify SCTP. 2020-02-18 21:25:17 +00:00
netipsec netipsec: fix a mismatched uma_zfree -> uma_zfree_pcpu 2020-02-12 20:18:29 +00:00
netpfil Use NET_TASK_INIT() and NET_GROUPTASK_INIT() for drivers that process 2020-02-18 19:53:36 +00:00
netsmb Stop using des_cblock * for arguments to DES functions. 2019-08-26 17:25:07 +00:00
nfs vfs: drop the mostly unused flags argument from VOP_UNLOCK 2020-01-03 22:29:58 +00:00
nfsclient
nfsserver
nlm vfs: drop the mostly unused flags argument from VOP_UNLOCK 2020-01-03 22:29:58 +00:00
ofed Make sure the VNET is properly set when reaping mbufs in ipoib. 2020-01-11 12:02:16 +00:00
opencrypto Miscellaneous typo fixes 2020-02-07 19:53:07 +00:00
powerpc powerpc: unconditionally mark SLB zones UMA_ZONE_CONTIG 2020-02-19 04:46:41 +00:00
riscv Implement vm.pmap.kernel_maps for RISC-V 2020-02-12 14:06:02 +00:00
rpc Change r355157 to make svc_rpc_gss_lifetime_max a static. 2019-11-28 02:18:51 +00:00
security Merge audit and systrace checks 2020-02-14 13:09:41 +00:00
sys Since r357940 it is no longer possible to use a single type cast for all 2020-02-19 19:51:09 +00:00
teken Adjust teken to allow build as part of loader 2019-09-05 18:07:40 +00:00
tests Regularize the Netflix copyright 2019-02-04 21:28:25 +00:00
tools vfs: stop null checking routines in vop wrappers 2020-01-26 00:41:38 +00:00
ufs Additional KASSERTs to ensure the consistency of the soft updates 2020-02-18 23:56:23 +00:00
vm Don't convert all lower-layer errors to EIO. 2020-02-20 01:33:01 +00:00
x86 Make atomic_load_ptr type-aware 2020-02-14 23:15:41 +00:00
xdr typo: s/impelmentation/implementation/. 2020-02-07 15:14:29 +00:00
xen xen: introduce a new way to setup event channel upcall 2019-01-30 11:34:52 +00:00
Makefile Remove sparc64 kernel support 2020-02-03 17:35:11 +00:00