| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reduces drops caused by the ifq pressure drop mechanism and hence
increases throughput. Such drops are visible with e.g. 'netstat -dnI iwm0'.
Not all affected drivers have been tested yet but these changes are largely
mechanical and should be safe. As usual, please report any regressions.
With help from dlg@ and mpi@
Problem found by robert@
Tested by robert, jmc, Tracey Emer, Matthias Schmidt, florian, Björn Ketelaars
ok mpi@
|
| |
|
|
|
|
|
| |
in x_media_change(), return the errno from ieee80211_media_change() and
do the error check from x_init().
ok stsp@, jmatthew@, phessler@
|
| |
|
|
|
|
|
| |
Works for me on amd64.
okay stsp@, who also noted this matches Linux commit
fd7b9270120ca7e53fbf0469febe0c68acf6a0a2
|
| |
|
|
| |
ok jsg@, stsp@
|
| |
|
|
| |
Patch by Mike Korbakov
|
| |
|
|
|
| |
Patch by Jacqueline Jolicoeur
ok deraadt
|
| |
|
|
|
|
| |
Problem reported by Ilja Van Sprundel.
ok stsp@, tb@
|
| |
|
|
| |
ok stsp@
|
| |
|
|
| |
ok stsp@
|
| |
|
|
| |
ok natano visa
|
| |
|
|
|
|
|
| |
this means packets are consistently counted in one place, unlike the
many and various ways that drivers thought they should do it.
ok mpi@ deraadt@
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
there are two things shared between the network stack and drivers
in the send path: the send queue and the IFF_OACTIVE flag. the send
queue is now protected by a mutex. this diff makes the oactive
functionality mpsafe too.
IFF_OACTIVE is part of if_flags. there are two problems with that.
firstly, if_flags is a short and we dont have any MI atomic operations
to manipulate a short. secondly, while we could make the IFF_OACTIVE
operates mpsafe, all changes to other flags would have to be made
safe at the same time, otherwise a read-modify-write cycle on their
updates could clobber the oactive change.
instead, this moves the oactive mark into struct ifqueue and provides
an API for changing it. there's ifq_set_oactive, ifq_clr_oactive,
and ifq_is_oactive. these are modelled on ifsq_set_oactive,
ifsq_clr_oactive, and ifsq_is_oactive in dragonflybsd.
this diff includes changes to all the drivers manipulating IFF_OACTIVE
to now use the ifsq_{set,clr_is}_oactive API too.
ok kettenis@ mpi@ jmatthew@ deraadt@
|
| |
|
|
|
|
|
|
|
| |
This header is only needed because <netinet/if_ether.h> declares a
structure that needs it. But it turns out that <net/if.h> already
includes it as workaround.
A proper solution would be to stop declarting "struct ether_arp"
there. But no driver should need this header.
|
| | |
|
| |
|
|
|
|
|
|
| |
the specific queues are ic_mgtq, ic_pwrsaveq, and ni_savedq. rtw
had its own queue for beacons.
tested by mpi@ and jmc@
ok mpi@
|
| | |
|
| |
|
|
| |
OK mikeb@
|
| |
|
|
|
|
|
|
| |
Most of the WiFi/Ethernet USB adapter only have one configuration and always
use its first interface. In order to improve USB descriptors parsing start
by reducing the number of places where a configuration is set.
Tests & ok stsp@
|
| |
|
|
|
|
|
| |
have any direct symbols used. Tested for indirect use by compiling
amd64/i386/sparc64 kernels.
ok tedu@ deraadt@
|
| |
|
|
|
|
|
| |
on every received mbuf, so there's no need to initialize this pointer in
the drivers.
Tested by and ok phessler@
|
| | |
|
| |
|
|
| |
ok dlg@ mpi@ bcook@ millert@ miod@
|
| |
|
|
|
|
| |
run(4) devices.
ok stsp@
|
| | |
|
| |
|
|
| |
after discussions with beck deraadt kettenis.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
set the 'dying' flag of a device. Such handlers are useless now that
usbd_detach() already set this flag.
Even if the purpose of this flag is questionnable on OpenBSD because
DVACT_DEACTIVATE acts as a pre-detach event, this is just a first small
step towards the simplification of the autoconf(9) device states.
This cleaning is now possible thanks to the work of pirofti@ to convert
all the USB drivers to properly use usbd_is_dying().
Discussed many times with deraadt@
|
| |
|
|
| |
Tested with "MAC/BBP RT5592 (rev 0x0222), RF RT5592 (MIMO 2T2R)" device.
|
| |
|
|
|
|
| |
Makes RT5592 devices work, except for an 11a scanning issue, according
to Brendan MacDonell who submitted this patch on tech@. Thanks!
ok claudio@
|
| |
|
|
|
|
| |
Committing over MAC/BBP RT5390 (rev 0x0502), RF RT5370 (MIMO 1T1R).
Tested by myself, matthieu@, juanfra@
Diff glanced over by kettenis@
|
| |
|
|
|
|
|
|
|
|
| |
driver start routines. Instead add & use a pointer in the pkthdr
since we don't want the overhead of using a mbuf_tags(9).
claudio@ pointed out that other subsystems might want to use this
pointer too, so here's a new cookie!
ok claudio@, mikeb@, deraadt@
|
| |
|
|
|
| |
really impossible to debug the USB stack when any single device you plug
in your machine starts to vomit its own poetry,
|
| | |
|
| |
|
|
|
| |
don't have to. Just remove these include lines.
Compiled on amd64 i386 sparc64; OK henning@ mikeb@
|
| | |
|
| |
|
|
|
|
|
|
|
| |
definitions instead. We don't change usb.h for now to stay compatible
with userland.
Tested by mpi@ on macppc and myself on i386.
ok mpi@
|
| |
|
|
|
|
| |
Part of the work to remove -Wno-uninitialized.
ok blambert jsg
|
| | |
|
| |
|
|
|
|
|
|
| |
that's ever used it, and it's long since been changed to use
DVACT_{QUIESCE,SUSPEND,RESUME} instead.
ok deraadt@, dlg@; miod@ also agreed with this idea when I brought it
up a few weeks ago
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
changes:
* use usb_ref_{incr,decr,wait}() to avoid detaching the driver while a
process is still using the hardware.
* don't add timeout(9)s if the device is detached.
* add checks to see if the device has been detached before running
ioctls, timeouts, and tasks.
* use usb_wait_task() to wait for tasks to complete.
ok damien@
|
| |
|
|
| |
this is causing problems with suspend/resume for some people.
|
| |
|
|
|
|
|
|
|
|
| |
process is still using the hardware.
* don't add timeout(9)s if the device is detached.
* add checks to see if the device has been detached before running
ioctls, timeouts, and tasks.
* use usb_wait_task() to wait for tasks to complete.
ok damien@
|
| | |
|
| |
|
|
|
|
| |
them from userland, and nothing in the kernel uses them.
ok krw@, miod@
|
| |
|
|
| |
from Jordi Beltran Creix.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* use usbd_ref_{incr,decr,wait} to not detach while another process/thread
is using the driver
* s/usb_rem_task/usb_rem_wait_task/ in detach functions because detach
doesn't always happen in the task thread; otherwise a task could be
running while the driver detaches
* in detach functions, first delete pending timeouts, then wait for
processes to be done with the driver before freeing resources
ok martynas@
|
| | |
|
| |
|
|
|
| |
so release the node in the caller (if_start) instead and do
the same in run(4) for consistency.
|
| | |
|