openbsd
9 months agosync
deraadt [Sat, 2 Mar 2024 01:07:23 +0000 (01:07 +0000)]
sync

9 months agoClarify behavior when there is more than one run of Xs.
millert [Fri, 1 Mar 2024 23:37:42 +0000 (23:37 +0000)]
Clarify behavior when there is more than one run of Xs.
With help from miod@

9 months agomktemp(1): add suffix support for compatibility with the GNU version
millert [Fri, 1 Mar 2024 21:50:40 +0000 (21:50 +0000)]
mktemp(1): add suffix support for compatibility with the GNU version
It is now possible to use templates where the Xs are not at the
end, like "foo.XXXXXX.bar".  If there are multiple runs of Xs,
the last one is used.  OK deraadt@

9 months agoAdd mkdtemps(3), like mkdtemp(3) but with a suffix.
millert [Fri, 1 Mar 2024 21:30:40 +0000 (21:30 +0000)]
Add mkdtemps(3), like mkdtemp(3) but with a suffix.
OK deraadt@ tb@

9 months agoAllow fdisk(8) to add GPT partitions of protected types.
krw [Fri, 1 Mar 2024 17:48:03 +0000 (17:48 +0000)]
Allow fdisk(8) to add GPT partitions of protected types.

This makes it possible to provision virtual machine images that
need a "BIOS Boot" partition.

Report, original diff and testing by Christian Ludwig. Thanks!

ok miod@

9 months agoBump version
tb [Fri, 1 Mar 2024 16:27:34 +0000 (16:27 +0000)]
Bump version

9 months agoBump version
claudio [Fri, 1 Mar 2024 16:23:37 +0000 (16:23 +0000)]
Bump version

9 months agoReduce dmesg spam by only printing the CPU feature flags when they differ
kettenis [Fri, 1 Mar 2024 15:57:43 +0000 (15:57 +0000)]
Reduce dmesg spam by only printing the CPU feature flags when they differ
from the previous one.  Since CPU cores are typically grouped in clusters
of identical cores and are typically enumerated this results in flags
being printed for the first core of a cluster.  But only if the clusters
use cores that implement different features which is rare.

ok deraadt@

9 months agoProtect pool_get() with kernel lock in sys_ypconnect().
bluhm [Fri, 1 Mar 2024 14:15:01 +0000 (14:15 +0000)]
Protect pool_get() with kernel lock in sys_ypconnect().

Pool namei_pool is initialized with IPL_NONE as filesystem always
runs with kernel lock.  So pool_get() needs kernel lock also in
sys_ypconnect().

OK kn@ deraadt@

9 months agoLipstick on a pig: avoid comparing signed and unsigned
job [Fri, 1 Mar 2024 09:36:55 +0000 (09:36 +0000)]
Lipstick on a pig: avoid comparing signed and unsigned

OK tb@ claudio@

9 months agoregen
jsg [Fri, 1 Mar 2024 08:35:23 +0000 (08:35 +0000)]
regen

9 months agomore Red Hat and Qumranet devices seen with QEMU and KVM
jsg [Fri, 1 Mar 2024 08:34:42 +0000 (08:34 +0000)]
more Red Hat and Qumranet devices seen with QEMU and KVM

9 months agoAdd -x to opt into experimental file formats
tb [Fri, 1 Mar 2024 08:10:09 +0000 (08:10 +0000)]
Add -x to opt into experimental file formats

Instead of burning one letter for each new file format (sidrops is known
to crank out new things faster than a normal person can read), use -x to
opt into parsing and processing file formats that aren't yet considered
stable. This is currently only the Signed Prefix List.  While a repetition
of the ASPA debacle, this code hasn't yet seen enough stress testing to be
enabled by default.

ok claudio job

9 months agoFactor signed prefix list JSON output into a helper
tb [Fri, 1 Mar 2024 07:59:20 +0000 (07:59 +0000)]
Factor signed prefix list JSON output into a helper

ok claudio job (as part of a larger diff)

9 months agoFix OPENSSL_{gmtime,timegm} in namespace build
tb [Fri, 1 Mar 2024 07:38:33 +0000 (07:38 +0000)]
Fix OPENSSL_{gmtime,timegm} in namespace build

