openbsd
2 years agoregen
patrick [Thu, 27 Oct 2022 13:20:16 +0000 (13:20 +0000)]
regen

2 years agoAdd USB device id for integrated ure(4) on Windows Dev Kit 2023
patrick [Thu, 27 Oct 2022 13:19:42 +0000 (13:19 +0000)]
Add USB device id for integrated ure(4) on Windows Dev Kit 2023

ok jsg@

2 years agoUpdate libexpat to 2.5.0. This fixes CVE-2022-43680. Relevant for
bluhm [Thu, 27 Oct 2022 12:58:37 +0000 (12:58 +0000)]
Update libexpat to 2.5.0.  This fixes CVE-2022-43680.  Relevant for
OpenBSD are security fixes #616 #649 #650 and bug fixes #612 #645
#613 #654 #616 #652 #653.  No library bump necessary.
OK tb@

2 years agosync
deraadt [Thu, 27 Oct 2022 04:12:09 +0000 (04:12 +0000)]
sync

2 years agoEnable waitid(2) regress tests and a new test derived from NetBSD's
kettenis [Wed, 26 Oct 2022 23:18:01 +0000 (23:18 +0000)]
Enable waitid(2) regress tests and a new test derived from NetBSD's
wait6(2) tests.

ok millert@, deraadt@

2 years agoAdd waitid(2) syscall stub.
kettenis [Wed, 26 Oct 2022 23:16:24 +0000 (23:16 +0000)]
Add waitid(2) syscall stub.

Minor bump to both libc and libpthread: make sure you install a new kernel!

ok millert@, deraadt@

2 years agodtlstest: Ensure the timeouts are at least 10 ms. This makes these tests
tb [Wed, 26 Oct 2022 20:31:38 +0000 (20:31 +0000)]
dtlstest: Ensure the timeouts are at least 10 ms. This makes these tests
a bit less flaky if the machine is otherwise under load.

from jsing

2 years agoMake audio(9) get_props() optional, remove it from duplex drivers
kn [Wed, 26 Oct 2022 20:19:06 +0000 (20:19 +0000)]
Make audio(9) get_props() optional, remove it from duplex drivers

The property bits of audio(9) are obsolete and ought to be removed
completely.

sys/dev/audio.c:audio_open() currently uses get_props() to bail out if
read *and* write was requested on a non-duplex driver.

Drivers that currently support playing but not recording need adjustment
before the API can be cleaned up.

Drivers that advertise themselves as full duplex, i.e. those that always
return AUDIO_PROP_FULLDUPLEX unconditionally in their get_props() currently
always succeed this check.

As this is the only property, losen audio_open()'s DIAGNOSTIC check and only
do the duplex check if the driver provides get_props().

This allows for simple removal of get_props() from full-duplex drivers
without adding any other code or without changing functionality.

This includes all audio drivers under sys/dev/pci/ (maestro(4) being the
only unfinished exception here).

Other drivers as well as the API change can then follow in smaller diffs.

This builds on amd64, arm64, i386, macppc and sparc64.
amd64 with azalia(4) still plays, records as well as plays and records
at the same time on my X230 as tested with

        $ aucat -i play.wav [-o rec.wav]

alpha and hppa tests by miod
OK ratchov miod

2 years agoLimit wireguard peers listing to -A or wg-interface
kn [Wed, 26 Oct 2022 17:06:31 +0000 (17:06 +0000)]
Limit wireguard peers listing to -A or wg-interface

