]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
4 months agoNew login_getcapenum(): Allows to read named enum values
Olivier Certner [Tue, 20 Jun 2023 16:41:32 +0000 (18:41 +0200)]
New login_getcapenum(): Allows to read named enum values

Reviewed by:            emaste
Approved by:            emaste (mentor)
MFC after:              3 days
Sponsored by:           Kumacom SAS
Differential Revision:  https://reviews.freebsd.org/D40684

4 months agologin.conf(5): umask has no default value
Olivier Certner [Thu, 25 May 2023 12:41:03 +0000 (14:41 +0200)]
login.conf(5): umask has no default value

The umask is simply left unchanged if no explicit value is specified in
the login class capabilities database.

PR:                     271747
Reviewed by:            emaste
Approved by:            emaste (mentor)
MFC after:              3 days
Sponsored by:           Kumacom SAS
Differential Revision:  https://reviews.freebsd.org/D40345

4 months agosetusercontext(): umask: Set it only once (in the common case)
Olivier Certner [Thu, 25 May 2023 12:18:45 +0000 (14:18 +0200)]
setusercontext(): umask: Set it only once (in the common case)

Simplify the code and make it more coherent (umask was the only context
setting not modified by setlogincontext() directly).

Preserve the current behavior of not changing the umask if none is
specified in the login class capabilities database, but without the
superfluous umask() dance.  (The only exception to this is that
a special value no user is likely to input in the database now stands
for no specification.)

If some user has a 'umask' override in its '~/.login_conf', the umask
will still be set twice as before (as is the case for all other context
settings overriden in '~/.login_conf').

Log a warning in case of an invalid umask specification.

This change makes it apparent that the value of LOGIN_DEFUMASK doesn't
matter.  It will be removed in a subsequent commit.

PR:                     271747
Reviewed by:            emaste, kib (earlier version)
Approved by:            emaste
MFC after:              3 days
Sponsored by:           Kumacom SAS
Differential Revision:  https://reviews.freebsd.org/D40344

4 months agoopen(2): describe *at behavior for dirfd opened without O_SEARCH
Konstantin Belousov [Mon, 29 Jan 2024 17:54:32 +0000 (19:54 +0200)]
open(2): describe *at behavior for dirfd opened without O_SEARCH

and move the BUGS paragraph about dirfd permissions into STANDARDS
section, noting that we provide POSIX-mandated implementation.

Reviewed by: emaste, kevans
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
Differential revision: https://reviews.freebsd.org/D43652

4 months agobhyve: Use NVMEF macro to construct fields
John Baldwin [Mon, 29 Jan 2024 19:02:07 +0000 (11:02 -0800)]
bhyve: Use NVMEF macro to construct fields

Reviewed by: corvink, chuck (older version)
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D43607

4 months agonvmecontrol: Use NVMEF macro to construct fields
John Baldwin [Mon, 29 Jan 2024 19:01:46 +0000 (11:01 -0800)]
nvmecontrol: Use NVMEF macro to construct fields

Reviewed by: imp
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D43606

4 months agonvme: Use the NVMEF macro to construct fields
John Baldwin [Mon, 29 Jan 2024 19:01:13 +0000 (11:01 -0800)]
nvme: Use the NVMEF macro to construct fields

Reviewed by: chuck, imp
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D43605

4 months agonvme: Add NVMEF helper macro as the inverse of NVMEV
John Baldwin [Mon, 29 Jan 2024 19:00:57 +0000 (11:00 -0800)]
nvme: Add NVMEF helper macro as the inverse of NVMEV

This macro accepts a field name and a value for the field and
constructs the shifted field value.

Reviewed by: chuck
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D43604

4 months agobhyve: Use the NVMEM macro instead of expanded versions
John Baldwin [Mon, 29 Jan 2024 19:00:09 +0000 (11:00 -0800)]
bhyve: Use the NVMEM macro instead of expanded versions

Reviewed by: corvink, chuck
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D43603

4 months agonvme: Use the NVMEM macro instead of expanded versions
John Baldwin [Mon, 29 Jan 2024 18:59:37 +0000 (10:59 -0800)]
nvme: Use the NVMEM macro instead of expanded versions

A few of these omitted a shift of 0, but this is more consistent.

Reviewed by: chuck
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D43602

4 months agonvme: Rename NVMEB helper macro to NVMEM
John Baldwin [Mon, 29 Jan 2024 18:58:28 +0000 (10:58 -0800)]
nvme: Rename NVMEB helper macro to NVMEM

The current macro always builds a full mask for a named field, so use
the M suffix for mask.

Reviewed by: chuck, imp
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D43601

4 months agobhyve: Use NVMEV to read the ASQS field of AQA
John Baldwin [Mon, 29 Jan 2024 18:51:07 +0000 (10:51 -0800)]
bhyve: Use NVMEV to read the ASQS field of AQA

This is not a functional change, but just being consistent instead of
omitting a shift by 0.

Reviewed by: corvink, chuck, imp
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D43600

4 months agocamdd: Use the NVMEV macro instead of expanded versions
John Baldwin [Mon, 29 Jan 2024 18:50:41 +0000 (10:50 -0800)]
camdd: Use the NVMEV macro instead of expanded versions

Reviewed by: imp
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D43599

4 months agobhyve: Use the NVMEV macro instead of expanded versions
John Baldwin [Mon, 29 Jan 2024 18:49:49 +0000 (10:49 -0800)]
bhyve: Use the NVMEV macro instead of expanded versions

Reviewed by: corvink, chuck (older version)
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D43598

4 months agonvmecontrol: Use the NVMEV macro instead of expanded versions
John Baldwin [Mon, 29 Jan 2024 18:34:02 +0000 (10:34 -0800)]
nvmecontrol: Use the NVMEV macro instead of expanded versions

Reviewed by: imp
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D43597

4 months agonda: Use the NVMEV macro instead of expanded versions
John Baldwin [Mon, 29 Jan 2024 18:33:39 +0000 (10:33 -0800)]
nda: Use the NVMEV macro instead of expanded versions

Reviewed by: chuck
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D43596

