]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
2 years agontp.conf.5: Fix typos
Elyes HAOUAS [Wed, 6 Oct 2021 05:38:06 +0000 (07:38 +0200)]
ntp.conf.5: Fix typos

"certian" --> "certain"
"compatability" --> "compatibility"
"noticable" --> "noticeable"
"limite" --> "limit"
"acutal" --> "actual"
"ba" --> "be"

MFC after: 1 week
Pull Request:   https://github.com/freebsd/freebsd-src/pull/550
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
2 years agoWhen queuing ignored signal, only abort target thread' sleep if it is inside sigwait()
Konstantin Belousov [Sun, 3 Oct 2021 02:03:59 +0000 (05:03 +0300)]
When queuing ignored signal, only abort target thread' sleep if it is inside sigwait()

Reported and tested by: trasz
Reviewed by: markj
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D32252

2 years agoWhen sending ignored signal, arrange for zero return code from sleep
Konstantin Belousov [Fri, 1 Oct 2021 06:59:02 +0000 (09:59 +0300)]
When sending ignored signal, arrange for zero return code from sleep

Otherwise consumers get unexpected EINTR errors without seeing
a properly discarded signal.

Reported and tested by: trasz
Reviewed by: markj
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D32252

2 years agoMove td_pflags2 TDP2_SIGWAIT to td_flags TDF_SIGWAIT
Konstantin Belousov [Sun, 3 Oct 2021 01:52:39 +0000 (04:52 +0300)]
Move td_pflags2 TDP2_SIGWAIT to td_flags TDF_SIGWAIT

The flag should be accessible from non-current threads.

Reviewed by: markj
Tested by: trasz
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D32252

2 years agologin: use sizeof(audit_cond) consistently, NFC
Kyle Evans [Wed, 6 Oct 2021 04:24:24 +0000 (23:24 -0500)]
login: use sizeof(audit_cond) consistently, NFC

The other three instances were already converted to use audit_cond, this
one was just changed from sizeof(long) -> sizeof(int).

2 years agoFix mistakes in link(2) and shm_open(2)
Konstantin Belousov [Wed, 6 Oct 2021 03:38:26 +0000 (06:38 +0300)]
Fix mistakes in link(2) and shm_open(2)

PR: 258957
Submitted by: sigsys@gmail.com
MFC after: 1 week

2 years agoamd64 efirt: do not flush cache for runtime pages
Konstantin Belousov [Tue, 5 Oct 2021 14:14:11 +0000 (17:14 +0300)]
amd64 efirt: do not flush cache for runtime pages

We actually do not know is it safe or not to flush cache for random
BAR/register page existing in the system.  It is well-known that for
instance LAPICs cannot tolerate cache flush.  As report indicates,
there are more such devices.

This issue typically affects AMD machines which do not report self-snoop,
causing real CLFLUSH invocation on the mapped pages.  Intels do self-snoop,
so this change should be nop for them, and unsafe devices, if any, are
already ignored.

Reported and tested by: manu
Reviewed by: alc, markj
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D32318

2 years agoamd64: add pmap_page_set_memattr_noflush()
Konstantin Belousov [Tue, 5 Oct 2021 14:12:05 +0000 (17:12 +0300)]
amd64: add pmap_page_set_memattr_noflush()

Similar to pmap_page_set_memattr() by setting MD page cache attribute
to the argument.  Unlike pmap_page_set_memattr(), does not flush cache
for the direct mapping of the page.

Reviewed by: alc, markj
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D32318

2 years agoapic: initialize lapic_paddr statically
Konstantin Belousov [Tue, 5 Oct 2021 13:19:56 +0000 (16:19 +0300)]
apic: initialize lapic_paddr statically

The default value for LAPIC registers page physical address
is usually right. Having this value available early makes
pmap_force_invalidate_cache_range(), used on non-self-snoop machines,
avoid flushing LAPIC range for early calls.

Reviewed by: alc, markj
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D32318

2 years agounifdef.1: Fix typo on "input"
Elyes HAOUAS [Tue, 5 Oct 2021 18:58:51 +0000 (20:58 +0200)]
unifdef.1: Fix typo on "input"

Pull request: https://github.com/freebsd/freebsd-src/pull/549
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
2 years agosysdecode_enum.3: Fix a typo: SIGBTRAP -> SIGTRAP.
John Baldwin [Tue, 5 Oct 2021 21:55:18 +0000 (14:55 -0700)]
sysdecode_enum.3: Fix a typo: SIGBTRAP -> SIGTRAP.

MFC after: 3 days
Sponsored by: DARPA

2 years agoRemove obsolete amd(8) rc.conf configuration
Tom Hukins [Tue, 5 Oct 2021 14:34:52 +0000 (14:34 +0000)]
Remove obsolete amd(8) rc.conf configuration

The script that used these was removed in 13f7dbe822d5f along with amd
itself.

Fixes: 13f7dbe822d5 ("retire amd(8)")
MFC after: 1 week
Pull Request: https://github.com/freebsd/freebsd-src/pull/548

2 years agocam(4): Limit search for disks in SES enclosure by single bus
Alexander Motin [Tue, 5 Oct 2021 19:01:16 +0000 (15:01 -0400)]
cam(4): Limit search for disks in SES enclosure by single bus

At least for SAS that we only support now disks are typically
connected to the same bus as the enclosure.  Limiting the search
scope makes it much faster on systems with multiple buses and
thousands of disks.

Reviewed by: imp
MFC after: 2 weeks
Sponsored by: iXsystems, Inc.
Differential Revision: https://reviews.freebsd.org/D32305

2 years agocam(4): Improve XPT_DEV_MATCH
Alexander Motin [Tue, 5 Oct 2021 18:54:03 +0000 (14:54 -0400)]
cam(4): Improve XPT_DEV_MATCH

Remove *_MATCH_NONE enums, making no sense and so never used.  Make
*_MATCH_ANY enums 0 (no any match flags set), previously used by
*_MATCH_NONE.  Bump CAM_VERSION to 0x1a reflecting those changes and
add compat shims.

