FreeBSD/src 782fe2fsys/contrib/dev/iwlwifi/mld mld.c, sys/contrib/dev/iwlwifi/mvm ops.c

iwlwifi: adjust driver description

Adjust the module driver descriptions for mvm and mld to make it clear
that this is not a driver for Linux but a Linux-based driver for FreeBSD.
Cleanup surroundings.

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+6-0sys/contrib/dev/iwlwifi/mld/mld.c
+1-2sys/contrib/dev/iwlwifi/mvm/ops.c
+7-22 files

FreeBSD/src 7db8503sys/contrib/dev/iwlwifi/mld mld.c

iwlwifi: mld: add LINUXKPI_PARAM_PREFIX

Add a LINUXKPI_PARAM_PREFIX to mld to properly export the
power_scheme module_param (sysctl).  This is especially needed given
mvm has the same parameter and we need to avoid a clash.

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+4-0sys/contrib/dev/iwlwifi/mld/mld.c
+4-01 files

FreeBSD/src 551c4cbsys/contrib/dev/iwlwifi/mld mld.c

iwlwifi: mld: move module_init() to SI_ORDER_SECOND

In FreeBSD the iwlwifi driver is a single kernel module.
As for iwlwifi/mvm we need to make sure the common "iwlwifi drv" code
is initialized before trying to register the mld sub-driver
in order for lists, etc. in the registration code to be initialized.
We do this by using an extended (FreeBSD specific) version of
module_init which overrides the order parameter of the SYSINIT.
Otherwise we can randomly (depending on SYSINIT run order) run into
a NULL pointer deref panic.

Sponsored by:   The FreeBSD Foundation
PR:             291120
MFC after:      3 days
DeltaFile
+4-0sys/contrib/dev/iwlwifi/mld/mld.c
+4-01 files

FreeBSD/src a456f85. UPDATING, lib/csu/common crtbrand.S

Update in preparation for 14.4-RELEASE

- Bump BRANCH to RELEASE
- Add the anticipated RELEASE announcement date
- Set a static __FreeBSD_version

Approved by:    re (implicit)
Sponsored by:   OpenSats Initiative
DeltaFile
+3-0UPDATING
+1-1lib/csu/common/crtbrand.S
+1-1sys/conf/newvers.sh
+5-23 files

FreeBSD/src b302ca6usr.bin/less lesspipe.sh

lesspipe: Allow zstd to operate on a symlink

By default zstd refuses to operate on symlinks, so for example
`zless /var/crash/vmcore.last.zst` failed to view the uncompressed core
file.  Add -f to the zstd command line to allow operation on symlinks.

Reviewed by:    delphij
Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55101

(cherry picked from commit b4305c90a3be7e1a40b76545b8b761fdbda5c309)
(cherry picked from commit 68125692efacbce537e14ba16ecedff750cccc36)
DeltaFile
+1-1usr.bin/less/lesspipe.sh
+1-11 files

FreeBSD/src 6812569usr.bin/less lesspipe.sh

lesspipe: Allow zstd to operate on a symlink

By default zstd refuses to operate on symlinks, so for example
`zless /var/crash/vmcore.last.zst` failed to view the uncompressed core
file.  Add -f to the zstd command line to allow operation on symlinks.

Reviewed by:    delphij
Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55101

(cherry picked from commit b4305c90a3be7e1a40b76545b8b761fdbda5c309)
DeltaFile
+1-1usr.bin/less/lesspipe.sh
+1-11 files

FreeBSD/src 3e8a999sys/amd64/amd64 trap.c

amd64: extract uprintf_signal printing into a helper
DeltaFile
+25-15sys/amd64/amd64/trap.c
+25-151 files

FreeBSD/src 272ea45sys/amd64/amd64 trap.c

amd64: print userspace fsbase and gsbase for uprintf_signal
DeltaFile
+19-2sys/amd64/amd64/trap.c
+19-21 files