ifconfig(8) output can get too long when always printing `wgpeers' for all
wg(4) interfaces, so omit it output is requested and/or output is limited
to the interface group "wg" or a specific interface "wgX".

No install media size change as wireguard code is under #ifndef SMALL.

Diff from Mikolaj Kucharski <mikolaj AT kucharski DOT name>
makes Hrvoje Popovski happy
manual bits from jmc
OK sthen

2 years agoConstify device table
kn [Wed, 26 Oct 2022 16:07:28 +0000 (16:07 +0000)]
Constify device table

OK jcs

2 years agoConstify battery check table
kn [Wed, 26 Oct 2022 16:06:42 +0000 (16:06 +0000)]
Constify battery check table

OK jcs

2 years agoFix handling of PGIDs in wait4(2) that I broke with the previous commit.
kettenis [Wed, 26 Oct 2022 13:31:06 +0000 (13:31 +0000)]
Fix handling of PGIDs in wait4(2) that I broke with the previous commit.

ok anton@, millert@

2 years agocompress: fix minor TOCTOU when checking for existing file
millert [Wed, 26 Oct 2022 00:40:40 +0000 (00:40 +0000)]
compress: fix minor TOCTOU when checking for existing file
Use open(2) + fstat(2) instead of stat(2) + open(2).  The file open
code has been moved into its own functions so it can be shared
between docompress() and dodecompress().

2 years agoMake the floating-point computations a sligthly teeny bit more complex (but
miod [Tue, 25 Oct 2022 19:55:31 +0000 (19:55 +0000)]
Make the floating-point computations a sligthly teeny bit more complex (but
real), to prevent llvm panzers from optimizing too aggressively and generating
code which does not touch the slightest floating point register on some
platforms.

ok otto@

2 years agoCalculate approx. battery re-charge time.
mglocker [Tue, 25 Oct 2022 19:32:18 +0000 (19:32 +0000)]
Calculate approx. battery re-charge time.

2 years agoStore mod/ref flags using md pg_flags values rather than a specific field in
miod [Tue, 25 Oct 2022 18:44:36 +0000 (18:44 +0000)]
Store mod/ref flags using md pg_flags values rather than a specific field in
vm_page_md, which allows this struct to shrink a bit.

2 years agoInitialize context before testing it.
nicm [Tue, 25 Oct 2022 17:53:31 +0000 (17:53 +0000)]
Initialize context before testing it.

2 years agotrim DESCRIPTION
kn [Tue, 25 Oct 2022 17:10:13 +0000 (17:10 +0000)]
trim DESCRIPTION

- just call it (a sh(1)) script, in line with MAKEDEV(8) and rc.d(8)
- use only .Nm thereafter instead of .Nm/the .Nm script/...
- zap the additional rc.conf(8) bits for they can be found in this manual
- zap unhelpful "(or can be)"

Feedback OK jmc

2 years agoMove CLOCKS_PER_SEC to sys/_time.h so the kernel has access to it.
millert [Tue, 25 Oct 2022 16:30:30 +0000 (16:30 +0000)]
Move CLOCKS_PER_SEC to sys/_time.h so the kernel has access to it.
This will be used in waitid(2) to set si_utime and si_stime.
The definition of struct timespec also moves from time.h to sys/_time.h
for struct itimerspec.  OK kettenis@

2 years agoregen
kettenis [Tue, 25 Oct 2022 16:11:29 +0000 (16:11 +0000)]
regen

2 years agomplement waitid(2) which is now part of POSIX and used by mozilla.
kettenis [Tue, 25 Oct 2022 16:10:31 +0000 (16:10 +0000)]
mplement waitid(2) which is now part of POSIX and used by mozilla.
This includes a change of siginfo_r which is technically an ABI break but
this should have no real-world impact since the members involved are
never touched by the kernel.

ok millert@, deraadt@

2 years agoImplement waitid(2) which is now part of POSIX and used by mozilla.
kettenis [Tue, 25 Oct 2022 16:08:26 +0000 (16:08 +0000)]
Implement waitid(2) which is now part of POSIX and used by mozilla.
This includes a change of siginfo_r which is technically an ABI break but
this should have no real-world impact since the members involved are
never touched by the kernel.

ok millert@, deraadt@

2 years agoConsistently use 'proc_trampoline' as the name of the trampoline
guenther [Tue, 25 Oct 2022 15:15:38 +0000 (15:15 +0000)]
Consistently use 'proc_trampoline' as the name of the trampoline
used by cpu_fork()

ok miod@ kettenis@ mpi@ deraadt@

2 years agoAdd more chance to process IPI in the interrupt service routine.
aoyama [Tue, 25 Oct 2022 11:39:33 +0000 (11:39 +0000)]
Add more chance to process IPI in the interrupt service routine.

This prevents "luna88k_ext_int: cpu0 level 1 interrupt" message on
heavy load.

"This makes sense" miod@, tested by me.

2 years agoFix LDADD and DPADD.
martijn [Tue, 25 Oct 2022 10:46:59 +0000 (10:46 +0000)]
Fix LDADD and DPADD.
DPADD bit pointed out by deraadt@

"No kidding" deraadt@

2 years agoFix several "bytes" in DESCRIPTION to their clearly intended "packets".
martijn [Tue, 25 Oct 2022 09:54:24 +0000 (09:54 +0000)]
Fix several "bytes" in DESCRIPTION to their clearly intended "packets".

Found by Alec olp_76 <at> yahoo <dot> ca
OK sthen@, denis@

2 years agoFix a memory leak, from Japin Li in GitHub issue 3358.
nicm [Tue, 25 Oct 2022 09:12:05 +0000 (09:12 +0000)]
Fix a memory leak, from Japin Li in GitHub issue 3358.

2 years agoDo not fire redraw callback if NULL.
nicm [Tue, 25 Oct 2022 09:04:49 +0000 (09:04 +0000)]
Do not fire redraw callback if NULL.

2 years agoImprove DESCRIPTION
kn [Tue, 25 Oct 2022 08:40:25 +0000 (08:40 +0000)]
Improve DESCRIPTION

- use plural to clarify how more than interface may be passed
- drop the distinction between interface and bridge
- drop useless example:  netstart is as trivial as echo(1)
- mention options the usual way, this also adds tags which makes ":tn" work
  as expected in the pager to jump to `-n's definition