These were incorrectly added to asn1.h. OPENSSL_gmtime is in crypto.h
and OPENSSL_timegm is already in posix_time.h

9 months agoDon't match dg2. The cards use paths unused by integrated graphics.
jsg [Fri, 1 Mar 2024 06:18:00 +0000 (06:18 +0000)]
Don't match dg2.  The cards use paths unused by integrated graphics.
Likely doesn't work.

9 months agoRemove the ciphers_by_values_test()
tb [Fri, 1 Mar 2024 03:47:32 +0000 (03:47 +0000)]
Remove the ciphers_by_values_test()

9 months agoexporter: use the atrocious SSL_CIPHER_find() rather than get_by_id()
tb [Fri, 1 Mar 2024 03:46:54 +0000 (03:46 +0000)]
exporter: use the atrocious SSL_CIPHER_find() rather than get_by_id()

9 months agossltest: drop another use of CRYPTO_mem_leaks()
tb [Fri, 1 Mar 2024 03:45:16 +0000 (03:45 +0000)]
ssltest: drop another use of CRYPTO_mem_leaks()

9 months agoAn empty file /var/account/acct in etc.tgz simplifies accounting.
bluhm [Thu, 29 Feb 2024 22:21:21 +0000 (22:21 +0000)]
An empty file /var/account/acct in etc.tgz simplifies accounting.
OK deraadt@

9 months agoAdd missing include of vlan.h in vmx(4).
jan [Thu, 29 Feb 2024 22:09:33 +0000 (22:09 +0000)]
Add missing include of vlan.h in vmx(4).

ok bluhm@

9 months agoMake nanosleep regress actually test something.
bluhm [Thu, 29 Feb 2024 21:47:02 +0000 (21:47 +0000)]
Make nanosleep regress actually test something.

Do not call exit 0 in parent and child process.  This skiped the
testing in multiple subtests.  Use meaningful variable names to
figure out what is going wrong after the tests have been enabled.
Fix the test logic.  Add missing break in switch statement, so that
success is reported.

9 months agoDetect OPENSSL_NO_GOST correctly
tb [Thu, 29 Feb 2024 20:06:24 +0000 (20:06 +0000)]
Detect OPENSSL_NO_GOST correctly

9 months agoCRYPTO_mem_leaks* will go away. Remove calls in legacy tests
tb [Thu, 29 Feb 2024 20:04:43 +0000 (20:04 +0000)]
CRYPTO_mem_leaks* will go away. Remove calls in legacy tests

9 months agoLink x509_algor test statically and switch to the internal
tb [Thu, 29 Feb 2024 20:03:47 +0000 (20:03 +0000)]
Link x509_algor test statically and switch to the internal
X509_ALGOR_set0_evp_md()

9 months agoOBJ_NAME_TYPE_PKEY_METH is no longer supported
tb [Thu, 29 Feb 2024 20:02:40 +0000 (20:02 +0000)]
OBJ_NAME_TYPE_PKEY_METH is no longer supported

9 months agoStop testing EVP_PKEY_GOST{IMIT,R01}
tb [Thu, 29 Feb 2024 20:02:00 +0000 (20:02 +0000)]
Stop testing EVP_PKEY_GOST{IMIT,R01}

9 months agoPrepare freenull test for GOST removal
tb [Thu, 29 Feb 2024 20:00:53 +0000 (20:00 +0000)]
Prepare freenull test for GOST removal

9 months agoUse monotonic clock to measure elapsed time.
bluhm [Thu, 29 Feb 2024 18:17:41 +0000 (18:17 +0000)]
Use monotonic clock to measure elapsed time.

The nanosleep regression test used gettimeofday(2).  Switch it to
a monotonic clock to avoid accidential fails from a call to
settimeofday(2) somewhere in the system.

from Christian Ludwig

9 months agomove from 7.5-beta to 7.5
deraadt [Thu, 29 Feb 2024 17:05:10 +0000 (17:05 +0000)]
move from 7.5-beta to 7.5

