Commit Graph

276723 Commits

Author SHA1 Message Date
Dimitry Andric
3b7f365e4d Apply clang fix for assertion building llvm with libc++ 15
Merge commit f1b0a4fc540f from llvm git (by Richard Smith):

  An expression should only contain an unexpanded parameter pack if it
  lexically contains a mention of the pack.

  Systematically distinguish between syntactic and semantic references to
  packs, especially when propagating dependence from a type into an
  expression. We should consult the type-as-written when computing
  syntactic dependence and should consult the semantic type when computing
  semantic dependence.

  Fixes #54402.

MFC after:	3 days
2022-07-03 21:33:22 +02:00
Gordon Bergling
6cea3be922 sockatmark(3): Add references to 4.4BSD IPC tutorials
Obtained from:	NetBSD
MFC after:	3 days
2022-07-03 15:56:42 +02:00
Gordon Bergling
e8b7972cfe if_clone: Fix a typo in a source code comment
- s/fucntions/functions/

MFC ater:	3 days
2022-07-03 15:13:32 +02:00
Gordon Bergling
015d570cc9 jme(4): Fix a typo in a source code comment
- s/fuctions/functions/

MFC after:	3 days
2022-07-03 15:13:01 +02:00
Gordon Bergling
23781068af ata(4): Fix a typo in a source code comment
- s/fuctions/functions/

MFC after:	3 days
2022-07-03 15:12:26 +02:00
Gordon Bergling
c7b9006af5 snmp_hostres(3): Fix a typo in a debug message
- s/atempt/attempt/

MFC after:	3 days
2022-07-03 14:57:12 +02:00
Gordon Bergling
66147d138a aic7xxx: Fix a few common typo in source code comments
- s/irrespecitve/irrespective/

Obtained from:	NetBSD
MFC after:	3 days
2022-07-03 14:10:30 +02:00
Gordon Bergling
9bfefcea43 aic7xxx: Fix a few common typos in source code comments
- s/ingnore/ignore/
- s/ingnored/ignored/

MFC after:	3 days
2022-07-03 14:06:48 +02:00
Gordon Bergling
f1334ab76b freescale: Fix a typo in a source code comment
- s/transistions/transitions/

MFC after:	3 days
2022-07-03 13:55:40 +02:00
Gordon Bergling
a4adfaf712 pmc(3): Fix a common typo in a description
- s/transistioned/transitioned/

MFC after:	3 days
2022-07-03 13:53:01 +02:00
Gordon Bergling
00c00c3824 pci(4): Fix a common typo in source code comments
- s/transistions/transitions/

MFC after:	3 days
2022-07-03 13:43:44 +02:00
Warner Losh
ef86876b84 pselect(2): Document what a null pointer for the signalmask means
When pselect is passed a null pointer for the signal mask, the standard
says it shall behave like select (except for the different timeout
arg). Make a note of that here.

Sponsored by:		Netflix
2022-07-02 13:41:46 -06:00
Warner Losh
cf72911158 acpi: add sys/kernel.h
sys/kernel.h is needed for tunable fetching.

Sponsored by:		Netflix
2022-07-02 10:35:49 -06:00
Bjoern A. Zeeb
8154df37a5 arm64: NXP add LS1088a clockgen support
Add a driver for NXP LS1088a clockgen support which passes
configuration information to QorIQ clockgen class.
The implementaiton started off as copy of ls1028 support and was
adjusted accordingly.

Reviewed by:	dgr_semihalf.com (earlier), mmel
MFC after:	1 week
Sponsored by:	Traverse Technologies (providing Ten64 HW for testing)
Differential Revision: https://reviews.freebsd.org/D35617
2022-07-02 16:27:23 +00:00
Warner Losh
2753bbe71b amd64/efi: Remove setting hints for rsdp
Given that hints set this way don't work when a static kenv is compiled
into the kernel. acpi.rsdp has been set for this for the past 6 years,
and all kernels in that time have used it in preference to the hints. As
such, we no longer hints.*, so remove them.

Sponsored by:		Netflix
Reviewed by:		jhb
Differential Revision:	https://reviews.freebsd.org/D35634
2022-07-02 08:02:12 -06:00
Warner Losh
26031009cf amd64/efi: Stop falling back to hints for RSDP
All boot loaders for the last 6 years set acpi.rsdp in addition to the
hints. This was planned for removal ~5 years ago. Belatedly remove it
from here.

