FreeBSD/src ebbe4bbshare/man/man4 wlan.4

wlan.4: Add 802.11ac to the list of supported standards

Our Wi-Fi documentation will benefit from more holistic improvement,
but we should at least include a reference to 802.11ac (Wi-Fi 5) after
all of the recent work.

Sponsored by:   The FreeBSD Foundation
DeltaFile
+2-2share/man/man4/wlan.4
+2-21 files

FreeBSD/src 0fe5834contrib/netcat netcat.c nc.1

netcat: Allow service names to be used.

Someone should really do a vendor import, but it's non-trivial, as we
have local modifications.  In the meantime, here's a nine-year-old
upstream patch which allows service names to be used instead of port
numbers.

MFC after:      1 week
Obtained from:  OpenBSD
Reviewed by:    allanjude
Differential Revision:  https://reviews.freebsd.org/D50348

(cherry picked from commit 6d3d1fc3a30453be19831f79399bcba0ae822ad1)
DeltaFile
+29-13contrib/netcat/netcat.c
+3-3contrib/netcat/nc.1
+32-162 files

FreeBSD/src 6580845contrib/openpam/lib/libpam openpam_constants.c

libpam: Additional module directory.

Many if not most ports that install PAM modules install them into
${LOCALBASE}/lib/security instead of just ${LOCALBASE}/lib, because
all the world is Linux.  Rather than try to fix the ports, add that
directory to the search path.

MFC after:      1 week
Relnotes:       yes
Reviewed by:    delphij
Differential Revision:  https://reviews.freebsd.org/D50626

(cherry picked from commit bb625fc2ac801d0a06ef0edab37a9bdaf209f008)
DeltaFile
+2-0contrib/openpam/lib/libpam/openpam_constants.c
+2-01 files

FreeBSD/src 79d0f44usr.sbin/rpcbind rpcbind.c

rpcbind: Ensure krpc is present.

MFC after:      1 week
Reviewed by:    rmacklem, glebius
Differential Revision:  https://reviews.freebsd.org/D50627
DeltaFile
+21-14usr.sbin/rpcbind/rpcbind.c
+21-141 files

FreeBSD/src 1fee998sys/sys param.h, sys/vm vm_page.c vm_phys.c

vm_page: Retire its listq field