OK jmc

2 years agoSTACK_OFFSET was to support it varying when compiling some code for
guenther [Tue, 25 Oct 2022 06:05:57 +0000 (06:05 +0000)]
STACK_OFFSET was to support it varying when compiling some code for
either 32bit or 64bit.  With the elimination of 32bit sparc bits
it was just a superfluous indirection of BIAS.  Also, CCFSZ is gone.

ok miod@

2 years agorwindow32 is gone and won't be coming back. ok miod@
guenther [Tue, 25 Oct 2022 06:00:34 +0000 (06:00 +0000)]
rwindow32 is gone and won't be coming back.  ok miod@

2 years agotweak DESCRIPTION; ok mglocker
jmc [Tue, 25 Oct 2022 05:49:40 +0000 (05:49 +0000)]
tweak DESCRIPTION; ok mglocker

2 years agoBe more paranoid with host/domain names coming from the resolver:
djm [Mon, 24 Oct 2022 22:43:36 +0000 (22:43 +0000)]
Be more paranoid with host/domain names coming from the resolver:
don't follow CNAMEs with invalid characters when canonicalising
and never write a name with bad characters to a known_hosts file.

reported by David Leadbeater, ok deraadt@

2 years agoregress test for unmatched glob characters; fails before previous
djm [Mon, 24 Oct 2022 21:52:50 +0000 (21:52 +0000)]
regress test for unmatched glob characters; fails before previous
commit but passes now. bz3488; prodded by dtucker@

2 years agowhen scp(1) is using the SFTP protocol for transport (the default),
djm [Mon, 24 Oct 2022 21:51:55 +0000 (21:51 +0000)]
when scp(1) is using the SFTP protocol for transport (the default),
better match scp/rcp's handling of globs that don't match the globbed
characters but do match literally (e.g. trying to transfer "foo.[1]").

Previously scp(1) in SFTP mode would not match these pathnames but
legacy scp/rcp mode would.

Reported by Michael Yagliyan in bz3488; ok dtucker@

2 years agodo not wait for autoconf in dry-run
kn [Mon, 24 Oct 2022 20:51:07 +0000 (20:51 +0000)]
do not wait for autoconf in dry-run

If there is no default route but some interface has AUTOCONF, printing
what would be done still waits for... nothing to happen.

OK tb

2 years agoupdate the maxrtc entry;
jmc [Mon, 24 Oct 2022 20:43:23 +0000 (20:43 +0000)]
update the maxrtc entry;
while here, knock out the Tn macros and patch up AUTHORS;

2 years agoWe recently added support for the DS1339.
mglocker [Mon, 24 Oct 2022 18:34:29 +0000 (18:34 +0000)]
We recently added support for the DS1339.

