OpenBSD cvs log

created 2023-08-09T13:54:37Z
begin 2022-12-06T00:00:00Z
end 2022-12-13T00:00:00Z
path src/sys
commits 54

date 2022-12-06T00:08:38Z
author jca
files src/sys/arch/riscv64/include/asm.h log diff annotate
message Drop unused WEAK_REFERENCE macro

Probably coming from FreeBSD. We already have WEAK_ALIAS a few lines
above. ok mlarkin@ guenther@

date 2022-12-06T00:11:23Z
author jca
files src/sys/arch/riscv64/riscv64/machdep.c log diff annotate
src/sys/arch/riscv64/riscv64/sbi.c log diff annotate
message Print SBI vendor, version and implemented spec version

On my Unmatched:

SBI: OpenSBI v0.9, SBI Specification Version 0.2

ok mlarkin@

date 2022-12-06T00:40:09Z
author cheloha
files src/sys/arch/hppa/dev/clock.c log diff annotate
src/sys/arch/hppa/dev/cpu.c log diff annotate
src/sys/arch/hppa/include/_types.h log diff annotate
src/sys/arch/hppa/include/cpu.h log diff annotate
message hppa: switch to clockintr

- Remove hppa-specific clock interrupt scheduling bits from cpu_info.
- Rename cpu_hardclock() to itmr_intr(); it doesn't exclusively run
hardclock(9) anymore.
- Wire up itmr_intrclock.

hppa now has a randomized statclock(), stathz = hz.

Patch help, testing, and review from kettenis@ (B2000) and miod@ (C3650).
MP testing from guenther@ (dual-core J6700).

ok mlarkin@ kettenis@, "Ship it?" guenther@

date 2022-12-06T00:56:52Z
author cheloha
files src/sys/arch/luna88k/luna88k/clock.c log diff annotate
src/sys/arch/luna88k/luna88k/machdep.c log diff annotate
src/sys/arch/m88k/include/_types.h log diff annotate
src/sys/arch/m88k/include/cpu.h log diff annotate
message m88k, luna88k: switch to clockintr

- Initialize tick_nsec during cpu_initclocks()

We have no control over the interrupt clock on luna88k, so this switch
is trivial.

Bringup help and testing from aoyama@ and miod@.

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

ok aoyama@ mlarkin@

date 2022-12-06T01:19:35Z
author cheloha
files src/sys/arch/sh/include/_types.h log diff annotate
src/sys/arch/sh/include/cpu.h log diff annotate
src/sys/arch/sh/sh/clock.c log diff annotate
message sh, landisk: switch to clockintr

Patch review and testing by miod@.

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

ok mlarkin@, probably ok miod@

date 2022-12-06T01:56:43Z
author cheloha
files src/sys/arch/i386/i386/acpi_machdep.c log diff annotate
message i386: switch to clockintr

In lapic timer mode:

- Rip out lapic_delay(). We can't use the lapic timer to delay(9) when
it's running in one-shot mode.
- Add a randomized statclock(), stathz = hz.
- Add profiling support, profhz = stathz * 10.
- Wire up lapic_intrclock.

In i8254-mode:

- i8254's clockintr() does not have a monopoly on hardclock(9).
- mc146818's rtcintr() does not have a monopoly on statclock().
- In profiling mode, the statclock() will drift very slightly
because (profhz = 1024) does not divide into 1 billion. Need to
consider how best to fix this.

ACPI suspend/resume tested by mlarkin@ via ESXi. Tons of testing by
Scott Bennett on a Pentium 4 machine; APM suspend/resume confirmed to
work there, too.

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

ok mlarkin@

date 2022-12-06T01:56:44Z
author cheloha
files src/sys/arch/i386/i386/apm.c log diff annotate
src/sys/arch/i386/i386/cpu.c log diff annotate
src/sys/arch/i386/i386/lapic.c log diff annotate
src/sys/arch/i386/include/_types.h log diff annotate
src/sys/arch/i386/include/cpu.h log diff annotate
src/sys/arch/i386/isa/clock.c log diff annotate
message i386: switch to clockintr