When traversing through buses and devices do not descend if we can
already see that requested pattern does not match the bus or device.
It allows to save significant amount of time on system with thousands
of disks when doing limited searches.

Reviewed by: imp
MFC after: 2 weeks
Sponsored by: iXsystems, Inc.
Differential Revision: https://reviews.freebsd.org/D32304

2 years agosbuf(9): Microoptimize sbuf_put_byte()
Alexander Motin [Tue, 5 Oct 2021 18:42:47 +0000 (14:42 -0400)]
sbuf(9): Microoptimize sbuf_put_byte()

This function is actively used by sbuf_vprintf(), so this simple
inlining in half reduces time of kern.geom.confxml generation.

MFC after: 2 weeks
Sponsored by: iXsystem, Inc.

2 years agocam: Add doxygen for cam_sim_free
Warner Losh [Tue, 5 Oct 2021 13:07:17 +0000 (07:07 -0600)]
cam: Add doxygen for cam_sim_free

Sponsored by: Netflix
Reviewed by: mav
Differential Revision: https://reviews.freebsd.org/D32303

2 years agocesa: remove unused CESA_SESSIONS macro
Mateusz Guzik [Tue, 5 Oct 2021 12:12:03 +0000 (12:12 +0000)]
cesa: remove unused CESA_SESSIONS macro