2 years agoAdd required sh(1) to synopsis
kn [Mon, 24 Oct 2022 17:58:43 +0000 (17:58 +0000)]
Add required sh(1) to synopsis

Contrary to other scripts in base like rc.d(8) or MAKEDEV(8), netstart(8)
itself is not executable and must be passed as file to sh(1):
$ man -h netstart
/etc/netstart [-n] [interface ...]
$ /etc/netstart
ksh: /etc/netstart: cannot execute - Permission denied

Fix usage and synopsis to provide required usage:
$ man -h netsart
sh /etc/netstart [-n] [interface ...]

OK jmc

2 years agoFix DH group lookup when checking if PFS is required. Compare ID
tobhe [Mon, 24 Oct 2022 15:52:39 +0000 (15:52 +0000)]
Fix DH group lookup when checking if PFS is required. Compare ID
directly instead of calling group_get() and leaking the result.

ok markus@

2 years agouvm_unmap_remove() traverses the entries in the start,end range scanning
deraadt [Mon, 24 Oct 2022 15:11:56 +0000 (15:11 +0000)]
uvm_unmap_remove() traverses the entries in the start,end range scanning
for IMMUTABLE, before traversing for unmap.  I didn't copy enough traversal
code for the scan, and thus MAP_FIXED was subtly broken.
test help from tb, ok kettenis miod

2 years agoremove unused references to httpd.sock; found by dante catalfamo
jmc [Mon, 24 Oct 2022 15:02:01 +0000 (15:02 +0000)]
remove unused references to httpd.sock; found by dante catalfamo
ok florian

2 years agoMake x509_init_oid() table based
tb [Mon, 24 Oct 2022 10:26:59 +0000 (10:26 +0000)]
Make x509_init_oid() table based

Reduces the amount of copy-paste and makes things easier on the eye.

ok claudio job

2 years agoimprove grammar
jsg [Mon, 24 Oct 2022 09:23:27 +0000 (09:23 +0000)]
improve grammar
with and ok jmc@ ok mglocker@

2 years agoregen
jsg [Mon, 24 Oct 2022 09:12:59 +0000 (09:12 +0000)]
regen

2 years agoadd AMD Mendocino/Radeon 610M graphics id
jsg [Mon, 24 Oct 2022 09:12:09 +0000 (09:12 +0000)]
add AMD Mendocino/Radeon 610M graphics id

family 17h model A0h, Ryzen and Athlon 7020 Series:
Ryzen 5 7520U
Ryzen 3 7320U
Athlon Gold 7220U
Athlon Silver 7120U

gfx1037/GC 10.3.7/DCN 3.1.6 ?

2 years agoregen
jsg [Mon, 24 Oct 2022 06:11:00 +0000 (06:11 +0000)]
regen

2 years agoinclude "600 Series" in 600 Series strings
jsg [Mon, 24 Oct 2022 06:10:25 +0000 (06:10 +0000)]
include "600 Series" in 600 Series strings
missed in rev 1.1980

2 years agoenable snooping on Intel 700 Series
jsg [Mon, 24 Oct 2022 05:59:17 +0000 (05:59 +0000)]
enable snooping on Intel 700 Series

2 years agomatch on Intel 700 Series
jsg [Mon, 24 Oct 2022 05:57:58 +0000 (05:57 +0000)]
match on Intel 700 Series

2 years agoregen
jsg [Mon, 24 Oct 2022 05:55:32 +0000 (05:55 +0000)]
regen

2 years agoadd Intel 700 Series PCH ids
jsg [Mon, 24 Oct 2022 05:54:55 +0000 (05:54 +0000)]
add Intel 700 Series PCH ids

from: Intel 700 Series Chipset Family Platform Controller Hub
Datasheet, Volume 1 of 2. Doc. No.: 743835

2 years agomatch AMD family 17h model 90h CCP
jsg [Mon, 24 Oct 2022 04:57:29 +0000 (04:57 +0000)]
match AMD family 17h model 90h CCP
tested by and ok bentley@

2 years agoregen
jsg [Mon, 24 Oct 2022 04:55:20 +0000 (04:55 +0000)]
regen

