| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
- Reorder detach so that ether_ifdetach() is called first. This removes
the race that ATE_FLAG_DETACHING closed, so that flag can be removed.
- Trim a duplicate clearing of IFF_DRV_RUNNING.
Reviewed by: imp
|
| |
|
|
|
|
| |
Pointy hat to: jhb
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
if_timer.
Reviewed by: scottl
|
|
|
|
|
|
|
| |
Although these macros may have its own strength, its complex
definition make hard to read the code.
Approved by: delphij
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Overhaul the locking to avoid recursion and add missing locking in a few
places.
- Don't schedule a task to call vge_start() from contexts that are safe to
call vge_start() directly. Just invoke the routine directly instead
(this is what all of the other NIC drivers I am familiar with do). Note
that vge(4) does not use an interrupt filter handler which is the primary
reason some other drivers use tasks.
- Add a new private timer to drive the watchdog timer instead of using
if_watchdog and if_timer.
- Fixup detach by calling ether_ifdetach() before stopping the interface.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
just two different attachments (EISA and PCI) to a single driver.
- Add real locking. Previously these drivers only acquired their lock
in their interrupt handler or in the ioctl routine (but too broadly in
the latter). No locking was used for the stack calling down into the
driver via if_init() or if_start(), for device shutdown or detach. Also,
the interrupt handler held the driver lock while calling if_input(). All
this stuff should be fixed in the locking changes.
- Really fix these drivers to handle if_alloc(). The front-end attachments
were using if_initname() before the ifnet was allocated. Fix this by
moving some of the duplicated logic from each driver into pdq_ifattach().
While here, make pdq_ifattach() return an error so that the driver just
fails to attach if if_alloc() fails rather than panic'ing. Also, defer
freeing the ifnet until the driver has stopped using it during detach.
- Add a new private timer to drive the watchdog timer.
- Pass the softc pointer to the interrupt handlers instead of the device_t
so we can avoid the use of device_get_softc() and to better match what
other drivers do.
|
|
|
|
|
|
|
| |
auto-negotiation. To make this simpler and easier to understand I have
split this out into two separate timers. One just manages the auto-neg
side of things and one is a transmit watchdog. Neither uses if_watchdog.
- Call ether_ifdetach() at the start of detach.
|
|
|
|
|
|
|
|
|
|
|
| |
- Add a missing callout_drain() to detach.
- Hook into the stats timer and use that to drive the transmit watchdog
instead of using if_watchdog.
- Run the stats timer every second to match other drivers instead of every
other second.
- Remove dubious callout handling that stopped the timer only to start it
again while holding the driver lock without dropping it in between the
stop and the start.
|
|
|
|
|
| |
netgraph mode it used a private timer to drive the transmit watchdog. In
the ifnet mode it used if_watchdog. Now it always uses the private timer.
|
|
|
|
| |
the assignments to if_timer.
|
| |
|
|
|
|
| |
add ada device option, according to man page.
|
|
|
|
|
|
|
| |
This lets modules loaded dynamically in loader(8) work for U-Boot-based
platforms.
MFC after: 1 week
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Note that only option names are printed, not values.
Reviewed by: pjd
Approved by: trasz (mentor)
MFC after: 2 weeks
|
|
|
|
|
|
|
| |
Comment some flawed assumptions in in6p_join_group() about
mixing SSM full-state and delta-based APIs.
MFC after: 1 day
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Don't allow joins w/o source on an existing group.
This is almost always pilot error.
We don't need to check for group filter UNDEFINED state at t1,
because we only ever allocate filters with their groups, so we
unconditionally reject such calls with EINVAL.
Trying to change the active filter mode w/o going through IPV6_MSFILTER
is also disallowed.
MFC after: 1 day
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Tighten input checking in in6p_join_group():
* Don't try to use the source address, when its family is unspecified.
* If we get a join without a source, on an existing inclusive
mode group, this is an error, as it would change the filter mode.
Fix a problem with the handling of in6_mfilter for new memberships:
* Do not rely on im6f being NULL; it is explicitly initialized to a
non-NULL pointer when constructing a membership.
* Explicitly initialize *im6f to EX mode when the source address
is unspecified.
This fixes a problem with in_mfilter slot recycling in the join path.
MFC after: 1 day
|
|
|
|
| |
MFC after: 1 day
|
|
|
|
|
|
|
| |
Return ENOBUFS consistently if user attempts to exceed
in_mcast_maxsocksrc resource limit.
MFC after: 1 day
|
|
|
|
|
|
|
| |
Fix an obvious logic error in the IPv4 multicast leave processing,
where the filter mode vector was not updated correctly after the leave.
MFC after: 1 day
|
|
|
|
|
|
| |
Only multicast routing is affected by the issue.
MFC after: 1 day
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
the generated binary and remove page size limitation for userland.
- Use contigmalloc(9)/contigfree(9) instead of malloc(9)/free(9) to make
sure the generated binary aligns properly and make it physically contiguous.
|
|
|
|
|
| |
generated native binary to page size for now.
- Update copyright date and fix some style nits.
|
|
|
|
|
| |
Reviewed by: sam
MFC after: 1 week
|
|
|
|
|
|
|
|
|
|
| |
pages.
(Note: Claims made in the comments about the handling of breakpoints in
wired pages have been false for roughly a decade. This and another bug
involving breakpoints will be fixed in coming changes.)
Reviewed by: kib
|
|
|
|
|
| |
This and previous commit have been...
Approved by: garga (mentor)
|
| |
|
|
|
|
|
|
|
| |
illegal TSN.
Approved by: rrs (mentor)
MFC after: ASAP
|
|
|
|
|
|
|
| |
mq_receive
mq_send
mq_timereceive
mq_timedsend
|
| |
|
| |
|
|
|
|
| |
MFC after: 2 weeks
|
|
|
|
|
|
| |
to it.
MFC after: 1 week
|
|
|
|
|
|
| |
only copied around.
Approved by: rrs (mentor)
|
|
|
|
|
|
|
|
|
|
|
| |
This is similar to the Solaris utility of the same name.
Some use cases:
* rc.subr's wait_for_pids
* interactive use, e.g. to shut down the computer when some task is done
even if the task is already running
Discussed on: hackers@
|
|
|
|
|
| |
- Add debug.kld_debug sysctl to control KLD debugging level
- Print information about KLD dependencies with debug enabled
|
|
|
|
|
|
|
|
|
| |
to the set actually restored by tl0_ret() instead of using the whole
trapframe. Additionally skip %g7 as that register is used as the
userland TLS pointer.
PR: 140523
MFC after: 1 week
|
|
|
|
|
|
|
| |
which is defined as LIST_EMPTY.
Approved by: rrs (mentor)
MFC after: 1 month
|