Unused since 1b0909d51a8aa8b5 ("OpenCrypto: Convert sessions to opaque handles
instead of integers")

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

2 years agomlx5_en: fix use of CALLOUT_DIRECT
Konstantin Belousov [Wed, 8 Sep 2021 15:37:20 +0000 (18:37 +0300)]
mlx5_en: fix use of CALLOUT_DIRECT

Reported by: markj
Reviewed by: hselasky
Sponsored by: NVIDIA Networking
MFC after: 1 week

2 years agonetstat: split ipsec and ipsec6 statistics in libxo
Mateusz Guzik [Tue, 5 Oct 2021 09:42:58 +0000 (09:42 +0000)]
netstat: split ipsec and ipsec6 statistics in libxo

In particular fixes --libxo json

PR: 254673
Reported by: j.vandeville@gmail.com
Sponsored by:   Rubicon Communications, LLC ("Netgate")

2 years agomlx4en(4): Fix wrong mbuf cluster size in mlx4_en_debugnet_init()
Hans Petter Selasky [Tue, 5 Oct 2021 08:46:56 +0000 (10:46 +0200)]
mlx4en(4): Fix wrong mbuf cluster size in mlx4_en_debugnet_init()

This fixes an "invalid cluster size" panic when debugnet is activated.

panic()
m_getzone()
debugnet_mbuf_reinit()
debugnet_any_ifnet_update()
ifhwioctl()
ifioctl()

Submitted by: ae@
PR: 258923
MFC after: 1 week
Sponsored by: NVIDIA Networking

2 years agoRevert erroneous commit ded0d3d486eba
Stefan Eßer [Tue, 5 Oct 2021 07:41:46 +0000 (09:41 +0200)]
Revert erroneous commit ded0d3d486eba

These files came from a prior commit to contrib/bc and seem to have
been placed in the top of the source tree by a failed git rebase.

Reported by: markj

2 years agosdhci: Fix crash caused by M_WAITOK in sdhci dumps
Bartlomiej Grzesik [Tue, 5 Oct 2021 04:22:32 +0000 (06:22 +0200)]
sdhci: Fix crash caused by M_WAITOK in sdhci dumps

In some contexts it is illegal to wait for memory allocation, causing
kernel panic. By default sbuf_new passes M_WAITOK to malloc,
which caused crashes when sdhci_dumpcaps or sdhci_dumpregs was callend in
non sutiable context.

Add SBUF_NOWAIT flag to sbuf_new to fix this.

Obtained from: Semihalf
Differential revision: https://reviews.freebsd.org/D32075

2 years agopthread_mutexattr(3): document each pthread_mutexattr_set/get* function
Konstantin Belousov [Fri, 1 Oct 2021 01:39:39 +0000 (04:39 +0300)]
pthread_mutexattr(3): document each pthread_mutexattr_set/get* function

The descriptions may be more elaborated of course, but this is a good
step at starting providing any useful information in our man page, at all.

Reviewed by: markj
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
Differential revision: https://reviews.freebsd.org/D32243

2 years agolibthr(3): explain some internals of the locks implementation
Konstantin Belousov [Fri, 1 Oct 2021 01:17:02 +0000 (04:17 +0300)]
libthr(3): explain some internals of the locks implementation

Describe internal allocations, mention problems with the use of global
malloc(3) and the reasons for internal allocator existence.

Document shared objects implementation and describe shortcomings of the
chosen approach, as well as the rationale why it was done that way.

Reviewed by: markj
Discussed with: jilles
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
Differential revision: https://reviews.freebsd.org/D32243

2 years agopthread_mutexattr(3): install pthread_mutexattr_get/setpshared links
Konstantin Belousov [Fri, 1 Oct 2021 00:53:44 +0000 (03:53 +0300)]
pthread_mutexattr(3): install pthread_mutexattr_get/setpshared links

Reviewed by: markj
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
Differential revision: https://reviews.freebsd.org/D32243

2 years agopthread_mutexattr(3): document pthread_mutexattr_set/getpshared
Konstantin Belousov [Fri, 1 Oct 2021 00:46:16 +0000 (03:46 +0300)]
pthread_mutexattr(3): document pthread_mutexattr_set/getpshared

Reviewed by: markj
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
Differential revision: https://reviews.freebsd.org/D32243

2 years agopthread_mutexattr(3): use .Fo/.Fc to avoid too long lines
Konstantin Belousov [Fri, 1 Oct 2021 00:40:19 +0000 (03:40 +0300)]
pthread_mutexattr(3): use .Fo/.Fc to avoid too long lines

Reviewed by: markj
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
Differential revision: https://reviews.freebsd.org/D32243

2 years agogeom_label: Add more validation for NTFS volume tasting
Mark Johnston [Mon, 4 Oct 2021 21:48:44 +0000 (17:48 -0400)]
geom_label: Add more validation for NTFS volume tasting

- Ensure that the computed MFT record size isn't negative or larger than
  maxphys before trying to read $Volume.
- Guard against truncated records in volume metadata.
- Ensure that the record length is large enough to contain the volume
  name.
- Verify that the (UTF-16-encoded) volume name's length is a multiple of
  two.

PR: 258833, 258914
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation

2 years agocontrib/bc: merge version 5.1.0 from vendor branch
Stefan Eßer [Mon, 4 Oct 2021 20:25:24 +0000 (22:25 +0200)]
contrib/bc: merge version 5.1.0 from vendor branch

This version adds options and functions that allow to print numbers
in the open interval (-1 .. 1) with or without a leading 0 digit.

Additionally, an option has been added to prevent line wrap and
allows to print arbitrarily long results on a single line.

Merge commit '5d58a51571721190681c50d4bd3a1f45e6282d72'

2 years agocontrib/bc: re-enable tests after the import of version 5.1.0
Stefan Eßer [Mon, 4 Oct 2021 19:43:52 +0000 (21:43 +0200)]
contrib/bc: re-enable tests after the import of version 5.1.0

The tests have been fixed to not write any data outside of the
temporary work directory provided by the test framework.

MFC after: 3 days

2 years agoAdd back Windows only VCXProj files
Stefan Eßer [Wed, 28 Jul 2021 13:35:16 +0000 (15:35 +0200)]
Add back Windows only VCXProj files

2 years agoRemove files that were checked in with wrong .gitattributes
Stefan Eßer [Wed, 28 Jul 2021 13:31:57 +0000 (15:31 +0200)]
Remove files that were checked in with wrong .gitattributes

These files will be added back in updated form, but are only relevant
for the Windows platform, anyway.

2 years agovendor/bc: update to version 5.1.0
Stefan Eßer [Mon, 4 Oct 2021 19:22:35 +0000 (21:22 +0200)]
vendor/bc: update to version 5.1.0

This version adds options and functions that allow to print numbers
in the open interval (-1 .. 1) with or without a leading 0 digit.

Additionally, an option has been added to prevent line wrap and
allows to print arbitrarily long results on a single line.

2 years agoRPCBIND: skip ipv6 link local when request is not from link local address
David Bright [Mon, 4 Oct 2021 15:43:41 +0000 (08:43 -0700)]
RPCBIND: skip ipv6 link local when request is not from link local address

RPCINFO on macOS behaves different compared to other linux clients and
doesn't provide request address in rpcb structure of the
RPCBPROC_GETADDRLIST call which doesn't seem to be forbidden.

In this case RPCBIND uses RPC call's source address and picks a
closest corresponding local address. If there are no addresses in the
same subnet as the source address, return of RPCBIND may vary
depending on the order of addresses returned in getifaddrs. If a link
local precedes global address it may be returned even if the request
comes from neither a link local nor from link local in a different
scope, which will prevent services like nfs from working in tpc6
scenario on macOS clients. Issue can be seen only on FreeBSD rpcbind
port due to changes in workflow of addrmerge call.

Submitted by: Dmitry Ovsyannikov (Dmitry.Ovsyannikov@dell.com)
Reviewers: dab
Differential Revision: https://reviews.freebsd.org/D31491
Sponsored by: Dell EMC
MFC to: stable/12, stable/13
MFC after: 1 week

2 years agolastcomm/sa: Remove sparc64 tests, they aren't needed.
Warner Losh [Mon, 4 Oct 2021 16:38:37 +0000 (10:38 -0600)]
lastcomm/sa: Remove sparc64 tests, they aren't needed.

These tests will run only on a sparc64 system, and so never run anymore.

Sponsored by: Netflix

2 years agogmultipath tests: Re-enable the failloop test in CI
Mark Johnston [Mon, 4 Oct 2021 16:24:29 +0000 (12:24 -0400)]
gmultipath tests: Re-enable the failloop test in CI

PR: 258763
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation

2 years agolibctf: Improve check for duplicate SOU definitions in ctf_add_type()
Mark Johnston [Mon, 4 Oct 2021 16:28:22 +0000 (12:28 -0400)]
libctf: Improve check for duplicate SOU definitions in ctf_add_type()

When copying a struct or union from one CTF container to another,
ctf_add_type() checks whether it matches an existing type in the
destination container.  It does so by looking for a type with the same
name and kind as the new type, and if one exists, it iterates over all
members of the source type and checks whether a member with matching
name and offset exists in the matched destination type.  This can
produce false positives, for example because member types are not
compared, but this is not expected to arise in practice.  If the match
fails, ctf_add_type() returns an error.

The procedure used for member comparison breaks down in the face of
anonymous struct and union members.  ctf_member_iter() visits each
member in the source definition and looks up the corresponding member in
the desination definition by name using ctf_member_info(), but this
function will descend into anonymous members and thus fail to match.
Fix the problem by introducing a custom comparison routine which does
not assume member names are unique.  This should also be faster for
types with many members; in the previous scheme, membcmp() would perform
a linear scan of the desination type's members to perform a lookup by
name.  The new routine steps through the members of both types in a
single loop.

PR: 258763
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation

2 years agoAdd the missing license to gic_if.m
Andrew Turner [Mon, 4 Oct 2021 10:22:19 +0000 (11:22 +0100)]
Add the missing license to gic_if.m

Sponsored by: The FreeBSD Foundation

2 years agoncurses: fix libcompat (lib32 for example) building
Baptiste Daroussin [Mon, 4 Oct 2021 12:16:32 +0000 (14:16 +0200)]
ncurses: fix libcompat (lib32 for example) building

2 years agoncurses: fix path where to find curses.h at bootstrap
Baptiste Daroussin [Mon, 4 Oct 2021 10:31:23 +0000 (12:31 +0200)]
ncurses: fix path where to find curses.h at bootstrap

after the split, curses.h is now generated by tinfo Makefile, but
still used for a file generated in ncurses lib. Adjust the path to
make sure curses.h is always found

2 years agoncurses: document in UPDATING and bump _FreeBSD_version
Baptiste Daroussin [Mon, 4 Oct 2021 09:36:47 +0000 (11:36 +0200)]
ncurses: document in UPDATING and bump _FreeBSD_version

2 years agobsdinstall: reduce overlinking
Baptiste Daroussin [Thu, 23 Sep 2021 02:08:08 +0000 (04:08 +0200)]
bsdinstall: reduce overlinking

both distextract and distfetch does not directly use ncurses,
or figpart, drop their direct link to those libs

2 years agoncurses: chase dependency changes in the source tree
Baptiste Daroussin [Thu, 23 Sep 2021 01:52:46 +0000 (03:52 +0200)]
ncurses: chase dependency changes in the source tree

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

2 years agoncurses: split libtinfo from libncurses
Baptiste Daroussin [Thu, 23 Sep 2021 01:49:51 +0000 (03:49 +0200)]
ncurses: split libtinfo from libncurses

many external program expects libncurses to not be provided as a single
library. Instead of fixing all ports, distribute ncurses the way
upstream distributes it

Turn libncursesw.so into a ldscript which will link automatically as
needed to libtinfow so so this change is seamless at compile time.

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

2 years agoUPDATING: Update notes about new mixer(8) utility.
Hans Petter Selasky [Mon, 4 Oct 2021 09:00:56 +0000 (11:00 +0200)]
UPDATING: Update notes about new mixer(8) utility.

Differential Revision: https://reviews.freebsd.org/D31636
Sponsored by: NVIDIA Networking

2 years agocontrib/bc: temporarily disconnect the tests for 5.0.2
Stefan Eßer [Mon, 4 Oct 2021 07:50:44 +0000 (09:50 +0200)]
contrib/bc: temporarily disconnect the tests for 5.0.2

The tests that come with version 5.0.2 have been extended to cover the
line editing functions. It has been found that these tests generate
false negative results in FreeBSD, most likely due to an issue in the
pexpect functionality used.

These history tests are skipped on systems that do not have python and
py-pexpect installed (and thus are unlikely to cause CI test failures),
but in order to not cause irritating failures on systems were these
packages are in fact installed, I temporarily disconnect them.

I had planned to skip this version due to the issue with the history
tests, but some committer has asked me to go ahead since the currently
used version 5.0.0 contains a macro name that collides with a project
he is working on.

No MFC of this version is planned. A version 5.0.3 is expected to be
released soon, and that version will allow to reconnect the tests and
will be MFCed.

2 years agocontrib/bc: remove files ommitted from the release
Stefan Eßer [Mon, 4 Oct 2021 07:41:06 +0000 (09:41 +0200)]
contrib/bc: remove files ommitted from the release

A number of files have been removed from the release distribution of
this bc implementation. They were mostly relevant for pre release
testing and benchmarking to identify regressions. The Markdown
sources of the man pages are only relevant for combinations of build
options not used in FreeBSD and need non-default conversion tools
(available as ports in FreeBSD).

All the omitted files can be found in the upstream git repository,
and they are fetched when building this software as a port. But they
have never been used in the FreeBSD base system.

2 years agovendor/bc: update to upstream version 5.0.2
Stefan Eßer [Sun, 19 Sep 2021 12:41:20 +0000 (14:41 +0200)]
vendor/bc: update to upstream version 5.0.2

(cherry picked from commit a60ef1802a36f2f2a5611564191440ea1c1e2f17)

2 years agoloader bcache: Allow readahead up to 256 kB I/Os
Colin Percival [Sun, 3 Oct 2021 21:55:10 +0000 (14:55 -0700)]
loader bcache: Allow readahead up to 256 kB I/Os

Prior to this commit, the loader would perform readaheads of up to
128 kB; when booting on a UFS filesystem this resulted in a series
of 160 kB reads (32 kB request + 128 kB readahead).

This commit allows readaheads to be longer, subject to a total I/O
size limit of 256 kB; i.e. 32 kB read requests will have added
readaheads of up to 224 kB.

In my testing on an EC2 c5.xlarge instance, this change reduces the
boot time by roughly 80 ms.

Reviewed by: tsoome
MFC after: 1 week
Sponsored by: https://www.patreon.com/cperciva
Differential Revision: https://reviews.freebsd.org/D32251

2 years agoloader bcache: Track unconsumed readahead
Colin Percival [Sun, 3 Oct 2021 21:49:41 +0000 (14:49 -0700)]
loader bcache: Track unconsumed readahead

The loader bcache attempts to determine whether readahead is useful,
increasing or decreasing its readahead length based on whether a
read could be serviced out of the cache.  This resulted in two
unfortunate behaviours:

1. A series of consecutive 32 kB reads are requested and bcache
performs 16 kB readaheads.  For each read, bcache determines that,
since only the first 16 kB is already in the cache, the readahead
was not useful, and keeps the readahead at the minimum (16 kB) level.

2. A series of consecutive 32 kB reads are requested and bcache
starts with a 32 kB readahead resulting in a 64 kB being read on
the first request.  The second 32 kB request can be serviced out of
the cache, and bcache responds by doubling its readahead length to
64 kB.  The third 32 kB request cannot be serviced out of the cache,
and bcache reduces its readahead length back down to 32 kB.

The first syndrome converts a series of 32 kB reads into a series of
(misaligned) 32 kB reads, while the second syndrome converts a series
of 32 kB reads into a series of 64 kB reads; in both cases we do not
increase the readahead length to its limit (currently 128 kB) no
matter how many consecutive read requests are made.

This change avoids this problem by tracking the "unconsumed
readahead" length; readahead is deemed to be useful (and the
read-ahead length is potentially increased) not only if a request was
completely serviced out of the cache, but also if *any* of the request
was serviced out of the cache and that length matches the amount of
unconsumed readahead.  Conversely, we now only reduce the readahead
length in cases where there was unconsumed readahead data.