4 months agonvme: Use the NVMEV macro instead of expanded versions
John Baldwin [Mon, 29 Jan 2024 18:30:54 +0000 (10:30 -0800)]
nvme: Use the NVMEV macro instead of expanded versions

Reviewed by: chuck
Sponsored by: Chelsio Communications
Differential Revision: https://reviews.freebsd.org/D43595

4 months agopkgbase: Create a FreeBSD-dtb package
Emmanuel Vadot [Sat, 27 Jan 2024 12:20:49 +0000 (13:20 +0100)]
pkgbase: Create a FreeBSD-dtb package

Before that dtbs where included in each kernel packages which prevents
us to install multiple kernels.

Differential Revision: https://reviews.freebsd.org/D43632
Reviewed by: bapt
Sponsored by: Beckhoff Automation GmbH & Co. KG

4 months agopkgbase: Create two new rules for creating repo
Emmanuel Vadot [Fri, 26 Jan 2024 18:52:03 +0000 (19:52 +0100)]
pkgbase: Create two new rules for creating repo

This adds two new rules named create-packages-kernel-repo and
create-packages-world-repo.
The goal of those rules is to create the {kernel,world} packages and
after that the repository.
It helps a lot for developing with pkgbase by adding the dev machine
repository created by those rules on top of the official pkgbase one.

Differential Revision: https://reviews.freebsd.org/D43623
Reviewed by: bapt, emaste
Sponsored by: Beckhoff Automation GmbH & Co. KG

4 months agoTCP LRO: convert TCP header fields to host byte order earlier
Michael Tuexen [Mon, 29 Jan 2024 17:41:24 +0000 (18:41 +0100)]
TCP LRO: convert TCP header fields to host byte order earlier

This is a preparation for adding dtrace hooks in a follow-up commit,
which are missing in the code path, where packets are directly queued
to the tcpcb. The dtrace hooks expect the fields to be in host byte
order. This only applies when TCP HPTS is used.
No functional change intended.

Reviewed by: rscheff
MFC after: 1 week
Sponsored by: Netflix, Inc.
Differential Revision: https://reviews.freebsd.org/D43594

4 months agoservice(8): direct user to rc(8) for a list of valid commands
Lexi Winter [Sat, 13 Jan 2024 23:34:46 +0000 (23:34 +0000)]
service(8): direct user to rc(8) for a list of valid commands

New users may refer to service(8) to discover how to manage services,
but this manpage does not explain which commands are permitted besides
start/stop (for example, 'enable').  Add a paragraph that directs the
reader to rc(8) to discover this.

While here, add a few examples of common use-cases.

Reported by: Mina Galić <freebsd@igalic.co>
Pull request: https://github.com/freebsd/freebsd-src/pull/1057

4 months agoMerge commit 4a39d0890894 from llvm-project (by Mark Johnston):
Dimitry Andric [Mon, 29 Jan 2024 17:26:48 +0000 (18:26 +0100)]
Merge commit 4a39d0890894 from llvm-project (by Mark Johnston):

  [libc++] Fix filesystem::remove_all() on FreeBSD (#79540)

  remove_all_impl() opens the target path with O_NOFOLLOW, which fails if
  the target is a symbolic link. On FreeBSD, rather than returning ELOOP,
  openat() returns EMLINK. This is unlikely to change for compatibility
  reasons, see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=214633 .

  Thus, check for EMLINK as well.

Reported by: markj
PR: 276632
MFC after: 3 days

4 months agolibc: Annotate a couple of local functions as such
Mark Johnston [Mon, 29 Jan 2024 16:43:50 +0000 (11:43 -0500)]
libc: Annotate a couple of local functions as such

No functional change intended.

MFC after: 1 week

4 months agolinuxkpi: remove invalid KASSERT from hash_add_rcu
Ed Maste [Mon, 29 Jan 2024 14:25:40 +0000 (09:25 -0500)]
linuxkpi: remove invalid KASSERT from hash_add_rcu

hash_add_rcu asserted that the node's prev pointer was NULL in an
attempt to detect addition of a node already on a list, but the caller
is not required to provide a zeroed node.

Reported in https://github.com/freebsd/drm-kmod/issues/282

Reviewed by: bz, manu
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D43645

4 months agolibbe: handle destroying/renaming temporary/bootonce boot environments
R. Christian McDonald [Fri, 26 Jan 2024 16:39:38 +0000 (11:39 -0500)]
libbe: handle destroying/renaming temporary/bootonce boot environments

When a temporary/bootonce boot environment is renamed, we need to also
update the bootenv nvlist on-disk to reflect the new name. Additionally,
when a temporary/bootonce boot environment is destroyed, we also need to
clear out the on-disk state.

Reviewed by: kevans
Approved by: kp
MFC after: 1 week
Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D43591

4 months agopf: bind route-to states to their route-to interface
Kristof Provost [Thu, 25 Jan 2024 10:16:49 +0000 (11:16 +0100)]
pf: bind route-to states to their route-to interface

When we route-to the state should be bound to the route-to interface,
not the default route interface. However, we should only do so for
outbound traffic, because inbound traffic should bind on the arriving
interface, not the one we eventually transmit on.

Explicitly check for this in BOUND_IFACE().

We must also extend pf_find_state(), because subsequent packets within
the established state will attempt to match the original interface, not
the route-to interface.

Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D43589

4 months agopfil: PFIL_PASS never frees the mbuf
Kristof Provost [Fri, 26 Jan 2024 12:29:31 +0000 (13:29 +0100)]
pfil: PFIL_PASS never frees the mbuf

pfil hooks (i.e. firewalls) may pass, modify or free the mbuf passed
to them. (E.g. when rejecting a packet, or when gathering up packets
for reassembly).

If the hook returns PFIL_PASS the mbuf must still be present. Assert
this in pfil_mem_common() and ensure that ipfilter follows this
convention. pf and ipfw already did.
Similarly, if the hook returns PFIL_DROPPED or PFIL_CONSUMED the mbuf
must have been freed (or now be owned by the firewall for further
processing, like packet scheduling or reassembly).

This allows us to remove a few extraneous NULL checks.

Suggested by: tuexen
Reviewed by: tuexen, zlei
Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D43617

4 months agotcp: move cc_post_recovery past snd_una update
Richard Scheffenegger [Sat, 27 Jan 2024 23:16:59 +0000 (00:16 +0100)]
tcp: move cc_post_recovery past snd_una update

The RFC6675 pipe calculation (sack.revised, enabled
by default since D28702), uses outdated information,
while the previous default calculated it correctly
with up-to-date information from the incoming ACK.

This difference can become as large as the receive
window (not the congestion window previously),
potentially triggering a massive burst of new packets.

MFC after:             1 week
Reviewed By:           tuexen, #transport
Sponsored by:          NetApp, Inc.
Differential Revision: https://reviews.freebsd.org/D43520

4 months agoRevert "release.sh: Add -jN to `make release`"
Colin Percival [Mon, 29 Jan 2024 05:42:24 +0000 (21:42 -0800)]
Revert "release.sh: Add -jN to `make release`"

The release-building code is not fully parallel-safe yet.

This reverts commit 9c1bad2da5ae2a2a3d957c97dcf33c09b34e1c47.

Reported by: jrtc27

4 months agovtnet: Adjust for ethernet alignment.
Warner Losh [Mon, 29 Jan 2024 05:08:55 +0000 (22:08 -0700)]
vtnet: Adjust for ethernet alignment.

If the header that we add to the packet's size is 0 % 4 and we're
strictly aligning, then we need to adjust where we store the header so
the packet that follows will have it's struct ip header properly
aligned.  We do this on allocation (and when we check the length of the
mbufs in the lro_nomrg case). We can't just adjust the clustersz in the
softc, because it's also used to allocate the mbufs and it needs to be
the proper size for that. Since we otherwise use the size of the mbuf
(or sometimes the smaller size of the received packet) to compute how
much we can buffer, this ensures no overflows. The 2 byte adjustment
also does not affect how many packets we can receive in the lro_nomrg
case.

PR: 271288
Sponsored by: Netflix
Reviewed by: bryanv
Differential Revision: https://reviews.freebsd.org/D43224

4 months agokldxref: Be more conservative about what we reject.
Warner Losh [Mon, 29 Jan 2024 04:45:03 +0000 (21:45 -0700)]
kldxref: Be more conservative about what we reject.

kldxref anything whose name doesn't end in .ko or that has no dots (eg
the kernel).

