OpenBSD cvs log

created 2023-07-29T21:31:21Z
begin 2023-07-24T00:00:00Z
end 2023-07-25T00:00:00Z
path src/sys
commits 8

date 2023-07-24T14:02:36Z
author jsg
files src/sys/arch/i386/stand/libsa/pciprobe.c log diff annotate
message after the boot block changes on i386, sthen noticed a dmesg change
-pci0 at mainbus0 bus 0: configuration mode 1 (bios)
+pci0 at mainbus0 bus 0: configuration mode 1 (no bios)

deraadt then spent many hours narrowing down the problem to the inline
assembly in pciprobe().

It tried to save the carry flag result of pci bios present. But did so
after a shift which sets the carry flag. Ask for CF in the output and
avoid the shift.

ok deraadt@ kettenis@

date 2023-07-24T14:53:58Z
author deraadt
files src/sys/arch/amd64/amd64/cpu.c log diff annotate
message Set DE_CFG[9] -- a chickenbit which stops Zenbleed. The chickenbit may
have other side-effects (not disclosed by AMD), and firmwares fixes may
be better (and have other side-effects, same story). Newer processors
will probably be validated more carefully by AMD.
Issue found by Tavis Ormandy.
This is errata 7.2/033_amdcpu.patch.sig and 7.3/011_amdcpu.patch.sig
Zenbleed also blocked on select cpus by using errata
7.3/012_amdfirmware.patch.sig + 7.3/013_amdcpufirmware.patch /
7.2/034_amdfirmware.patch.sig + 7.2/035_amdcpufirmware.patch.sig
which load AMD cpu firmwares (firmware.openbsd.org is updated often to
contain the best firmwares)
ok jsg

date 2023-07-24T14:54:00Z
author deraadt
files src/sys/arch/amd64/include/specialreg.h log diff annotate
src/sys/arch/i386/i386/machdep.c log diff annotate
src/sys/arch/i386/include/specialreg.h log diff annotate
message Set DE_CFG[9] -- a chickenbit which stops Zenbleed. The chickenbit may
have other side-effects (not disclosed by AMD), and firmwares fixes may
be better (and have other side-effects, same story). Newer processors
will probably be validated more carefully by AMD.
Issue found by Tavis Ormandy.
This is errata 7.2/033_amdcpu.patch.sig and 7.3/011_amdcpu.patch.sig
Zenbleed also blocked on select cpus by using errata
7.3/012_amdfirmware.patch.sig + 7.3/013_amdcpufirmware.patch /
7.2/034_amdfirmware.patch.sig + 7.2/035_amdcpufirmware.patch.sig
which load AMD cpu firmwares (firmware.openbsd.org is updated often to
contain the best firmwares)
ok jsg

date 2023-07-24T17:03:32Z
author miod
files src/sys/dev/wscons/wsemul_sun.c log diff annotate
src/sys/dev/wscons/wsemul_vt100.c log diff annotate
message Make sure we do not increase the escape sequence argument count beyond usable
bounds, in case escape sequences end up with too many semicolons.
Without this, the kernel could be made to access random memory after receiving
some specially crafted DCS or CSI terminal escape sequences.

Reported by David Leadbeater (dgl, dgl dot cx)

date 2023-07-24T19:28:40Z
author miod
files src/sys/dev/wscons/wskbdraw.h log diff annotate
message Fix scan code value for print screen key.

date 2023-07-24T19:29:39Z
author miod
files src/sys/dev/pckbc/pckbd.c log diff annotate
message Use RAWKEY constants for scan code tables, rather than magic numbers.
No functional change intended.

date 2023-07-24T19:32:23Z
author miod
files src/sys/kern/syscalls.master log diff annotate
message Fix prototype of getlogin_r syscall to match userland prototype (use size_t
for the length argument).

Fortunately, this only affects 64-bit platforms and all of those would pass
the argument in registers, so there is no BE64 regression to expect and no
need to renumber that system call.

Found with afresh1@ as part of his perl syscall emulator.

date 2023-07-24T19:33:29Z
author miod
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