In my testing on an EC2 c5.xlarge instance, this change reduces the
boot time by roughly 120 ms.

Reviewed by: imp, tsoome
MFC after: 1 week
Sponsored by: https://patreon.com/cperciva
Differential Revision: https://reviews.freebsd.org/D32250

2 years agoloader: Refactor readahead adjustment in bcache
Colin Percival [Sun, 3 Oct 2021 19:10:36 +0000 (12:10 -0700)]
loader: Refactor readahead adjustment in bcache

While I'm here, add an explanatory comment.

No functional change intended.

Reviewed by: imp, tsoome (previous version)
MFC after: 1 week
Sponsored by: https://patreon.com/cperciva
Differential Revision: https://reviews.freebsd.org/D32249

2 years agopci_pci: Support growing bus ranges in bus_adjust_resource for NEW_PCIB
Jessica Clarke [Sun, 3 Oct 2021 18:35:26 +0000 (19:35 +0100)]
pci_pci: Support growing bus ranges in bus_adjust_resource for NEW_PCIB

This is the same underlying problem as 262459806433, just for bus ranges
rather than windows. SiFive's HiFive Unmatched has the following
topology:

  Root Port <---> Bridge <---> Bridge <-+-> Bridge <---> (Unused)
   (pcib0)        (pcib1)      (pcib2)  |   (pcib3)
                                        +-> Bridge <---> xHCI
                                        |   (pcib4)
                                        +-> Bridge <---> M.2 E-key
                                        |   (pcib5)
                                        +-> Bridge <---> M.2 M-key
                                        |   (pcib6)
                                        +-> Bridge <---> x16 slot
                                            (pcib7)