Sponsored by: Netflix
Reviewed by: jrtc27, jhb
Differential Revision: https://reviews.freebsd.org/D43507

4 months agompi3mr: Fix confusion over | and &
Warner Losh [Mon, 11 Dec 2023 02:44:47 +0000 (19:44 -0700)]
mpi3mr: Fix confusion over | and &

Use sc->mpi3mr_debug & MPI3MR_IOT over the | version to test if a bit is
set.

CID: 1529718
Sponsored by: Netflix

4 months agorelease.sh: Add -jN to `make release`
Colin Percival [Mon, 29 Jan 2024 02:04:20 +0000 (18:04 -0800)]
release.sh: Add -jN to `make release`

The `make release` command now creates VM and cloudware images (if
enabled) in addition to disk images; this results in a very large
number of 'make installworld' commands running sequentially.  Adding
-jN should speed this up significantly.

MFC after: 1 month
X-MFC-to: stable/14

4 months agosnd_hdspe(4): Per device sysctl for period.
Florian Walpen [Sun, 28 Jan 2024 20:18:20 +0000 (20:18 +0000)]
snd_hdspe(4): Per device sysctl for period.

Let the user choose a period (interrupt cadence in samples), in the
official RME drivers this setting is available as "Buffer Size".
Override the period propagated through blocksize by pcm channel latency
settings (see sound(4)), since these are unreliable and differ between
playback and recording channels.

Differential Revision: https://reviews.freebsd.org/D43527

4 months agokboot: update copyright on these files.
Warner Losh [Sun, 28 Jan 2024 19:19:32 +0000 (12:19 -0700)]
kboot: update copyright on these files.

host_syscalls.c: I've written, so put Netflix copyright on. It's
possible in the confusion that Nathan wrote the host_gettimeofday
implementation.

syscall_nr: These files likely can't enjoy copyright protection since
they are just facts (the per-arch Linux system calls), so add a note
they are in the public domain.

Sponsored by: Netflix

4 months agokboot: Assert copyright here
Warner Losh [Sun, 28 Jan 2024 19:17:44 +0000 (12:17 -0700)]
kboot: Assert copyright here

According to git blame I've 95%+ rewritten this file. Update copyright to
reflect that, but give nod to Nathan for the original I started with.

Sponsored by: Netflix

4 months agokboot: Move termios to libkboot
Warner Losh [Sun, 28 Jan 2024 19:28:30 +0000 (12:28 -0700)]
kboot: Move termios to libkboot

Sponsored by: Netflix

4 months agokboot: Move system calls to libkboot
Warner Losh [Sun, 28 Jan 2024 19:08:45 +0000 (12:08 -0700)]
kboot: Move system calls to libkboot

Sponsored by: Netflix

4 months agokboot: Move syscall stubs to libkboot
Warner Losh [Sun, 28 Jan 2024 19:34:13 +0000 (12:34 -0700)]
kboot: Move syscall stubs to libkboot

Sponsored by: Netflix

4 months agokboot: Cleanup libkern reference
Warner Losh [Sun, 28 Jan 2024 18:28:05 +0000 (11:28 -0700)]
kboot: Cleanup libkern reference

For aarch64 and amd64, we don't pull in anything from libkern, so we
don't need it in our path.  However, powerpc needs ucmpdi2 from libkern,
so bring it into libkboot's build and omit it from loader.kboot.

Sponsored by: Netflix

4 months agokboot: Move _start out of kboot and into libkboot
Warner Losh [Sun, 28 Jan 2024 18:53:59 +0000 (11:53 -0700)]
kboot: Move _start out of kboot and into libkboot

Move the startup code from kboot/kboot to kboot/libkboot and add the
necessary infrastructure for it to build. move start_arch.h, a private
header for libkboot, over as well.

Sponsored by: Netflix

4 months agokboot: Move to kboot/kboot
Warner Losh [Sun, 28 Jan 2024 18:05:05 +0000 (11:05 -0700)]
kboot: Move to kboot/kboot

