jsg [Mon, 12 Sep 2022 14:18:17 +0000 (14:18 +0000)]
disable Panel Self Refresh (PSR) by default in inteldrm
After i915_drv.c 1.144 PSR changed to being on by default.
On a TUXEDO InfinityBook Pro 14 Gen6 (Tiger Lake) this introduced screen
flicker. Reported and tested by Matthias Schmidt.
Should also avoid flicker problem on Dell XPS 13 7390 (Comet Lake)
reported by James Cook.
tb [Mon, 12 Sep 2022 13:11:36 +0000 (13:11 +0000)]
Add CBC, CFB64 and OFB64 test coverage for RC2
From Joshua Sing
kn [Mon, 12 Sep 2022 13:10:03 +0000 (13:10 +0000)]
Hook up installboot(8) tests on all covered archs
Those that still fail (softraid+keydisk or explicit-stage-files) have fixes on tech@.
tb [Mon, 12 Sep 2022 13:09:01 +0000 (13:09 +0000)]
whitespace nits
claudio [Mon, 12 Sep 2022 12:04:55 +0000 (12:04 +0000)]
Bump version for upcoming -portable release
nicm [Mon, 12 Sep 2022 12:02:17 +0000 (12:02 +0000)]
Don't use options from pane if pane is NULL.
cheloha [Mon, 12 Sep 2022 10:58:05 +0000 (10:58 +0000)]
acpihpet(4): acpihpet_delay: only use lower 32 bits of counter
We can't use acpihpet_r() to implement acpihpet_delay(). Even if we
made acpihpet_r() atomic on amd64, i386 would still be incapable of
doing atomic 8-byte reads. As-is, the code does a split read on all
platforms, which may or may not already be causing problems with TSC
calibration:
https://marc.info/?l=openbsd-tech&m=
166220561709496&w=2
Switch from acpihpet_r() to bus_space_read_4() and only use the lower
32 bits of the counter. This makes acpihpet_delay() slightly larger,
but unless we want two acpihpet_delay() implementations we have no
choice.
Link: https://marc.info/?l=openbsd-tech&m=166165347220077&w=2
ok jsg@
jsg [Mon, 12 Sep 2022 10:16:09 +0000 (10:16 +0000)]
spelling
claudio [Mon, 12 Sep 2022 10:03:17 +0000 (10:03 +0000)]
Introduce tree walkers that only walk a subtree of the RIB.
In some cases only a "small" part of the RIB needs to be looked at. Like
bgpctl show rib 10/8 or-longer that only needs to travers nodes under
10/8 all other RIB entries do not matter. By setting the start node to
the RB_NFIND(10/8) the all nodes below this point can be skipped.
Using prefix_compare() while walking the tree with RB_NEXT() the walker
know when it steps outside of the 10/8 subtree and stops.
With this the or-longer commands become a lot faster.
Looks good to tb@
jsg [Mon, 12 Sep 2022 09:18:30 +0000 (09:18 +0000)]
SIOCGIFPARENT uses struct if_parent not ireq
ok jmc@
jsg [Mon, 12 Sep 2022 09:15:29 +0000 (09:15 +0000)]
SIOCGVNETID uses struct ifreq not if_parent
ok jmc@
tb [Mon, 12 Sep 2022 04:26:38 +0000 (04:26 +0000)]
Move division by two out of sizeof()
tb [Mon, 12 Sep 2022 04:20:59 +0000 (04:20 +0000)]
Error checks for EVP_*
CID 356777
tb [Mon, 12 Sep 2022 04:12:39 +0000 (04:12 +0000)]
Move division by two out of sizeof()
CID 356778
mbuhl [Sun, 11 Sep 2022 20:51:44 +0000 (20:51 +0000)]
Add regression tests for the sendmmsg and recvmmsg system calls.
miod [Sun, 11 Sep 2022 19:34:40 +0000 (19:34 +0000)]
Remove the DKF_LABELVALID flag from struct disk. Instead, trust disk drivers
to always be able to provide a duid, and keep ignoring whole zero duids.
This fixes a race in vnd setup where the disk_attach callback could run
before any I/O occurs on the vnd, thus not having a label available yet.
noticed by otto@ and kn@; ok kn@
dv [Sun, 11 Sep 2022 19:05:44 +0000 (19:05 +0000)]
Add the new inout vmm(4) tracepoint to dt(4).
Forgot to put it in the list of static tracepoints when I committed
the tracepoint at g2k22. Woops.
jsing [Sun, 11 Sep 2022 18:13:30 +0000 (18:13 +0000)]
Enforce the minimum TLS version requirement for QUIC.
ok tb@
tb [Sun, 11 Sep 2022 18:08:17 +0000 (18:08 +0000)]
Adjust for opaque structs in ts.h
ok jsing
tb [Sun, 11 Sep 2022 18:07:46 +0000 (18:07 +0000)]
Adjust for opaque structs in pkcs12.h
ok jsing
kettenis [Sun, 11 Sep 2022 18:07:26 +0000 (18:07 +0000)]
Register the I2C controller with ACPI. Skip this on the SC8280XP SoC for
now as the AML on the Lenovo X13S tries to do I2C transactions to a device
that doesn't respond leading to the ACPI thread spinning until the
transaction times out.
ok mlarkin@, deraadt@
tb [Sun, 11 Sep 2022 17:45:14 +0000 (17:45 +0000)]
sync
tb [Sun, 11 Sep 2022 17:43:27 +0000 (17:43 +0000)]
bump major after libcrypto and libssl major bump
tb [Sun, 11 Sep 2022 17:42:55 +0000 (17:42 +0000)]
Crank major after symbol addition and libcrypto major bump
tb [Sun, 11 Sep 2022 17:42:09 +0000 (17:42 +0000)]
Update Symbols.list
ok jsing
tb [Sun, 11 Sep 2022 17:39:46 +0000 (17:39 +0000)]
Expose SSL_get_share_{group,curve}() and related #defines
ok jsing
tb [Sun, 11 Sep 2022 17:38:58 +0000 (17:38 +0000)]
Expose some error codes needed for QUIC support
ok jsing
tb [Sun, 11 Sep 2022 17:36:34 +0000 (17:36 +0000)]
Define LIBRESSL_HAS_QUIC
ok jsing
tb [Sun, 11 Sep 2022 17:34:41 +0000 (17:34 +0000)]
Bump major after symbol addition and removal and struct visibility changes
tb [Sun, 11 Sep 2022 17:32:01 +0000 (17:32 +0000)]
Update Symbols.list
ok jsing
tb [Sun, 11 Sep 2022 17:31:19 +0000 (17:31 +0000)]
Make structs in ts.h opaque
ok jsing
tb [Sun, 11 Sep 2022 17:30:13 +0000 (17:30 +0000)]
Make structs in pkcs12.h opaque
ok jsing
tb [Sun, 11 Sep 2022 17:29:24 +0000 (17:29 +0000)]
Expose EVP_chacha20_poly1305()
ok jsing
tb [Sun, 11 Sep 2022 17:28:33 +0000 (17:28 +0000)]
Expose various EVP AEAD constants for EVP ChaCha and QUIC
ok jsing
tb [Sun, 11 Sep 2022 17:26:51 +0000 (17:26 +0000)]
Expose OPENSL_cleanup()
ok jsing
tb [Sun, 11 Sep 2022 17:26:03 +0000 (17:26 +0000)]
Make BIO_info_cb() identical to bio_info_cb()
Various projects use bio_info_cb and BIO_info_cb interchangeably, for
example mupdf and freerdp. This is because this was changed in OpenSSL
commit
fce78bd4 (2017), triggered by new warnings in gcc 8.
https://github.com/openssl/openssl/pull/4493
This results in some scary compiler warnings and useless patches in ports.
Nobody seems to be using the old bio_info_cb() version.
ok jsing
tb [Sun, 11 Sep 2022 17:22:52 +0000 (17:22 +0000)]
Remove c2i_* and i2c_* from public visibility
This removes c2i_ASN1_OBJECT(), {c2i,i2c}_ASN1_BIT_STRING() and
{c2i,i2c}_ASN1_INTEGER(). These are not part of the OpenSSL 1.1
API and should never have been exposed in the first place.
ok jsing
tb [Sun, 11 Sep 2022 15:24:53 +0000 (15:24 +0000)]
link asn1object test statically in preparation for upcoming bump
krw [Sun, 11 Sep 2022 15:05:27 +0000 (15:05 +0000)]
Replace "echo 'w\ny\nq\n' | disklabel -E" with equivalent
'disklabel -dw'.
Tested & ok visa@
jsing [Sun, 11 Sep 2022 14:39:44 +0000 (14:39 +0000)]
Be stricter with middlebox compatibility mode in the TLSv1.3 server.
Only allow a TLSv1.3 client to request middlebox compatibility mode if
this is permitted. Ensure that the legacy session identifier is either
zero length or 32 bytes in length. Additionally, only allow CCS messages
on the server side if the client actually requested middlebox compatibility
mode.
ok tb@
jsing [Sun, 11 Sep 2022 14:33:07 +0000 (14:33 +0000)]
Only permit CCS messages if requesting middlebox compatibility mode.
Currently the TLSv1.3 client always permits the server to send CCS
messages. Be more strict and only permit this if the client is actually
requesitng middlebox compatibility mode.
ok tb@
deraadt [Sun, 11 Sep 2022 14:27:09 +0000 (14:27 +0000)]
drop the -beta
jsing [Sun, 11 Sep 2022 13:51:25 +0000 (13:51 +0000)]
Use CBS when procesing a CCS message in the legacy stack.
ok tb@
jsing [Sun, 11 Sep 2022 13:50:41 +0000 (13:50 +0000)]
Ensure there is no trailing data for a CCS received by the TLSv1.3 stack.
ok tb@
jmc [Sun, 11 Sep 2022 11:56:28 +0000 (11:56 +0000)]
.Li in previous didn;t make sense;
krw [Sun, 11 Sep 2022 11:47:55 +0000 (11:47 +0000)]
Add #define's for GPT partition attribute bits REQUIRED, IGNORE
and BOOTABLE, set BOOTABLE attribute bit instead of using the
incorrect GPTDOSACTIVE value, have 'fdisk -v' print out GPT
partition attributes if any of the 64 bits are set, don't spoof
any partition with REQUIRED bit set.
Prompted by kettenis@ stumbling across a machine with 40+ (!!)
REQUIRED GPT partitions.
Tested & ok kettenis@
jsg [Sun, 11 Sep 2022 11:41:04 +0000 (11:41 +0000)]
correct argument to VMM_IOC_READVMPARAMS
krw [Sun, 11 Sep 2022 11:12:39 +0000 (11:12 +0000)]
Replace "echo 'w\ny\nq\n' | disklabel -E" with equivalent
'disklabel -dw'.
Tested & ok miod@
kettenis [Sun, 11 Sep 2022 10:40:35 +0000 (10:40 +0000)]
When looking up a symble using kvm_nlist(3), we need to prepend an
underscore. This fixes acpidump on arm64. How this ever worked before
is unclear, but part of the puzzle is that we didn't properly check the
return value of the kvm_nlist(3) calls. So fix that too.
ok deraadt@, mglocker@
kettenis [Sun, 11 Sep 2022 10:37:54 +0000 (10:37 +0000)]
Add wsmux(4) such that systems with multiple keyboards work in bsd.rd.
ok deraadt@, mpi@
patrick [Sun, 11 Sep 2022 10:28:56 +0000 (10:28 +0000)]
On smmu(4) instances without coherent page table walk we need to make sure
changes to the page tables are made visible, as needed on the Lenovo x13s.
patrick [Sun, 11 Sep 2022 10:18:54 +0000 (10:18 +0000)]
Make an attempt at taking over existing streams on Qualcomm machines. Some
of the stream mappings on the Lenovo x13s match on a single stream id, and
others use a mask to match on multiple stream ids. For now we only care
about the single ones, which is enough to capture e.g. the xhci(4) nodes.
schwarze [Sun, 11 Sep 2022 09:58:06 +0000 (09:58 +0000)]
Replace archaic \*(Lt and \*(Gt by plain < and >, respectively,
because these inspire devotion to cargo cult in developers.
Cleanup suggested by kn@.
schwarze [Sun, 11 Sep 2022 09:12:47 +0000 (09:12 +0000)]
Finally expand and delete the macro SCALE_VS_INIT().
It's nothing but obfuscation and only used at three places in a single file.
Removing it also makes the code three lines shorter.
The ugliness was already pointed out six years ago by mmcc@.
espie [Sun, 11 Sep 2022 08:51:51 +0000 (08:51 +0000)]
document actual MACHINE_ARCH/ARCH values since I always get these mixed up
(and I'm not the only one!)
yasuoka [Sun, 11 Sep 2022 08:38:39 +0000 (08:38 +0000)]
Handle if pci_intr_establish() failed. This actually happens if many
VMXNET3 are configured. from IIJ.
ok jmatthew
kettenis [Sun, 11 Sep 2022 08:33:03 +0000 (08:33 +0000)]
Change OF_getnodebyname() such that lokking up a node using just the name
without a unit number (so without the @1234 bit) works as well.
ok patrick@, gkoehler@
miod [Sun, 11 Sep 2022 07:38:33 +0000 (07:38 +0000)]
Fix build after previous
jmc [Sun, 11 Sep 2022 06:41:36 +0000 (06:41 +0000)]
- put sections in a more standard order
(moved FILES and DIAGNOSTICS nearer page end)
- BUGS AND LIMITATIONS -> BUGS
ok sthen espie
jmc [Sun, 11 Sep 2022 06:38:10 +0000 (06:38 +0000)]
.Li -> .Vt where appropriate;
from josiah frentsos, tweaked by schwarze
ok schwarze
jsg [Sun, 11 Sep 2022 04:39:46 +0000 (04:39 +0000)]
fix repeated words
gkoehler [Sun, 11 Sep 2022 04:38:28 +0000 (04:38 +0000)]
Use installboot -p in install.md for macppc, powerpc64
ok kn@
miod [Sat, 10 Sep 2022 20:35:28 +0000 (20:35 +0000)]
Remove pmap_collect() when a no-op, define __HAVE_PMAP_COLLECT otherwise.
Use that define to shunt uvm_swapout_threads(), which is a noop when
pmap_collect() does nothing.
ok mpi@
jsing [Sat, 10 Sep 2022 17:45:10 +0000 (17:45 +0000)]
Increment the input and output position for EVP AES CFB1.
The length is decremented, however the input is repeatedly read from and
output written to the same position. Correct this by actually incrementing
the input and output pointers.
Found via OpenSSL
604e591ed7,
ok tb@
jsing [Sat, 10 Sep 2022 17:39:47 +0000 (17:39 +0000)]
Use correct length for EVP CFB mode ciphers.
The BLOCK_CIPHER_* macros contained a bug where the total length is passed
to the underlying cipher implementation, rather than the length of the
current chunk. Correct this and use the chunk length instead.
Should address the remaining issues reported by Coverity.
ok tb@
nicm [Sat, 10 Sep 2022 17:01:33 +0000 (17:01 +0000)]
Use correct option name.
cheloha [Sat, 10 Sep 2022 16:58:51 +0000 (16:58 +0000)]
top(1): remove last vestiges of "last pid" support
millert@ removed most of the "last pid" support from top(1) in 1997.
See, e.g. top/machine.c,v1.7:
http://cvsweb.openbsd.org/src/usr.bin/top/machine.c?rev=1.7&content-type=text/x-cvsweb-markup
Let's remove the rest of it:
- Eliminate system_info.last_pid.
- Remove mpid parameter and "last pid" printing code from i_loadave().
Link: https://marc.info/?l=openbsd-tech&m=166277253606823&w=2
ok millert@
mpi [Sat, 10 Sep 2022 16:14:36 +0000 (16:14 +0000)]
Get rid of the extra vnode reference known as UVM_VNODE_CANPERSIST.
Back in the 4.4BSD days the VM subystem had a OBJ_CANPERSIST flag to
enter objects in a global cached list. Some of this logic seem to have
been copied to UVM but without the global list.
Unfortunately keeping UVM vnode objects alive after munmap(2)ing the
corresponding region without incrementing the reference count of the
related vnode led to many bugs when the vnode was recycled and/or when
it data where written back to disk (via the page daemon).
The problem is that VM pages might have a non-accounted reference to a
vnode via `pg->uobject'.
Fix "vref used where vget required" panic reported by bluhm@, gkoehler@
and Andrew Krasavinseen on bugs@.
Thanks a lot to semarie@ for co-debugging this issue!
Tested by bluhm@, tb@, miod@.
ok kettenis@, semarie@
jsing [Sat, 10 Sep 2022 15:37:13 +0000 (15:37 +0000)]
Use CBS to parse TLS alerts in the legacy stack.
ok tb@
jsing [Sat, 10 Sep 2022 15:29:33 +0000 (15:29 +0000)]
Provide a version of ssl_msg_callback() that takes a CBS.
Use this from the TLSv1.3 code.
ok tb@
kettenis [Sat, 10 Sep 2022 14:32:53 +0000 (14:32 +0000)]
Add another pin to the SC7180 map function.
kettenis [Sat, 10 Sep 2022 13:18:31 +0000 (13:18 +0000)]
Don't restrict GPIO events to pin numbers below 256. With the _EVT()
method events corresponding to larger numbers are possible.
Fixes lid state detection on the x13s.
ok patrick@
kettenis [Sat, 10 Sep 2022 13:14:39 +0000 (13:14 +0000)]
Generalize the code such that it works on SC7180 SoCs as well.
ok mglocker@, patrick@
kettenis [Sat, 10 Sep 2022 13:05:41 +0000 (13:05 +0000)]
Add _HID for SC7180 SoCs.
ok mglocker@
jsg [Sat, 10 Sep 2022 12:36:18 +0000 (12:36 +0000)]
carrier return character -> carriage return character
ok jmc@ miod@
jsg [Sat, 10 Sep 2022 10:22:46 +0000 (10:22 +0000)]
fix repeated words
ok ok miod@ ack ack jmc@
jsg [Sat, 10 Sep 2022 10:10:29 +0000 (10:10 +0000)]
Thinkpad -> ThinkPad
sdk [Sat, 10 Sep 2022 10:10:09 +0000 (10:10 +0000)]
apm(1): Display unknown recharge time estimate instead of -1
OK miod@
jsg [Sat, 10 Sep 2022 10:07:44 +0000 (10:07 +0000)]
Socs -> SoCs
jsg [Sat, 10 Sep 2022 10:06:08 +0000 (10:06 +0000)]
dupex -> duplex
jsg [Sat, 10 Sep 2022 10:01:54 +0000 (10:01 +0000)]
wireless LANS -> wireless LANs
jsg [Sat, 10 Sep 2022 08:50:53 +0000 (08:50 +0000)]
fix repeated words
ok miod@ jmc@
jsg [Sat, 10 Sep 2022 08:18:06 +0000 (08:18 +0000)]
remove apostrophe on possesive its
ok jmc@
mglocker [Sat, 10 Sep 2022 08:13:16 +0000 (08:13 +0000)]
Finally, only allocate the number of frames for isoc transfers which we
really need. The static allocation workaround in the code
(DWC2_MAXISOCPACKETS) was required because the NetBSD allocx USB method
has a second argument to pass nframes already there, which we don't
have.
Regression tested with video play, audio play, audio record.
ok mpi@
miod [Sat, 10 Sep 2022 06:48:31 +0000 (06:48 +0000)]
Add EABI strong aliases for __fixunssfdi and __fixunsdfdi added recently on
armv7; ok mbuhl@
jmc [Sat, 10 Sep 2022 05:50:40 +0000 (05:50 +0000)]
PACKAGES_REPOSITORY -> PACKAGE_REPOSITORY; from john verne
cheloha [Sat, 10 Sep 2022 01:30:14 +0000 (01:30 +0000)]
amd64, i386: lapic_initclocks: install i8254 before lapic_startclock()
In the future, the clock interrupt code will need a working
timecounter to do its job. In lapic_initclocks(), call
i8254_inittimecounter_simple() before lapic_startclock().
The i8254 may be be a piece of junk, but one timecounter is better
than none.
cheloha [Sat, 10 Sep 2022 00:49:47 +0000 (00:49 +0000)]
init(8): fix signal handler boolean type and qualifier
The variable "clang" is modified from a signal handler. Change it
from an 'int' to a 'sig_atomic_t' and mark it 'volatile', as we
recommend in signal(3).
ok millert@ kn@
mglocker [Fri, 9 Sep 2022 21:16:54 +0000 (21:16 +0000)]
Let pool_get(9) do the memory initialisation directly.
ok kettenis@
kettenis [Fri, 9 Sep 2022 18:15:30 +0000 (18:15 +0000)]
Recognize Qualcomm Krys 400 series cores.
ok jsg@
jmc [Fri, 9 Sep 2022 16:48:25 +0000 (16:48 +0000)]
add recvmmsg to NAME;
kn [Fri, 9 Sep 2022 15:53:16 +0000 (15:53 +0000)]
Reflect script failure in exit code
installboot(8) runs newfs(8) and fsck(8) via system(3) but only checks
failures of the function itself, always returning zero no matter what the
programs/shell returned.
This is bad for regress tests relying on correct return codes.
create_filesystem() itself must not exit as write_filesystem() calls it and
cleans up temporary files upon failure.
Make it return -1 if the script returned non-zero so write_filesystem()
handles it as error, cleans up and makes installboot exit 1.
Stop ignoring create_filesystem()'s return code in md_prepareboot() and
exit the same way.
Here's the change in behaviour on arm64 (newfs fails because of the
vnd/disklabel race, see "Race in disk_attach_callback?" on tech@):
# installboot -vp vnd0 ; echo $?
newfsing
6694ae5b0d7596ed.i
newfs_msdos: /dev/r6694ae5b0d7596ed.i: No such file or directory
0
# ./obj/installboot -vp vnd0 ; echo $?
newfsing
6694ae5b0d7596ed.i
newfs_msdos: /dev/r6694ae5b0d7596ed.i: No such file or directory
1
Tested on amd64 arm64 macppc octeon powerpc64 sparc64
OK millert
mbuhl [Fri, 9 Sep 2022 13:54:58 +0000 (13:54 +0000)]
sync
mbuhl [Fri, 9 Sep 2022 13:52:59 +0000 (13:52 +0000)]
Add libc wrappers for the new sendmmsg and recvmmsg system calls.
Feedback tb@, miod@, jca@
OK jca@
claudio [Fri, 9 Sep 2022 13:33:24 +0000 (13:33 +0000)]
Implement the F_SHORTER filter by doing explicit lookups for each possible
prefixlen. Even for IPv6 this is much faster than a full table walk.
OK tb@
kn [Fri, 9 Sep 2022 12:55:43 +0000 (12:55 +0000)]
Add mips64/octeon bits
Still fails due to the disklabel/vnd kernel race but running into failing
'installboot -p' helps exercising the fsck/newfs exit code fix.
REGRESS_EXIT_EARLY=1 runs past the prepare target without the diff but
properly stops with it as installboot now exits 1 if system(3) fails.
kn [Fri, 9 Sep 2022 12:05:52 +0000 (12:05 +0000)]
Clarify/typofix comments
OpenBSD is not FreeBSD and has no stf(4) interface.
No object change.
nicm [Fri, 9 Sep 2022 11:02:23 +0000 (11:02 +0000)]
Add message-line option to control where message and prompt go, from
Varun Kumar E in GitHub issue 3324.
claudio [Fri, 9 Sep 2022 10:23:17 +0000 (10:23 +0000)]
Bump version to 8.0
kettenis [Fri, 9 Sep 2022 08:30:32 +0000 (08:30 +0000)]
The DSDT on the snapdragon 7c based Acer Aspire 1 (A114-61) uses a bogus
compatible ID. Add its hardware ID to the list to work around this.
ok patrick@, mlarkin@, mglocker@