In lapic timer mode:

- Rip out lapic_delay(). We can't use the lapic timer to delay(9) when
it's running in one-shot mode.
- Add a randomized statclock(), stathz = hz.
- Add profiling support, profhz = stathz * 10.
- Wire up lapic_intrclock.

In i8254-mode:

- i8254's clockintr() does not have a monopoly on hardclock(9).
- mc146818's rtcintr() does not have a monopoly on statclock().
- In profiling mode, the statclock() will drift very slightly
because (profhz = 1024) does not divide into 1 billion. Need to
consider how best to fix this.

ACPI suspend/resume tested by mlarkin@ via ESXi. Tons of testing by
Scott Bennett on a Pentium 4 machine; APM suspend/resume confirmed to
work there, too.

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

ok mlarkin@

date 2022-12-06T16:06:32Z
author kettenis
files src/sys/arch/arm64/dev/apliic.c log diff annotate
message For write operations, wait until the transaction completes just like we
do after sending the command for a read operation. Fixes issues with doing
multiple operations back-to-back.

ok patrick@

date 2022-12-06T16:07:14Z
author kettenis
files src/sys/arch/arm64/dev/aplpinctrl.c log diff annotate
message Implement support for shared interrupts.

ok patrick@

date 2022-12-06T18:50:59Z
author guenther
files src/sys/arch/luna88k/luna88k/locore.S log diff annotate
src/sys/arch/luna88k/luna88k/locore0.S log diff annotate
src/sys/arch/luna88k/stand/boot/locore.S log diff annotate
src/sys/arch/m88k/include/asm.h log diff annotate
src/sys/arch/m88k/m88k/atomic.S log diff annotate
src/sys/arch/m88k/m88k/eh_common.S log diff annotate
src/sys/arch/m88k/m88k/process.S log diff annotate
src/sys/arch/m88k/m88k/subr.S log diff annotate
message _C_LABEL() and _ASM_LABEL() are no longer useful in the "everything
is ELF" world. Eliminate use of them in m88k code.

ok aoyama@

date 2022-12-06T18:51:00Z
author guenther
files src/sys/lib/libkern/arch/m88k/bzero.S log diff annotate
src/sys/lib/libkern/arch/m88k/copy_subr.S log diff annotate
message _C_LABEL() and _ASM_LABEL() are no longer useful in the "everything
is ELF" world. Eliminate use of them in m88k code.

ok aoyama@

date 2022-12-06T22:19:39Z
author mvs
files src/sys/netinet/in.c log diff annotate
src/sys/netinet6/in6.c log diff annotate
message Add missing kernel lock around (*if_ioctl)() call within
in{,6}_addmulti(). Since kernel lock is no more taken while following
setsockopt() path, it should be taken in this place. Corresponding
in{,6}_delmulti() already acquire kernel lock around (*if_ioctl)().

Problem reported and diff tested by weerd@

ok kn@ bluhm@

date 2022-12-06T23:18:54Z
author kettenis
files src/sys/arch/arm64/dev/rtkit.c log diff annotate
message Add support for additional RTKit endpoint advertised by NVMe firmware that
comes with newer macOS releases.

ok patrick@

date 2022-12-07T01:02:28Z
author deraadt
files src/sys/kern/uipc_syscalls.c log diff annotate
message If the called of ypconnect(2) is root, the socket should acquire a
reserved port to received secure-maps from the ypserver.
issue found by niklas, using a simpler diff i proposed
ok miod

date 2022-12-07T14:38:29Z
author claudio
files src/sys/netinet/if_ether.c log diff annotate
message Fix comment by splitting sentance in two. From kn@

date 2022-12-07T17:34:20Z
author kn
files src/sys/netinet6/nd6.c log diff annotate
src/sys/netinet6/nd6.h log diff annotate
message Do not store unused ICMPv6 Option PREFIX_INFORMATION