If a device is plugged into the x16 slot that itself has a bridge, such
as many graphics cards, we currently fail to allocate a bus number for
its child bus (and so pcib_attach_child skips adding a child bus for
further enumeration) as, when the new child bridge attaches, it attempts
to allocate a bus number from its parent (pcib7) which in turn attempts
to grow its own bus range by calling bus_adjust_resource on its own
parent (pcib2) whose bus rman cannot accommodate the request and needs
to itself be extended by calling its own parent (pcib1). Note that
pcib3-7 do not face the same issue when they attach since pcib1 ends up
managing bus numbers 1-255 from the beginning and so never needs to grow
its own range.

Reviewed by: jhb, mav
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D32011

2 years agoriscv: Add vt and kbdmux to GENERIC for video console support
Jessica Clarke [Sun, 3 Oct 2021 18:34:53 +0000 (19:34 +0100)]
riscv: Add vt and kbdmux to GENERIC for video console support

No in-tree drivers are supported for RISC-V (given it supports UEFI we
could enable the EFI framebuffer, but U-Boot has very limited hardware
support and EDK2 remains a work in progress), but drm-kmod exists with
drivers for video cards that can be used with the HiFive Unmatched.

Reviewed by: imp, jhb
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D32001

2 years agoLinuxKPI: Add more #ifdef VM_MEMATTR_WRITE_COMBINING guards
Jessica Clarke [Sun, 3 Oct 2021 18:34:40 +0000 (19:34 +0100)]
LinuxKPI: Add more #ifdef VM_MEMATTR_WRITE_COMBINING guards

One of the three uses is already guarded; this guards the remaining ones
to support architectures like riscv that do not provide write-combining,
and is needed to build drm-kmod on riscv.

Reviewed by: hselasky, manu
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D31999

2 years agolibgcc_s: Export 64-bit int to 128-bit float functions
Jessica Clarke [Sun, 3 Oct 2021 18:34:25 +0000 (19:34 +0100)]
libgcc_s: Export 64-bit int to 128-bit float functions

The corresponding 32-bit int and 128-bit int functions were added in
790a6be5a169, as were all combinations of the float to int functions,
but these two were overlooked. __floatditf is needed to build curl for
riscv as there's a signed 64-bit int to 128-bit float conversion in
lib/progress.c's trspeed as of 7.77.0.

Reviewed by: dim
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D31997

2 years agoriscv: Add a stub pmap_change_attr implementation
Jessica Clarke [Sun, 3 Oct 2021 18:33:47 +0000 (19:33 +0100)]
riscv: Add a stub pmap_change_attr implementation

pmap_change_attr is required by drm-kmod so we need the function to
exist. Since the Svpbmt extension is on the horizon we will likely end
up with a real implementation of it, so this stub implementation does
all the necessary page table walking to validate the input, ensuring
that no new errors are returned once it's implemented fully (other than
due to out of memory conditions when demoting L2 entries) and providing
a skeleton for that future implementation.

Reviewed by: markj
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D31996

2 years agovfs: remove dead fifoop VOP_KQFILTER implementations
Kyle Evans [Sat, 2 Oct 2021 05:17:57 +0000 (00:17 -0500)]
vfs: remove dead fifoop VOP_KQFILTER implementations

These began to become obsolete in d6d64f0f2c26 (r137739) and the deal
was later sealed in 003e18aef4c4 (r137801) when vfs.fifofs.fops was
dropped and vop-bypass for pipes became mandatory.

PR: 225934
Suggested by: markj
Reviewe by: kib, markj
Differential Revision: https://reviews.freebsd.org/D32270

2 years agosleepqueue(9): Remove sbinuptime() from sleepq_timeout().
Alexander Motin [Sun, 3 Oct 2021 00:57:55 +0000 (20:57 -0400)]
sleepqueue(9): Remove sbinuptime() from sleepq_timeout().

Callout c_time is always bigger or equal than the scheduled time.  It
is also smaller than sbinuptime() and can't change while the callback
is running.  So we reliably can use it instead of sbinuptime() here.
In case there was a race and the callout was rescheduled to the later
time, the callback will be called again.

According to profiles it saves ~5% of the timer interrupt time even
with fast TSC timecounter.

MFC after: 1 month

2 years agoffs: retire unused fsckpid mount option
Robert Wing [Sat, 2 Oct 2021 23:11:40 +0000 (15:11 -0800)]
ffs: retire unused fsckpid mount option

The fsckpid mount option was introduced in 927a12ae16433b50 along with a
couple sysctl's to support SU+J with snapshots. However, those sysctl's
were never used and eventually removed in f2620e9ceb3ede02.

There are no in-tree consumers of this mount option.

Reviewed by: mckusick, kib
Differential Revision: https://reviews.freebsd.org/D32015

2 years agonfsd: Fix pNFS handling of Deallocate
Rick Macklem [Sat, 2 Oct 2021 21:11:15 +0000 (14:11 -0700)]
nfsd: Fix pNFS handling of Deallocate

