Age | Commit message (Collapse) | Author |
|
- display timeouts in the thread work queue, if any
- identify timeouts in the thread/softint work queue as such
- if not in work queue, print <bucket>/<level>; easier to right-align
- print arg pointer by hand to ensure consistent length for all pointers
on both 32 and 64-bit platforms
- generally make sure columns are correctly aligned and spaced
ok mpi@ visa@
|
|
UVM_WAIT() doesn't provide much of a useful abstraction. All callers
tsleep forever and no callers set PCATCH, so only 2 of 4 parameters are
actually used. Might as well just use tsleep_nsec(9) directly and make
the uvm code a bit less specialized.
Suggested by mpi@.
ok mpi@ visa@ millert@
|
|
ok lteo@
|
|
Account for VOP_LOOKUP(9) returning EROFS, otherwise unveil(2) would
pass the error along and fail.
Initial report and diff from semarie
OK bluhm millert
|
|
calls to a clean-up variable function.
|
|
the documented -m. As a rule, we only document long options when
users can't avoid them because they lack a short version.
As suggested by tedu@, as an exception, leave --context documented
because -C is awkward in so far as it takes an optional option
argument, which is fragile and error-prone and hence generally
discouraged, including by POSIX.
Two years ago, kettenis@, deraadt@, and tedu@ all agreed that this
is what should be done, and jmc@ was happy to accept the direction,
but somehow everybody forgot to commit.
|
|
|
|
blocked, POSIX requires EIDRM rather than EINVAL, and that's what our
implementation does and what the ERRORS section already says, too
|
|
use .Vt for struct names and and .Fa for struct fields
|
|
extra newlines to be appended at the end of the base64 text (ugly,
but harmless). Found and fixed by Sebastian Kinne
|
|
and as implemented by OpenBSD since sysv_msg.c rev. 1.35.
Diff from Moritz Buhl <mbuhl at moritzbuhl dot de> requested by bluhm@.
While here, add STANDARDS, improve HISTORY,
and use the customary .Fa for struct fields rather than .Va.
|
|
|
|
|
|
without this it looks like debug output loses info because of how
the uct was shortcutted.
no functional change, just prettier printfs.
|
|
previously it would only run the selection logic if the peer
information changed, but it is possible to be in the current state
with stale partner info. that can happen if the port becomes
disabled/disconnected, which unwinds the mux machine, but doesnt
clear the partner info. when the link is enabled again we re-enter
the current state, but because the partner info is the same we
didn't run the selection logic, which in turn didn't let the mux
machine move forward again.
|
|
lacp didnt come up again after i replaced some optics with dacs, and it
has to be because of a problem around the selection logic. this will let
me narrow it down.
|
|
work, including a proper parser.
|
|
ehter_cmp goes away, ether_is_eq becomes ETHER_IS_EQ, ether_is_zero
becomes ETHER_IS_ANYADDR.
ether_is_slow is kept locally, but renamed to ETHER_IS_SLOWADDR to
better match what comes from if_ether.h.
|
|
|
|
1. If a packet happens to match an expired once rule before the rule is removed
by the purge thread, the rule will be added to the pf_rule_gcl list again,
eventually causing a kernel crash when the purge thread tries to remove the
expired rule multiple times; and
2. A packet that matches an expired once rule will still cause a state to be
created, so a once rule is not truly a one shot rule while it is in that
expired-but-not-purged time window.
To fix both bugs, add a check in pf_test_rule() to prevent expired once rules
from being added to pf_rule_gcl. The check is added "early" in pf_test_rule()
to prevent any new connections from creating state if they match the expired
once rule.
This commit also includes a tweak by sashan@ to ensure that only one PF task
will mark a once rule as expired. Here is sashan@'s commentary:
"As soon as there will be more PF tasks running in parallel, we would be
able to hit similar crash you are fixing now. The rules are covered by
read lock, so with more PF tasks there might be two packets racing
to expire at once rule at the same time. Using atomic_cas() is sufficient
measure to serialize competing packets."
tested by abieber@ who reported the kernel crash on bugs@
ok sashan@
|
|
socket is only used in process context, so pass PR_WAITOK to
pool_init(9). The possible sleep in pool_put(9) should not hurt
as route_detach() is only called by soclose(9). As both pr_attach()
and pr_detach() are always called with kernel lock, PR_RWLOCK is
not needed.
OK mpi@
|
|
results in problems. hints from pvk@ about what introduced the breakage
we were seeing, who confirms that this backout fixes things; comitting
early to unbreak package builds.
====
a bunch of changes, all related to error-handling:
- have Handle->register also create a proper END block, so that
individual packages don't have to, and explain the issue
- kill old Unlink/Copy code that migrated to State years ago
- commonalize try{} catch {} for pkg_add/delete and pkg_create, so that
debug works the same way in both.
- switch printing command name to the catch handler, so that exceptions
are simpler to handle
and a few comments for the hairy parts...
Members:
OpenBSD/AddCreateDelete.pm:1.44->1.45
OpenBSD/AddDelete.pm:1.87->1.88
OpenBSD/Error.pm:1.33->1.34
OpenBSD/PackageRepository.pm:1.164->1.165
OpenBSD/PkgCreate.pm:1.160->1.161
OpenBSD/State.pm:1.58->1.59
OpenBSD/Temp.pm:1.34->1.35
====
|
|
only used in process context, so pass PR_WAITOK to pool_init(9).
The possible sleep in pool_put(9) should not hurt as pfkeyv2_detach()
is only called by soclose(9). As both pr_attach() and pr_detach()
are always called with kernel lock, PR_RWLOCK is not needed.
OK mpi@
|
|
|
|
fewer lines. While working in extend.c change relevant calls to
dobeep.
|
|
|
|
|
|
ok dlg@, sthen@, millert@
|
|
|
|
|
|
|
|
The firmware on OCTEON machines usually does not provide an interface
for accessing devices, which has made it tricky to implement an OpenBSD
bootloader. To solve this device access problem, this new loader has
been built on top of a small kernel. The kernel provides all the
necessary devices drivers, while most of the usual bootloader logic
is in a userspace program in a ramdisk.
The loader program is accompanied by a special device, octboot(4).
The main purpose of this device is to implement a mechanism for
loading and launching kernels. The mechanism has been inspired by Linux'
kexec(2) system call.
The bootloader will be enabled later when it is ready for general use.
Discussed with deraadt@
|
|
- Add -modulus for dsa sub command
- Remove -nextprotoneg
|
|
the expected output files.
|
|
structures are linked does not scale for the Adj-RIB-Out and so inserts
and updates into the Adj-RIB-Out did not scale because of some linear
list traversals in hot paths.
A synthetic test with 4000 peers announcing one prefix each showed that
the initial convergence time dropped from around 1 hout to around 6min.
Note: because the Adj-RIB-Out is now per peer the order in which prefixes
are dumped in 'bgpctl show rib out' changed.
Tested and OK job@, benno@, phessler@
|
|
|
|
Implement VMM_IOC_READVMPARAMS and VMM_IOC_WRITEVMPARAMS ioctls to read and
write pvclock state.
reads ok mlarkin@
|
|
originally from chrisz
|
|
|
|
ok stsp@, jsg@
|
|
|
|
|
|
message with mtype < 1.
from Moritz Buhl; OK kn@
|
|
that are used in vmd(8) config parser.
|
|
to be overridden from ACPI
|
|
|
|
|
|
limits. Convert kernel variables and calculations for mbuf memory
into long to allow larger values on 64 bit machines. Put a range
check into the kernel sysctl. For the interface itself int is still
sufficient. In netstat -m cast all multiplications to unsigned
long to hold the product of two unsigned int.
input and OK visa@
|
|
are relative to monotime; so they shift when time is being adjusted.
2) Fix a race between SIGCHLD delivery and reading the result imsg.
3) Some cleanup: use a number to distinguish pools internally
|
|
|