fq_codel: fix CoDel drop scheduling
Use drops - 1 as the codel_intervals index; the table starts at interval
/ sqrt(1) while cd->drops is one-based. Assert non-zero.
Exclude the candidate packet from the non-starvation backlog check; the
decision is about the backlog remaining after dequeue.
Enter dropping when now equals cd->start, not only when it exceeds it.
OK sashan@
revert 'drm/amd/display: Fix backlight max_brightness to match exported range'
jmc@ reports this 6.18.42 change caused a very dim display on boot and with
display.brightness values of 97-100 on a Dell Inspiron 5505
it looks like this patch will be reverted in linux stable branches
https://gitlab.freedesktop.org/drm/amd/-/work_items/5562
relayd: remove dead backup flag and token
The idea behind it was good, but it was never fully and properly implemented.
It's better to remove it before reimplementing the concept from scratch
and doing it right. Reading the man page makes it a little easier.
OK kirill@
relayd: check proc_compose return values
Fatal on config, setup, and startup imsg send failures. Inconsistent
state means we can't recover.
Warn on per-request responses and sync messages. A single dropped
message shouldn't kill the whole process.
OK kirill@
Protect the IPsec TDB replay counter with mutex.
Put all tdb_rpl read, write and increment under tdb_mtx. Although
shared net lock and kernel lock should be enough for now, we want
to move towards fine grained locking. Mark tdb_rpl and tdb_seen
as MP safe.
The wrap-around check in ah_output() is not atomic with the increment
code and would not work. As tdb_rpl is 64 bit nowadays, it cannot
warp. Better remove the useless tdb_rpl == 0 check than making it
MP safe.
OK deraadt@
change the fourth argument of quotactl() from char* to void*
Depending on the quota control command, the fourth argument is a
filename, a pointer to struct, or it is ignored. This change brings
us back in sync with FreeBSD and NetBSD, who already changed the
type in the previous century.
ok deraadt@ tb@
uvm: avoid reading am_hashshift out of a small amap
UVM_AMAP_BUCKET() violates memory correctness if UVM_AMAP_SMALL().
It reads am_hashshift in the union's ami_normal arm at offset 80,
past the end of an 80-byte amappl1 item.
Found by KASAN once free pool items were poisoned end to end.
ok kettenis@
Fix three instances of a grammar error where "practise" (the British
English verb) was used incorrectly in place of "practice" (the noun).
Reported by Nathan <nluuirl at gmail.com>.
Update libexpat to version 2.8.3.
Relevant for OpenBSD are bug fixes #1297 #1300 #1286 #1305 #1306,
other changes #1303. Library bump is not necessary. CVE-2026-72522
OK deraadt@ tb@
libsndio: On the wire, identify MIDI ports by names instead of indices
This makes handling of all type of MIDI ports and audio devices
roughtly the same, which is simpler. The old scheme is still accepted by
the server for compatibility with old libraries.
libsndio: Delete support of "snd/0.foo" device syntax
Support for such syntax was dropped around 5 years ago, but the
corresponding code was forgotten.
sndiod: Associate a midithru structure to MIDI ports
Allows "midi/X" and "midithru/X" ports to be handled by the same code,
which is simpler than the current approach.
sndiod: Make midithru_ref() return 1 on success
Currently midithru_ref() never fails, but this is what all other
xxx_ref() functions do and may ease future changes.
Unpublish the segment before entering the potentially sleeping
shm_deallocate_segment() in the sys_shmat() and sys_shmctl() paths. The
remaining shm_delete_mapping() already has the right order.
From Acts1631
Put back the whitelist approach previous to 1.18, because without a
specific whitelist, arbitrary *TINY* requests can flow through here
which lack the required structure header. Issue found by gnezdo.
ok gnezdo jmatthew
Reassemble IP fragments in correct routing domain.
Fragment reassembly in pf(4) and inet(4) and inet6(4) did not respect
the routing domain. Fragments from different routing domains could
be merged together. Keep track of rdomain in pf and network stack.
Convert routing table to routing domain where necessary. Sort
struct fields by size.
report and diff from Acts1631; fixes by bluhm@; OK sashan@
iked: remove pointless call to X509_get_subject_name()
A deserialized certificate always has a subject, so this check doesn't
do anything useful. This was added in r1.7 (2010) as a mostly cosmetic
return check, and it has been useless since r1.30 (2014) when the subject
variable became unused. A subsequent removal of subject in r1.66 (2020)
made this look weird (why would you check subject but not issuer, SPKI,
...?), so garbage collect it.
ok hshoexer