9 months agoIntel vmm restores just the base of the GDTR and IDTR ith fixed,
guenther [Thu, 29 Feb 2024 16:10:52 +0000 (16:10 +0000)]
Intel vmm restores just the base of the GDTR and IDTR ith fixed,
high limits, beyond what we actually expect.  We already restored
the IDTR from scratch, but the restore of the GDTR (limit) was
removed in r1.10.  Put that back in a simpler way, simplify the
IDTR restore and delete the save/restore of the LDTR because that
one really is handled as we want by vmm.

ok dv@ mlarkin@

9 months agorevert "Combine route_cache() and rtalloc_mpath() in new route_mpath()"
naddy [Thu, 29 Feb 2024 12:01:59 +0000 (12:01 +0000)]
revert "Combine route_cache() and rtalloc_mpath() in new route_mpath()"

It breaks NFS.

ok claudio@

9 months agoalign qwx_ce_rx error code checking with linux ath11k driver
stsp [Thu, 29 Feb 2024 11:45:47 +0000 (11:45 +0000)]
align qwx_ce_rx error code checking with linux ath11k driver

This silences warnings about a full Rx ring which the Linux driver is
likewise suppressing. They appeared because I used the wrong error code,
ENOBUF vs. ENOSPC.

9 months agoplug a node reference leak in qwx_mgmt_rx_event()
stsp [Thu, 29 Feb 2024 11:42:31 +0000 (11:42 +0000)]
plug a node reference leak in qwx_mgmt_rx_event()

This leak is of little consequence in station mode, but would be
problematic in hostap mode.

9 months agoregen
jsg [Thu, 29 Feb 2024 10:10:29 +0000 (10:10 +0000)]
regen

9 months agodrm/i915: Update ADL-N PCI IDs
jsg [Thu, 29 Feb 2024 10:09:54 +0000 (10:09 +0000)]
drm/i915: Update ADL-N PCI IDs

From Gustavo Sousa
in drm-intel-next

9 months agoStop assuming arbitrary rdomains are available and use the first given
anton [Thu, 29 Feb 2024 06:54:29 +0000 (06:54 +0000)]
Stop assuming arbitrary rdomains are available and use the first given
rdomain as the vnetid.

9 months agodt(4): interval, profile: schedule clockintr relative to start of recording
cheloha [Thu, 29 Feb 2024 00:18:48 +0000 (00:18 +0000)]
dt(4): interval, profile: schedule clockintr relative to start of recording

For the interval and profile providers, schedule the first clock
interrupt to occur dp_nsecs nanoseconds after the start of recording.
This makes the interval between the start of recording and the first
event consistent across runs.

With input from claudio@.  Simplified by claudio@.

Thread: https://marc.info/?l=openbsd-tech&m=170879058205043&w=2

ok mpi@ claudio@

10 months agoExpand only ever user of PBEPARAM_free() outside of libcrypto
tb [Wed, 28 Feb 2024 17:04:38 +0000 (17:04 +0000)]
Expand only ever user of PBEPARAM_free() outside of libcrypto

10 months agoSmall tweak for X509_check_purpose()
tb [Wed, 28 Feb 2024 16:26:08 +0000 (16:26 +0000)]
Small tweak for X509_check_purpose()

ok jsing

10 months agoEnable IPv6 AF for ppp(4)
denis [Wed, 28 Feb 2024 16:08:34 +0000 (16:08 +0000)]
Enable IPv6 AF for ppp(4)

OK claudio@

10 months agoNo need to kick a CPU twice when putting a thread on its runqueue.
mpi [Wed, 28 Feb 2024 13:43:44 +0000 (13:43 +0000)]
No need to kick a CPU twice when putting a thread on its runqueue.

From Christian Ludwig, ok claudio@

10 months agoFix rx_bufs accounting buglet; reported on bugs@ by dns at strangeloop dot cc;
miod [Wed, 28 Feb 2024 12:53:31 +0000 (12:53 +0000)]
Fix rx_bufs accounting buglet; reported on bugs@ by dns at strangeloop dot cc;
ok claudio@ deraadt@

10 months agoUse an accessor instead of reaching into X509_PURPOSE
tb [Wed, 28 Feb 2024 12:21:16 +0000 (12:21 +0000)]
Use an accessor instead of reaching into X509_PURPOSE