2 years agoadd AMD family 17h model 90h (Van Gogh) ids
jsg [Mon, 24 Oct 2022 04:54:47 +0000 (04:54 +0000)]
add AMD family 17h model 90h (Van Gogh) ids

based on bentley's Steam Deck dmesg; can't find any documentation
ok bentley@

2 years agoFix comment; sconds -> seconds
mglocker [Mon, 24 Oct 2022 04:28:01 +0000 (04:28 +0000)]
Fix comment;  sconds -> seconds

2 years agoorder Xr by section
jsg [Mon, 24 Oct 2022 03:50:17 +0000 (03:50 +0000)]
order Xr by section

2 years agonew sentence, new line
jsg [Mon, 24 Oct 2022 03:47:57 +0000 (03:47 +0000)]
new sentence, new line

2 years agosync
deraadt [Mon, 24 Oct 2022 03:26:55 +0000 (03:26 +0000)]
sync

2 years agotsc: AMD Family 17h, 19h: compute frequency from Core::X86::Msr:PStateDef
cheloha [Mon, 24 Oct 2022 00:56:33 +0000 (00:56 +0000)]
tsc: AMD Family 17h, 19h: compute frequency from Core::X86::Msr:PStateDef

Compute the TSC frequency on AMD family 17h and 19h CPUs using the
PStateDef MSRs.

   Link 1: https://marc.info/?l=openbsd-tech&m=166394236029484&w=2
   Link 2: https://marc.info/?l=openbsd-tech&m=166446065916283&w=2
Test list: https://marc.info/?l=openbsd-tech&m=166646389821326&w=2

Reviewed by kettenis@ using the AMD documents cited in the comments.
Maybe reviewed by mlarkin@?  I can't remember.  He seemed supportive
of the idea at least.

ok kettenis@

2 years agoFix a misleading comment
guenther [Sun, 23 Oct 2022 23:39:41 +0000 (23:39 +0000)]
Fix a misleading comment

ok miod@ kettenis@

2 years agoMake sure driver is attached before allocating a channel. Fixes a crash on
tobhe [Sun, 23 Oct 2022 22:15:45 +0000 (22:15 +0000)]
Make sure driver is attached before allocating a channel.  Fixes a crash on
M2 Macbook Air with a newer device tree where aplaudio tries to allocate a
channel after apldma_attach() failed.

ok kettenis@

2 years agobzero(disklabel) or memset(disklabel,0) should be enough for
krw [Sun, 23 Oct 2022 19:33:39 +0000 (19:33 +0000)]
bzero(disklabel) or memset(disklabel,0) should be enough for
anyone. No need to also set d_flags to 0.

2 years agoThe cat_opts and decomp_opts fields in struct compressor are unused
millert [Sun, 23 Oct 2022 19:06:35 +0000 (19:06 +0000)]
The cat_opts and decomp_opts fields in struct compressor are unused
so just remove them.  Also mark functions private to main.c as
static.  For SMALL, longopts can be NULL instead of an empty array.
OK kn@

2 years agoInitial apm/sensor driver for the PiJuice HAT UPS, to feedback battery
mglocker [Sun, 23 Oct 2022 18:43:00 +0000 (18:43 +0000)]
Initial apm/sensor driver for the PiJuice HAT UPS, to feedback battery
status information.

ok deraadt@

2 years agobzero(disklabel) or memset(disklabel,0) should be enough for
krw [Sun, 23 Oct 2022 14:39:19 +0000 (14:39 +0000)]
bzero(disklabel) or memset(disklabel,0) should be enough for
anyone. No need to also set d_flags to 0.

2 years agoBump tsleep timeout. For some reason the first attempt to load the firmware
kettenis [Sun, 23 Oct 2022 13:45:32 +0000 (13:45 +0000)]
Bump tsleep timeout.  For some reason the first attempt to load the firmware
sometimes fails.  This happens more often on M2 laptops that also need to
load the touchpad firmware.  Smells like we have some sort of thundering herd
at mountroot time which makes this take more time.

ok patrick@

2 years agopowerpc64 and riscv64: sync pbuild class with amd64 and arm64
jca [Sun, 23 Oct 2022 09:29:48 +0000 (09:29 +0000)]
powerpc64 and riscv64: sync pbuild class with amd64 and arm64