Dead since 2017 sys/netinet6/nd6_rtr.c r1.163
Remove sending of router solicitations and processing of router
advertisements from the kernel. It's handled by slaacd(8) these days.

sysctl(2) net.inet6.icmp6.nd6_debug does not warn about it like it does
for, e.g., duplicate MTU options, so don't do anything with this option.

Remove access macros for other unused options while here.
Eventually, union nd_opts should be removed completely.
All under _KERNEL.

tcpdump(8)/rad(8)/slaacd(8) keep showing/sending/receiving this option when
running this diff on both router and client.

OK claudio

date 2022-12-07T18:25:32Z
author guenther
files src/sys/lib/libkern/arch/amd64/bcmp.S log diff annotate
src/sys/lib/libkern/arch/amd64/bzero.S log diff annotate
src/sys/lib/libkern/arch/amd64/ffs.S log diff annotate
src/sys/lib/libkern/arch/amd64/htonl.S log diff annotate
src/sys/lib/libkern/arch/amd64/htons.S log diff annotate
src/sys/lib/libkern/arch/amd64/memchr.S log diff annotate
src/sys/lib/libkern/arch/amd64/memcmp.S log diff annotate
src/sys/lib/libkern/arch/amd64/memmove.S log diff annotate
src/sys/lib/libkern/arch/amd64/memset.S log diff annotate
src/sys/lib/libkern/arch/amd64/scanc.S log diff annotate
src/sys/lib/libkern/arch/amd64/skpc.S log diff annotate
src/sys/lib/libkern/arch/amd64/strchr.S log diff annotate
message Apply changes from commitid FWrfGfO9Ojnsh1mq to libkern.
From original commit message: To mitigate against spectre attacks,
AMD processors without the IBRS feature need an lfence instruction
after every near ret. See software techniques for managing speculation
on AMD processors revision 9.17.20 mitigation G-5.

ok deraadt@

date 2022-12-07T18:25:33Z
author guenther
files src/sys/lib/libkern/arch/amd64/strcmp.S log diff annotate
src/sys/lib/libkern/arch/amd64/strlen.S log diff annotate
src/sys/lib/libkern/arch/amd64/strrchr.S log diff annotate
message Apply changes from commitid FWrfGfO9Ojnsh1mq to libkern.
From original commit message: To mitigate against spectre attacks,
AMD processors without the IBRS feature need an lfence instruction
after every near ret. See software techniques for managing speculation
on AMD processors revision 9.17.20 mitigation G-5.

ok deraadt@

date 2022-12-07T19:21:54Z
author guenther
files src/sys/lib/libkern/arch/amd64/htonl.S log diff annotate
src/sys/lib/libkern/arch/amd64/htons.S log diff annotate
message Prefer STRONG_ALIAS() over multiple overlapping _ENTRY/_NENTRY
uses, as the latter requires manual handling of _PROF_PROLOGUE.
Add END()s to match ENTRY()s.

ok deraadt@

date 2022-12-07T19:26:02Z
author guenther
files src/sys/lib/libkern/arch/amd64/bcmp.S log diff annotate
src/sys/lib/libkern/arch/amd64/bzero.S log diff annotate
src/sys/lib/libkern/arch/amd64/ffs.S log diff annotate
src/sys/lib/libkern/arch/amd64/memchr.S log diff annotate
src/sys/lib/libkern/arch/amd64/memcmp.S log diff annotate
src/sys/lib/libkern/arch/amd64/memset.S log diff annotate
message Prefer numeric labels over L<digit> labels, as the latter clutter
the final kernel symbol table.
Add END()s to match ENTRY()s.

ok deraadt@