ok jsing

10 months agoCleanup IP input, forward, output.
bluhm [Wed, 28 Feb 2024 10:57:20 +0000 (10:57 +0000)]
Cleanup IP input, forward, output.

Before changing the routing code, get IPv4 and IPv6 input, forward,
and output in a similar shape.  Remove inconsistencies.

OK claudio@

10 months agoRefactor blk_match(). Fold the remaining data and empty file or no blocks
claudio [Wed, 28 Feb 2024 09:36:11 +0000 (09:36 +0000)]
Refactor blk_match(). Fold the remaining data and empty file or no blocks
cases together since they are kind of the same.

OK tb@

10 months agoInfer all rdomains from the environment with sane defaults.
anton [Wed, 28 Feb 2024 06:33:39 +0000 (06:33 +0000)]
Infer all rdomains from the environment with sane defaults.

10 months agoidentify MTE; ok kettenis@
jsg [Wed, 28 Feb 2024 00:53:16 +0000 (00:53 +0000)]
identify MTE; ok kettenis@

10 months agoSkip btcfi tests on amd64 CPUs not supporting CET IBT.
anton [Tue, 27 Feb 2024 19:34:13 +0000 (19:34 +0000)]
Skip btcfi tests on amd64 CPUs not supporting CET IBT.

ok kettenis@

10 months agoLinux still doesn't actually implement IBT for userland. And by the pace
kettenis [Tue, 27 Feb 2024 15:34:28 +0000 (15:34 +0000)]
Linux still doesn't actually implement IBT for userland.  And by the pace
things are going, it will take another decade before it does.  But OpenBSD
has it enabled *by default* already.

Drop the #ifdef __linux__.  This should hurt other OSes when they finally
catch up with us.

ok robert@, tb@

10 months agoalign read-only sections on masm/windows to 64 bytes
bcook [Tue, 27 Feb 2024 13:12:33 +0000 (13:12 +0000)]
align read-only sections on masm/windows to 64 bytes

Avoid conflicts where alignment is specified later in the underlying
assembly.

ok tb@

10 months agoPrinting large tuples require more than 64 chars, bump the string limit.
mpi [Tue, 27 Feb 2024 12:50:33 +0000 (12:50 +0000)]
Printing large tuples require more than 64 chars, bump the string limit.

10 months agoMake it possible to check for existing string in maps.
mpi [Tue, 27 Feb 2024 12:38:12 +0000 (12:38 +0000)]
Make it possible to check for existing string in maps.

10 months agoCombine route_cache() and rtalloc_mpath() in new route_mpath().
bluhm [Tue, 27 Feb 2024 12:37:49 +0000 (12:37 +0000)]
Combine route_cache() and rtalloc_mpath() in new route_mpath().

Fill and check the cache and call rtalloc_mpath() together.  Then
the caller of route_mpath() does not have to care about the uint32_t
*src pointer and just pass struct in_addr.  All the conversions are
done inside the functions.  ro->ro_rt is either valid or NULL.  Note
that some places have a stricter rtisvalid() now compared to the
previous NULL check.

OK claudio@

10 months agoSplit hash_file into three steps, setup, add buf and final.
claudio [Tue, 27 Feb 2024 11:28:30 +0000 (11:28 +0000)]
Split hash_file into three steps, setup, add buf and final.

Setup inits the context and adds the seed. The buf function simply adds
a block from the file to the hash. The final function calls MD4_Final()
to close the context and generate the hash.

This will help to remove the mmap in the sender and should result in a
more atomic view of the file since hash_file() is now called together
with the other hash_functions.

OK deraadt@ tb@

10 months agoPass flags to configure internal PHY delays down to the PHY. Also pass
kettenis [Tue, 27 Feb 2024 10:47:20 +0000 (10:47 +0000)]
Pass flags to configure internal PHY delays down to the PHY.  Also pass
down the device tree node.  This is necessary form boards that use ytphy(4)
such as the OrangePi Zero 3.  Note that this means the PHY mode has to be
correctly specified in the device tree.  This hasn't always been the case
and it is still wrong in some of the device trees provided by the U-Boot
version in packages that we use for 32-bit Allwinner SoCs.  However those
boards typically use a Realtek RTL8211E PHY (rev. 5) and rgephy(4) does
not pay attention to the flags yet.  So this commit shouldn't break any
boards that aren't already broken.  I'm working on an U-Boot update that
will fix these device trees.

