OpenBSD cvs log

created 2022-07-03T20:30:44Z
begin 2022-06-29T00:00:00Z
end 2022-06-30T00:00:00Z
path src/sys
commits 17

date 2022-06-29T01:05:18Z
author jsg
files src/sys/dev/acpi/pchgpio.c log diff annotate
message match on Alder Lake-P
ok deraadt@ kettenis@

date 2022-06-29T07:44:10Z
author kettenis
files src/sys/arch/amd64/amd64/bus_space.c log diff annotate
message Make bus_space_map(9) work before the pmap is initialized for addresses
below 4G by using the direct map.

ok anton@, deraadt@

date 2022-06-29T07:51:54Z
author kettenis
files src/sys/arch/amd64/amd64/machdep.c log diff annotate
src/sys/arch/amd64/include/biosvar.h log diff annotate
message Add support for using non-standard UARTs (such as the Synopsys DesignWare
UART found on AMD's Ryzen Embedded V1000 family) as an early console.
This requires additional parameters to be passed by the bootloader to the
kernel so it changes the struct for the BOOTARG_CONSDEV boot argument.
The old struct will still be supported until OpenBSD 7.3 has been released
such that new kernels boot with the old bootloader.

ok anton@, deraadt@

date 2022-06-29T09:01:48Z
author mvs
files src/sys/netinet/ip_input.c log diff annotate
message Nullify `ipsecflowinfo' when mbuf(9) has no ipsec flowinfo data.
Otherwise we use `ipsecflowinfo' obtained from previous packet.

ok claudio@

date 2022-06-29T09:08:07Z
author mvs
files src/sys/net/if.c log diff annotate
src/sys/net/if_ethersubr.c log diff annotate
src/sys/net/if_pppoe.c log diff annotate
src/sys/net/if_pppoe.h log diff annotate
src/sys/net/netisr.h log diff annotate
message ether_input() called with shared netlock, but pppoe(4) wants it to be
exclusive. Do the pppoe(4) input within netisr handler with exclusive
netlok held and remove kernel lock hack from ether_input().

This is the step back, but it makes ether_input() path better then it
is now.

Tested by Hrvoje Popovski.

ok bluhm@ claudio@

date 2022-06-29T09:52:23Z
author jsg
files src/sys/dev/pci/drm/include/linux/kernel.h log diff annotate
message correct vararg use in kasprintf/kvasprintf
fixes names of some encoders

date 2022-06-29T10:04:22Z
author jsg
files src/sys/dev/pci/drm/i915/display/intel_dpll_mgr.c log diff annotate
message drm/i915: Implement w/a 22010492432 for adl-s

From Ville Syrjala
0895a2235bae6671077c2de94268cccc346005d6 in linux 5.15.y/5.15.51
13bd259b64bb58ae130923ada42ebc19bf3f2fa2 in mainline linux

date 2022-06-29T10:48:22Z
author claudio
files src/sys/kern/kern_sig.c log diff annotate
message Move the deep check back into the loop. There are ways that even though
we're deep the code will SSTOP and sleep and then on wakeup we need to
recheck the deep conditions.
Issue analyzed and OK by mpi@

Reported-by: [email protected]

date 2022-06-29T11:22:10Z
author bluhm
files src/sys/netinet6/ip6_input.c log diff annotate
message Pass down the pointer to mbuf pointer into ip6_hbhchcheck(). This
allows to set the mbuf to NULL and keep it consistent in the caller,
instead of having dangling pointer after free.
OK sashan@

date 2022-06-29T12:01:22Z
author jca
files src/sys/kern/kern_pledge.c log diff annotate
message Use READ_ONCE() when saving pr->ps_pledge to a local variable

This prevents the compiler from reloading a possibly different value
from memory. Even if it doesn't matter in this code it's just better
practice. Discussed with kettenis@ and deraadt@, ok deraadt@

date 2022-06-29T12:06:11Z
author jca
files src/sys/sys/syscall_mi.h log diff annotate
message Simplify the locking dance around pledge_syscall()

It doesn't make sense to wrap this function with the kernel lock only
when the syscall to be executed is itself locked. Instead
pledge_syscall() should be always safe to execute without the kernel
lock.

"looks good" kettenis@, ok deraadt@

date 2022-06-29T12:17:31Z
author jca
files src/sys/kern/init_sysent.c log diff annotate
src/sys/kern/kern_pledge.c log diff annotate
src/sys/kern/syscalls.c log diff annotate
src/sys/kern/syscalls.master log diff annotate
src/sys/sys/proc.h log diff annotate
src/sys/sys/syscall.h log diff annotate
src/sys/sys/syscallargs.h log diff annotate
message Unlock the pledge(2) system call

Protect the ps_pledge/ps_execpledge fields with ps_mtx. Shuffle the
code to call unveil_destroy() outside the critical section. Only writes
to those fields are protected. Since we may only remove bits from those
fields, garbage values should do no harm even when a read crosses
a write on 32 bits systems.

Input claudio@ kettenis@ deraadt@, ok deraadt@

date 2022-06-29T13:07:19Z
author jca
files src/sys/kern/init_sysent.c log diff annotate
src/sys/kern/syscalls.c log diff annotate
src/sys/sys/syscall.h log diff annotate
src/sys/sys/syscallargs.h log diff annotate
message Regen syscalls files as they were meant to be, correcting the "created from:" info

Cluebat from miod@

date 2022-06-29T14:24:29Z
author dv
files src/sys/arch/amd64/amd64/pmap.c log diff annotate
src/sys/arch/i386/i386/pmap.c log diff annotate
src/sys/arch/i386/i386/pmapae.c log diff annotate
message remove archaic comment from original import of i386 pmap

This comment hasn't been relevant for at least 11 years as there's
no such lock. NetBSD removed the comment 11 years ago. No functional
change.

Discussed with mlarkin@

date 2022-06-29T16:04:49Z
author mvs
files src/sys/net/netisr.h log diff annotate
message Remove switch(4) remains.

ok claudio@ mpi@

date 2022-06-29T22:20:47Z
author bluhm
files src/sys/net/rtable.c log diff annotate
message Between the calls to art_match() and SRPL_FIRST() another CPU may
remove the route from the list. In rtable_match() check if the
route entry is NULL.
discussed with mpi@ jmatthew@ claudio@; OK mpi@

date 2022-06-29T22:45:24Z
author bluhm
files src/sys/netinet6/dest6.c log diff annotate
src/sys/netinet6/ip6_input.c log diff annotate
src/sys/netinet6/ip6_output.c log diff annotate
src/sys/netinet6/ip6_var.h log diff annotate
message Pass a pointer to mbuf pointer further down into ip6_process_hopopts()
and ip6_unknown_opt(). Instead of having dangling pointer in caller,
use m_freemp() to set mbuf to NULL.
OK sashan@