date 2022-12-07T19:26:39Z
author guenther
files src/sys/lib/libkern/arch/amd64/memmove.S log diff annotate
src/sys/lib/libkern/arch/amd64/scanc.S log diff annotate
src/sys/lib/libkern/arch/amd64/skpc.S log diff annotate
src/sys/lib/libkern/arch/amd64/strchr.S log diff annotate
src/sys/lib/libkern/arch/amd64/strcmp.S log diff annotate
src/sys/lib/libkern/arch/amd64/strlen.S log diff annotate
src/sys/lib/libkern/arch/amd64/strrchr.S log diff annotate
message Add END()s to match ENTRY()s.
ok deraadt@

date 2022-12-07T20:08:28Z
author mvs
files src/sys/kern/kern_proc.c log diff annotate
message Document 'uidinfo' structure locks.

Inputs and ok bluhm@

date 2022-12-07T20:08:29Z
author mvs
files src/sys/sys/proc.h log diff annotate
message Document 'uidinfo' structure locks.

Inputs and ok bluhm@

date 2022-12-07T23:04:26Z
author patrick
files src/sys/arch/arm64/stand/efiboot/Makefile log diff annotate
src/sys/arch/arm64/stand/efiboot/conf.c log diff annotate
src/sys/arch/arm64/stand/efiboot/efiboot.c log diff annotate
src/sys/arch/arm64/stand/efiboot/smbios.c log diff annotate
src/sys/stand/efi/include/efiapi.h log diff annotate
message The ACPI tables on the Lenovo x13s are incomplete and unusable. For
that reason, identify that we're running on that machine by looking at
the SMBIOS tables and load alternate device tree binaries from disk.

ok kettenis@

date 2022-12-07T23:25:59Z
author guenther
files src/sys/arch/powerpc64/include/asm.h log diff annotate
message _C_LABEL() and _ASM_LABEL() are no longer useful in the "everything
is ELF" world. Eliminate use of them in powerpc64 code.

ok gkoehler@

date 2022-12-08T00:29:06Z
author patrick
files src/sys/arch/arm64/stand/efiboot/conf.c log diff annotate
src/sys/arch/arm64/stand/efiboot/efiboot.c log diff annotate
message Forcibly set console output to the framebuffer on the Lenovo x13s.
We should actually do something like checking that both stdout-path
and serial0 don't exist to realize we have to switch, but this hack
gets us going for now.

ok kettenis@

date 2022-12-08T01:25:44Z
author guenther
files src/sys/arch/amd64/stand/boot/srt0.S log diff annotate
src/sys/arch/amd64/stand/cdboot/srt0.S log diff annotate
src/sys/arch/amd64/stand/efi32/Attic/run_i386.S log diff annotate
src/sys/arch/amd64/stand/efi64/Attic/run_i386.S log diff annotate
src/sys/arch/amd64/stand/efiboot/run_i386.S log diff annotate
src/sys/arch/amd64/stand/libsa/gidt.S log diff annotate
src/sys/arch/amd64/stand/libsa/pxe_call.S log diff annotate
src/sys/arch/amd64/stand/libsa/run_amd64.S log diff annotate
src/sys/arch/amd64/stand/pxeboot/srt0.S log diff annotate
src/sys/arch/arm/arm/bcopyinout.S log diff annotate
src/sys/arch/arm/arm/bus_space_notimpl.S log diff annotate
src/sys/arch/arm/arm/copystr.S log diff annotate
src/sys/arch/arm/arm/cpufunc_asm_armv7.S log diff annotate
src/sys/arch/arm/arm/cpuswitch7.S log diff annotate
src/sys/arch/arm/arm/exception.S log diff annotate
src/sys/arch/arm/arm/fiq_subr.S log diff annotate
src/sys/arch/arm/arm/in_cksum_arm.S log diff annotate
src/sys/arch/arm/arm/irq_dispatch.S log diff annotate
src/sys/arch/arm/arm/locore.S log diff annotate
src/sys/arch/arm/arm/sigcode.S log diff annotate
src/sys/arch/arm/arm/vectors.S log diff annotate
src/sys/arch/arm/include/asm.h log diff annotate
src/sys/arch/arm/include/frame.h log diff annotate
src/sys/arch/arm64/arm64/cpuswitch.S log diff annotate
src/sys/arch/arm64/arm64/exception.S log diff annotate
src/sys/arch/arm64/arm64/locore.S log diff annotate
src/sys/arch/arm64/arm64/locore0.S log diff annotate
src/sys/arch/arm64/include/asm.h log diff annotate
src/sys/arch/armv7/armv7/locore0.S log diff annotate
src/sys/arch/armv7/stand/efiboot/start.S log diff annotate
src/sys/arch/i386/i386/acpi_wakecode.S log diff annotate
src/sys/arch/i386/i386/apicvec.s log diff annotate
src/sys/arch/i386/i386/apmcall.S log diff annotate
src/sys/arch/i386/i386/in_cksum.s log diff annotate
src/sys/arch/i386/i386/locore.s log diff annotate
src/sys/arch/i386/i386/locore0.S log diff annotate
src/sys/arch/i386/i386/mptramp.s log diff annotate
src/sys/arch/i386/i386/vector.s log diff annotate
message _C_LABEL() and _ASM_LABEL() are no longer useful in the "everything
is ELF" world. Eliminate use of them in amd64, arm64, armv7, i386,
macppc, mips64, and sparc64 code.