For a pNFS server configuration, an NFSv4.2 Deallocate operation
is proxied to the DS(s).  The code that parsed the reply for the
proxy RPC is broken and did not process the pre-operation attributes.

This patch fixes this problem.

This bug would only affect pNFS servers built from recent main/FreeBSD14
sources.

2 years agosrc/bin/ps: Fix spelling error
Elyes HAOUAS [Sat, 2 Oct 2021 16:37:32 +0000 (10:37 -0600)]
src/bin/ps: Fix spelling error

Spell interruptible correctly.

Pull Request: https://github.com/freebsd/freebsd-src/pull/544
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
2 years agosrc/bin/pax: Fix spelling error
Elyes HAOUAS [Sat, 2 Oct 2021 16:36:09 +0000 (10:36 -0600)]
src/bin/pax: Fix spelling error

"whats" -> "what's"

Pull Request: https://github.com/freebsd/freebsd-src/pull/544
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
2 years agosrc/bin/mkdir: Spell occur correctly.
Elyes HAOUAS [Sat, 2 Oct 2021 16:34:45 +0000 (10:34 -0600)]
src/bin/mkdir: Spell occur correctly.

Pull Request: https://github.com/freebsd/freebsd-src/pull/544
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
2 years agosrc/bin/sh: Fix spelling errors
Elyes HAOUAS [Sat, 2 Oct 2021 16:33:51 +0000 (10:33 -0600)]
src/bin/sh: Fix spelling errors

Pull Request: https://github.com/freebsd/freebsd-src/pull/544
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
2 years agoarm64: Spell BeagleBone correctly in config file.
Tom Hukins [Sat, 2 Oct 2021 11:07:50 +0000 (12:07 +0100)]
arm64: Spell BeagleBone correctly in config file.

Pull Request: https://github.com/freebsd/freebsd-src/pull/545

2 years agoti(4): Fix a typo in an error message
Gordon Bergling [Sat, 2 Oct 2021 08:51:29 +0000 (10:51 +0200)]
ti(4): Fix a typo in an error message

- s/chanels/channels/

MFC after: 1 week

2 years agoqlnxe: Fix typos in two error messages
Gordon Bergling [Sat, 2 Oct 2021 08:49:51 +0000 (10:49 +0200)]
qlnxe: Fix typos in two error messages

- s/erorr/error/

MFC after: 1 week

2 years agocam: Fix a typo in a comment
Gordon Bergling [Sat, 2 Oct 2021 08:48:43 +0000 (10:48 +0200)]
cam: Fix a typo in a comment

- s/perorming/performing/

MFC after: 3 days

2 years agovnic: Fix a typo in a comment
Gordon Bergling [Sat, 2 Oct 2021 08:47:21 +0000 (10:47 +0200)]
vnic: Fix a typo in a comment

- s/setings/settings/

MFC after: 3 days

2 years agosmsc(4): Fix a typo in a comment
Gordon Bergling [Sat, 2 Oct 2021 08:45:58 +0000 (10:45 +0200)]
smsc(4): Fix a typo in a comment

- s/setings/settings/

MFC after: 3 days

2 years agoevdev: Fix a typo in a commit
Gordon Bergling [Sat, 2 Oct 2021 08:43:41 +0000 (10:43 +0200)]
evdev: Fix a typo in a commit

- s/prefered/preferred/

MFC after: 3 days

2 years agonetvsc: Fix a typo in a comment
Gordon Bergling [Sat, 2 Oct 2021 08:42:18 +0000 (10:42 +0200)]
netvsc: Fix a typo in a comment

- s/prefered/preferred/

MFC after: 3 days

2 years agosched_ule(4): Fix possible significance loss.
Alexander Motin [Sat, 2 Oct 2021 03:47:18 +0000 (23:47 -0400)]
sched_ule(4): Fix possible significance loss.

Before this change kern.sched.interact sysctl setting above 32 gave
all interactive threads identical priority of PRI_MIN_INTERACT due to
((PRI_MAX_INTERACT - PRI_MIN_INTERACT + 1) / sched_interact) turning
zero.  Setting the sysctl lower reduced the range of used priority
levels up to half, that is not great either.

Change of the operations order should fix the issue, always using full
range of priorities, while overflow is impossible there since both
score and priority values are small.  While there, make the variables
unsigned as they really are.

MFC after: 1 month

2 years agocontrib/tzdata: import tzdata 2021c
Philip Paeps [Sat, 2 Oct 2021 02:52:02 +0000 (10:52 +0800)]
contrib/tzdata: import tzdata 2021c

Merge commit '9530c11c35707c2ed4a95aa90097b30f8a230563'

Changes: https://github.com/eggert/tz/blob/2021c/NEWS

MFC after: 3 days

2 years agoImport tzdata 2021c
Philip Paeps [Sat, 2 Oct 2021 02:47:29 +0000 (10:47 +0800)]
Import tzdata 2021c

2 years agonvme: Use adaptive spinning when polling for completion or state change
Warner Losh [Fri, 1 Oct 2021 17:32:48 +0000 (11:32 -0600)]
nvme: Use adaptive spinning when polling for completion or state change

We only use nvme_completion_poll in the initialization path. The
commands they queue and wait for finish quickly as they involve no I/O
to the drive's media. These command take about 20-200 microsecnds
each. Set the wait time to 1us and then increase it by 1.5 each
successive iteration (max 1ms). This reduces initialization time by
80ms in cpervica's tests.

Use this same technique waiting for RDY state transitions. This saves
another 20ms. In total we're down from ~330ms to ~2ms.

Tested by: cperciva
Sponsored by: Netflix
Reviewed by: mav
Differential Review: https://reviews.freebsd.org/D32259

2 years agonfs: eliminate thread argument from nfsvno_namei
Mateusz Guzik [Fri, 1 Oct 2021 21:20:15 +0000 (23:20 +0200)]
nfs: eliminate thread argument from nfsvno_namei

This is a step towards retiring struct componentname cn_thread

Reviewed by: rmacklem
Differential Revision: https://reviews.freebsd.org/D32267