From Brad

2 years agoadd libexec/snmpd; help from jsg
jmc [Sun, 23 Oct 2022 08:00:29 +0000 (08:00 +0000)]
add libexec/snmpd; help from jsg

2 years agoConstify send/receive command tables
kn [Sun, 23 Oct 2022 08:00:10 +0000 (08:00 +0000)]
Constify send/receive command tables

Both only used for printf calls.

OK gkoehler

2 years agoadd a little spacing and fix Nd;
jmc [Sun, 23 Oct 2022 06:12:06 +0000 (06:12 +0000)]
add a little spacing and fix Nd;

2 years agoDrop RCS ids in upstream zlib source
tb [Sun, 23 Oct 2022 06:00:23 +0000 (06:00 +0000)]
Drop RCS ids in upstream zlib source

We're not maintaining a this as a fork, it's upstream source with a handful
of patches. Thus, the RCS ids aren't particularly useful or important. They
are a bit of a maintenance burden and generate noise in diffs.

ok kn, no objection millert, "kill" guess who

2 years agoConnect macppc's power button and lid to the SUSPEND stubs
gkoehler [Sun, 23 Oct 2022 03:43:03 +0000 (03:43 +0000)]
Connect macppc's power button and lid to the SUSPEND stubs

A kernel with option SUSPEND now calls gosleep() if I run zzz(8),
press the power button (when machdep.pwraction=2), or close the lid
(when machdep.lidaction=1).  Because gosleep() is an empty stub, the
macppc does not really suspend; it only suspends some devices and
immediately resumes.

The interrupt from the power button or the lid needs some thread
(other than systq) to call sleep_state().  Use taskq_create(9) to
create another thread.

Add a call to device_register_wakeup().  Without this call,
sleep_state() does nothing.

ok kettenis@ deraadt@

2 years agoA better workaround for mips64 mimmutable problem. The problem is the
deraadt [Sun, 23 Oct 2022 02:53:14 +0000 (02:53 +0000)]
A better workaround for mips64 mimmutable problem.  The problem is the
DT_DEBUG word is inside a R LOAD that gets marked immutable, but ld.so
does a mprotect RW + adjustment + mprotect R.  DT_DEBUG is specified as
being inside the DYNAMIC range, solet's do all the immutables and then,
 on mips64 only, turn around and make DYNAMIC mutable.  That gives us
time to see if we can move DT_DEBUG or change what ld.so is doing.
discussed at length with kettenis

2 years agosort Xr; remove '.' after Nd text
jsg [Sun, 23 Oct 2022 01:15:33 +0000 (01:15 +0000)]
sort Xr; remove '.' after Nd text

2 years agonew sentence, new line
jsg [Sun, 23 Oct 2022 01:10:50 +0000 (01:10 +0000)]
new sentence, new line

2 years agoPut struct rwindow back in reg.h, pcb.h depends on this.
miod [Sat, 22 Oct 2022 20:09:41 +0000 (20:09 +0000)]
Put struct rwindow back in reg.h, pcb.h depends on this.

2 years agoAdd regress for powerpc* AltiVec with subnormal floats
gkoehler [Sat, 22 Oct 2022 17:50:28 +0000 (17:50 +0000)]
Add regress for powerpc* AltiVec with subnormal floats

Older CPUs do an AltiVec assist trap, EXC_VECAST_G4 or EXC_VECAST_G5
in /sys/arch/powerpc/powerpc/trap.c; newer CPUs (like POWER9) don't
trap.  The trap's emulation of subnormal floats should give almost the
same results as the POWER9.

This test is only for powerpc or powerpc64 with AltiVec.  anton@
explained how to skip the test if we're on the wrong arch or don't
have AltiVec.

ok anton@

2 years agosync to unbound 1.17.0; heavy lifting by sthen
florian [Sat, 22 Oct 2022 16:37:56 +0000 (16:37 +0000)]
sync to unbound 1.17.0; heavy lifting by sthen

2 years agoIn __cxa_atexit(), there is no need to initialize local pointer before
deraadt [Sat, 22 Oct 2022 15:21:25 +0000 (15:21 +0000)]
In __cxa_atexit(), there is no need to initialize local pointer before
the lock, when it is correctly initialized after the lock
ok otto millert