Sponsored by:		Netflix
Reviewed by:		jhb
Differential Revision:	https://reviews.freebsd.org/D35633
2022-07-02 08:02:12 -06:00
Warner Losh
37a3df3d61 loader: Set preferred kenv for acpi.rsdp on arm64
Several years ago, x86 moved from using hints to communicate this
information to using the simpler acpi.rsdp variables. If one compiles
static hints into the kernel, then these hints are ignored. We can
remove this when we branch FreeBSD 15. Thought about BURN_BRIDGES
here, but it's too messy.

Sponsored by:		Netflix
Reviewed by:		andrew, jhb
Differential Revision:	https://reviews.freebsd.org/D35632
2022-07-02 08:02:12 -06:00
Warner Losh
064f00ec27 arm64: Grab the RSDP from acpi.rsdp like x86
arm64 wasn't updated to grab this from acpi.rsdp when x86 was
update. belatedly update the kernel to grab this information from the
preferred kenv.

Sponsored by:		Netflix
Reviewed by:		andrew, jhb
Differential Revision:	https://reviews.freebsd.org/D35631
2022-07-02 08:02:12 -06:00
Warner Losh
b69996d1d5 tty: Default to printing kernel stack traceback only on INVARIANT kernels
Change the default from printing a breif kernel thread stack informaton
back to omitting it for non-invariant kernels in response to
SIGINFO/^T. Full and brief stack support can be selected with the
kern.tty_info_kstacks sysctl.

MFC After:		2 weeks
Sponsored by:		Netflix
Reviewed by:		grembo, jhb
Differential Revision:	https://reviews.freebsd.org/D35576
2022-07-02 08:02:12 -06:00
Dimitry Andric
836d47d38e Apply llvm fix for assertion/crash building archivers/c-blosc2
Merge commit 88ce403c6aab from llvm git (by Florian Hahn):

  [LV] Add new block to place recurrence splice, if needed.

  In some cases, a recurrence splice instructions needs to be inserted
  between to regions, for example if the regions get re-arranged during
  sinking.

  Fixes #56146.

PR:		264979
Reported by:	Robert Clausecker <fuz@fuz.su>
MFC after:	3 days
2022-07-02 01:13:46 +02:00
Rick Macklem
c0d14b0220 mount_nfs: Warn that intr, soft are not safe for NFSv4
If the "intr" and/or "soft" mount options are used for
NFSv4 mounts, the protocol can be broken when the
operation returns without waiting for the RPC reply.
The likelyhood of failure increases for NFSv4.1/4.2
mounts, since the session slot will be broken when
an RPC reply is not processed.

This is mentioned in the BUGS section of "man mount_nfs",
but more needs to be done.  This patch adds code that
generates a warning message when the mount is done.

PR: 260011
Reviewed by:	emaste
MFC after:	2 weeks
Differential Revision:	https://reviews.freebsd.org/D35407
2022-07-01 14:43:17 -07:00
Warner Losh
ea5b2d6242 MIMIMAL: add uart
While uart could be detected completely through plug and play means, add
it here for two reasons. First, we don't do that from the loader, so
it's not available as a console. Second, even if we did do it from the
loader, there's a limitation in the system today that console drivers
must be compiled into the kernel because the console is selected before
external modules are linked into the kernel. Adding it only increases
the kernel size by ~14k as well.

Sponsored by:		Netflix
Idea liked by:		des, rpokala, brooks, jhb
2022-07-01 11:24:51 -06:00
Mark Johnston
99df914899 crypto: Validate return values from CRYPTODEV_PROCESS()
Errors are always handled by the completion callback, so we should check
that they're not also passed back to the caller.

No functional change intended.

Reviewed by:	kp, mav, jhb
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D35382
2022-07-01 11:09:39 -04:00
Mark Johnston
8179db52c2 crypto: Fix the NULL_HMAC finalizer
The current implementation leaves the digest buffer partially
uninitialized.

Reported by:	syzkaller
Reviewed by:	jhb
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D35547
2022-07-01 11:04:15 -04:00
Mark Johnston
b72f1f4516 ena: Make first_interrupt a uint8_t
We do not have atomic(9) routines for bools, and it is not guaranteed
that sizeof(bool) is 1.

This fixes the KASAN and KMSAN kernel builds, which fail because the
compiler refuses to silently cast a _Bool * to a uint8_t * when calling
the atomic(9) sanitizer interceptors.

Reviewed by:	Dawid Górecki <dgr@semihalf.com>
MFC after:	2 weeks
Fixes:	0ac122c388 ("ena: Use atomic_load/store functions for first_interrupt variable")
Differential Revision:	https://reviews.freebsd.org/D35683
2022-07-01 11:00:58 -04:00
Bjoern A. Zeeb
17732dd8f0 Revert "rtw88: split driver up into a core and pci part"
After some discussion, for now, simply revert the change to split
the driver up into if_rtw88_core.ko and if_rtw88_pci.ko as we do
not have an if_rtw88.ko anymore.  We do have code trying to
auto-load modules, e.g. ifconfig, based on if_xxx.ko.