ok jsg@

10 months agoFavor usage of REGRESS_SKIP_TARGETS instead of this custom logic.
anton [Tue, 27 Feb 2024 07:21:07 +0000 (07:21 +0000)]
Favor usage of REGRESS_SKIP_TARGETS instead of this custom logic.

10 months agoCope with recent ctfdump output changes.
anton [Tue, 27 Feb 2024 06:58:48 +0000 (06:58 +0000)]
Cope with recent ctfdump output changes.

10 months agoRecent ctfconv refactoring broke support for long double types, as
anton [Tue, 27 Feb 2024 06:58:19 +0000 (06:58 +0000)]
Recent ctfconv refactoring broke support for long double types, as
discovered by the regress tests.

10 months agoEnable MSIs on RK3588. We have a U-Boot package with device trees that
kettenis [Mon, 26 Feb 2024 21:41:24 +0000 (21:41 +0000)]
Enable MSIs on RK3588.  We have a U-Boot package with device trees that
work now.

ok patrick@

10 months agoAlso download SPLs via rsync
job [Mon, 26 Feb 2024 20:37:27 +0000 (20:37 +0000)]
Also download SPLs via rsync

OK tb@

10 months agoAdd RK3588 support. Rework the RK3568 support to take advantage of the
kettenis [Mon, 26 Feb 2024 18:57:50 +0000 (18:57 +0000)]
Add RK3588 support.  Rework the RK3568 support to take advantage of the
PHY mode enum like the new RK3588 code.

ok jmatthew@

10 months agoAdd GMAC related RK3588 clocks.
kettenis [Mon, 26 Feb 2024 18:54:25 +0000 (18:54 +0000)]
Add GMAC related RK3588 clocks.

ok jmatthew@

10 months agofix Tx rate selection for management frames in iwx(4)
stsp [Mon, 26 Feb 2024 18:00:09 +0000 (18:00 +0000)]
fix Tx rate selection for management frames in iwx(4)

The Tx rate index stored in ni->ni_txrate is not intended for use
with management frames, yet iwx_tx_fill_cmd() was using it anyway.
Use the minimum basic rate selected within iwx_tx_fill_cmd() instead.

10 months agoTrack the number of new files moving from 'staging' to 'validated cache'
job [Mon, 26 Feb 2024 15:40:33 +0000 (15:40 +0000)]
Track the number of new files moving from 'staging' to 'validated cache'

The OpenMetrics output shows per-repository counters for new files
added, the main process and JSON output emit the sum of all new files.

OK claudio@

10 months agoNeuter OBJ_bsearch{_,ex_}()
tb [Mon, 26 Feb 2024 15:00:30 +0000 (15:00 +0000)]
Neuter OBJ_bsearch{_,ex_}()

Make these functions always fail. A copy of OBJ_bsearch_ex_() is kept
in stack.c, where it is still used by internal_find() for sk_find{,_ex}().
sk_find_ex() will be removed in the upcoming bump, and then we can
simplify or rewrite what's still needed.

ok jsing

10 months agoAdd NAS-Identifier "npppd" for RADIUS requests. Also send Accouting-On
yasuoka [Mon, 26 Feb 2024 10:42:05 +0000 (10:42 +0000)]
Add NAS-Identifier "npppd" for RADIUS requests.  Also send Accouting-On
when RADIUS accounting is configured.

10 months agoProperly close JSON array before continuing in TAK
job [Mon, 26 Feb 2024 10:02:37 +0000 (10:02 +0000)]
Properly close JSON array before continuing in TAK

OK claudio@

10 months agouse TAILQ_FOREACH_SAFE() to avoid use after free
jsg [Mon, 26 Feb 2024 09:50:42 +0000 (09:50 +0000)]
use TAILQ_FOREACH_SAFE() to avoid use after free
found by smatch, ok claudio@