ok deraadt@ jca@ krw@

date 2022-12-08T01:25:45Z
author guenther
files src/sys/arch/i386/include/asm.h log diff annotate
src/sys/arch/i386/include/i82093reg.h log diff annotate
src/sys/arch/i386/isa/icu.s log diff annotate
src/sys/arch/i386/stand/boot/srt0.S log diff annotate
src/sys/arch/i386/stand/cdboot/srt0.S log diff annotate
src/sys/arch/i386/stand/libsa/debug_i386.S log diff annotate
src/sys/arch/i386/stand/libsa/debug_md.h log diff annotate
src/sys/arch/i386/stand/libsa/gidt.S log diff annotate
src/sys/arch/i386/stand/libsa/pslid.S log diff annotate
src/sys/arch/i386/stand/libsa/pxe_call.S log diff annotate
src/sys/arch/i386/stand/pxeboot/srt0.S log diff annotate
src/sys/arch/macppc/macppc/locore.S log diff annotate
src/sys/arch/macppc/macppc/locore0.S log diff annotate
src/sys/arch/macppc/macppc/ofwreal.S log diff annotate
src/sys/arch/mips64/mips64/context.S log diff annotate
src/sys/arch/mips64/mips64/lcore_access.S log diff annotate
src/sys/arch/powerpc/include/asm.h log diff annotate
src/sys/arch/powerpc/powerpc/setjmp.S log diff annotate
src/sys/arch/sparc64/include/asm.h log diff annotate
src/sys/arch/sparc64/sparc64/in_cksum.S log diff annotate
src/sys/arch/sparc64/sparc64/locore.s log diff annotate
src/sys/arch/sparc64/stand/ofwboot/srt0.s log diff annotate
src/sys/lib/libkern/arch/arm/bcopy.S log diff annotate
message _C_LABEL() and _ASM_LABEL() are no longer useful in the "everything
is ELF" world. Eliminate use of them in amd64, arm64, armv7, i386,
macppc, mips64, and sparc64 code.

ok deraadt@ jca@ krw@

date 2022-12-08T01:25:46Z
author guenther
files src/sys/lib/libkern/arch/arm/bzero.S log diff annotate
src/sys/lib/libkern/arch/arm/divsi3.S log diff annotate
src/sys/lib/libkern/arch/arm/htonl.S log diff annotate
src/sys/lib/libkern/arch/arm/htons.S log diff annotate
src/sys/lib/libkern/arch/sparc64/ffs.S log diff annotate
message _C_LABEL() and _ASM_LABEL() are no longer useful in the "everything
is ELF" world. Eliminate use of them in amd64, arm64, armv7, i386,
macppc, mips64, and sparc64 code.