FreeBSD/src ef8292esys/compat/freebsd32 freebsd32_systrace_args.c freebsd32_syscall.h, sys/kern systrace_args.c

Regen
DeltaFile
+38-0sys/kern/systrace_args.c
+38-0sys/compat/freebsd32/freebsd32_systrace_args.c
+9-0sys/sys/sysproto.h
+2-1sys/sys/syscall.h
+2-1sys/compat/freebsd32/freebsd32_syscall.h
+2-1sys/sys/syscall.mk
+91-36 files not shown
+99-312 files

FreeBSD/src 5c71df9sys/fs/nfsclient nfs_clvnops.c nfs_clbio.c

nfsclient: convert to use vn_delayed_setsize()

Reviewed by:    rmacklem
Tested by:      pho
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D55595
DeltaFile
+7-61sys/fs/nfsclient/nfs_clvnops.c
+2-2sys/fs/nfsclient/nfs_clbio.c
+1-1sys/fs/nfsclient/nfs_clport.c
+0-1sys/fs/nfsclient/nfsnode.h
+10-654 files

FreeBSD/src 45117ffsys/fs/deadfs dead_vnops.c, sys/kern vfs_vnops.c vnode_if.src

vfs: add VOP_DELAYED_SETSIZE() and related infrastructure

The change generalizes code that was initially developed for nfs client
to handle filesystems that needs to call vnode_pager_setsize() while
only owning the vnode lock shared.  Since vnode pager might need to trim
or extend the vnode vm_object' page queue, the vnode lock for the call
must be owned exclusive.  This is typical for filesystems with remote
authorative source of file attributes, like nfs/p9/fuse.

Handle the conflict by delaying the vnode_pager_setsize() to the next
vnode locking to avoid relock.  But if the next locking request is in
shared mode, lock it exclusively instead, perform the delayed
vnode_pager_setsize() call by doing VOP_DEFAULT_SETSIZE(), and then
downgrade to shared.

Filesystems that opt into the feature must provide the implementation of
VOP_DELAYED_SETSIZE() that actually calls vnode_pager_setsize(), and use
vn_delay_setsize() helper to mark the vnode as requiring the delay call.


    [5 lines not shown]
DeltaFile
+73-1sys/kern/vfs_vnops.c
+31-0sys/sys/vnode.h
+8-0sys/kern/vnode_if.src
+1-0sys/fs/deadfs/dead_vnops.c
+1-0sys/kern/vfs_default.c
+114-15 files

FreeBSD/src 28599a1include stdio.h, lib/libsys Symbol.sys.map

sys: add renameat2(2) syscall

Reviewed by:    markj
Tested by:      pho
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D55539
DeltaFile
+9-1sys/kern/syscalls.master
+10-0sys/kern/vfs_syscalls.c
+1-0include/stdio.h
+1-0lib/libsys/Symbol.sys.map
+21-14 files

FreeBSD/src 619e49blib/libsys rename.2 Makefile.sys

renameat2(2): document

Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D55539
DeltaFile
+65-0lib/libsys/rename.2
+2-1lib/libsys/Makefile.sys
+67-12 files

FreeBSD/src 7aaec5fsys/fs/msdosfs msdosfs_vnops.c, sys/fs/tmpfs tmpfs_vnops.c

renameat2(2): implement AT_RENAME_NOREPLACE flag

For msdosfs, tmpfs, and ufs.

Reviewed by:    markj
Tested by:      pho
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D55539
DeltaFile
+20-4sys/kern/vfs_syscalls.c
+7-2sys/fs/msdosfs/msdosfs_vnops.c
+7-2sys/fs/tmpfs/tmpfs_vnops.c
+6-1sys/ufs/ufs/ufs_vnops.c
+3-0sys/sys/fcntl.h
+43-95 files

FreeBSD/src 8feb8d2sys/compat/linux linux_file.c

linuxolator: translate LINUX_RENAME_NOREPLACE into our AT_RENAME_NOREPLACE

Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D55539
DeltaFile
+23-12sys/compat/linux/linux_file.c
+23-121 files