10 months agoPut the RADIUS message authenticator in the Access-Request and check
yasuoka [Mon, 26 Feb 2024 08:47:28 +0000 (08:47 +0000)]
Put the RADIUS message authenticator in the Access-Request and check
the message authenticators of any received messages from servers only
if they include a message authenticator.

10 months agoUse unsigned integers for bit fields. Also fix white spaces.
yasuoka [Mon, 26 Feb 2024 08:29:37 +0000 (08:29 +0000)]
Use unsigned integers for bit fields.  Also fix white spaces.

10 months agoConvert K&R style function declarations to ANSI.
yasuoka [Mon, 26 Feb 2024 08:25:51 +0000 (08:25 +0000)]
Convert K&R style function declarations to ANSI.

10 months agotype mgtv -> mgt; from todd carson
jmc [Mon, 26 Feb 2024 06:49:38 +0000 (06:49 +0000)]
type mgtv -> mgt; from todd carson

10 months agodrm/amd/display: Preserve original aspect ratio in create stream
jsg [Mon, 26 Feb 2024 00:06:08 +0000 (00:06 +0000)]
drm/amd/display: Preserve original aspect ratio in create stream

From Tom Chung
482cda9e50dedda43695fe52410add03cc146a30 in linux-6.6.y/6.6.18
deb110292180cd501f6fde2a0178d65fcbcabb0c in mainline linux

10 months agodrm/amd/display: Fix MST Null Ptr for RV
jsg [Mon, 26 Feb 2024 00:04:18 +0000 (00:04 +0000)]
drm/amd/display: Fix MST Null Ptr for RV

From Fangzhi Zuo
7407c61f43b66e90ad127d0cdd13cbc9d87141a5 in linux-6.6.y/6.6.18
e6a7df96facdcf5b1f71eb3ec26f2f9f6ad61e57 in mainline linux

10 months agodrm/amdgpu/soc21: update VCN 4 max HEVC encoding resolution
jsg [Mon, 26 Feb 2024 00:02:20 +0000 (00:02 +0000)]
drm/amdgpu/soc21: update VCN 4 max HEVC encoding resolution

From Thong
b476ae1da1369bc56e090d0a55bbd55bf0d8d409 in linux-6.6.y/6.6.18
2f542421a47e8246e9b7d2c6508fe3a6e6c63078 in mainline linux

10 months agodrm/prime: Support page array >= 4GB
jsg [Mon, 26 Feb 2024 00:00:17 +0000 (00:00 +0000)]
drm/prime: Support page array >= 4GB

From Philip Yang
4ff8ec01a86568ffa5b8825bfe51c4d0d1379286 in linux-6.6.y/6.6.18
b671cd3d456315f63171a670769356a196cf7fd0 in mainline linux

10 months agodrm/amd/display: Add align done check
jsg [Sun, 25 Feb 2024 23:59:06 +0000 (23:59 +0000)]
drm/amd/display: Add align done check

From Zhikai Zhai
b9e373ed8d9cefd56bf2ff2dd2914105bf53bd4e in linux-6.6.y/6.6.18
94b38b895dec8c0ef093140a141e191b60ff614c in mainline linux

10 months agodrm/amd: Don't init MEC2 firmware when it fails to load
jsg [Sun, 25 Feb 2024 23:57:35 +0000 (23:57 +0000)]
drm/amd: Don't init MEC2 firmware when it fails to load

From David McFarland
38fd4dfa2764280e48c862e89623def321d0328d in linux-6.6.y/6.6.18
8ef85a0ce24a6d9322dfa2a67477e473c3619b4f in mainline linux

10 months agodrm/amdgpu: Reset IH OVERFLOW_CLEAR bit
jsg [Sun, 25 Feb 2024 23:55:59 +0000 (23:55 +0000)]
drm/amdgpu: Reset IH OVERFLOW_CLEAR bit

From Friedrich Vock
8983397951b4b0bd51bb4b4ba9749424e1ccbb70 in linux-6.6.y/6.6.18
7330256268664ea0a7dd5b07a3fed363093477dd in mainline linux