ok deraadt@ jca@ krw@

date 2022-12-08T02:11:27Z
author guenther
files src/sys/arch/landisk/landisk/locore0.S log diff annotate
src/sys/arch/landisk/stand/boot/srt0.S log diff annotate
src/sys/arch/landisk/stand/mbr/mbr.S log diff annotate
src/sys/arch/landisk/stand/xxboot/pbr.S log diff annotate
src/sys/arch/landisk/stand/xxboot/xxboot.S log diff annotate
src/sys/arch/sh/include/asm.h log diff annotate
src/sys/arch/sh/include/locore.h log diff annotate
src/sys/arch/sh/sh/locore_subr.S log diff annotate
src/sys/arch/sh/sh/vectors.S log diff annotate
message _C_LABEL() and _ASM_LABEL() are no longer useful in the "everything
is ELF" world. Eliminate use of them in landisk code.

ok deraadt@

date 2022-12-08T05:45:36Z
author yasuoka
files src/sys/dev/pv/pvbus.c log diff annotate
message Fix pvbus to specify M_ZERO properly.

ok kn mvs mlarkin asou deraadt

date 2022-12-08T05:59:39Z
author yasuoka
files src/sys/netinet/tcp_input.c log diff annotate
message Convert tcptv_keep_init in milliseconds before comparing other values
of tcp time. This fixes the retransmit timer of syn_cache which was
broken. reported by naddy, input dlg, test jca

ok jca

date 2022-12-08T21:32:48Z
author kettenis
files src/sys/uvm/uvm_vnode.c log diff annotate
message Call vget(9) in uvn_put() to make sure we hold a reference if we're called
by the pagedaemon for a persisting vnode. This prevents a panic in
uvm_vnp_unache() since a persisting vnode has a reference count of zero.
This should also prevent the vnode from being recycled from under our
feet while we're doing I/O to it.

This fixes the "macppc panic: vref used where vget required" issue.

tested by bluhm@, tb@
ok mpi@

date 2022-12-09T00:24:44Z
author bluhm
files src/sys/netinet/tcp_input.c log diff annotate
message Some TCP timer units have changed from slowhz to msec and their
type from short to int. Also switch local variables holding temporary
timer values from short to int.
OK yasuoka

date 2022-12-09T17:32:53Z
author claudio
files src/sys/netinet6/icmp6.c log diff annotate
src/sys/netinet6/nd6.c log diff annotate
src/sys/netinet6/nd6.h log diff annotate
src/sys/netinet6/nd6_nbr.c log diff annotate
src/sys/netinet6/nd6_rtr.c log diff annotate
message Switch nd_opts from a union to just a struct.
The ND6 option handling in the kernel got a lot simpler since only
the tgt and src lladdr option are inspected by the kernel. The magic
of assigning options via one side of the union and accessing them
via the other is total overkill and actually quite error prone.
OK florian@

date 2022-12-09T20:37:39Z
author patrick
files src/sys/arch/arm64/arm64/cpu.c log diff annotate
message Fix typo: SCTX -> SCXT

ok kettenis@

date 2022-12-09T21:23:24Z
author patrick
files src/sys/arch/arm64/arm64/cpu.c log diff annotate
src/sys/arch/arm64/include/armreg.h log diff annotate
message Add detection for Spectre-BHB related CLRBHB, ECBHB and CSV2_3/HCXT
feature bits.

ok kettenis@

date 2022-12-09T22:31:31Z
author kettenis
files src/sys/arch/arm64/arm64/locore0.S log diff annotate
src/sys/arch/arm64/arm64/pmap.c log diff annotate
message Simplify early kernel bootstrap a bit more. Just map the entire 64MB memory
block that the bootloader allocates for us (minus the first 2MB). This means
we can get rid of a bunch of code in pmap_bootstrap(). It also makes sure
that we don't accidentally enter mappings that cover secure memory just
beyond where the kernel was loaded.

ok patrick@

