openbsd
21 months agoAdjust various test results to the new bgpctl show rib output including
claudio [Tue, 24 Jan 2023 11:32:13 +0000 (11:32 +0000)]
Adjust various test results to the new bgpctl show rib output including
ASPA validation state.
OK tb@

21 months agoAdjust the ASPA test to match the new code which is AFI independent.
claudio [Tue, 24 Jan 2023 11:31:13 +0000 (11:31 +0000)]
Adjust the ASPA test to match the new code which is AFI independent.
OK tb@

21 months agoPrint the ASPA validation state (avs) in various show rib outputs.
claudio [Tue, 24 Jan 2023 11:29:34 +0000 (11:29 +0000)]
Print the ASPA validation state (avs) in various show rib outputs.
OK tb@

21 months agoImplement ASPA validation and reload logic on ASPA set changes.
claudio [Tue, 24 Jan 2023 11:28:41 +0000 (11:28 +0000)]
Implement ASPA validation and reload logic on ASPA set changes.

For this use the validation state (vstate) in struct prefix and
struct filterstate to store both the ASPA and ROA validity.
Introduce helper functions to set and get the various states for
struct prefix and make sure struct filterstate is also setup properly.
Change the ASPA state in rde_aspath to be AFI/AID and role independent
by storing all 4 possible outcomes. Also add a ASPA generation count
which is used to update the rde_aspath ASPA state cache on reloads.
Rework the rde_aspa.c code to be AFI/AID and role independent. Doing
this for roles is trivial but AFI switch goes deep and is so unnecessary.
The reload is combined with the ROA reload logic and renamed to RPKI
softreload.

OK tb@

21 months agoCheck return value of X509_digest
job [Tue, 24 Jan 2023 09:48:57 +0000 (09:48 +0000)]
Check return value of X509_digest

OK tb@

21 months agoAdd and use a specific routine to fetch instructions from userland when
miod [Tue, 24 Jan 2023 07:26:33 +0000 (07:26 +0000)]
Add and use a specific routine to fetch instructions from userland when
doing floating-point emulation, as copyin will fail on exec-only mappings
now.
ok deraadt@ kettenis@

21 months agomatch unknown ATI display devices as amdgpu in fw_update
jsg [Tue, 24 Jan 2023 01:40:22 +0000 (01:40 +0000)]
match unknown ATI display devices as amdgpu in fw_update

For recent devices amdgpu matches via the hardware ip discovery table,
not with a table of pci vendor and product ids.

So amdgpu_devlist.h and pcidevs do not cover all devices that amdgpu
may match.

in dmesg amdgpu with an unknown product takes the form:

ramdisk kernel, bios/mbr:
vga1 at pci12 dev 0 function 0 vendor "ATI", unknown product 0x687f rev 0xc3

ramdisk kernel, efi or non-x86 arch:
vendor "ATI", unknown product 0x687f (class display subclass VGA, rev 0x03) at pci12 dev 0 function 0 not configured

non-ramdisk kernel:
amdgpu0 at pci12 dev 0 function 0 vendor "ATI", unknown product 0x687f rev 0xc3

ok deraadt@ on an earlier version

21 months agooops, a silly typo
deraadt [Tue, 24 Jan 2023 00:16:08 +0000 (00:16 +0000)]
oops, a silly typo

21 months agouvm_map_extract() UVM_EXTRACT_FIXPROT alias mappings are only used for
deraadt [Tue, 24 Jan 2023 00:14:30 +0000 (00:14 +0000)]
uvm_map_extract() UVM_EXTRACT_FIXPROT alias mappings are only used for
read/write operations, so mask out PROT_EXEC to avoid creating an pointless
exec mapping in the kernel.
We probably need this masking upon minprot (for the non-UVM_EXTRACT_FIXPROT
case) also, but I haven't done a test yet.
ok kettenis

21 months agoptrace reads/writes memory using uvm_io, which generates an temporary
deraadt [Tue, 24 Jan 2023 00:12:03 +0000 (00:12 +0000)]
ptrace reads/writes memory using uvm_io, which generates an temporary
alias mapping using uvm_map_extract.  With xonly now operational, this
alias mapping is created with minprot, which for text will be xonly, and
the kernel cannot read it (unless the architecture has implied read for
exec from kernel pov).
Pass UVM_IO_FIXPROT to create the alias with maxprot instead.
ok kettenis