10 months agoRevert "drm/amd: flush any delayed gfxoff on suspend entry"
jsg [Sun, 25 Feb 2024 23:54:12 +0000 (23:54 +0000)]
Revert "drm/amd: flush any delayed gfxoff on suspend entry"

From Mario Limonciello
caa2565a2e13899be31f7b1e069e6465d3e2adb0 in linux-6.6.y/6.6.18
916361685319098f696b798ef1560f69ed96e934 in mainline linux

10 months agoWe don't do compat32 so MSR_CSTAR shouldn't be set up: delete the
guenther [Sun, 25 Feb 2024 22:33:09 +0000 (22:33 +0000)]
We don't do compat32 so MSR_CSTAR shouldn't be set up: delete the
Xsyscall32 stub and UCODE32 selector, set MSR_CSTAR to zero at CPU
startup, and rezero on ACPI resume and VM exit.

requested a while ago by deraadt@
AMD VM testing chris@
testing and ok krw@

10 months agoclockintr: rename "struct clockintr_queue" to "struct clockqueue"
cheloha [Sun, 25 Feb 2024 19:15:50 +0000 (19:15 +0000)]
clockintr: rename "struct clockintr_queue" to "struct clockqueue"

The code has outgrown the original name for this struct.  Both the
external and internal APIs have used the "clockqueue" namespace for
some time when operating on it, and that name is eyeball-consistent
with "clockintr" and "clockrequest", so "clockqueue" it is.

10 months agosys/clockintr.h: consolidate forward declarations
cheloha [Sun, 25 Feb 2024 18:29:26 +0000 (18:29 +0000)]
sys/clockintr.h: consolidate forward declarations

10 months agoclockintr.h, kern_clockintr.c: add 2023, 2024 to copyright range
cheloha [Sun, 25 Feb 2024 18:17:11 +0000 (18:17 +0000)]
clockintr.h, kern_clockintr.c: add 2023, 2024 to copyright range

10 months agoLet some missing missing RFC 1918 reverse zones through.
florian [Sun, 25 Feb 2024 10:13:09 +0000 (10:13 +0000)]
Let some missing missing RFC 1918 reverse zones through.
Problem spotted and diff from Einfach Jemand (rru.142 at gmail),
thanks!

OK phessler, jca

10 months agoFix a typo
yasuoka [Sun, 25 Feb 2024 06:22:45 +0000 (06:22 +0000)]
Fix a typo

10 months agoNew accounting flag ABTCFI to indicate signal SIGILL + code ILL_BTCFI
deraadt [Sun, 25 Feb 2024 00:07:13 +0000 (00:07 +0000)]
New accounting flag ABTCFI to indicate signal SIGILL + code ILL_BTCFI
has occurred in the process.
ok various people

10 months agoCheck for builtins used inside tuple to ask the kernel to copyout specific data.
mpi [Sat, 24 Feb 2024 19:42:54 +0000 (19:42 +0000)]
Check for builtins used inside tuple to ask the kernel to copyout specific data.

Allow to save stacktrace and process name in tuples.

10 months agosync
deraadt [Sat, 24 Feb 2024 19:13:05 +0000 (19:13 +0000)]
sync

10 months agoAdd a few missing endbr64 to libcrypto
tb [Sat, 24 Feb 2024 17:53:20 +0000 (17:53 +0000)]
Add a few missing endbr64 to libcrypto

gcm_{gmult,ghash}_4bit(), aesni_ccm64_decrypt_blocks(), aes_cbc_encrypt(),
and aesni_xts_{en,de}crypt() were overlooked in previous passes.

Found with a diff for ld.lld by kettenis
ok kettenis

10 months agoImplement 'store' for maps.
mpi [Sat, 24 Feb 2024 17:05:59 +0000 (17:05 +0000)]
Implement 'store' for maps.

A current limitation is the value read from a map is converted to an
integer.  To preserve the original type we have to make maps aware of
the type of its elements.