FreeBSD/src e486066sys/fs/msdosfs msdosfs_vnops.c, sys/fs/nfsclient nfs_clvnops.c

VOP_RENAME(9): add flags argument

Reviewed by:    markj
Tested by:      pho
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D55539
DeltaFile
+7-0sys/ufs/ufs/ufs_vnops.c
+6-1sys/fs/unionfs/union_vnops.c
+6-0sys/fs/nfsclient/nfs_clvnops.c
+5-0sys/fs/p9fs/p9fs_vnops.c
+5-0sys/fs/msdosfs/msdosfs_vnops.c
+5-0sys/fs/tmpfs/tmpfs_vnops.c
+34-17 files not shown
+51-413 files

FreeBSD/src 5f911ealib/libsys rename.2

libsys/rename.2: remove commented-out CAVEAT section

FreeBSD UFS does not support hardlinks to directories.

Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D55539
DeltaFile
+0-26lib/libsys/rename.2
+0-261 files

FreeBSD/src 7a1217fsys/contrib/openzfs/include/os/freebsd/zfs/sys zfs_vnops_os.h, sys/contrib/openzfs/module/os/freebsd/zfs zfs_vnops_os.c

zfs: implement AT_RENAME_NOREPLACE

Reviewed by:    markj
Tested by:      pho
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D55539
DeltaFile
+17-8sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops_os.c
+2-2sys/contrib/openzfs/include/os/freebsd/zfs/sys/zfs_vnops_os.h
+1-1sys/contrib/openzfs/module/zfs/zfs_replay.c
+20-113 files

FreeBSD/src 1f30200sys/compat/linux linux_file.c, sys/kern vfs_syscalls.c

kern_renameat(9): add flags argument

Reviewed by:    markj
Tested by:      pho
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D55539
DeltaFile
+4-4sys/kern/vfs_syscalls.c
+2-2sys/compat/linux/linux_file.c
+1-1sys/sys/syscallsubr.h
+7-73 files

FreeBSD/src ed87040sys/contrib/openzfs/module/os/freebsd/zfs zfs_vnops_os.c

zfs rename: properly cleanup on errors occuring before zfs_do_rename()

Reported and tested by: arrowd
Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D55539
DeltaFile
+16-7sys/contrib/openzfs/module/os/freebsd/zfs/zfs_vnops_os.c
+16-71 files

FreeBSD/src 347cec1sys/amd64/amd64 efirt_support.S

amd64: align stack on 16 bytes when calling into a EFIRT method

Reported by:    Abdelkader Boudih
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
DeltaFile
+1-0sys/amd64/amd64/efirt_support.S
+1-01 files

FreeBSD/src b4269besys/dev/iwx if_iwx.c

iwx: Fix 32-bit compilation

- Avoid shifts wider than integer types, by wrapping the corresponding
  checks into '#if __SIZEOF_SIZE_T__ > 32' blocks.  'bus_addr_t'
  currently has the same width as 'size_t' on all architectures (and
  this is not going to change for 32-bit architectures).
- Use appropriate printf(3) format for 'wk_keytsc'.

Reviewed by:    adrian
MFC after:      1 minute
MFC to:         stable/15
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D55667

(cherry picked from commit 35da55c28dbb56dd7056b7863efc5b547950d885)
DeltaFile
+16-5sys/dev/iwx/if_iwx.c
+16-51 files

FreeBSD/src 35da55csys/dev/iwx if_iwx.c

iwx: Fix 32-bit compilation

- Avoid shifts wider than integer types, by wrapping the corresponding
  checks into '#if __SIZEOF_SIZE_T__ > 32' blocks.  'bus_addr_t'
  currently has the same width as 'size_t' on all architectures (and
  this is not going to change for 32-bit architectures).
- Use appropriate printf(3) format for 'wk_keytsc'.