21 months agoMake sure pmap_extract() doesn't incorrectly return success when invoked
miod [Mon, 23 Jan 2023 19:31:41 +0000 (19:31 +0000)]
Make sure pmap_extract() doesn't incorrectly return success when invoked
on behalf of an invalid but not page-aligned address.

ok kettenis@

21 months agoRemove "sb == &so->so_rcv || sb == &so->so_snd" assertion from
mvs [Mon, 23 Jan 2023 18:35:13 +0000 (18:35 +0000)]
Remove "sb == &so->so_rcv || sb == &so->so_snd" assertion from
sb_notify() and sbspace(). Now it's overkilling.

ok bluhm@

21 months agoMove SS_ISSENDING flag to `sb_state'. It should belong to the send
mvs [Mon, 23 Jan 2023 18:34:24 +0000 (18:34 +0000)]
Move SS_ISSENDING flag to `sb_state'. It should belong to the send
buffer as the SS_CANTSENDMORE flag.

ok bluhm@

21 months agoIn somove() rename `state' variable to `rcvstate' to make code more
mvs [Mon, 23 Jan 2023 18:33:34 +0000 (18:33 +0000)]
In somove() rename `state' variable to `rcvstate' to make code more
readable. No functional changes.

Proposed by and ok bluhm@

21 months agoChange include from _internal_s2n_bignum.h to s2n_bignum_internal.h.
jsing [Mon, 23 Jan 2023 18:26:56 +0000 (18:26 +0000)]
Change include from _internal_s2n_bignum.h to s2n_bignum_internal.h.

21 months agoInclude the ISC license from s2n-bignum's LICENSE file.
jsing [Mon, 23 Jan 2023 18:25:36 +0000 (18:25 +0000)]
Include the ISC license from s2n-bignum's LICENSE file.

21 months agoBring in various s2n-bignum functions for amd64.
jsing [Mon, 23 Jan 2023 18:22:15 +0000 (18:22 +0000)]
Bring in various s2n-bignum functions for amd64.

This brings in bignum_add(), bignum_cmadd(), bignum_cmul(), bignum_mul()
and bignum_sub(), along with bignum_{mul,sqr}_4_8_alt() and
bignum_{mul,sqr}_8_16_alt().

Discussed with tb@

21 months agomore comments, space and -- nits
kn [Mon, 23 Jan 2023 14:49:16 +0000 (14:49 +0000)]
more comments, space and -- nits

21 months agoMove bn_mul_add_words() and bn_mul_words() from bn_asm.c to bn_mul.c.
jsing [Mon, 23 Jan 2023 12:17:57 +0000 (12:17 +0000)]
Move bn_mul_add_words() and bn_mul_words() from bn_asm.c to bn_mul.c.

These are wrapped with #ifndef HAVE_BN_ADD_MUL_WORDS/HAVE_BN_MUL_WORDS,
which are defined for architectures that provide their own assembly
versions.

21 months agoMove bn_sqr_words from bn_asm.c to bn_sqr.c.
jsing [Mon, 23 Jan 2023 12:09:06 +0000 (12:09 +0000)]
Move bn_sqr_words from bn_asm.c to bn_sqr.c.

This is wrapped with #ifndef HAVE_BN_SQR_WORDS, which is then defined for
architectures that provide their own assembly versions.

21 months agoMove bn_div_words from bn_asm.c to bn_div.c.
jsing [Mon, 23 Jan 2023 12:02:48 +0000 (12:02 +0000)]
Move bn_div_words from bn_asm.c to bn_div.c.

This is wrapped with #ifndef HAVE_BN_DIV_WORDS, which are defined for
architectures that provide their own assembly versions.

21 months agoInclude bn_arch.h now that we're using defines from it.
jsing [Mon, 23 Jan 2023 10:34:21 +0000 (10:34 +0000)]
Include bn_arch.h now that we're using defines from it.

21 months agoMove bn_add_words() and bn_sub_words from bn_asm.c to bn_add.c.
jsing [Mon, 23 Jan 2023 10:31:03 +0000 (10:31 +0000)]
Move bn_add_words() and bn_sub_words from bn_asm.c to bn_add.c.

These are wrapped with #ifndef HAVE_BN_ADD_WORDS/HAVE_BN_SUB_WORDS, which
are defined for architectures that provide their own assembly versions.

