bluhm [Tue, 9 Jul 2024 09:33:13 +0000 (09:33 +0000)]
IPv6 forward copies small packet content on the stack.
Unfortunately RFC 4443 demands that the ICMP6 error packet containing
the orignal packet is up to 1280 bytes long. That means for every
forwarded packet forward() creates a mbuf copy, just in case delivery
fails.
For small packets we can copy the content on the stack like IPv4
forward does. This saves us some mbuf allocations if the content
is shorter than the mbuf data size.
OK mvs@
dv [Tue, 9 Jul 2024 09:31:37 +0000 (09:31 +0000)]
vmd/vmm: move vm_run_params into mi header.
To prepare for mi/md splitting vmd, need to fixup the dev/vmm/vmm.h
mi header. Move the vm_run_params struct and clean up the includes
in vmd.
"sure", mlarkin@
claudio [Tue, 9 Jul 2024 09:22:50 +0000 (09:22 +0000)]
Reshuffle the switch cases in ptsignal and single_thread_set to be
in the order needed for future changes. No functional change.
OK mpi@
kettenis [Tue, 9 Jul 2024 08:47:10 +0000 (08:47 +0000)]
Implement MSI multiple-vector support.
ok patrick@
claudio [Tue, 9 Jul 2024 08:44:36 +0000 (08:44 +0000)]
In sched_toidle() only call the TRACEPOINT if curproc is set.
sched_toidle() is called by cpu_hatch() to start APs and then curproc
may be NULL.
OK mpi@
tb [Tue, 9 Jul 2024 07:57:57 +0000 (07:57 +0000)]
Add bounded attributes to hmac.h
ok beck
deraadt [Tue, 9 Jul 2024 07:51:09 +0000 (07:51 +0000)]
KNF a pile of else if blocks; ok tb
beck [Tue, 9 Jul 2024 07:39:21 +0000 (07:39 +0000)]
Enable namespaced builds by default for libssl and libcrypto.
Some further refinements will happen to the build process to
automatically generate the Symbols.namespace file, and to remove
our last public unhidden symbol (which was a mistake, but waits for
a major bump to get removed)
But for now everything should be using this.
ok tb@
mlarkin [Tue, 9 Jul 2024 07:28:12 +0000 (07:28 +0000)]
Remove trailing whitespace. No code change.
beck [Tue, 9 Jul 2024 07:17:13 +0000 (07:17 +0000)]
Hide remaining unused ERR functions in err.h
ok tb@
beck [Tue, 9 Jul 2024 07:16:44 +0000 (07:16 +0000)]
Hide CRYPTO_get_dynlock_create_callback
ok tb@
beck [Tue, 9 Jul 2024 07:16:13 +0000 (07:16 +0000)]
Hide DES global variables
ok tb@
beck [Tue, 9 Jul 2024 07:15:39 +0000 (07:15 +0000)]
Add missing symbols to Symbols.namespace
ok tb@
beck [Tue, 9 Jul 2024 07:14:26 +0000 (07:14 +0000)]
Remove duplicates from Symbols.namespace
ok tb@
beck [Tue, 9 Jul 2024 06:14:59 +0000 (06:14 +0000)]
Hide symbols for two missed public functions in bio.h
ok tb@
beck [Tue, 9 Jul 2024 06:13:22 +0000 (06:13 +0000)]
Hide global _it symbols in pkcs12.h
ok tb@
beck [Tue, 9 Jul 2024 06:12:45 +0000 (06:12 +0000)]
Hide global _it symbola in cms.h
ok tb@
jmc [Tue, 9 Jul 2024 05:19:41 +0000 (05:19 +0000)]
point mount -> mount point;
from netbsd -r1.46/pgoyette
jsg [Tue, 9 Jul 2024 04:42:48 +0000 (04:42 +0000)]
change format strings to fix SEM_DEBUG build
jsg [Tue, 9 Jul 2024 03:21:47 +0000 (03:21 +0000)]
spelling
jsg [Tue, 9 Jul 2024 01:21:19 +0000 (01:21 +0000)]
fix disasm of fucompp
when merging changes from FreeBSD in i386 rev 1.10
db_Esca5 was added but not used
ok mlarkin@
dv [Mon, 8 Jul 2024 17:33:45 +0000 (17:33 +0000)]
Quiet vmd in debug logging mode. We don't need to hear about handled
page faults.
sure, @mlarkin.
beck [Mon, 8 Jul 2024 17:11:05 +0000 (17:11 +0000)]
Hide global _it symbols in dsa.h
ok tb@
beck [Mon, 8 Jul 2024 17:10:18 +0000 (17:10 +0000)]
Hide global _it symbols in rsa.h
ok tb@
beck [Mon, 8 Jul 2024 17:01:54 +0000 (17:01 +0000)]
Guard variable declarations to unbreak non-namespaced builds.
ok tb@
beck [Mon, 8 Jul 2024 16:24:22 +0000 (16:24 +0000)]
Hide global _it symbols in asn1t.h
ok tb@
beck [Mon, 8 Jul 2024 16:23:27 +0000 (16:23 +0000)]
Hide global _it symbols in pkcs7.h
ok tb@
mpi [Mon, 8 Jul 2024 16:15:42 +0000 (16:15 +0000)]
Remove the KASSERT() in sched_unpeg_curproc().
This fix rebooting a GENERIC.MP kernel on SP machines because unpeg is out
of the loop in smr_thread().
tb [Mon, 8 Jul 2024 16:11:47 +0000 (16:11 +0000)]
x509_pubkey_get_ski() should support non-rsa keys
for now add an XXX reminder.
Pointed out by job a while back
ratchov [Mon, 8 Jul 2024 16:10:34 +0000 (16:10 +0000)]
aucat: check for failled allocation
From Nihal Jere <nihal@nihaljere.xyz>, thanks!
krw [Mon, 8 Jul 2024 16:07:36 +0000 (16:07 +0000)]
Don't check op_q_alloc for non-NULL before invoking op_q_free.
Check op_q_free for non-NULL instead.
Neither are currently set to non-NULL anywhere.
ok jmatthew@
tb [Mon, 8 Jul 2024 15:31:58 +0000 (15:31 +0000)]
Ensure that the rpkiManifest is a file in the caRepository
discussed with jca and job
ok claudio
tb [Mon, 8 Jul 2024 15:31:11 +0000 (15:31 +0000)]
Normalize the rsync caRepository to contain a trailing slash
discussed with jca
ok claudio
jmc [Mon, 8 Jul 2024 15:02:28 +0000 (15:02 +0000)]
remove a further spkac reference; ok tb
beck [Mon, 8 Jul 2024 14:53:11 +0000 (14:53 +0000)]
Hide global _it variables in ocsp.h
ok tb@
beck [Mon, 8 Jul 2024 14:52:31 +0000 (14:52 +0000)]
Hide global _it variables in asn1.h
ok tb@
beck [Mon, 8 Jul 2024 14:48:49 +0000 (14:48 +0000)]
Hide global _it variables in x509.h
ok tb@
beck [Mon, 8 Jul 2024 14:47:44 +0000 (14:47 +0000)]
Hide global _it variables in x509v3.h
ok tb@
ajacoutot [Mon, 8 Jul 2024 14:47:42 +0000 (14:47 +0000)]
Use install -F instead of cat(1); no clue what I was thinking.
ok robert@
mpi [Mon, 8 Jul 2024 14:46:47 +0000 (14:46 +0000)]
Introduce sched_unpeg_curproc() to abstract the current implementation.
ok kettenis@, mlarkin@, miod@, claudio@
op [Mon, 8 Jul 2024 14:33:29 +0000 (14:33 +0000)]
mg: fix auto-indent-mode with custom tab widths
dointent() didn't know about set-tab-width so it was mis-indenting
the lines. Diff from Mark Willson (mark dot willson at hydrus.org.uk),
with a tiny change by me.
ajacoutot [Mon, 8 Jul 2024 14:32:44 +0000 (14:32 +0000)]
Prevent rewriting /etc/rc.conf.local unconditionnally. Compare the new and old
ones and do nothing is they match.
This mean that "rcctl enable foobar" will not touch anything is foobar is
already enabled.
spotted by robert@ using Saltstack (that runs "rcctl enable ..." on a regular
basis).
ok robert@
florian [Mon, 8 Jul 2024 14:22:09 +0000 (14:22 +0000)]
cleanup unused variable
op [Mon, 8 Jul 2024 14:15:33 +0000 (14:15 +0000)]
add TSF
florian [Mon, 8 Jul 2024 13:46:33 +0000 (13:46 +0000)]
IN_MULTICAST uses host byte order
I somehow missed this when ripping out 3 layers of indirections.
from niklas
claudio [Mon, 8 Jul 2024 13:18:26 +0000 (13:18 +0000)]
Adjust code since FILL_KPROC() got another argument since struct tusage
accounting was modified.
OK dlg@ jca@
claudio [Mon, 8 Jul 2024 13:17:11 +0000 (13:17 +0000)]
Rework per proc and per process time usage accounting
For procs (threads) the accounting happens now lockless by curproc using
a generation counter. Callers need to use tu_enter() and tu_leave() for this.
To read the proc p_tu struct tuagg_get_proc() should be used. It ensures
that the values read is consistent.
For processes only the time of exited threads is accumulated in ps_tu and
to get the proper process time usage tuagg_get_process() needs to be called.
tuagg_get_process() will sum up all procs p_tu plus the ps_tu.
This removes another SCHED_LOCK() dependency. Adjust the code in
exit1() and exit2() to correctly account for the full run time.
For this adjust sched_exit() to do the runtime accounting like it is done
in mi_switch().
OK jca@ dlg@
claudio [Mon, 8 Jul 2024 09:15:05 +0000 (09:15 +0000)]
Fix comment for exit2() this code is called by sched_idle() not cpu_exit().
The note can be removed but add a comment that since this is called from
the idle process exit2() is not allowed to sleep.
OK jca@
landry [Mon, 8 Jul 2024 08:07:45 +0000 (08:07 +0000)]
octeon/cnmac: assume 1Gbps in the default case
avoids a division by 0 when up'ing the non-working cnmac2 on er-poe
feedback from visa@:
"The cnmac2 link is connected to a discrete Ethernet switch chip on the
PoE, and this link does not carry RGMII in-band PHY status. If the code
were to support such hardware designs in the future, something like this
patch would be needed."
this diff from miod@, same diff from visa@ in 2017
(cf https://marc.info/?l=openbsd-bugs&m=
151017517115440&w=2)
ok visa@
jca [Mon, 8 Jul 2024 06:57:37 +0000 (06:57 +0000)]
Pretend to clarify the way ipv6_asc() works
Give example IPv6 addresses to clarify what is meant with 1, 2 or 3 zero
length elements.
tb made me look.
perverted, twisted, crippled
tb [Mon, 8 Jul 2024 06:00:34 +0000 (06:00 +0000)]
Adjust regress for SPKAC removal
ok jsing
tb [Mon, 8 Jul 2024 06:00:09 +0000 (06:00 +0000)]
Adjust manpage for SPKAC removal
ok jsing
tb [Mon, 8 Jul 2024 05:59:10 +0000 (05:59 +0000)]
Remove spkac subcommand
Google killed efforts to have SPKAC in html5 by zapping it from chrome
a decade ago. This effort doesn't look like it's going anywhere:
https://datatracker.ietf.org/doc/draft-leggett-spkac/
Unfortunately, PHP and Ruby still support NETSCAPE_SPKI, so we can't
kill that code, but I see no real reason we need to support this in our
openssl command. If the need should arise we can write a somewhat less
poor version of this.
ok jsing
tb [Mon, 8 Jul 2024 05:56:17 +0000 (05:56 +0000)]
Remove spkac handling from openssl(1) ca
This is very poorly written code and now the only consumer of some
public API that should not have survived the turn of the millenium.
ok jsing
djm [Mon, 8 Jul 2024 03:04:34 +0000 (03:04 +0000)]
don't need return at end of void function
jsg [Mon, 8 Jul 2024 02:20:29 +0000 (02:20 +0000)]
drm/amdgpu/atomfirmware: fix parsing of vram_info
From Alex Deucher
01f58871af9c2cffcb57b77336994e6bfe37c1f0 in linux-6.6.y/6.6.37
f6f49dda49db72e7a0b4ca32c77391d5ff5ce232 in mainline linux
jsg [Mon, 8 Jul 2024 02:18:34 +0000 (02:18 +0000)]
drm/amd/display: Send DP_TOTAL_LTTPR_CNT during detection if LTTPR is present
From Michael Strauss
89d8a851543e1aab6ea5c8a06d02dbe982948508 in linux-6.6.y/6.6.37
2ec6c7f802332d1eff16f03e7c757f1543ee1183 in mainline linux
jsg [Mon, 8 Jul 2024 02:15:57 +0000 (02:15 +0000)]
drm/i915/gt: Fix potential UAF by revoke of fence registers
From Janusz Krzysztofik
06dec31a0a5112a91f49085e8a8fa1a82296d5c7 in linux-6.6.y/6.6.37
996c3412a06578e9d779a16b9e79ace18125ab50 in mainline linux
jsg [Mon, 8 Jul 2024 02:13:36 +0000 (02:13 +0000)]
drm/fbdev-dma: Only set smem_start is enable per module option
From Thomas Zimmermann
f29fcfbf6067c0d8c83f84a045da9276c08deac5 in linux-6.6.y/6.6.37
d92a7580392ad4681b1d4f9275d00b95375ebe01 in mainline linux
jsg [Mon, 8 Jul 2024 02:10:48 +0000 (02:10 +0000)]
drm/drm_file: Fix pid refcounting race
From Jann Horn
16682588ead4a593cf1aebb33b36df4d1e9e4ffa in linux-6.6.y/6.6.37
4f2a129b33a2054e62273edd5a051c34c08d96e9 in mainline linux
jsg [Mon, 8 Jul 2024 02:08:07 +0000 (02:08 +0000)]
drm/amdgpu: Fix pci state save during mode-1 reset
From Lijo Lazar
f16c10e05f1406576ddcb8dc598a661522959f75 in linux-6.6.y/6.6.37
74fa02c4a5ea1ade5156a6ce494d3ea83881c2d8 in mainline linux
jsg [Mon, 8 Jul 2024 02:06:11 +0000 (02:06 +0000)]
drm/radeon/radeon_display: Decrease the size of allocated memory
From Erick Archer
41e58607a57c4c9963e2c736e1a8c90141207b69 in linux-6.6.y/6.6.37
ae6a233092747e9652eb793d92f79d0820e01c6a in mainline linux
patrick [Sun, 7 Jul 2024 09:38:44 +0000 (09:38 +0000)]
Add device tree mapping for Lenovo Yoga Slim 7x.
ok kettenis@
jsg [Sun, 7 Jul 2024 03:03:09 +0000 (03:03 +0000)]
remove unused i386_spurious()
jsg [Sun, 7 Jul 2024 01:39:06 +0000 (01:39 +0000)]
remove unused ufs_ihashlookup()
ok mlarkin@
jmc [Sat, 6 Jul 2024 15:33:17 +0000 (15:33 +0000)]
rework the "random" text:
- add "~" to the valid field table, as pointed out by sthen
- note that the value is generated whenever the tab is loaded,
as requested by K R
- clarify the text, as pointed out by deraadt
ok stehn millert
jsg [Sat, 6 Jul 2024 10:39:50 +0000 (10:39 +0000)]
remove ampintc_intr_string(), unused on arm64
ok mlarkin@ kettenis@
jsg [Sat, 6 Jul 2024 09:53:25 +0000 (09:53 +0000)]
remove unused nfs_null()
ok miod@ mlarkin@
landry [Sat, 6 Jul 2024 06:15:17 +0000 (06:15 +0000)]
octeon/cnmac: Skip the switch port (cnmac2) on the 5-ports EdgeRouter POE
it doesn't work as is and would need a separate driver ?
based on a 2017 diff from visa@
ok visa@
patrick [Sat, 6 Jul 2024 05:34:35 +0000 (05:34 +0000)]
Fix last commit; the flag has a slightly different prefix
patrick [Fri, 5 Jul 2024 22:53:57 +0000 (22:53 +0000)]
When trying to enable multiple MSI vectors, check the flag first whether
or not it's supported. This allows qwx(4) to properly handle missing
support for that and switch back to a single MSI vector.
ok kettenis@
patrick [Fri, 5 Jul 2024 22:52:25 +0000 (22:52 +0000)]
On Qualcomm machines, make use of the in-built MSI functionality in case
we don't have an msi-map pointing us to the GIC-MSI. This enables MSIs
on the Snapdragon X Elite or the Lenovo x13s in case it's running an
unpatched DTB.
ok kettenis@
patrick [Fri, 5 Jul 2024 21:24:13 +0000 (21:24 +0000)]
Only call qwx_dp_service_srng() if ext irq is enabled. It would be nicer
if we could simply call the ext irq handler which already does that, but
that is requiring the irq groups to be set up to point to our softc, so
let's just check it again. This allows single-msi vectors to behave.
ok stsp@
jsg [Fri, 5 Jul 2024 05:42:08 +0000 (05:42 +0000)]
remove unused vn_isdisk(), added for softdep
ok kn@
djm [Thu, 4 Jul 2024 22:53:59 +0000 (22:53 +0000)]
fix grammar: "a pattern lists" -> "one or more pattern lists"
kettenis [Thu, 4 Jul 2024 21:54:38 +0000 (21:54 +0000)]
Implement support for version 7 controllers. These have two separate
SPMI busses but we only support the first one for now. Adding support for
the second bus will need some more surgery.
ok patrick@
kettenis [Thu, 4 Jul 2024 20:11:46 +0000 (20:11 +0000)]
Only override the time offset in rtcinfo[0] when setting the time; don't
touch rtcinfo[1] and rtcinfo[2]. This doesn't actually fix anything
but rtcinfo[1] on a new machine already contains the value we write into
it and we don't really know what the other bits are used for.
ok patrick@
patrick [Thu, 4 Jul 2024 18:35:36 +0000 (18:35 +0000)]
Support the ACPI GPIO pins necessary to support the keyboard, touchpad
and touchscreen on the Qualcomm Snapdragon X Elite (X1E80100) laptops
Asus Vivobook S15 and Lenovo Yoga Slim 7x.
ok kettenis@
sobrado [Thu, 4 Jul 2024 13:14:26 +0000 (13:14 +0000)]
the port to listen on is an optional argument; the default port number
is 1812 for authentication and 1813 for accounting.
ok jmc@, yasuoka@
sobrado [Thu, 4 Jul 2024 13:09:25 +0000 (13:09 +0000)]
only "decorate-by" is currently supported by the grammar specification.
ok jmc@, yasuoka@
bluhm [Thu, 4 Jul 2024 12:50:08 +0000 (12:50 +0000)]
Implement IPv6 forwarding IPsec only.
IPsec gateways set the forwarding sysctl to 2. While this worked
for IPv4 since a long time, adapt this feature for IPv6 now. Set
sysctl net.inet6.ip6.forwarding=2 to forward only packets that have
been processed by IPsec.
Set IPV6_FORWARDING_IPSEC in ip6_input() and pass the flag down to
the call stack. This provides consistent view on global variable
ip6_forwarding. In ip6_output() or ip6_forward() drop packets that
do not match the policy.
OK denis@
jmc [Thu, 4 Jul 2024 05:27:20 +0000 (05:27 +0000)]
make the CONFIGURATIONS list -compact to fox the item spacing;
jmc [Thu, 4 Jul 2024 05:25:14 +0000 (05:25 +0000)]
fix SEE ALSO;
jmc [Thu, 4 Jul 2024 05:23:24 +0000 (05:23 +0000)]
- tidy "authenticate" and "account" commands using Xo/Xc
- decoratd -> decorated (fix proposed by sobrado too)
- fix grammar in "account" description
ok yasuoka
bket [Thu, 4 Jul 2024 05:06:58 +0000 (05:06 +0000)]
Revert "Make daily(8) reporting services that are running"
Stop daily(8) mails with false information on rogue services.
OK florian@, solene@
jsg [Thu, 4 Jul 2024 04:52:10 +0000 (04:52 +0000)]
remove uvm_addr_align() and uvm_addr_align_back()
not to be confused with uvm_addr_align_forward() and
uvm_addr_align_backward() which remain in uvm_addr.c
ok mlarkin@
patrick [Wed, 3 Jul 2024 22:37:00 +0000 (22:37 +0000)]
Right now MSIs don't work on the Qualcomm Snapdragon X Elite (X1E80100).
This is the first and only platform so far where we have seen larger devbits
than we can initially support. For now, stop registering the MSI controller
if we encounter this. With this, PCIe devices use SPIs and work correctly.
At some point we can hopefully rip this thing out again.
ok kettenis@
kettenis [Wed, 3 Jul 2024 22:29:37 +0000 (22:29 +0000)]
Add device tree mapping for Asus Vivobook S15.
ok deraadt@
kettenis [Wed, 3 Jul 2024 21:04:04 +0000 (21:04 +0000)]
Map BUS_SPACE_MAP_PREFETCHABLE to Normal-NC. There are other memory
attributes that could map to what we call write-combining on x86, but
this is what Linux uses. This speeds up framebuffer access significantly.
ok patrick@
kettenis [Wed, 3 Jul 2024 20:12:30 +0000 (20:12 +0000)]
Switch to a table for mapping smbios vendor/product to device tree file
name. Check for a partial match of the vendor like we already do for the
product. This will help adding more machines to the list.
ok patrick@, deraadt@
job [Wed, 3 Jul 2024 08:39:43 +0000 (08:39 +0000)]
Fix typo
Reported by Marco D'Itri
yasuoka [Wed, 3 Jul 2024 06:09:13 +0000 (06:09 +0000)]
Add missing "module standard". It is needed before use it.
jsg [Wed, 3 Jul 2024 01:36:50 +0000 (01:36 +0000)]
remove __mp_release_all_but_one(), unused since sched_bsd.c rev 1.92
ok claudio@
kettenis [Tue, 2 Jul 2024 22:28:29 +0000 (22:28 +0000)]
regen
kettenis [Tue, 2 Jul 2024 22:28:02 +0000 (22:28 +0000)]
Add Qualcomm X1E80100
kettenis [Tue, 2 Jul 2024 19:59:54 +0000 (19:59 +0000)]
Fix unintended comparison between signed and unsigned integer.
C type conversion rules are hard, let's go shopping.
ok patrick@
patrick [Tue, 2 Jul 2024 19:44:37 +0000 (19:44 +0000)]
Support the Qualcomm Snapdragon X Elite (X1E80100) PCIe controller. We do
not do anything fancy for the SC8280XP either, so treat it equally.
ok kettenis@
patrick [Tue, 2 Jul 2024 19:43:52 +0000 (19:43 +0000)]
From what we currently use, the Qualcomm Snapdragon X Elite (X1E80100)
GPIO controller is to be treated equally as the SC8280XP, apart from
the new one having a few more pins.
ok kettenis@
patrick [Tue, 2 Jul 2024 19:41:52 +0000 (19:41 +0000)]
Give the Qualcomm Snapdragon X Elite (X1E80100) the same treatment as its
predecessors and don't touch the SMMUv2.
ok kettenis@
bluhm [Tue, 2 Jul 2024 18:33:47 +0000 (18:33 +0000)]
Read IPsec forwarding information once.
Fix MP race between reading ip_forwarding in ip_input() and checking
ip_forwarding == 2 in ip_output(). In theory ip_forwarding could
be 2 during ip_input() and later 0 in ip_output(). Then a packet
would be forwarded that was never allowed. Currently exclusive
netlock in sysctl(2) prevents all races.
Introduce IP_FORWARDING_IPSEC and pass it with the flags parameter
that was introduced for IP_FORWARDING.
Instead of calling m_tag_find(), traversing the list, and comparing
with NULL, just check the PACKET_TAG_IPSEC_IN_DONE bit. Reading
ipsec_in_use in ip_output() is a performance hack that is not
necessary. New code only checks tree bits.
OK mvs@