10 months agoExplicitly disable MSR_CET_NO_TRACK_EN in MSR_S_CET. If enabled by the
deraadt [Sat, 24 Feb 2024 17:00:05 +0000 (17:00 +0000)]
Explicitly disable MSR_CET_NO_TRACK_EN in MSR_S_CET.  If enabled by the
boot-process, we don't want to accidentally allow "notrack" indirect
branches. Linux kernel does the same.  Today it is difficult to do the
same for userland, because there is 1 known piece of software using
"notrack" (which needs to be fixed).
ok kettenis

10 months agoclockintr_bind.9: document clockintr, clockrequest APIs
cheloha [Sat, 24 Feb 2024 16:21:32 +0000 (16:21 +0000)]
clockintr_bind.9: document clockintr, clockrequest APIs

This manpage only covers the frontend APIs.  The backend API is still
moving around and will be documented separately.

Tons of input, editing, and suggestions from jmc@, schwarze@, mpi@,
claudio@, mlarkin@, and probably several others I'm forgetting.

ok jmc@ schwarze@ claudio@ mpi@

10 months agoImplement 'store' for all builtins, they are either string or integer.
mpi [Sat, 24 Feb 2024 16:19:49 +0000 (16:19 +0000)]
Implement 'store' for all builtins, they are either string or integer.

10 months agoReplace uses of endbr64 with _CET_ENDBR from cet.h
tb [Sat, 24 Feb 2024 15:30:14 +0000 (15:30 +0000)]
Replace uses of endbr64 with _CET_ENDBR from cet.h

cet.h is needed for other platforms to emit the relevant .gnu.properties
sections that are necessary for them to enable IBT. It also avoids issues
with older toolchains on macOS that explode on encountering endbr64.

based on a diff by kettenis
ok beck kettenis

10 months agoqwx(4): qwx_dp_rx_tid_del_func: fix dp_reo_cache_flush_elem expiration logic
cheloha [Sat, 24 Feb 2024 15:21:39 +0000 (15:21 +0000)]
qwx(4): qwx_dp_rx_tid_del_func: fix dp_reo_cache_flush_elem expiration logic

Tweak a few things in qwx_dp_rx_tid_del_func() to make it behave
correctly on OpenBSD:

- struct dp_reo_cache_flush_elem: make ts a 64-bit count of nanoseconds

  Linux uses jiffies to timestamp dp_reo_cache_flush_elem.  Although
  OpenBSD has a global jiffies variable, we shouldn't use it outside
  of drm(4).  I would rather not use our global ticks variable, either.
  We can use getnsecuptime(9), a low-res 64-bit nanosecond timestamp,
  as a substitute.

- qwx_dp_rx_tid_del_func: replace gettime(9) with getnsecuptime(9)

- qwx_dp_rx_tid_del_func: convert DP_REO_DESC_FREE_TIMEOUT_MS to nanoseconds

- qwx_dp_rx_tid_del_func: reverse timestamp comparison operator

  This comparison is backwards.  Linux uses the time_after() macro to
  test whether a given entry has expired, so our ported code needs to
  test whether the current uptime is greater than or equal to a given
  entry's expiration time.

Joint effort with stsp@.  Tested by stsp@.

ok stsp@

10 months agoRemove custom key length handling
tb [Sat, 24 Feb 2024 08:00:37 +0000 (08:00 +0000)]
Remove custom key length handling

No cipher in libcrypto is marked EVP_CIPH_CUSTOM_KEY_LENGTH and no control
handler deals with EVP_CTRL_SET_KEY_LENGTH, which means that this code is
dead as far as libcrypto is concerned. Almost nothing uses EVP_CIPHER_meth*
(this was added for a single project) and nothing sets a custom ctrl. This
isn't going to change anyway since EVP_CIPHER_meth* is deprecated in order
to promote more provider beauty.

ok beck jsing

10 months agoRemove last calls to CRYPTO_{push,pop}_info()
tb [Sat, 24 Feb 2024 07:53:01 +0000 (07:53 +0000)]
Remove last calls to CRYPTO_{push,pop}_info()

These don't do anything but return 0 and will be garbage collected in the
upcoming bump.

ok jsing

10 months agoerr.c: fix incorrect line wrapping
tb [Sat, 24 Feb 2024 07:50:25 +0000 (07:50 +0000)]
err.c: fix incorrect line wrapping