21 months agoregen
jsg [Mon, 23 Jan 2023 10:14:15 +0000 (10:14 +0000)]
regen

21 months agoadd amdgpu device ids newly matched with 6.1 drm
jsg [Mon, 23 Jan 2023 10:13:46 +0000 (10:13 +0000)]
add amdgpu device ids newly matched with 6.1 drm
another Cyan Skillfish and Aldebaran/MI200

21 months agoRegen.
nicm [Mon, 23 Jan 2023 09:38:03 +0000 (09:38 +0000)]
Regen.

21 months agoAdd Backtab key, based on a change from Crystal Kolipe kolipe.c at
nicm [Mon, 23 Jan 2023 09:36:39 +0000 (09:36 +0000)]
Add Backtab key, based on a change from Crystal Kolipe kolipe.c at
exoticsilicon dot com.

ok miod

21 months agoToo many \s in example, GitHub issue 3445.
nicm [Mon, 23 Jan 2023 09:33:51 +0000 (09:33 +0000)]
Too many \s in example, GitHub issue 3445.

21 months agoregen
jsg [Mon, 23 Jan 2023 05:19:44 +0000 (05:19 +0000)]
regen

21 months agochange ATI "Yellow Carp" string to "Rembrandt"
jsg [Mon, 23 Jan 2023 05:19:10 +0000 (05:19 +0000)]
change ATI "Yellow Carp" string to "Rembrandt"

Yellow Carp is the codename used by drm and linux amdgpu firmware.
In product specifications AMD uses Rembrandt.

Mesa renamed last year in
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16604

Ryzen 6000 Series / Rembrandt graphics are marketed as Radeon 660M and
Radeon 680M.  These share the same device id of 0x1681.

Ryzen 7035 Series / Rembrandt-R also use Radeon 660M and Radeon 680M.
It is unclear if they use a device id of 0x1681 or 0x164d.

21 months agoadd a placeholder for GC 11.0.4 device ids
jsg [Mon, 23 Jan 2023 03:01:52 +0000 (03:01 +0000)]
add a placeholder for GC 11.0.4 device ids

GC 11.0.4 support will be backported to linux 6.1.y at the request of
Mario Limonciello of AMD on the linux stable list.

Known to be an APU from amdgpu_discovery_set_ip_blocks().
Firmware not currently in linux-firmware git.

21 months agoFix pf_anchor_stackframe commit to revert pf rule matching to the
yasuoka [Sun, 22 Jan 2023 23:05:51 +0000 (23:05 +0000)]
Fix pf_anchor_stackframe commit to revert pf rule matching to the
previous behavior that stops when any rule matches within quick
anchors.

ok sasha kn

21 months agoFix list of possible values of MODRUBY_REV
tb [Sun, 22 Jan 2023 22:38:23 +0000 (22:38 +0000)]
Fix list of possible values of MODRUBY_REV

With Ruby 2.7 in the attic, MODRUBY_REV can no longer be set to 2.7.
It has been possible to set it to 3.2 for a while.

21 months agovmd(8): don't remove known vm's from the config on error.
dv [Sun, 22 Jan 2023 22:18:40 +0000 (22:18 +0000)]
vmd(8): don't remove known vm's from the config on error.

Multiple error paths, specifically the one related to if a guest
cannot allocate memory at start, resulted in a known vm (via
vm.conf(5)) being removed from the vm list. Adjust the error paths
to check if the failing vm is defined in the config before tearing
it down.

Tested with help from beck@ and Mischa Peters.

ok beck@

21 months agoUpdate documentation for removal of ruby27 FLAVOR
jeremy [Sun, 22 Jan 2023 20:57:21 +0000 (20:57 +0000)]
Update documentation for removal of ruby27 FLAVOR

21 months agoFix incorrect comparison. Restores ability to edit 'p'.
krw [Sun, 22 Jan 2023 19:57:25 +0000 (19:57 +0000)]
Fix incorrect comparison. Restores ability to edit 'p'.

21 months agogptimer(4): remove dead MD microtime(9) implementation
cheloha [Sun, 22 Jan 2023 18:36:38 +0000 (18:36 +0000)]
gptimer(4): remove dead MD microtime(9) implementation