2 years agoautomatic immutable for base executable is not ready on mips
deraadt [Sat, 22 Oct 2022 15:06:47 +0000 (15:06 +0000)]
automatic immutable for base executable is not ready on mips
because DT_DEBUG isn't in the right place

2 years agoAdd support to gunzip for zip files that contain a single member.
millert [Sat, 22 Oct 2022 14:41:27 +0000 (14:41 +0000)]
Add support to gunzip for zip files that contain a single member.
This matches the behavior of GNU gzip and is most useful with "gunzip
-c" to pipe the uncompressed output.  It will not decompress a file
with more than one member unless in cat mode, in which case only
the first file is displayed.

To decompress a .zip file without the -c option, "-S .zip" must be
specified. The file name stored in the .zip file is not used unless
the -N option is specified. This is consistent with GNU gzip).

Does not increase the size of gzip on the install media.
OK jmc@ for documentation.

2 years agolto is a memory hog. Bump pbuild's datasize-cur on arm64 to 8G as on amd64.
tb [Sat, 22 Oct 2022 11:33:12 +0000 (11:33 +0000)]
lto is a memory hog. Bump pbuild's datasize-cur on arm64 to 8G as on amd64.

ok phessler

2 years agoFix markup ("Ar" -> "Va" ).
ajacoutot [Sat, 22 Oct 2022 10:34:56 +0000 (10:34 +0000)]
Fix markup ("Ar" -> "Va" ).

from Raf Czlonka, thanks

2 years agorework the text to avoid constant 2nd person;
jmc [Sat, 22 Oct 2022 06:41:04 +0000 (06:41 +0000)]
rework the text to avoid constant 2nd person;
pointed out/ok deraadt

2 years agoadd some missing flags, as pointed out by deraadt; while
jmc [Sat, 22 Oct 2022 06:39:12 +0000 (06:39 +0000)]
add some missing flags, as pointed out by deraadt; while
here rework the text so it reads a little better;

ok deraadt

2 years agomissing comma; from josiah frentsos
jmc [Sat, 22 Oct 2022 06:27:46 +0000 (06:27 +0000)]
missing comma; from josiah frentsos
while here, wrap long line

2 years agoAltiVec assist for subnormal floats in vectors
gkoehler [Sat, 22 Oct 2022 00:58:56 +0000 (00:58 +0000)]
AltiVec assist for subnormal floats in vectors