2 years agosctp: don't keep being locked on a stream which is removed
Michael Tuexen [Fri, 1 Oct 2021 22:48:01 +0000 (00:48 +0200)]
sctp: don't keep being locked on a stream which is removed

Reported by: syzbot+f5f551e8a3a0302a4914@syzkaller.appspotmail.com
MFC after: 1 week

2 years agovfs: hoist cn_thread assert in namei
Mateusz Guzik [Fri, 1 Oct 2021 21:13:38 +0000 (23:13 +0200)]
vfs: hoist cn_thread assert in namei

Making it condtional on whether ktrace happens to be enabled makes no
sense.

2 years agoUpdate Azure release bits
Li-Wen Hsu [Fri, 1 Oct 2021 20:59:10 +0000 (04:59 +0800)]
Update Azure release bits

Imports the changes for building official images on Azure Marketplace,
which fulfill the requirements of Azure and FreeBSD cloud images like
disk layout and UEFI for Gen2 VM, along with some minor improvements like
configurations to speed up booting.

"CLOUDWARE" list will be updated after some more collaborations with re
completed.

Reviewed by: re (gjb)
Sponsored by: The FreeBSD Foundation
Technical assistance from: Microsoft
Differential Revision: https://reviews.freebsd.org/D23804

2 years agoRe-style dfcef8771484 to keep the code and variables related to
Gleb Smirnoff [Fri, 1 Oct 2021 20:38:24 +0000 (13:38 -0700)]
Re-style dfcef8771484 to keep the code and variables related to
listening sockets separated from code for generic sockets.

No objection: markj

2 years agoFix segment size in compressing core dumps
Justin Hibbits [Fri, 1 Oct 2021 18:39:18 +0000 (13:39 -0500)]
Fix segment size in compressing core dumps

A core segment is bounded in size only by memory size.  On 64-bit
architectures this means a segment can be much larger than 4GB.
However, compress_chunk() takes only a u_int, clamping segment size to
4GB-1, resulting in a truncated core.  Everything else, including the
compressor internally, uses size_t, so use size_t at the boundary here.

This dates back to the original refactor back in 2015 (r279801 /
aa14e9b7).

MFC after: 1 week
Sponsored by: Juniper Networks, Inc.

2 years agoarm64, riscv: Fix TRAF_PC() to return the PC, not the return address.
John Baldwin [Fri, 1 Oct 2021 18:53:12 +0000 (11:53 -0700)]
arm64, riscv: Fix TRAF_PC() to return the PC, not the return address.

Reviewed by: mhorne
Obtained from: CheriBSD
Sponsored by: DARPA
Differential Revision: https://reviews.freebsd.org/D31969

2 years agofreebsd-update(8): Add -j flag to support jails
Faraz Vahedi [Fri, 1 Oct 2021 18:48:57 +0000 (13:48 -0500)]
freebsd-update(8): Add -j flag to support jails

Make freebsd-update(8) support jails by adding the -j flag which takes
a jail jid or name as an argument. This takes advantage of the recently
added -j support to freebsd-version(8) in order to get the version of
the installed userland.

Reviewed by: dteske, kevans
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D25711

2 years agofreebsd-version(1): Add -j flag to support jails
Faraz Vahedi [Fri, 1 Oct 2021 18:46:23 +0000 (13:46 -0500)]
freebsd-version(1): Add -j flag to support jails

Make freebsd-version(1) support jails by adding the -j flag which takes
a jail jid or name as an argument. As with other options, -j
flags stack and display in the order requested.

Reviewed by: bcr (manpages), kevans
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D25705

2 years agokqueue: fix recent assertion
Kyle Evans [Fri, 1 Oct 2021 16:59:31 +0000 (11:59 -0500)]
kqueue: fix recent assertion

NOTE_ABSTIME may also have a zero timeout, which indicates that we
should still fire immediately as an absolute time in the past.  A test
has been added for this one as well.

Fixes: 9c999a259f00 ("kqueue: don't arbitrarily restrict long-past...")
Point hat: kevans
Reported by: syzbot+1c8d1154f560b3930042@syzkaller.appspotmail.com

2 years agotime_t is pathological: use %j + cast to print it.
Warner Losh [Fri, 1 Oct 2021 18:14:35 +0000 (12:14 -0600)]
time_t is pathological: use %j + cast to print it.

Sponsored by: Netflix

2 years agoDon't set GELI UMA zone as UMA_ZONE_NOFREE.
Gleb Smirnoff [Fri, 1 Oct 2021 17:24:50 +0000 (10:24 -0700)]
Don't set GELI UMA zone as UMA_ZONE_NOFREE.

That fixes memory leak on last GELI provider destroyed, introduced
in 2dbc9a388ee. This patch was originally developed late 2019 and
the flag was necessary to prevent zone drainage under memory pressure.
Today, with f09cbea31a3f the UMA is fixed not to drain into reserves.

Discussed with: jtl, markj
Fixes: 2dbc9a388ee
PR: 258787

2 years agonvme: Only reset once on attach.
Warner Losh [Fri, 1 Oct 2021 17:09:34 +0000 (11:09 -0600)]
nvme: Only reset once on attach.

The FreeBSD nvme driver has reset the nvme controller twice on attach to
address a theoretical issue assuring the hardware is in a known
state. However, exierence has shown the second reset is unnecessary and
increases the time to boot. Eliminate the second reset. Should there be
a situation when you need a second reset (for buggy or at least somewhat
out of the mainstream hardware), the hardware option NVME_2X_RESET will
restore the old behavior. Document this in nvme(4).

If there's any trouble at all with this, I'll add a sysctl tunable to
control it.

Sponsored by: Netflix
Reviewed by: cperciva, mav
Differential Revision: https://reviews.freebsd.org/D32241

2 years agonvme: Remove pause while resetting
Warner Losh [Fri, 1 Oct 2021 17:09:05 +0000 (11:09 -0600)]
nvme: Remove pause while resetting