21 months agoCope with xonly on amd64 by moving the testfly routine to the rodata
anton [Sun, 22 Jan 2023 16:38:36 +0000 (16:38 +0000)]
Cope with xonly on amd64 by moving the testfly routine to the rodata
section.

21 months agoSimplify the (so far unused) apm_record_event() function a bit and use it
kettenis [Sun, 22 Jan 2023 13:14:21 +0000 (13:14 +0000)]
Simplify the (so far unused) apm_record_event() function a bit and use it
to send a resume event to userland when we come out of suspend.

ok deraadt@

21 months agoMove SS_CANTRCVMORE and SS_RCVATMARK bits from `so_state' to `sb_state' of
mvs [Sun, 22 Jan 2023 12:05:44 +0000 (12:05 +0000)]
Move SS_CANTRCVMORE and SS_RCVATMARK bits from `so_state' to `sb_state' of
receive buffer. As it was done for SS_CANTSENDMORE bit, the definition
kept as is, but now these bits belongs to the `sb_state' of receive
buffer. `sb_state' ored with `so_state' when socket data exporting to the
userland.

ok bluhm@

21 months agoRemove dead/unused prototypes
miod [Sat, 21 Jan 2023 19:39:28 +0000 (19:39 +0000)]
Remove dead/unused prototypes

21 months agoIntroduce `rt_lock' rwlock(9) and use it instead of kernel lock to
mvs [Sat, 21 Jan 2023 17:35:01 +0000 (17:35 +0000)]
Introduce `rt_lock' rwlock(9) and use it instead of kernel lock to
serialize arpcache() and arpresolve(). In fact, net stack already has
sleep points, so the rwlock(9) is better here because we avoid
intersection with the rest of kernel locked paths. Also this new lock
assumed to use to route layer protection instead of netlock.

Hrvoje Popovski had tested this diff and found no visible performance
impact.

ok bluhm@

21 months agoEnable bn_sqr() on amd64.
jsing [Sat, 21 Jan 2023 17:30:50 +0000 (17:30 +0000)]
Enable bn_sqr() on amd64.

ok tb@

21 months agoProvide an implementation of bn_sqr() that calls s2n-bignum's bignum_sqr().
jsing [Sat, 21 Jan 2023 17:29:56 +0000 (17:29 +0000)]
Provide an implementation of bn_sqr() that calls s2n-bignum's bignum_sqr().

ok tb@

21 months agoFix include.
jsing [Sat, 21 Jan 2023 16:35:18 +0000 (16:35 +0000)]
Fix include.

21 months agoInclude the ISC license from s2n-bignum's LICENSE file.
jsing [Sat, 21 Jan 2023 16:30:57 +0000 (16:30 +0000)]
Include the ISC license from s2n-bignum's LICENSE file.

21 months agoBring in s2n-bignum's bignum_sqr() for amd64.
jsing [Sat, 21 Jan 2023 16:29:52 +0000 (16:29 +0000)]
Bring in s2n-bignum's bignum_sqr() for amd64.

ok tb@

21 months agoeditor_resize(), editor_change(), editor_modify() and
krw [Sat, 21 Jan 2023 16:20:25 +0000 (16:20 +0000)]
editor_resize(), editor_change(), editor_modify() and
editor_name() use identical logic to choose a partition to act
on, with some minor verbiage differences.

Extract getpartno() to contain/tighten this logic and shrink the
editor_* functions by using it.

No intentional functional change but for verbiage tweaks.

21 months agoInclude the ISC license from s2n-bignum's LICENSE file.
jsing [Sat, 21 Jan 2023 15:53:54 +0000 (15:53 +0000)]
Include the ISC license from s2n-bignum's LICENSE file.

21 months agoBring in the internal and "public" headers for s2n-bignum.
jsing [Sat, 21 Jan 2023 15:51:17 +0000 (15:51 +0000)]
Bring in the internal and "public" headers for s2n-bignum.

s2n-bignum provides a collection of bignum routines that are written in
pure machine code. Each function is written in constant-time style and
has a formal proof. We intend on making use of these for libcrypto's
bignum implementation on aarch64 and amd64.

ok tb@

21 months agoRefactor BN_mul().
jsing [Sat, 21 Jan 2023 15:40:13 +0000 (15:40 +0000)]
Refactor BN_mul().

This splits BN_mul() into two parts, one of which is a separate bn_mul()
function. This makes the code more readable and managable, while also
providing a better entry point for assembly optimisation. A separate
bn_mul() is provided for the BN_RECURSION implementation, to reduce
complexity.