The old CPU in a macppc traps AltiVec instructions when they encounter
denormal or subnormal floats.  Emulate most of them.  They operate on
vectors of 4 single-precision floats.  The emulations either use
scalar operations (so vmaddfp becomes 4 of fmadds) or a formula (like
vrsqrtefp's 1 / sqrt(b) = 1 / sqrt(b * 2**126) * 2**63).

I am forgetting to emulate some instructions (at least vrfin, vrfiz,
vrfip, vrfim).  If I don't emulate it, it will still cause SIGFPE.

Mac OS never emulated these instructions, but set AltiVec's "non-Java"
NJ bit (which changes all subnormal floats to zero).  FreeBSD also
sets NJ; NetBSD does SIGFPE; Linux emulates them.  The POWER9 running
OpenBSD/powerpc64 does them in hardware (without trapping).

ok kettenis@ miod@

2 years agohw.power, machdep.lidaction, machdep.pwraction for macppc
gkoehler [Fri, 21 Oct 2022 22:42:36 +0000 (22:42 +0000)]
hw.power, machdep.lidaction, machdep.pwraction for macppc

I can now use the power button to power off my macppcs running
OpenBSD.  The new sysctls machdep.lidaction and machdep.pwraction act
like acpibtn(4), but we are missing code to suspend or hibernate a
macppc.  Small kernels (bsd.rd) continue to ignore the power button.

adb(4) sends an environment interrupt when I unplug my PowerBook's AC
or close its lid.  Rename PMU_INT_WAKEUP to PMU_INT_ENVIRONMENT like
other BSDs and Linux.  Handle PMU_ENV_LID_CLOSED as a lid sensor and
PMU_ENV_AC_POWER by setting sysctl hw.power.  Power buttons can either
use PMU_ENV_POWER_BUTTON or go through akbd(4); handle both kinds of
power buttons in the same way.  Other models of macppc, with different
power buttons or lids, might not work yet.  The lid sensor looks like,

$ sysctl hw.sensors
hw.sensors.adb0.indicator0=On (lid open)

kettenis@ warned against calling prsignal() from interrupt context,
and pointed me to task_add(9).

2 years agoChange len in syncicache(_, len) from int to size_t
gkoehler [Fri, 21 Oct 2022 21:26:49 +0000 (21:26 +0000)]
Change len in syncicache(_, len) from int to size_t

The powerpc64 part is under #if 0, so this change affects only macppc.
Simplify powerpc64's __syncicache (which had size_t len) and copy it
to macppc's syncicache (which had int len).

macppc was looping while ((l -= CACHELINESIZE) > 0).  The loop would
be infinite if l became an unsigned type like size_t.  It is simpler
to set size_t i = 0, do i += by, and loop while (i < len).  It helps
that dcbst and icbi can add 2 registers, from + i.

2 years agouvm_map_immutable() takes start,end, not start,end
deraadt [Fri, 21 Oct 2022 20:46:40 +0000 (20:46 +0000)]
uvm_map_immutable() takes start,end, not start,end
I juggled my trees incorrectly.

2 years agoRecent chrome renderers try to change some immutable RW region to R.
deraadt [Fri, 21 Oct 2022 20:45:51 +0000 (20:45 +0000)]
Recent chrome renderers try to change some immutable RW region to R.
I really want immutable to not allow such transitions either, because it will
help bring code up to the highest standard.
For now, allow this for all processes, until we find out the underlying
reason.

2 years agothe debug "name" parameter to uvm_map_immutable() is no longer needed
deraadt [Fri, 21 Oct 2022 19:13:31 +0000 (19:13 +0000)]
the debug "name" parameter to uvm_map_immutable() is no longer needed

2 years agoRemove vestigial bits of 32-bit binaries support; drop the `64' suffix in
miod [Fri, 21 Oct 2022 18:55:42 +0000 (18:55 +0000)]
Remove vestigial bits of 32-bit binaries support; drop the `64' suffix in
struct names when the matching `32' flavour got removed.

Joint work with cheloha@, all bugs mine.

2 years agoconstify quirks table
kn [Fri, 21 Oct 2022 18:29:37 +0000 (18:29 +0000)]
constify quirks table

Not that big now, but quirks are likely to grow in the feature and there is
no reason to keep them writable.

OK and tested by mglocker

2 years agostatic binaries self-mprotect their relro in crt0. mimmutable() also works
deraadt [Fri, 21 Oct 2022 18:14:09 +0000 (18:14 +0000)]
static binaries self-mprotect their relro in crt0.  mimmutable() also works
here.
ok kettenis

2 years agosigaltstack() was adapted to work on mimmutable regions (an unfortunate
deraadt [Fri, 21 Oct 2022 18:11:55 +0000 (18:11 +0000)]
sigaltstack() was adapted to work on mimmutable regions (an unfortunate
compromise...), but it means the stack can be marked immutable again.
ok kettenis

2 years agoautomatically mark immutable certain regions in program&ld.so LOADs.
deraadt [Fri, 21 Oct 2022 18:10:52 +0000 (18:10 +0000)]
automatically mark immutable certain regions in program&ld.so LOADs.
The large commented block in elf_load_psection explains the sitaution.
ok kettenis.

2 years agoconstify global identity tables
kn [Fri, 21 Oct 2022 17:45:40 +0000 (17:45 +0000)]
constify global identity tables

ah{c,d}_find_pci_device() already return their members as const.

OK krw

2 years agoAdd extra NULL check after ssl3_setup_read_buffer()
tb [Fri, 21 Oct 2022 15:48:14 +0000 (15:48 +0000)]
Add extra NULL check after ssl3_setup_read_buffer()

While ssl3_setup_read_buffer() success alone is enough to imply that
the read bufer is non-NULL, several static analyzers fail to recognize
that and throw fits about possible NULL accesses.

CID 331010

Fix from and ok jsing