We could, based on Makefile magic or further code, generate a
if_rtw88.ko module with proper dependencies and keep this but for
simplicity stay with the one slightly larger module for now.
Should code appear to do this "properly" we can revisit this once
USB support has landed.

Slightly update the module Makefile to keep the separation of files
between core and pci bits visible and maintainable for the future.

This reverts commit 0f7b9777f8.
2022-07-01 13:06:31 +00:00
Alfredo Dal'Ava Junior
5d48fb3b16 loader: fix powerpc* ofw loader
With the introduction of llvm14, the powerpc* loader used on ofw/pseries
for 32 and 64 bit architectures puts the .data.rel.ro section after
.data section. This caused a crash kernel didn't boot. Bisect pointed to
change https://reviews.llvm.org/D111717 but problem could be fixed by
adding a section description to make it appear in the expected order.

This patch is based on discussion at:
        https://github.com/llvm/llvm-project/issues/56306

MFC after:	1 day
Sponsored by:	Instituto de Pesquisas Eldorado (eldorado.org.br)
2022-07-01 12:56:46 -03:00
Kristof Provost
ba3b6b938d pf: handle dummynet for non-IP packets
Do not panic if we try to dummynet an Ethernet packet that's not IPv4 or
IPv6. Simply give it to dummynet.

Sponsored by:	Rubicon Communications, LLC ("Netgate")
2022-07-01 14:31:57 +02:00
Dag-Erling Smørgrav
42db2dbbc5 Catch up with 2004 and improve markup.
Sponsored by:	Juniper Networks, Inc.
Sponsored by:	Klara, Inc.
MFC after:	1 week
Differential Revision: https://reviews.freebsd.org/D35676
2022-07-01 12:29:04 +00:00
Albert Jakiela
1323f0aa9c stand/uboot: setup archsw before probing devices
In some cases ubldr would try to mount a disk device before
the archsw struct was filled with functions pointers.
This would result in a NULL pointer derefrence of the arch_getdev field.
Fix that filling the archsw functions earlier.
Note that this matches the EFI behavoiur.

Reviewed by: imp, mw
Sponsored by: Stormshield
Obtained from: Semihalf
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D35670
2022-07-01 13:36:41 +02:00
Mateusz Piotrowski
9e337d53de tslog.4: Document what TSLOG excels at
Based on an email mhorne@ sent to arch@.

Reviewed by:	debdrup, pauamma_gundo.com
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D34565
2022-07-01 11:17:12 +02:00
Mateusz Piotrowski
86e3fb4038 boottrace.4: Document that boottrace is good at tracing one-shot events
Based on an email mhorne@ sent to arch@.

Reviewed by:	debdrup
Differential Revision:	https://reviews.freebsd.org/D34566
2022-07-01 11:09:46 +02:00
Zhenlei Huang
2567cc419e ifconfig.8: Polish
MFC after:	3 days
Differential Revision:	https://reviews.freebsd.org/D35686
2022-07-01 11:00:26 +02:00
Kristof Provost
6c77f8f0e0 if_ovpn: handle m_pullup() failure
Ensure we correctly handle m_pullup() failing in ovpn_finish_rx().

Reported by:	Coverity (CID 1490340)
Sponsored by:	Rubicon Communications, LLC ("Netgate")
2022-07-01 10:02:32 +02:00
Kristof Provost
5fb35badc0 if_ovpn tests: IPv4-mapped IPv6 address test
OpenVPN uses IPv4-mapped IPv6 addresses by default (if we don't specify
'proto udp4', or an IPv4 address to bind to). Test that this works.

Sponsored by:   Rubicon Communications, LLC ("Netgate")
2022-07-01 10:02:32 +02:00
Kristof Provost
9f7c81eb33 if_ovpn: deal with v4 mapped IPv6 addresses
Openvpn defaults to binding to IPv6 sockets (with
setsockopt(IPV6_V6ONLY=0)), which we didn't deal with.
That resulted in us trying to in6_selectsrc_addr() on a v4 mapped v6
address, which does not work.

Instead we translate the mapped address to v4 and treat it as an IPv4
address.

Sponsored by:	Rubicon Communications, LLC ("Netgate")
2022-07-01 10:02:32 +02:00
Brooks Davis
711d50bd9e dtrace: Remove local mips support
Remove the stub pid probe and all the build glue.