date 2022-12-10T02:41:56Z
author aoyama
files src/sys/arch/luna88k/luna88k/autoconf.c log diff annotate
src/sys/arch/luna88k/luna88k/machdep.c log diff annotate
message Fix comments, no binary change.

date 2022-12-10T10:13:58Z
author patrick
files src/sys/arch/arm64/arm64/cpu.c log diff annotate
src/sys/arch/arm64/arm64/exception.S log diff annotate
src/sys/arch/arm64/arm64/genassym.cf log diff annotate
src/sys/arch/arm64/arm64/pmap.c log diff annotate
src/sys/arch/arm64/arm64/trampoline.S log diff annotate
src/sys/arch/arm64/include/cpu.h log diff annotate
src/sys/dev/fdt/psci.c log diff annotate
src/sys/dev/fdt/pscivar.h log diff annotate
message Mitigate Spectre-BHB by using core-specific trampoline vectors. On some cores
Spectre-BHB can be mitigated by using a loop that branches a number of times.
For cores where this does not suffice, or where Spectre-V2 needs to be handled
as well, try and call into a new PSCI function that mitigates both Spectre-V2
and Spectre-BHB. Some newer machines, which might not be in anyone's hands
yet, have an instruction (CLRBHB) that clears the BHB. If ECBHB is set, the
BHB isn't vulnerable. If we have CSV2_3/HCXT, it's not vulnerable at all.

No visible performance dropoff on a MacchiatoBin (4xA72) or Lenovo x13s (4xA78C+
4xX1C), but around 2-3% on a LX2K (16xA72) and RK3399 (4xA53+2xA72).

ok kettenis@

date 2022-12-10T15:02:29Z
author cheloha
files src/sys/arch/alpha/alpha/clock.c log diff annotate
src/sys/arch/alpha/alpha/cpu.c log diff annotate
src/sys/arch/alpha/alpha/interrupt.c log diff annotate
src/sys/arch/alpha/include/_types.h log diff annotate
src/sys/arch/alpha/include/cpu.h log diff annotate
src/sys/arch/alpha/include/cpuconf.h log diff annotate
message alpha: switch to clockintr

- Add missing tick_nsec initialization to cpu_initclocks().
- Set stathz = hz, profhz = stathz; we don't have any control over the
interrupt clock on alpha so everything has the same frequency.
- Set schedhz = 16 to imitate current schedclock() dispatch frequency.

Bringup help from claudio@. Tested by miod@ (2-CPU DS25).

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

ok mlarkin@

date 2022-12-10T18:43:48Z
author kettenis
files src/sys/arch/arm64/dev/apliic.c log diff annotate
message Increase transfer completion timeout to 100ms. This is what Linux has
and we need a longer timeout for the USB Type-C PD chips.

ok tobhe@

date 2022-12-10T21:26:21Z
author kn
files src/sys/netinet6/icmp6.c log diff annotate
src/sys/netinet6/nd6.c log diff annotate
src/sys/netinet6/nd6.h log diff annotate
src/sys/netinet6/nd6_nbr.c log diff annotate
src/sys/netinet6/nd6_rtr.c log diff annotate
message Merge nd6_option_init() into nd6_options()

All call-sites call nd6_options() directly after nd6_option_init().
Fold them to simplify the logic and do less pointing around.

Feedback OK bluhm florian