Reviewed by:    adrian
MFC after:      1 minute
MFC to:         stable/15
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D55667
DeltaFile
+17-6sys/dev/iwx/if_iwx.c
+17-61 files

FreeBSD/src 9cea0f0share/mk bsd.linker.mk

bsd.linker.mk: Retire support for binutils 2.17.50

GNU binutils 2.17.50 is the last GPLv2 version, and we retained support
in FreeBSD while it was part of the in-tree toolchain.  The last parts
of binutils 2.17.50 were removed in commit 74e8d41e0ac8 ("Retire
BINUTILS and BINUTILS_BOOTSTRAP options") and there is no longer a need
for the build infrastructure.

We retain build-id and ifunc in LINKER_FEATURES unconditionally for now,
as they may be tested by 3rd-party Makefiles.  We can however stop
testing for them in the tree.

Reviewed by:    imp
Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55674
DeltaFile
+1-3share/mk/bsd.linker.mk
+1-31 files

FreeBSD/src a1789fasys/netinet6 in6_pcb.c

netinet6: Remove support for connecting to IN6ADDR_ANY

RFC4291 section 2.5.2:
    The unspecified address must not be used as the destination address
    of IPv6 packets or in IPv6 Routing headers.  An IPv6 packet with a
    source address of unspecified must never be forwarded by an IPv6
    router.

We disallowed connections to IN6ADDR_ANY by default, as of commit
627e126dbb07 ("netinet6: Disallow connections to IN6ADDR_ANY").  As this
is actually disallowed by the RFC, just remove the support.

Reported by:    bz (in D54306)
Reviewed by:    bz, glebius
Relnotes:       yes
Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D54942
DeltaFile
+2-17sys/netinet6/in6_pcb.c
+2-171 files

FreeBSD/src 27cfa8elib/libc/quad Symbol.map

libc/quad: narrow list of symbols exposed for 32-bit arm

lld doesn't notice, but ld.bfd complains.

Reviewed by:    brooks
Differential Revision:  https://reviews.freebsd.org/D55657
DeltaFile
+14-0lib/libc/quad/Symbol.map
+14-01 files

FreeBSD/src 54bf594lib/libc/quad Symbol.map

libc/quad: Switch to per-arch lists of symbols

This more closely mirrors libc/quad/Makefile.inc and is easier to
read.

Reviewed by:    brooks
Differential Revision:  https://reviews.freebsd.org/D55658
DeltaFile
+23-28lib/libc/quad/Symbol.map
+23-281 files

FreeBSD/src 1b77f6eshare/mk bsd.linker.mk

bsd.linker.mk: Document ifunc, ifunc-noplt, riscv-relaxations features

Reviewed by:    emaste
Differential Revision:  https://reviews.freebsd.org/D55655
DeltaFile
+3-0share/mk/bsd.linker.mk
+3-01 files

FreeBSD/src cf92fa3share/mk bsd.linker.mk

bsd.linker.mk: Sort list of linker features

Reindent the features as well to be friendly to long feature names.

Reviewed by:    emaste
Differential Revision:  https://reviews.freebsd.org/D55656
DeltaFile
+8-8share/mk/bsd.linker.mk
+8-81 files

FreeBSD/src d19f2afsys/dev/acpica acpi.c

acpi: Don't attach a "wake" sysctl node to devices without the ACPI flags IVAR

Not all bus drivers for ACPI-aware devices implement the ACPI flags
IVAR used by the acpi_wake_set_sysctl handler.  In some cases this may
be a feature as some new-bus devices share the same ACPI handle (e.g.
a pcibX device and its child pciY device) which can lead to confusing
results (e.g. setting the sysctl on pciY changes the behavior of the
parent pcibX device, but the "wake" sysctl for pcibX won't reflect the
new behavior, or reflect the device's state).

Reviewed by:    obiwac, ngie, imp
Differential Revision:  https://reviews.freebsd.org/D55562
DeltaFile
+1-1sys/dev/acpica/acpi.c
+1-11 files