Reviewed by:	imp, jhb
Sponsored by:	DARPA, AFRL
Differential Revision:	https://reviews.freebsd.org/D35541
2022-07-01 08:33:17 +01:00
Brooks Davis
724123b9f4 libcompat: Use WORLDTMP sysroot
Now that -m32 is fixed, just install libs in ${WORLDTMP}/lib/lib32
and use the installed headers.

Reviewed by:	imp, jhb
Obtained from:	CheriBSD
Differential Revision:	https://reviews.freebsd.org/D34697
2022-07-01 08:33:16 +01:00
Brooks Davis
bda5d2a45c installworld: improve portability of ldd use
b3b462229f added a case statement to ignore lines containing strings
in square brackets such as "[vdso]" and "[preloaded]". On MacOS
Monterey where /bin/sh may be zsh, this fails with:

/bin/sh: -c: line 0: syntax error near unexpected token `;;'

Invoke grep in the pipeline to remove such lines instead.

Reviewed by:	emaste
Sponsored by:	DARPA, AFRL
Differential Revision:	https://reviews.freebsd.org/D35618
2022-07-01 08:33:16 +01:00
Kornel Dulęba
3b8d04f845 igc: Change default duplex setting
During media selection through ifconfig one might not specify
the duplex setting through the mediaopt flag.
In that case the igc driver would default to full-duplex.
The problem with this approach is that e1000(em/igb) driver
defaults to half-duplex.
Because of that if one connects both NICs and sets media to
e.g. 100baseTX on both of them no link will be found.
Fix that by matching igc behaviour with what e1000 does.

Reviewed by: grehan
Approved by: mw(mentor)
Obtained from: Semihalf
Sponsored by: Stormshield
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D35673
2022-07-01 08:12:08 +02:00
Kornel Dulęba
ab453714fc Add myself(kd) as src commiter and mw/emaste as my co-mentors
Approved by: mw(mentor)
Differential Revision: https://reviews.freebsd.org/D35658
2022-07-01 08:12:08 +02:00
Jessica Clarke
b0a8333a88 libicp_rescue: Fix build for powerpc64le
This is a repeat of 13cee53cef35 ("libicp: Fix build for powerpc64le")
but for the rescue version of the library.

Fixes:	1f1e2261e3 ("zfs: merge openzfs/zfs@deb121309")
2022-07-01 04:28:15 +01:00
Jessica Clarke
9921563f43 libicp: Fix build for powerpc64le
The C sources use the assembly routines for little-endian powerpc64, and
the assembly files have ppc64le in their names, but the guard here was
for big-endian powerpc64.

Fixes:	1f1e2261e3 ("zfs: merge openzfs/zfs@deb121309")
2022-07-01 01:30:26 +01:00
Mihai Burcea
9aa02d5120 vmm: Fix snapshots for AMD CPUs
This patch fixes the AMD implementation for snapshotting.  It removes
unnecessary vmcb fields that should not be saved and duplicates.

Reviewed by:	jhb
Differential Revision: https://reviews.freebsd.org/D33431
2022-06-30 16:13:55 -07:00
John Baldwin
e5ed417bb4 bhyve: Document the "type" config variable for network device models. 2022-06-30 15:14:36 -07:00
Vitaliy Gusev
f0880ab791 libvmmapi: Add vm_close()
Currently there is no way to safely free a vm structure without
leaking the fd.  vm_destroy() closes the fd but also destroys the VM
whereas in some cases a VM needs to be opened (vm_open) and then
closed (vm_close).

Reviewed by:	jhb
Sponsored by:	vStack
Differential Revision:	https://reviews.freebsd.org/D35073
2022-06-30 14:21:57 -07:00
Mateusz Piotrowski
87f49967d3 Link pwd.db.5 and spwd.db.5 to passwd.5
Let's make it easier to find documentation for those databases.

MFC after:	3 days
2022-06-30 23:10:28 +02:00
Mateusz Piotrowski
606cdb2ef3 hier.7: Document /nonexistent
MFC after:	1 week
2022-06-30 23:10:28 +02:00
Mateusz Piotrowski
523477f8c5 devfs.5: Replace Nm with Xr devfs 8 where appropriate
MFC after:	3 days
2022-06-30 23:10:28 +02:00
Jessica Clarke
4ca6ecf100 Really fix cross-builds from macOS
LINKER_TYPE is set to mac not macos on macOS.

Fixes:	7927452ac4 ("Add RELRO build knob, default to enabled")
2022-06-30 22:08:31 +01:00