date 2022-12-10T21:29:10Z
author mvs
files src/sys/netinet6/nd6_nbr.c log diff annotate
message `dp' was just allocated with M_ZERO flag, so the following bzero(3) is not
required.

ok kn@

date 2022-12-10T22:16:24Z
author kn
files src/sys/netinet6/icmp6.c log diff annotate
message zap 68 trailing spaces from a single line

date 2022-12-10T22:40:58Z
author kn
files src/sys/netinet6/icmp6.c log diff annotate
message Reuse off variable from previous line; no object change

date 2022-12-10T23:45:51Z
author kn
files src/sys/netinet6/icmp6.c log diff annotate
message Remove unused experimental ICMP6 redirect low water bits

Dead since introduction in 2001 with icmp6.c r1.31:
implement upper limit to icmp6 redirects (experimental, turned off)
negative value to {mtudisc,redirect}_{hi,lo}wat will turn off the limitation.
sync with kame.

icmp6_redirect_lowat was always -1 and never hit the empty conditional.

icmp6_redirect_hiwat never existed.

icmp6_mtudisc_{hi,lo}wat are exposed as net.inet6.icmp6.mtudisc_{hi,lo}wat
sysctl(2)s, so don't touch those for now.

OK mvs

date 2022-12-11T05:07:25Z
author visa
files src/sys/arch/mips64/include/mips_cpu.h log diff annotate
src/sys/arch/mips64/mips64/tlbhandler.S log diff annotate
message Cut two cycles from k_tlb_inv() on octeon.

"If it works, go for it!" miod@

date 2022-12-11T05:31:05Z
author visa
files src/sys/arch/octeon/dev/octcit.c log diff annotate
src/sys/arch/octeon/dev/octciu.c log diff annotate
message Use evcount_percpu() with platform interrupt counters on octeon.

date 2022-12-11T21:19:08Z
author mvs
files src/sys/kern/sys_socket.c log diff annotate
src/sys/kern/uipc_socket.c log diff annotate
src/sys/kern/uipc_socket2.c log diff annotate
src/sys/kern/uipc_usrreq.c log diff annotate
src/sys/miscfs/fifofs/fifo_vnops.c log diff annotate
src/sys/netinet/tcp_usrreq.c log diff annotate
src/sys/sys/socketvar.h log diff annotate
message This time, socket's buffer lock requires solock() to be held. As a part of
socket buffers standalone locking work, move socket state bits which
represent its buffers state to per buffer state. Introduce `sb_state' and
turn SS_CANTSENDMORE to SBS_CANTSENDMORE. This bit will be processed on
`so_snd' buffer only.

Move SS_CANTRCVMORE and SS_RCVATMARK bits with separate diff to make
review easier and exclude possible so_rcv/so_snd mistypes.

Also, don't adjust the remaining SS_* bits right now.

ok millert@

date 2022-12-12T08:30:22Z
author tb
files src/sys/kern/sys_socket.c log diff annotate
src/sys/kern/uipc_socket.c log diff annotate
src/sys/kern/uipc_socket2.c log diff annotate
src/sys/kern/uipc_usrreq.c log diff annotate
src/sys/miscfs/fifofs/fifo_vnops.c log diff annotate
src/sys/netinet/tcp_usrreq.c log diff annotate
src/sys/sys/socketvar.h log diff annotate
message Revert sb_state changes to unbreak tree.

date 2022-12-12T18:45:01Z
author kettenis
files src/sys/arch/arm64/dev/aplpmu.c log diff annotate
message Improve range check to protect against overflow.

ok patrick@

date 2022-12-12T19:18:25Z
author kettenis
files src/sys/arch/arm64/conf/GENERIC log diff annotate
src/sys/dev/fdt/files.fdt log diff annotate
src/sys/dev/fdt/tipd.c log diff annotate
src/sys/dev/fdt/xhci_fdt.c log diff annotate
src/sys/dev/ofw/ofw_misc.h log diff annotate
src/sys/dev/usb/xhci.c log diff annotate
src/sys/dev/usb/xhcivar.h log diff annotate
message Fix USB hotplug on type-C connectors of Apple Silicon hardware. The USB
controller on these machines does not see connection events. Instead we
need to rely on the USB PD controllers to notify us of a new connection
and reset the USB controller. This diff implements this by adding a new
tipd(4) driver and infrastructure to notify xhci(4) of new connections.

ok patrick@

date 2022-12-12T22:06:40Z
author kettenis
files src/sys/arch/arm64/conf/RAMDISK log diff annotate
message Enable tipd(4) on RAMDISK kernels as well.

ok deraadt@