Over the life cycle of a vm_page, its listq field has been used for two
distinct purposes.  First, linking together all of the pages allocated
to a vm_object.  Recently, c8d56817b80f ("vm_object: drop memq field")
completed the elimination of this use case, using pctrie iterators in
place of iteration over the listq.  Second, linking together power-of-
two-sized chunks of free pages within vm_phys.  This change eliminates
that use case.  In essence, this change reverts vm_phys back to using
the plinks.q field, like it did before 5cd29d0f3cda ("Improve VM page
queue scalability."), but with a twist to maintain scalability.  Just
before vm_phys uses the plinks.q field, it ensures that any lazy dequeue
from a paging queue, e.g., PQ_ACTIVE, has completed.  Typically, the
dequeue has completed, so vm_page_dequeue() is infrequently called by
vm_freelist_add().  The reason being that vm_phys only needs to use the
plinks.q field within the first page of any power-of-two-sized chunk,
so the rest of the pages can still have pending dequeues until the
chunk is split.


    [9 lines not shown]
DeltaFile
+15-7sys/vm/vm_page.c
+15-5sys/vm/vm_phys.c
+1-1sys/sys/param.h
+0-1sys/vm/vm_page.h
+31-144 files

FreeBSD/src 3a427b8sys/contrib/dev/rtw89 chan.c

rtw89: prevent a NULL pointer deref in rtw89_swap_chanctx()

It is currently unclear if this is a result of the driver itself already
or the way LinuxKPI drives channels and the driver simply accepting and
acting on things it no longer should.
For now put the bandaid into place to make the driver work and pass
packets.  For better resilience the check does not hurt anyway.

The moment we enter rtw89_chanctx_ops_add() the first time,
entity_map 0x00000001 has the lowest bit set and find_next_zero_bit()
will return 1. As a result the driver will try to swap chanctxs and
trip over a NULL pointer in rtw89_swap_chanctx().  See comment there
for how to (likely) trigger it.

Sponsored by:   The FreeBSD Foundation
Reported by:    Axel Rau (Axel.Rau Chaos1.DE) with 8852CE
MFC after:      3 days
DeltaFile
+21-0sys/contrib/dev/rtw89/chan.c
+21-01 files

FreeBSD/src 99ec65eusr.sbin/traceroute6 traceroute6.8 traceroute6.c

traceroute6(8): Stop probing on networks rejected.

Stop probing after receiving ICMP6_DST_UNREACH and print
ICMP6 error code.

The behavior can be observed by tracing the route to,
for example, 2a02:ee80:4028:1126::

Discussed with:         Job Snijders, Nick Hilliard
Obtained from:          OpenBSD
Reviewed by:            markj, jlduran
Differential Revision:  https://reviews.freebsd.org/D47520
DeltaFile
+4-2usr.sbin/traceroute6/traceroute6.8
+4-0usr.sbin/traceroute6/traceroute6.c
+8-22 files

FreeBSD/src 7c05f29sys/fs/pseudofs pseudofs.c

pseudofs: fix typo in comment

(cherry picked from commit b63f298b1ff90d9c25dee09df7fdd0e509185587)
DeltaFile
+1-1sys/fs/pseudofs/pseudofs.c
+1-11 files

FreeBSD/src be0706econtrib/netcat netcat.c nc.1

netcat: Allow service names to be used.

Someone should really do a vendor import, but it's non-trivial, as we
have local modifications.  In the meantime, here's a nine-year-old
upstream patch which allows service names to be used instead of port
numbers.

MFC after:      1 week
Obtained from:  OpenBSD
Reviewed by:    allanjude
Differential Revision:  https://reviews.freebsd.org/D50348

(cherry picked from commit 6d3d1fc3a30453be19831f79399bcba0ae822ad1)
DeltaFile
+29-13contrib/netcat/netcat.c
+3-3contrib/netcat/nc.1
+32-162 files

FreeBSD/src 39f0395contrib/openpam/lib/libpam openpam_constants.c

libpam: Additional module directory.

Many if not most ports that install PAM modules install them into
${LOCALBASE}/lib/security instead of just ${LOCALBASE}/lib, because
all the world is Linux.  Rather than try to fix the ports, add that
directory to the search path.

MFC after:      1 week
Relnotes:       yes
Reviewed by:    delphij
Differential Revision:  https://reviews.freebsd.org/D50626

(cherry picked from commit bb625fc2ac801d0a06ef0edab37a9bdaf209f008)
DeltaFile
+2-0contrib/openpam/lib/libpam/openpam_constants.c
+2-01 files

FreeBSD/src 2a58417share/man/man5 src.conf.5

src.conf.5: regen with MITKRB5

This option doesn't actually do anything yet, but we need to update
src.conf.5 to keep CI happy.

Fixes:          290e8aaa3840 ("share/mk: Add MIT KRB5 build knob")
DeltaFile
+7-1share/man/man5/src.conf.5
+7-11 files

FreeBSD/src 9623040lib/libc/sys closefrom.c

closefrom: always use close_range(2)

close_range(2) was added prior to 13.0.  There is no need to support
a new userspace on such an old kernel.

Reviewed by:    kevans, imp
Differential Revision:  https://reviews.freebsd.org/D50730
DeltaFile
+1-9lib/libc/sys/closefrom.c
+1-91 files

FreeBSD/src 06664c3sys/net pfvar.h, sys/netpfil/pf pf.c

pf: fix panic in pf_return()

We (correctly) NULL out sk and nk before calling pf_return(), but that
function still tried to use them to undo NAT transformations.

Store the old port numbers and use those rather than sk/nk.

This is a partial import of e11dacbf8484adc7bbb61b20fee3ab8385745925
(osport/odport), and the missing parts of
bdea9cbcf2decafeb4da5a0280313efccc09e1b3.

Direct commit to stable/14.

PR:             287254

(cherry picked from commit 6f6ca5288060110c7385b9424e4729b192ed6308)
DeltaFile
+16-15sys/netpfil/pf/pf.c
+4-2sys/net/pfvar.h
+20-172 files

FreeBSD/src 7908b5dsys/kern subr_pctrie.c

pctrie_lookup_node: assume parent_out != NULL

Since NULL is never passed as the parent_out parameter to
_pctrie_lookup_node, stop making the assignment to *parent_out check
parent_out for NULL first.

Reported by:    alc
Reviewed by:    alc
Differential Revision:  https://reviews.freebsd.org/D50729
DeltaFile
+1-2sys/kern/subr_pctrie.c
+1-21 files

FreeBSD/src 6e7a6a6sys/compat/linuxkpi/common/src linux_80211.c

LinuxKPI: 802.11; update frag_threshold and rts_threshold

Update threshold values once we are associated.

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+6-0sys/compat/linuxkpi/common/src/linux_80211.c
+6-01 files

FreeBSD/src f1a110fsys/compat/linuxkpi/common/src linux_80211.c

LinuxKPI: 802.11: fix lkpi_scan_ies_add() channel lookup

When looking up the channel we may not get a result if no flags are
passed in as net80211 channel list setup and lookup coding requires a
matching flag (band).  So pass in IEEE80211_CHAN_[AG] depending on band
to increase the chances of finding a base channel and from that derive
rates, etc.

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+15-1sys/compat/linuxkpi/common/src/linux_80211.c
+15-11 files

FreeBSD/src db480c2sys/compat/linuxkpi/common/src linux_80211.c

LinuxKPI: 802.11: stop queues during key updates

When beginning key updates do stop and afterwards re-enable the tx queues
to avoid packets being passed to the driver.  This is a theoretical
problem at this point but helps some cases.  These functions will likely
need refinement in the future.

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+11-0sys/compat/linuxkpi/common/src/linux_80211.c
+11-01 files

FreeBSD/src bc24342sys/compat/linuxkpi/common/src linux_80211.c

LinuxKPI: 802.11: improve queue locking

Introduce an internal lkpi_ieee80211_wake_queues_locked() function
that can be used from context holding the wiphy lock.
Make linuxkpi_ieee80211_wake_queues() a wrapper with locking around
this.

Equally apply the wiphy lock to linuxkpi_ieee80211_wake_queue().

In lkpi_ieee80211_wake_queues() only wakeup the driver if the queue
is not empty;  otherwise weird sideeffects can happen with some drivers.

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+15-4sys/compat/linuxkpi/common/src/linux_80211.c
+15-41 files

FreeBSD/src 80386edsys/compat/linuxkpi/common/src linux_80211.c

LinuxKPI: 802.11: adjust logging for key handling

Given there are still problems observed (at least in the Lab) adjust
crypto key handling routines and enhance logging with td_tid, jiffies.

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+35-27sys/compat/linuxkpi/common/src/linux_80211.c
+35-271 files

FreeBSD/src 284af34sys/compat/linuxkpi/common/src linux_80211.c

LinuxKPI: 802.11: place lock asserts for key operation

Since b8dfc3ecf7031 we hold the wiphy lock over any key updates.
Assert that on function entry.

Given this invariant there is no need to recheck a kay under lock now,
as the first lookup already is under the lock, so simplify the code.

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+19-16sys/compat/linuxkpi/common/src/linux_80211.c
+19-161 files

FreeBSD/src 682af96libexec/nuageinit nuage.lua nuageinit, libexec/nuageinit/tests nuageinit.sh

nuageinit: more package related functions

Implement package_update and package_upgrade, which allows to launch
an update of the metadata and an upgrade of the packages.

Sponsored by:   OVHCloud
DeltaFile
+33-0libexec/nuageinit/tests/nuageinit.sh
+19-1libexec/nuageinit/nuage.lua
+7-0libexec/nuageinit/nuageinit
+59-13 files

FreeBSD/src 076fec1libexec/nuageinit nuage.lua nuageinit, libexec/nuageinit/tests nuageinit.sh

nuageinit: implement packages

Installs a list of packages

Sponsored by:   OVHCloud
DeltaFile
+44-0libexec/nuageinit/tests/nuageinit.sh
+21-1libexec/nuageinit/nuage.lua
+19-0libexec/nuageinit/nuageinit
+84-13 files

FreeBSD/src 43b82d6libexec/nuageinit nuage.lua

nuageinit: add a function to bootstrap pkg if needed

Sponsored by:   OVHCloud
DeltaFile
+11-1libexec/nuageinit/nuage.lua
+11-11 files

FreeBSD/src 2f35a52libexec/nuageinit nuageinit, libexec/nuageinit/tests nuageinit.sh

nuageinit: implement runcmd

runcmd contains a list of string, each item will be executed in order.

Sponsored by:   OVHCloud
DeltaFile
+37-0libexec/nuageinit/tests/nuageinit.sh
+8-1libexec/nuageinit/nuageinit
+45-12 files

FreeBSD/src e38f521libexec/nuageinit/tests nuageinit.sh

nuageinit: helper function to setup adduser

To carry out the userdata unit tests, you need to set up the environment in
order to skip adding the default user (nuage.adduser(default_user)

Sponsored by:   OVHCloud
DeltaFile
+16-0libexec/nuageinit/tests/nuageinit.sh
+16-01 files

FreeBSD/src d0d5415stand/lua core.lua

lualoader: rename loop variable to cleanup luacheck

This shadows an `i` used for indexing earlier in the function, and we
don't care that much about the name.
DeltaFile
+4-4stand/lua/core.lua
+4-41 files

FreeBSD/src bef6d85stand/defaults loader.conf.5 loader.conf, stand/lua drawer.lua

lualoader: allow graphical bits to be disabled with loader_gfx

Some people prefer the old ASCII art look and it's good to have a way
to confirm that the fallbacks still work right on systems that have a
functional framebuffer available. Add a loader_gfx loader.conf(5)
variable to disable the eager use of graphics for these use-cases.

While we're here, clean up the style in the area a little bit; the early
porting that I did to lualoader did a lot of redundant ~= nil that has
carried over into some of the later work.  We can drop some of that, and
also re-organize some of these variables to improve readability.

ziaee notes that the positioning of the orb is a bit off; this is due to
a change in positioning that happened in
1b4e1171315398dec ("loader: Fix orb position") to account for the image
dimensions.  This should be partially reverted to get it right; we
shouldn't assume that we can use the same shift in gfx-* definitions for
both the ASCII art and the associated image -- the {image, image_rl}
pair should be converted to something more like an fbimg or gfx table

    [5 lines not shown]
DeltaFile
+15-15stand/lua/drawer.lua
+7-1stand/defaults/loader.conf.5
+1-0stand/defaults/loader.conf
+23-163 files

FreeBSD/src 2542189sys/dev/qat/qat_api/include cpa.h cpa_types.h, sys/dev/qat/qat_api/include/dc cpa_dc.h cpa_dc_bp.h

qat: update API files to use SPDX identifier

API files are updated to have SPDX identifier and remove
longer form of license to ensure consistency with the
license format across all files.

Reviewed by:    markj, ziaee
MFC after:      2 weeks
Sponsored by:   Intel Corporation
Differential Revision:  https://reviews.freebsd.org/D50379
DeltaFile
+2-35sys/dev/qat/qat_api/include/cpa.h
+2-35sys/dev/qat/qat_api/include/cpa_types.h
+2-35sys/dev/qat/qat_api/include/cpa_dev.h
+2-35sys/dev/qat/qat_api/include/dc/cpa_dc.h
+2-35sys/dev/qat/qat_api/include/dc/cpa_dc_bp.h
+2-35sys/dev/qat/qat_api/include/dc/cpa_dc_chain.h
+12-21016 files not shown
+44-77022 files

FreeBSD/src ae1dc27sys/dev/qat/qat_hw/qat_200xx adf_drv.c, sys/dev/qat/qat_hw/qat_4xxx adf_drv.c

qat: refactor error handling and add mutex locks

Error handling in qat driver code has been refactored.
Mutex lock handling has also been added during driver
attach and detach. Also pci_disable_busmaster() is called in
adf_detach() to ensure proper cleanup during device detachment.

Reviewed by:    markj, ziaee
MFC after:      2 weeks
Sponsored by:   Intel Corporation
Differential Revision:  https://reviews.freebsd.org/D50379
DeltaFile
+18-6sys/dev/qat/qat_hw/qat_dh895xcc/adf_drv.c
+17-6sys/dev/qat/qat_hw/qat_c4xxx/adf_drv.c
+17-6sys/dev/qat/qat_hw/qat_200xx/adf_drv.c
+17-6sys/dev/qat/qat_hw/qat_4xxx/adf_drv.c
+17-6sys/dev/qat/qat_hw/qat_c3xxx/adf_drv.c
+17-6sys/dev/qat/qat_hw/qat_c62x/adf_drv.c
+103-362 files not shown
+121-538 files

FreeBSD/src ded037esys/dev/qat/qat_api/common/crypto/sym/qat lac_sym_qat_cipher.c, sys/dev/qat/qat_common adf_init.c adf_pfvf_vf_msg.c

qat: driver updates to improve code and fix bugs

Bug fixes and improvements are done for the qat code base
to improve code quality.

Reviewed by:    markj, ziaee
MFC after:      2 weeks
Sponsored by:   Intel Corporation
Differential Revision:  https://reviews.freebsd.org/D50379
DeltaFile
+65-1sys/dev/qat/qat_common/adf_init.c
+27-10sys/dev/qat/qat_api/common/crypto/sym/qat/lac_sym_qat_cipher.c
+19-1sys/dev/qat/qat_common/adf_pfvf_vf_msg.c
+4-16sys/dev/qat/qat_common/adf_freebsd_dev_processes.c
+12-5sys/dev/qat/qat_common/qat_hal.c
+13-4sys/dev/qat/qat_common/adf_pfvf_vf_proto.c
+140-3730 files not shown
+263-9936 files