This also enables bn_mul_comba4() for four word long bignums - this was
disabled for unknown reasons.

ok tb@

21 months agoenable --exec-only as default on AMD64. There will be a some ports fallout
deraadt [Sat, 21 Jan 2023 15:38:05 +0000 (15:38 +0000)]
enable --exec-only as default on AMD64.  There will be a some ports fallout
for a little while more (a few more data tables inside text), but they are
being handled quickly
ok tb naddy

21 months agoRefactor BN_sqr().
jsing [Sat, 21 Jan 2023 14:10:46 +0000 (14:10 +0000)]
Refactor BN_sqr().

This splits BN_sqr() into two parts, one of which is a separate bn_sqr()
function. This makes the code more readable and managable, while also
providing a better entry point for assembly optimisation.

ok tb@

21 months agoProvide basic benchmarks for BN_mul() and BN_sqr().
jsing [Sat, 21 Jan 2023 13:24:39 +0000 (13:24 +0000)]
Provide basic benchmarks for BN_mul() and BN_sqr().

21 months agoIntroduce per-sockbuf `sb_state' to use it with SS_CANTSENDMORE.
mvs [Sat, 21 Jan 2023 11:23:23 +0000 (11:23 +0000)]
Introduce per-sockbuf `sb_state' to use it with SS_CANTSENDMORE.

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.