In anticipation of separating the library elements from the kboot
prorgam elements, move kboot down a level into a subdirectory. There
will be libkboot and include directories in subsequent commits,
mirroring other subsystems like i386 and efi.

Sponsored by: Netflix

4 months agostand: Use modern function definitions
Warner Losh [Sun, 28 Jan 2024 18:36:21 +0000 (11:36 -0700)]
stand: Use modern function definitions

Use modern function definitions for functions with no args.

Sponsored by: Netflix

4 months agoif_eqos: Fix a typo in a kernel error message
Gordon Bergling [Sun, 28 Jan 2024 15:42:12 +0000 (16:42 +0100)]
if_eqos: Fix a typo in a kernel error message

- s/errer/error/

MFC after: 5 days

4 months agolib/msun: Cleanup after $FreeBSD$ removal
Steve Kargl [Sun, 28 Jan 2024 09:14:50 +0000 (11:14 +0200)]
lib/msun: Cleanup after $FreeBSD$ removal

Remove no longer needed explicit inclusion of sys/cdefs.h.

PR: 276669
MFC after: 1 week

4 months agosubr_bus: report DEVICE_SUSPEND failures
Andriy Gapon [Tue, 3 Jan 2023 08:39:32 +0000 (10:39 +0200)]
subr_bus: report DEVICE_SUSPEND failures

This greatly aids with diagnosing system suspend failures when
they are due to a device driver or hardware.

4 months agoefibootmgr: fix potential endless loop with -v
Andriy Gapon [Tue, 25 Oct 2022 21:10:39 +0000 (00:10 +0300)]
efibootmgr: fix potential endless loop with -v

I observed the problem on a system with fairly old and, apparently,
buggy EFI implementation.  A list of boot devices had an invalid
trailing entry.  efidp_size() for that entry returned zero, which means
that the code got stuck looping on that entry.

4 months agohdaa_pcmchannel_setup: do not advertise AC3 8+0
Andriy Gapon [Sun, 28 Jan 2024 13:18:02 +0000 (15:18 +0200)]
hdaa_pcmchannel_setup: do not advertise AC3 8+0

The rest of the sound system supports 7+1 maximum and is not aware of 8+0.

I believe that these messages are caused by 8+0:
kernel: feeder_init(0xfffff801f935d680) on feeder_matrix returned 22
kernel: pcm0: feeder_build_matrix(): can't add feeder_matrix

4 months agodtrace: make 'ring' and 'fill' policies imply 'noswitch' flag
Andriy Gapon [Fri, 24 Dec 2021 09:38:38 +0000 (11:38 +0200)]
dtrace: make 'ring' and 'fill' policies imply 'noswitch' flag

This should disable allocation of the second per-CPU principal buffer
which is never used.  This will also enable additional asserts
for buffers that are never switched.

4 months agorun acpi_shutdown_final later to give other handlers a chance
Andriy Gapon [Mon, 20 Dec 2021 11:01:56 +0000 (13:01 +0200)]
run acpi_shutdown_final later to give other handlers a chance

For example, shutdown_panic wants to produce some output and maybe take
some input before a system is actually reset.

The change should only make difference for the case of system reset
(reboot), poweroff and halt should not be affected.

The change makes difference only if hw.acpi.handle_reboot is set.  It
used to default to zero until r213755 / ac731af5670c7.

4 months agoichsmb: fix block read operation
Andriy Gapon [Tue, 13 Sep 2022 21:26:35 +0000 (00:26 +0300)]
ichsmb: fix block read operation

First of all and unlike I2C, it's not the master that dictates how many
bytes to read in block read operation.  It's the device that informs the
master how many bytes it's sending back.

Thus, for ichsmb_bread() the count parameter is purely an output
parameter.  The code has been changed to reflect that.
The sanity checking of the response length is now done once it (the
first byte of the response) is received.

While here, handling of ICH_HST_STA_FAILED status bit has been added.
Plus some code style improvements and some new code comments in the
vicinity of the changed code.

4 months agochange ipmi watchdog to awlays stop when system is halted
Andriy Gapon [Tue, 3 Jan 2023 17:26:45 +0000 (19:26 +0200)]
change ipmi watchdog to awlays stop when system is halted

That is, wd_shutdown_countdown value is ignored when halting.

A halted system should remain halted for as long as needed until
a power cycle, so the watchdog should not reset the system.

4 months agofix signature of ipmi_shutdown_event
Andriy Gapon [Tue, 3 Jan 2023 17:22:21 +0000 (19:22 +0200)]
fix signature of ipmi_shutdown_event

The function had a signature of watchdog_fn while in fact it is used as
shutdown_fn.

4 months agommc_fdt_parse: remove redundant bootverbose check
Andriy Gapon [Fri, 24 Sep 2021 16:26:06 +0000 (19:26 +0300)]
mmc_fdt_parse: remove redundant bootverbose check

4 months agodwmmc: fix a typo
Andriy Gapon [Fri, 24 Sep 2021 16:32:39 +0000 (19:32 +0300)]
dwmmc: fix a typo

4 months agork_i2s: remove unused definition
Andriy Gapon [Fri, 24 Sep 2021 17:04:27 +0000 (20:04 +0300)]
rk_i2s: remove unused definition

4 months agork_i2s: change interrupt type from MISC to AV (audio/video)
Andriy Gapon [Fri, 24 Sep 2021 17:06:49 +0000 (20:06 +0300)]
rk_i2s: change interrupt type from MISC to AV (audio/video)

This gives a higher priority to the interrupt handling thread.
We need it because its work (filling the hardware FIFO) is time sensitive.

4 months agork3328_codec: remove diagostic printfs
Andriy Gapon [Tue, 11 Jan 2022 12:01:31 +0000 (14:01 +0200)]
rk3328_codec: remove diagostic printfs

Most likeyly there were intended as reminders for unimplemented functions,
but they do not seem to be useful.

Also, a small style nit.

4 months agoaudio_soc: set "status" as being at simplebus
Andriy Gapon [Tue, 11 Jan 2022 12:28:48 +0000 (14:28 +0200)]
audio_soc: set "status" as being at simplebus