After some study of the code and the standard, I think we can just drop
the pause(), unconditionally.  If we're not initialized, then there's
nothing to wait for from a software perspective.  If we are initialized,
then there might be outstanding I/O. If so, then the qpair 'recovery
state' will transition to WAITING in nvme_ctrlr_disable_qpairs, which
will ignore any interrupts for items that complete before we complete
the reset by setting cc.en=0.

If we go on to fail the controller, we'll cancel the outstanding I/O
transactions.  If we reset the controller, the hardware throws away
pending transactions and we retry all the pending I/O transactions. Any
transactions that happend to complete before cc.en=0 will have the same
effect in the end (doing the same transaction twice is just inefficient,
it won't affect the state of the device any differently than having done
it once).

The standard imposes no wait times here, so it isn't needed from that
perspective.

Unanswered Question: Do we may need to disable interrupts while we
disable in legacy mode since those are level-sensitive.

Sponsored by: Netflix
Reviewed by: mav
Differential Revision: https://reviews.freebsd.org/D32248

2 years agonvme: Explain a workaround a little better
Warner Losh [Fri, 1 Oct 2021 15:53:10 +0000 (09:53 -0600)]
nvme: Explain a workaround a little better

The don't touch the mmio of the drive after we do a EN 1->0 transition
is only for a tiny number of dirves that have this unforunate issue.

Sponsored by: Netflix

2 years agonvme_ctrlr_enable: Small style nits
Warner Losh [Fri, 1 Oct 2021 16:51:24 +0000 (10:51 -0600)]
nvme_ctrlr_enable: Small style nits

Rewrite the nested if's using the preferred FreeBSD style for branches
of ifs that return. NFC. Minor tweaks to the comments to better fit new
code layout.

Sponsored by: Netflix
Reviewed by: mav, chuck (prior rev, but comments rolled in)
Differential Revision: https://reviews.freebsd.org/D32245

2 years agonvme: Use MS_2_TICKS rather than rolling our own
Warner Losh [Fri, 1 Oct 2021 16:50:04 +0000 (10:50 -0600)]
nvme: Use MS_2_TICKS rather than rolling our own

Sponsored by: Netflix
Reviewed by: mav
Differential Revision: https://reviews.freebsd.org/D32246

2 years agonvme_ctrlr_enable: Remove unnecessary 5ms delays
Warner Losh [Fri, 1 Oct 2021 16:47:27 +0000 (10:47 -0600)]
nvme_ctrlr_enable: Remove unnecessary 5ms delays

Remove the 5ms delays after writing the administrative queue
registers. These delays are from the very earliest days of the driver
(they are in the first commit) and were most likely vestiges of the
Chatham NVMe prototype card that was used to create this driver. Many of
the workarounds necessary for it aren't necessary for standards
compliant cards. The original driver had other areas marked for Chatham,
but these were not. They are unneeded. There's three lines of supporting
evidence.

First, the NVMe standards make no mention of a delay time after these
registers are written. Second, the Linux driver doesn't have them, even
as an option. Third, all my nvme cards work w/o them.

To be safe, add a write barrier between setting up the admin queue and
enabling the controller.

Sponsored by: Netflix
Reviewed by: mav
Differential Revision: https://reviews.freebsd.org/D32247

2 years agosem_clockwait_np test: fix usage of ATF API
Eric van Gyzen [Fri, 1 Oct 2021 11:25:48 +0000 (06:25 -0500)]
sem_clockwait_np test: fix usage of ATF API

ATF_REQUIRE_ERRNO requires the given errno iff the given expression is
true.  These test cases used it incorrectly, potentially allowing
sem_clockwait_np to succeed when it was expected to fail.  Use separate
ATF calls to require failure and the expected errno.

MFC after: 1 week
Sponsored by: Dell EMC Isilon

2 years agosem test: move sem_clockwait_np tests into individual cases
Eric van Gyzen [Fri, 1 Oct 2021 11:24:27 +0000 (06:24 -0500)]
sem test: move sem_clockwait_np tests into individual cases

Move these tests into individual test cases for all the usual reasons.
No functional change intended.

MFC after: 1 week
Sponsored by: Dell EMC Isilon

2 years agosem_clockwait_np test: relax time constraint on VMs
Eric van Gyzen [Fri, 1 Oct 2021 10:37:17 +0000 (05:37 -0500)]
sem_clockwait_np test: relax time constraint on VMs

In a guest on a busy hypervisor, the time remaining after an
interrupted sleep could be much lower than other environments.
Relax the lower bound on VMs.

MFC after: 1 week
Sponsored by: Dell EMC Isilon

2 years agotcp: Make dsack stats available in netstat and also make sure its aware of TLP's.
Randall Stewart [Fri, 1 Oct 2021 14:32:30 +0000 (10:32 -0400)]
tcp: Make dsack stats available in netstat and also make sure its aware of TLP's.

DSACK accounting has been for quite some time under a NETFLIX_STATS ifdef. Statistics
on DSACKs however are very useful in figuring out how much bad retransmissions you
are doing. This is further complicated, however, by stacks that do TLP. A TLP
when discovering a lost ack in the reverse path will cause the generation
of a DSACK. For this situation we introduce a new dsack-tlp-bytes as well
as the more traditional dsack-bytes and dsack-packets. These will now
all display in netstat -p tcp -s. This also updates all stacks that
are currently built to keep track of these stats.

Reviewed by: tuexen
Sponsored by: Netflix Inc.
Differential Revision: https://reviews.freebsd.org/D32158

2 years agomixer(3): Fix buildworld after 38c857d956d61b811fb2047bc980b90d64a072bf .
Hans Petter Selasky [Fri, 1 Oct 2021 14:34:03 +0000 (16:34 +0200)]
mixer(3): Fix buildworld after 38c857d956d61b811fb2047bc980b90d64a072bf .

s/default_unit/dunit/g

Differential Revision: https://reviews.freebsd.org/D32254
Sponsored by: NVIDIA Networking

2 years agomixer(3): Add some manual page symlinks.
Hans Petter Selasky [Fri, 1 Oct 2021 12:17:20 +0000 (14:17 +0200)]
mixer(3): Add some manual page symlinks.

Submitted by: christos@
Differential Revision: https://reviews.freebsd.org/D32254
Sponsored by: NVIDIA Networking