Opposing the previous reverted diff, the SS_CANTSENDMORE definition left
as is, but it used only with `sb_state'. `sb_state' ored with original
`so_state' when socket's data exported to the userland, so the ABI kept as
it was.

Inputs from deraadt@.

ok bluhm@

21 months agoThe Qualcomm UEFI Secure Application that handles EFI variables seems to
kettenis [Sat, 21 Jan 2023 10:34:49 +0000 (10:34 +0000)]
The Qualcomm UEFI Secure Application that handles EFI variables seems to
insist on shared memory in the low 4G of the physical address space.
Use bus_dmamem_alloc_range(9) to make sure this is the case.

Makes setting and getting the RTC time reliable.

ok patrick@, deraadt@, phessler@

21 months agoMake bus_dmamem_alloc_range(9) API available.
kettenis [Sat, 21 Jan 2023 10:30:11 +0000 (10:30 +0000)]
Make bus_dmamem_alloc_range(9) API available.

ok patrick@, deraadt@, phessler@

21 months agoReorder functions and drop unnessary static prototypes.
jsing [Sat, 21 Jan 2023 09:21:11 +0000 (09:21 +0000)]
Reorder functions and drop unnessary static prototypes.

No functional change.

21 months agosync EXTRACT_CASES and PATCH_CASES with reality
kn [Sat, 21 Jan 2023 09:01:55 +0000 (09:01 +0000)]
sync EXTRACT_CASES and PATCH_CASES with reality

xz handles .lz now, we deal with zstd patches by default, bzip2 and gzip
have command variables.

21 months agoRefactor x509v3_cache_extensions
job [Fri, 20 Jan 2023 22:00:47 +0000 (22:00 +0000)]
Refactor x509v3_cache_extensions

Simplify x509v3_cache_extensions() by using a wrapper to avoid
duplication of code for locking and checking the EXFLAG_INVALID flag.

OK tb@

21 months agoAdd a flag to display-menu to select the manu item chosen first, GitHub
nicm [Fri, 20 Jan 2023 21:36:00 +0000 (21:36 +0000)]
Add a flag to display-menu to select the manu item chosen first, GitHub
issue 3442.

21 months agoeditor_name() and get_mp() don't change the disklabel so
krw [Fri, 20 Jan 2023 17:47:07 +0000 (17:47 +0000)]
editor_name() and get_mp() don't change the disklabel so
const'ify some parameters and local variables.

21 months agoRemove various #ifndef BN_SQR_COMBA.
jsing [Fri, 20 Jan 2023 17:34:52 +0000 (17:34 +0000)]
Remove various #ifndef BN_SQR_COMBA.

bn_sqr_comba{4,8}() is now always available.

ok tb@

21 months agoMove bn_{mul,sqr}_comba{4,8}() from bn_asm.c to bn_mul.c/bn_sqr.c.
jsing [Fri, 20 Jan 2023 17:31:52 +0000 (17:31 +0000)]
Move bn_{mul,sqr}_comba{4,8}() from bn_asm.c to bn_mul.c/bn_sqr.c.

Wrap these in HAVE_BN_{MUL,SQR}_COMBA{4,8} defines. Add these defines to
bn_arch.h where the architecture currently provides its own version.

ok tb@

21 months agoMove {mul,sqr}_add_c{,2} macros from bn_asm.c to bn_local.h.
jsing [Fri, 20 Jan 2023 17:26:03 +0000 (17:26 +0000)]
Move {mul,sqr}_add_c{,2} macros from bn_asm.c to bn_local.h.

These depend on other macros that are in already in bn_local.h and this
makes them available to other source files. A lot more clean up will be
needed in the future.

Of course x86_64-gcc.c makes use of the same macro names - sprinkle some
undef in there for the time being.

ok tb@

21 months agoThe locale is ignored on OpenBSD, match the wording used in isalpha.3.
millert [Fri, 20 Jan 2023 17:21:12 +0000 (17:21 +0000)]
The locale is ignored on OpenBSD, match the wording used in isalpha.3.
OK schwarze@

21 months agohppa: simplify itmr_rearm()
cheloha [Fri, 20 Jan 2023 17:18:08 +0000 (17:18 +0000)]
hppa: simplify itmr_rearm()

The nest of branches in itmr_rearm() can be simplified to:

if (cycles <= t1 - t0) {
/* we probably missed */
}

We're doing modular unsigned 32-bit, so the rollover case in the
current code is superfluous.

Tested by miod@.

"Works for me." miod@

21 months agoSync usage with SYNOPSIS, mention that -x may use stdout
kn [Fri, 20 Jan 2023 17:15:22 +0000 (17:15 +0000)]
Sync usage with SYNOPSIS, mention that -x may use stdout

Feedback from jmc and Crystal Kolipe
OK jmc

21 months agoamd64 now has xonly support via the PKU feature. Marking ld.so exec-only
deraadt [Fri, 20 Jan 2023 16:03:14 +0000 (16:03 +0000)]
amd64 now has xonly support via the PKU feature.  Marking ld.so exec-only
is no longer a NOP on those systems, let's do it.

21 months agoOn cpu with the PKU feature, prot=PROT_EXEC pages now create pte which
deraadt [Fri, 20 Jan 2023 16:01:04 +0000 (16:01 +0000)]
On cpu with the PKU feature, prot=PROT_EXEC pages now create pte which
contain PG_XO, which is PKU key1.  On every exit from kernel to userland,
force the PKU register to inhibit data read against key1 memory.  On
(some) traps into the kernel if the PKU register is changed, abort the
process (processes have no reason to change the PKU register).  This
provides us with viable xonly functionality on most modern intel & AMD
cpus.  I started with a xsave-based diff from dv@, but discovered the
fpu save/restore logic wasn't a good fit and went to direct register management.
Disabled on HV (vm) systems until we know they handle PKU correctly.
ok kettenis, dv, guenther, etc

21 months agoUpdate config regress test now that aspa-set syntax changed.
claudio [Fri, 20 Jan 2023 15:43:25 +0000 (15:43 +0000)]
Update config regress test now that aspa-set syntax changed.
OK tb@

21 months agoRemove 'allow' from aspa-set provider-set lists. That keyword is no longer
claudio [Fri, 20 Jan 2023 15:42:34 +0000 (15:42 +0000)]
Remove 'allow' from aspa-set provider-set lists. That keyword is no longer
needed.
OK tb@

21 months agoDocument the aspa-set table. While there remove the superfluous 'allow'
claudio [Fri, 20 Jan 2023 15:41:33 +0000 (15:41 +0000)]
Document the aspa-set table. While there remove the superfluous 'allow'
keyword.
OK tb@

21 months agoWhen ppb(4) detaches, make its bus range available again even if it was
kettenis [Fri, 20 Jan 2023 15:11:44 +0000 (15:11 +0000)]
When ppb(4) detaches, make its bus range available again even if it was
configured by the firmware and pre-allocated by our parent pci(4) bus.

Fixes unplugging and replugging thunderbolt devices that were plugged in
when the machine was booted.

ok mlarkin@, deraadt@, miod@

21 months agochar * -> const char * parameters where clang doesn't complain.
krw [Fri, 20 Jan 2023 14:35:43 +0000 (14:35 +0000)]
char * -> const char * parameters where clang doesn't complain.

21 months agoRemove unused code.
jsing [Fri, 20 Jan 2023 12:16:46 +0000 (12:16 +0000)]
Remove unused code.

ok tb@

21 months agocomma space not space comma
claudio [Fri, 20 Jan 2023 10:30:41 +0000 (10:30 +0000)]
comma space not space comma

21 months agoBad indent
claudio [Fri, 20 Jan 2023 10:28:22 +0000 (10:28 +0000)]
Bad indent

21 months agoReplace BN_DIV3W with HAVE_BN_DIV_3_WORDS (in bn_arch.h).
jsing [Fri, 20 Jan 2023 10:07:52 +0000 (10:07 +0000)]
Replace BN_DIV3W with HAVE_BN_DIV_3_WORDS (in bn_arch.h).

ok tb@

21 months agoProvide a per machine bn_arch.h.
jsing [Fri, 20 Jan 2023 10:04:33 +0000 (10:04 +0000)]
Provide a per machine bn_arch.h.

This will provide a location for machine specific defines, prototypes and
inline functions.

ok tb@

21 months agoReorder functions.
jsing [Fri, 20 Jan 2023 10:00:51 +0000 (10:00 +0000)]
Reorder functions.

No functional change.

21 months agoremove extra tab
claudio [Fri, 20 Jan 2023 09:54:43 +0000 (09:54 +0000)]
remove extra tab

21 months agoReorder functions for easier maintenance.
jsing [Fri, 20 Jan 2023 04:49:48 +0000 (04:49 +0000)]
Reorder functions for easier maintenance.

No functional change.

21 months agoRevert previous commit (but leave the man page around); llvm-strip behaves
kettenis [Thu, 19 Jan 2023 22:54:45 +0000 (22:54 +0000)]
Revert previous commit (but leave the man page around); llvm-strip behaves
differently on files that are hardlinked and this is tripping up ports.

requested by naddy@

21 months agoRevise implementation of pmap_protect(9) in preparation for execute-only
kettenis [Thu, 19 Jan 2023 20:17:11 +0000 (20:17 +0000)]
Revise implementation of pmap_protect(9) in preparation for execute-only
support.  The current implementation doesn't handle the transition from
RWX to RW correctly.  Also generalize the pmap_write_protect() function
in recognition of the fact that execute permission, write permission,
and in the future read permission on executable pages, are handled by
separate bits.

ok deraadt@, mpi@

21 months agoRestrict vmm(4) exposed cpuid extended feature flags.
dv [Thu, 19 Jan 2023 15:52:51 +0000 (15:52 +0000)]
Restrict vmm(4) exposed cpuid extended feature flags.

We don't emulate or support most of the EAX=7,ECX=0 feature bits,
so restrict the mask further to just UMIP.

ok deraadt@

21 months agoDo not use unsupported __attribute__((warn_unused_result)) on gcc3.
aoyama [Thu, 19 Jan 2023 10:59:24 +0000 (10:59 +0000)]
Do not use unsupported __attribute__((warn_unused_result)) on gcc3.

This prevents building libfido2 stops with error on luna88k because it
is compiled with -Werror option.

ok, and better #if condition by miod@

21 months agoCheck if we can copy sshd or need to use sudo to do so during reexec
dtucker [Thu, 19 Jan 2023 07:53:45 +0000 (07:53 +0000)]
Check if we can copy sshd or need to use sudo to do so during reexec
test. Skip test if neither can work.  Patch from anton@, tweaks from me.

21 months agoRemove more unused assembly generation scripts.
jsing [Thu, 19 Jan 2023 04:51:31 +0000 (04:51 +0000)]
Remove more unused assembly generation scripts.

21 months agoRemove various unused assembly files and assembly generation scripts.
jsing [Thu, 19 Jan 2023 04:43:24 +0000 (04:43 +0000)]
Remove various unused assembly files and assembly generation scripts.

These are just creating clutter and cause grep noise.

ok miod@

21 months agodrm/i915: Fix CFI violations in gt_sysfs
jsg [Thu, 19 Jan 2023 00:36:23 +0000 (00:36 +0000)]
drm/i915: Fix CFI violations in gt_sysfs

From Nathan Chancellor
3925336af00f79fb7f3a390b6ab30d455d32d863 in linux-6.1.y/6.1.7
a8a4f0467d706fc22d286dfa973946e5944b793c in mainline linux

21 months agodrm/amdgpu: Fix potential NULL dereference
jsg [Thu, 19 Jan 2023 00:32:55 +0000 (00:32 +0000)]
drm/amdgpu: Fix potential NULL dereference

From Luben Tuikov
f2faf0699af78968a27ca154bf76e94247f8c471 in linux-6.1.y/6.1.7
0be7ed8e7eb15282b5d0f6fdfea884db594ea9bf in mainline linux

21 months agodrm/amdgpu: enable VCN DPG for GC IP v11.0.4
jsg [Thu, 19 Jan 2023 00:31:30 +0000 (00:31 +0000)]
drm/amdgpu: enable VCN DPG for GC IP v11.0.4

From Saleemkhan Jamadar
309278736f35f0937d6338d5986a6a4a48e90d2f in linux-6.1.y/6.1.7
e1d900df63adcb748905131dd6258e570e11aed1 in mainline linux

21 months agodrm/amdgpu: Enable pg/cg flags on GC11_0_4 for VCN
jsg [Thu, 19 Jan 2023 00:29:55 +0000 (00:29 +0000)]
drm/amdgpu: Enable pg/cg flags on GC11_0_4 for VCN

From Saleemkhan Jamadar
e30be0ada6e2a55e8581aa55860afc6cf5183300 in linux-6.1.y/6.1.7
2a0fe2ca6e9c9bf9c47a9f9f0d67c13281a13f8c in mainline linux

21 months agodrm/amdgpu: add soc21 common ip block support for GC 11.0.4
jsg [Thu, 19 Jan 2023 00:28:00 +0000 (00:28 +0000)]
drm/amdgpu: add soc21 common ip block support for GC 11.0.4

From Yifan Zhang
6ef4543f1f3b21b108021f3dec9bd02bf9f200ee in linux-6.1.y/6.1.7
311d52367d0a7985ee1132662bad46f09169eed2 in mainline linux

21 months agodrm/amd/pm: enable GPO dynamic control support for SMU13.0.7
jsg [Thu, 19 Jan 2023 00:26:25 +0000 (00:26 +0000)]
drm/amd/pm: enable GPO dynamic control support for SMU13.0.7

From Evan Quan
d90de26bdc97a51a195116428fbb4776394f79a7 in linux-6.1.y/6.1.7
62b9f835a6c60171845642afec4ce4b44865f10f in mainline linux

21 months agodrm/amd/pm: enable GPO dynamic control support for SMU13.0.0
jsg [Thu, 19 Jan 2023 00:24:35 +0000 (00:24 +0000)]
drm/amd/pm: enable GPO dynamic control support for SMU13.0.0

From Evan Quan
d167ce6c47db12de69d2c2e7bdde9e608183d2a1 in linux-6.1.y/6.1.7
1794f6a9535bb5234c2b747d1bc6dad03249245a in mainline linux

21 months agodrm/amd/pm: Enable bad memory page/channel recording support for smu v13_0_0
jsg [Thu, 19 Jan 2023 00:22:50 +0000 (00:22 +0000)]
drm/amd/pm: Enable bad memory page/channel recording support for smu v13_0_0

From Candice Li
5e594dbf6e76cf0b75ab4cff2e5d42a3f63963a5 in linux-6.1.y/6.1.7
48aa62f07467c8fcd4b4ec7851e13c83e89a1558 in mainline linux

21 months agodrm/amd/pm: enable mode1 reset on smu_v13_0_10
jsg [Thu, 19 Jan 2023 00:20:35 +0000 (00:20 +0000)]
drm/amd/pm: enable mode1 reset on smu_v13_0_10

From Kenneth Feng
e59d46eed1d930318f36a90138898f7fa7730389 in linux-6.1.y/6.1.7
60cfad329ab877cb62975ea78ed442c2496990ba in mainline linux

21 months agoThe binutils strip damages GNU_RELRO on binaries linked by ld.lld on at
kettenis [Thu, 19 Jan 2023 00:18:19 +0000 (00:18 +0000)]
The binutils strip damages GNU_RELRO on binaries linked by ld.lld on at
least amd64.  Fix this by switching to the llvm strip on architectures
that use ld.lld.

ok deraadt@