This is more true and less confusing than previous "at EXPERIMENT".

4 months agogpiopower: trigger low, high and both edges
Andriy Gapon [Sun, 28 Jan 2024 11:29:41 +0000 (13:29 +0200)]
gpiopower: trigger low, high and both edges

Power off or reset may be activated either by low or high signal or by an
edge.  So, try everything.

Also, the driver now supports DTS properties for timings.

Finally, the driver does not change the pin configuration during attach.
It is assumed that the pin is already in a state that does not trigger
the power event (otherwise we wouldn't be running).

4 months agoadd allwinner overlays for enabling additional USB ports
Andriy Gapon [Sun, 10 Jul 2022 20:09:23 +0000 (23:09 +0300)]
add allwinner overlays for enabling additional USB ports

For instance, on NanoPi NEO two additional ports are available via a
GPIO header.

4 months agousbdevs: add Ralink RT7601 aka MT7601
Andriy Gapon [Sun, 10 Jul 2022 20:11:56 +0000 (23:11 +0300)]
usbdevs: add Ralink RT7601 aka MT7601

This is a popular USB WiFi chip.
Unfortunately, it's not supported by FreeBSD yet.

4 months agods1307: restore hints-based configuration on FDT systems
Andriy Gapon [Tue, 2 May 2023 20:46:39 +0000 (23:46 +0300)]
ds1307: restore hints-based configuration on FDT systems

Fall-through to non-FDT probe code if no matching device node is found.
While here, fix indentation of the switch statement.
Also, make the device description for the hints-based attachment the
same as for FDT attachment.

Fixes: 2486b446db ds1307: add support for the EPSON RX-8035SA I2C RTC

4 months agolibc/amd64: Disable ASAN for amd64_archlevel.c
Mark Johnston [Sun, 28 Jan 2024 02:49:41 +0000 (21:49 -0500)]
libc/amd64: Disable ASAN for amd64_archlevel.c

The code in this file runs before the sanitizer can initialize its
shadow map.

Fixes: ad2fac552c3f ("lib/libc/amd64: add archlevel-based simd dispatch framework")

4 months agontb_hw_plx: Workaround read-only scratchpad registers
Alexander Motin [Sat, 27 Jan 2024 21:51:46 +0000 (16:51 -0500)]
ntb_hw_plx: Workaround read-only scratchpad registers

On several systems we've noticed that when NTB link goes down, the
Physical Layer User Test Pattern registers we use as additional
scratchpad registers (that is explicitly allowed by the chip specs)
become read-only for about 100us.  I see no explanation for this in
the chip specs, neither why it was not seen before, may be a race.
Since we do need these registers, workaround it by repeating writes
until we succeed or 1ms timeout expire.

MFC after: 1 week

4 months agoAdd libllvm and liblldb source files to enable WITH_ASAN build
Dimitry Andric [Sat, 27 Jan 2024 21:51:08 +0000 (22:51 +0100)]
Add libllvm and liblldb source files to enable WITH_ASAN build

This is another part of fixing the WITH_ASAN build. Some additional
source files had to be added to libllvm and liblldb, since the ASan
instrumentation causes symbols in those files to be referenced.

Reported by: markj
PR: 276597
MFC after: 3 days

4 months agoMerge commit 16a1ef86cbc5 from llvm-project (by David CARLIER):
Dimitry Andric [Sat, 27 Jan 2024 21:48:58 +0000 (22:48 +0100)]
Merge commit 16a1ef86cbc5 from llvm-project (by David CARLIER):

  [compiler-rt] remove hexdump interception. (#79378)

  a freebsd dev member reported a symbol conflict and intercepting this
  had little value anyway.

This is one part of fixing the WITH_ASAN build. Some executables in the
base system define their own hexdump() symbol, which would otherwise
conflict with the ASan-intercepted one.

Reported by: markj
PR: 276597
MFC after: 3 days

4 months agomsun: remove fabs from Symbol.map, and adjust comment
Dimitry Andric [Sat, 27 Jan 2024 21:24:38 +0000 (22:24 +0100)]
msun: remove fabs from Symbol.map, and adjust comment

We have s_fabs.c, but fabs(3) is already provided by libc due to
historical reasons, so it is not compiled into libm. When the linker
does not use --undefined-version, this leads to a complaint about the
symbol being nonexistent, so remove it from Symbol.map.

While here, adjust the comment about some functions being supplied by
libc: while it is true that all these are indeed in libc, libm still
includes its own versions of frexp(3), isnan(3), isnanf(3), and
isnanl(3).

Reported by: Steve Kargl <sgk@troutmask.apl.washington.edu>
MFC after: 3 days

4 months agonetinet tests: Make test jail names unique
Mark Johnston [Sat, 27 Jan 2024 15:26:22 +0000 (10:26 -0500)]
netinet tests: Make test jail names unique

Otherwise we get spurious test failures when running tests in parallel.
The intent here was to name jails after the tests, but this was done
incorrectly in a couple of places.

MFC after: 1 week

4 months agonetinet6 tests: Restore an atf_check invocation
Mark Johnston [Fri, 31 Mar 2023 00:07:20 +0000 (20:07 -0400)]
netinet6 tests: Restore an atf_check invocation

This one has been commented out since the initial commit, but doesn't
appear to pose any problems.

MFC after: 1 week

4 months agoroute tests: Serialize
Mark Johnston [Sat, 25 Mar 2023 19:59:20 +0000 (15:59 -0400)]
route tests: Serialize

These tests reuse jail names and so cannot run in parallel.

MFC after: 1 week

4 months agonetinet: Remove stale references to Giant from comments
Mark Johnston [Sun, 12 Mar 2023 18:59:42 +0000 (14:59 -0400)]
netinet: Remove stale references to Giant from comments

MFC after: 1 week

4 months agokqueue tests: Add a regression test
Mark Johnston [Fri, 24 Nov 2023 15:28:13 +0000 (10:28 -0500)]
kqueue tests: Add a regression test

Based on the test case submitted by Andreas Bock for PR 275286.

PR: 275286
MFC after: 2 weeks

4 months agoinet(3): clarify syntax accepted by inet_pton
Mike Karels [Sat, 27 Jan 2024 15:40:07 +0000 (09:40 -0600)]
inet(3): clarify syntax accepted by inet_pton

The section INTERNET ADDRESSES describes the acceptance of dotted
values with varying number of parts in multiple bases.  This applies
to inet_aton and inet_addr, but not to inet_pton.  Clarify this
section by listing the functions to which this applies.  Move the
description of what inet_pton accepts into this section from STANDARDS,
where it is easily missed.  Rename the section to clarify that it
applies only to IPv4.  (inet_pton also works with IPv6.)

Reviewed by: imp
Differential Revision: https://reviews.freebsd.org/D43537

4 months agoreleng-gce: Advertise the availability of UEFI support in GCE images.
Xin LI [Sat, 27 Jan 2024 03:09:39 +0000 (19:09 -0800)]
releng-gce: Advertise the availability of UEFI support in GCE images.

The amd64 and arm64 images supported UEFI, mark it as so users can take
advantage of UEFI boot on GCE.  This is already done on FreeBSD
14.0-RELEASE but never codified into the release tools (and should).

PR: conf/276532
Reviewed by: lwhsu
MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D43557

4 months agomakefs: warn that ffs sectorsize other than 512 may not work
Ed Maste [Thu, 25 Jan 2024 01:47:36 +0000 (20:47 -0500)]
makefs: warn that ffs sectorsize other than 512 may not work

newfs always sets sectorsize to DEV_BSIZE (512) and derives some other
values based on the number of 512-byte sectors per real sector.  Similar
logic is required in makefs.  Until that happens, emit a warning that
the image may be incorrect.

PR: 276571

4 months agoSCHEDULER_STOPPED(): Rely on a global variable
Olivier Certner [Thu, 18 Jan 2024 13:10:18 +0000 (14:10 +0100)]
SCHEDULER_STOPPED(): Rely on a global variable

A commit from 2012 (5d7380f8e34f0083, r228424) introduced
'td_stopsched', on the ground that a global variable would cause all
CPUs to have a copy of it in their cache, and consequently of all other
variables sharing the same cache line.

This is really a problem only if that cache line sees relatively
frequent modifications.  This was unlikely to be the case back then
because nearby variables are almost never modified as well.  In any
case, today we have a new tool at our disposal to ensure that this
variable goes into a read-mostly section containing frequently-accessed
variables ('__read_frequently').  Most of the cache lines covering this
section are likely to always be in every CPU cache.  This makes the
second reason stated in the commit message (ensuring the field is in the
same cache line as some lock-related fields, since these are accessed in
close proximity) moot, as well as the second order effect of requiring
an additional line to be present in the cache (the one containing the
new 'scheduler_stopped' boolean, see below).

From a pure logical point of view, whether the scheduler is stopped is
a global state and is certainly not a per-thread quality.

Consequently, remove 'td_stopsched', which immediately frees a byte in
'struct thread'.  Currently, the latter's size (and layout) stays
unchanged, but some of the later re-orderings will probably benefit from
this removal.  Available bytes at the original position for
'td_stopsched' have been made explicit with the addition of the
'_td_pad0' member.

Store the global state in the new 'scheduler_stopped' boolean, which is
annotated with '__read_frequently'.

Replace uses of SCHEDULER_STOPPED_TD() with SCHEDULER_STOPPER() and
remove the former as it is now unnecessary.

Reviewed by:            markj, kib
Approved by:            markj (mentor)
MFC after:              2 weeks
Sponsored by:           The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D43572

4 months agoSCHEDULER_STOPPED(): Move it (back) to 'systm.h'
Olivier Certner [Thu, 18 Jan 2024 10:31:59 +0000 (11:31 +0100)]
SCHEDULER_STOPPED(): Move it (back) to 'systm.h'

It's not an assertion, so doesn't logically belong to 'kassert.h'.
Moreover, a subsequent commit will make it rely on a variable whose
declaration also belongs to 'systm.h'.

Approved by:            markj (mentor)
MFC after:              2 weeks
Sponsored by:           The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D43571

4 months agoAnnotate 'rebooting' with __read_mostly
Olivier Certner [Thu, 18 Jan 2024 10:22:28 +0000 (11:22 +0100)]
Annotate 'rebooting' with __read_mostly

While here, put such annotation after the variable for 'dumping', since
it concerns the variable and not the type.

Reviewed by:            markj
Approved by:            markj (mentor)
MFC after:              2 weeks
Sponsored by:           The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D43570

4 months agopanic()/KERNEL_PANICKED(): Move back to using 'panicstr' as a flag
Olivier Certner [Thu, 18 Jan 2024 10:15:18 +0000 (11:15 +0100)]
panic()/KERNEL_PANICKED(): Move back to using 'panicstr' as a flag

Currently, no performance-critical path tests for a panic.  Moreover, we
today have KERNEL_PANICKED() which wraps the test into
__predict_false(), already catering to those (potential) use cases.
Also, in practice we don't support 64-bit architectures without caches,
so reading an 'int' instead of a pointer doesn't (directly) save any
memory access.  Finally, 'panicked' is redundant with 'panicstr' (and
wastes a tiny amount of memory).

Consequently:
1. Use again 'panicstr' as a flag indicating that the system is
panicking.  To this end:
  - Modify panic() so that it ensures this pointer is set to some
    non-NULL value even if the caller didn't pass any panic string.
  - Modify KERNEL_PANICKED() to test for 'panicstr'.
  - Remove 'panicked'.
2. Annotate 'panicstr' with '__read_mostly' (instead of using
'__read_frequently' as for 'panicked').  This may have to be changed if,
in the future, some performance-intensive path needs to test it.
3. Convert a few more direct tests of 'panicstr' to using
KERNEL_PANICKED().

Reviewed by:            kib, markj, emaste
Approved by:            markj (mentor)
MFC after:              2 weeks
Sponsored by:           The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D43569

4 months agojail: expose children.max and children.cur via sysctl
Jamie Gritton [Fri, 26 Jan 2024 17:45:40 +0000 (09:45 -0800)]
jail: expose children.max and children.cur via sysctl

Submitted by: Igor Ostapenko <igor.ostapenko_pm.me>
Differential Revision: <https://reviews.freebsd.org/D43565>

4 months agoarm64: Remove pmap_san_bootstrap() and call kasan_init_early() directly
Mark Johnston [Fri, 26 Jan 2024 15:35:40 +0000 (10:35 -0500)]
arm64: Remove pmap_san_bootstrap() and call kasan_init_early() directly

pmap_san_bootstrap() doesn't really do much, and it was hard-coding the
the bootstrap stack size defined in locore.S.  Moreover, the name is a
bit confusing given the existence of pmap_bootstrap_san().  Just remove
it and call kasan_init_early() directly like we do on amd64.  It will
not be used by KMSAN in a forthcoming patch series.

No functional change intended.

MFC after: 1 week
Sponsored by: Klara, Inc.
Sponsored by: Juniper Networks, Inc.
Differential Revision: https://reviews.freebsd.org/D43403

4 months agoopen: make non-POSIX errno value more apparent
Ed Maste [Fri, 26 Jan 2024 15:19:04 +0000 (10:19 -0500)]
open: make non-POSIX errno value more apparent

In the errno list, add an explicit note and reference to the note in the
STANDARDS section.

When O_NOFOLLOW is specified and the target is a symbolic link FreeBSD
sets errno to a value different than that specified by POSIX.  Commit
295159dfa3ed added a note to this effect, but I missed it when reading
through the list of errno values.

PR: 214633
Reviewed by: markj
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D43618

4 months agotests: fix typo in a comment
Gleb Smirnoff [Fri, 26 Jan 2024 06:19:35 +0000 (22:19 -0800)]
tests: fix typo in a comment

4 months agotcp: commonize check for more data to send, style changes
Richard Scheffenegger [Thu, 25 Jan 2024 23:19:30 +0000 (00:19 +0100)]
tcp: commonize check for more data to send, style changes

Use SEQ_SUB instead of a plain subtraction, for an implict
type conversion and prevention of a possible overflow.
Use curly brackets in stacked if statements throughout.
Use of the ? operator to enhance readability when clearing
the FIN flag in tcp_output().

None of the above change the function.

Reviewed By:           tuexen, cc, #transport
Sponsored by:          NetApp, Inc.
Differential Revision: https://reviews.freebsd.org/D43539

4 months agoldscript.powerpc*: Only put .dynamic in PT_DYNAMIC
Jessica Clarke [Fri, 26 Jan 2024 00:19:02 +0000 (00:19 +0000)]
ldscript.powerpc*: Only put .dynamic in PT_DYNAMIC

Currently there are a few output sections left as implicitly using
:kernel :dynamic before :kernel on its own is used again, which means
they end up in both the PT_LOAD and the PT_DYNAMIC segments, an unusual
situation which the new libelf-based kldxref initially treated as
invalid. Thus, hoist the :kernel to the very next section to ensure only
.dynamic is in PT_DYNAMIC, as is more normal.

Whilst here, sync ldscript.powerpc64le with ldscript.powerpc64 to pick
up various fixes that were presumably made between the start of the
powerpc64le port and it being committed and got missed.

Reviewed by: jhibbits, jhb
Differential Revision: https://reviews.freebsd.org/D43066

4 months agotcp: AccECN access ACE field by shifting bits
Richard Scheffenegger [Thu, 25 Jan 2024 22:21:07 +0000 (23:21 +0100)]
tcp: AccECN access ACE field by shifting bits

Shifting bits is quicker than checking header flag bits
one by one. Also improve readability by the use of switch
statements.

No change in behaviour.

Reviewed By:           glebius, tuexen, #transport
Sponsored by:          NetApp, Inc.
Differential Revision: https://reviews.freebsd.org/D43560

4 months agotcp: fix TCPSTAT accounting for SACK
Richard Scheffenegger [Thu, 25 Jan 2024 21:03:36 +0000 (22:03 +0100)]
tcp: fix TCPSTAT accounting for SACK

Account for SACK retransmitted bytes once the actual length
is known. This prevents a call to tcp_maxseg() and prepares
for TSO support when transmitting from the SACK scoreboard.

Reviewed By:           tuexen, #transport
Sponsored by:          NetApp, Inc.
Differential Revision: https://reviews.freebsd.org/D43447

4 months agoarm64: Add a VM_FREELIST_DMA32 freelist
Mark Johnston [Thu, 25 Jan 2024 21:33:46 +0000 (16:33 -0500)]
arm64: Add a VM_FREELIST_DMA32 freelist

When booting a KMSAN kernel on an Ampere Altra, I've seen some boot time
hangs when the XHCI controller driver attempts to allocate memory for
32-bit DMA.  The system boots fine with a GENERIC kernel; I believe that
the additional memory requirements of KMSAN push it over the edge.  The
system has a bit less than 2GB of RAM below the 4GB boundary.

Allocate a new freelist to segregate memory below 4GB, as we do on
amd64, so that such memory allocation failures are less likely to occur.

Reviewed by: alc
MFC after: 1 month
Sponsored by: Klara, Inc.
Sponsored by: Juniper Networks, Inc.
Differential Revision: https://reviews.freebsd.org/D43503

4 months agoMerge libcxxrt master 03c83f5a57be8c5b1a29a68de5638744f17d28ba
Dimitry Andric [Thu, 25 Jan 2024 17:41:44 +0000 (18:41 +0100)]
Merge libcxxrt master 03c83f5a57be8c5b1a29a68de5638744f17d28ba

Interesting fixes (* were already cherry-picked):
03c83f5 add __cxa_init_primary_exception (#23)
5d8a158 Fix two bugs in __cxa_end_cleanup()
b00c6c5 Insert padding in __cxa_dependent_exception
45ca8b1 Insert padding in __cxa_exception struct for compatibility
f2e5509 Fix unlock in two-word version and add missing comment.
6229590 Add an option for disabling emergency buffers. (#14)

MFC after: 2 weeks

4 months agoImport libcxxrt master 03c83f5a57be8c5b1a29a68de5638744f17d28ba
Dimitry Andric [Thu, 25 Jan 2024 17:05:41 +0000 (18:05 +0100)]
Import libcxxrt master 03c83f5a57be8c5b1a29a68de5638744f17d28ba

Interesting fixes:
03c83f5 add __cxa_init_primary_exception (#23)
5d8a158 Fix two bugs in __cxa_end_cleanup()
b00c6c5 Insert padding in __cxa_dependent_exception
45ca8b1 Insert padding in __cxa_exception struct for compatibility
f2e5509 Fix unlock in two-word version and add missing comment.
6229590 Add an option for disabling emergency buffers. (#14)

4 months agopflow: show socket status in verbose mode
Kristof Provost [Thu, 25 Jan 2024 16:37:51 +0000 (17:37 +0100)]
pflow: show socket status in verbose mode

Introduce a verbose output mode to pflowctl, and expose the status of
the socket to userspace. This can be helpful in debugging configuration
errors.

Sponsored by: Rubicon Communications, LLC ("Netgate")

4 months agoman: support special characters in filenames
Wolfram Schneider [Thu, 25 Jan 2024 07:14:06 +0000 (07:14 +0000)]
man: support special characters in filenames

man.sh needs to handle double quotes and sub shell character
as '`' '$' etc.

PR: 275967
Reviewed by: bapt

MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D43453

4 months agoRevert "nl_types.h: explicitly include cdefs.h"
Ed Maste [Thu, 25 Jan 2024 03:49:45 +0000 (22:49 -0500)]
Revert "nl_types.h: explicitly include cdefs.h"

This isn't the right approach for addressing this cross-build issue.

This reverts commit 820401bf176996e41091d2e4190aded12a966b1d.

4 months agoriscv: Convert local interrupt controller to a newbus PIC
Jessica Clarke [Wed, 24 Jan 2024 23:49:54 +0000 (23:49 +0000)]
riscv: Convert local interrupt controller to a newbus PIC

Currently the local interrupt controller implementation is based on
pre-INTRNG arm/arm64 code, using hand-rolled event code rather than
INTRNG. This then interacts weirdly with the PLIC, and other future
interrupt controllers like the APLIC and IMSICs in the upcoming AIA
specification, since they become the root PIC despite not being the
logical root. Instead, use a real newbus device for it and register
it as the root PIC.

This also adapts the IPI code to make use of the newly-added INTRNG
generic IPI handling framework, adding a new sbi_ipi as the PIC. In
future there will be alternative devices for sending IPIs that will
register with higher priorities, such as the proposed AIA IMSIC and
ACLINT SSWI.

Reviewed by: mhorne
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D35901

4 months agoriscv: Create a newbus device for the SBI driver
Jessica Clarke [Wed, 24 Jan 2024 23:49:54 +0000 (23:49 +0000)]
riscv: Create a newbus device for the SBI driver

This approach is based on the Arm PSCI driver, though that makes more
extensive use of its softc than we do here. This will be used to extract
the SBI IPI code as a real PIC.

Reviewed by: mhorne, imp
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D35900

4 months agointrng: Allow alternative IPI PICs to be registered and used
Jessica Clarke [Wed, 24 Jan 2024 23:49:54 +0000 (23:49 +0000)]
intrng: Allow alternative IPI PICs to be registered and used

On RISC-V, the root PIC (whether the PLIC or, as will be the case in
future, the local interrupt controller) cannot send IPIs, relying on
another means to trigger the necessary software interrupts (firmware
calls), but there are upcoming standard devices that will be able to
inject them, so we can't just put the firmware calls in the root PIC
driver.

Thus, split out a new intr_ipi_dev from intr_irq_root_dev to use for
sending IPIs. New devices can be registered with a given priority up
until the first IPI is set up, when the best device seen so far gets
frozen as the IPI device to use.

Reviewed by: mhorne
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D35899

4 months agointrng: Extract arm/arm64 IPI->PIC glue code
Jessica Clarke [Wed, 24 Jan 2024 23:49:53 +0000 (23:49 +0000)]
intrng: Extract arm/arm64 IPI->PIC glue code

The arm and arm64 implementations of dispatching IPIs via PIC_IPI_SEND
are almost identical, and entirely MI with the lone exception of a
single store barrier on arm64 (that is likely either redundant or needed
on arm too). Thus, de-duplicate this code by moving it to INTRNG as a
generic IPI glue framework. The ipi_* functions remain declared in MD
smp.h headers and implemented in MD code, but are trivial wrappers
around intr_ipi_send that could be made MI, at least for INTRNG ports,
at a later date.

Note that, whilst both arm and arm64 had an ii_send member in intr_ipi
to abstract over how to send interrupts,, they were always ultimately
using PIC_IPI_SEND, and so this complexity has been removed. A follow-up
commit will re-introduce the same flexibility by instead allowing a
device other than the root PIC to be registered as the IPI sender.

As part of this, strengthen a MAXCPU assertion that was missed in commit
2f0b059eeafc ("intrng: switch from MAXCPU to mp_ncpus") (which itself is
mis-titled).

Reviewed by: mmel, mhorne
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D35898

4 months agointrng: Remove irq_root_ipicount and corresponding intr_pic_claim_root arg
Jessica Clarke [Wed, 24 Jan 2024 23:49:53 +0000 (23:49 +0000)]
intrng: Remove irq_root_ipicount and corresponding intr_pic_claim_root arg

The static irq_root_ipicount variable is only ever written to (with the
value passed to irq_root_ipicount), never read. Moreover, the bcm2836
driver, as used by the Raspberry Pi 2B and 3A/B (but not 4, which uses a
GIC-400, though does have the legacy interrupt controller present too)
passes 0 as ipicount, despite implementing IPIs. It's thus inaccurate
and serves no purpose, so should be removed.

Reviewed by: mmel, imp, mhorne
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D35897

4 months agompsutil: Clean up libutil deps
Mark Johnston [Wed, 24 Jan 2024 19:47:56 +0000 (14:47 -0500)]
mpsutil: Clean up libutil deps

mpsutil doesn't use libutil, so doesn't need to include libutil.h.  See
commit 76103694a051335bec1da318f9c6e3a676dc0145.

No functional change intended.

MFC after: 1 week