FreeBSD/src 7ba9229sbin/ipfw ipv6.c ipfw2.c, sbin/ipfw/tests test_add_rule.py

ipfw: treat ipv6 address with zero mask as 'any'

Make the behaviour similar for both IPv4 and IPv6. Also add
the corresponding tests.

PR:             294733
Differential Revision:  https://reviews.freebsd.org/D56618

(cherry picked from commit 2872268c7f6d473aae9b02ebb5d2c24fc2cff9b1)
DeltaFile
+24-0sbin/ipfw/tests/test_add_rule.py
+7-4sbin/ipfw/ipv6.c
+4-3sbin/ipfw/ipfw2.c
+2-0tests/atf_python/sys/netpfil/ipfw/insns.py
+37-74 files

FreeBSD/src 9acea8asbin/ipfw ipv6.c ipfw2.c, sbin/ipfw/tests test_add_rule.py

ipfw: treat ipv6 address with zero mask as 'any'

Make the behaviour similar for both IPv4 and IPv6. Also add
the corresponding tests.

PR:             294733
Differential Revision:  https://reviews.freebsd.org/D56618

(cherry picked from commit 2872268c7f6d473aae9b02ebb5d2c24fc2cff9b1)
DeltaFile
+24-0sbin/ipfw/tests/test_add_rule.py
+7-4sbin/ipfw/ipv6.c
+4-3sbin/ipfw/ipfw2.c
+2-0tests/atf_python/sys/netpfil/ipfw/insns.py
+37-74 files

FreeBSD/src 490c53esys/net80211 PROTOCOL.md DATAPATH_TRANSMIT.md, tools/kerneldoc/subsys Doxyfile-net80211

net80211: add initial README.md and PROTOCOL.md

* Add top level README.md, linking to in progress and todo items
* Add an 802.11 protocol overview, with todo items - this is designed
  to provide a basic introduction to 802.11 for people wishing to work
  on net80211 and drivers.
* DEBUG.md - cover the debug API
* DATAPATH_TRANSMIT.md - transmit datapath
* DATAPATH_RECEIVE.md - receive datapath
* PROTOCOL.md - a high level (for values of "high") overview of
  the 802.11 protocol and where it intersects with net80211

Differential Revision: https://reviews.freebsd.org/D56760
DeltaFile
+563-0sys/net80211/PROTOCOL.md
+390-0sys/net80211/DATAPATH_TRANSMIT.md
+160-0sys/net80211/DATAPATH_RECEIVE.md
+139-0sys/net80211/README.md
+101-0sys/net80211/DEBUG.md
+2-1tools/kerneldoc/subsys/Doxyfile-net80211
+1,355-16 files

FreeBSD/src 1ccaef9sys/net80211 ieee80211_vht.c

net80211: update/add some VHT doxygen documentation

Add and update some documentation to be picked up by doxygen.

Differential Revision: https://reviews.freebsd.org/D57079
DeltaFile
+54-17sys/net80211/ieee80211_vht.c
+54-171 files

FreeBSD/src 0c37c99sys/net80211 ieee80211_var.h

net80211: add some example doxygen inline documents

This isn't supposed to be comprehensive, I want to have examples
for the common doxygen comments:

* describing a struct
* inside a struct - single line before the item
* inside a struct - same line after an item
* inside a struct - multi-line before an item

These build fine with the doxygen build in tools/kerneldoc/subsys/ .

Differential Revision: https://reviews.freebsd.org/D57056
DeltaFile
+26-3sys/net80211/ieee80211_var.h
+26-31 files

FreeBSD/src e3b4dbbsys/dev/ath if_ath_tx.c, sys/net80211 ieee80211_ht.c ieee80211_ht.h

net80211: create ieee80211_ht_check_bar_exceed_retry_count()

Create a function to check if the BAR retry limit has been reached.
Use this in if_ath_tx instead of a hard-coded value.

I've been meaning to do this for a long time.

Differential Revision: https://reviews.freebsd.org/D57055
DeltaFile
+19-1sys/net80211/ieee80211_ht.c
+2-1sys/dev/ath/if_ath_tx.c
+2-0sys/net80211/ieee80211_ht.h
+23-23 files

FreeBSD/src cc145f5bin/sh/tests/builtins fc4.0 Makefile

sh/tests: Add a test for long line in history
DeltaFile
+27-0bin/sh/tests/builtins/fc4.0
+1-0bin/sh/tests/builtins/Makefile
+28-02 files

FreeBSD/src 95e4fcebin/sh input.c parser.c

bin/sh: Fix history long line truncation/corruption

When reading from standard input with editline history enabled, increase
buffer size to accomodate long lines so that history is recorded
correctly. Cleanup el_gets() handling avoiding potentially dangerous
retention of pointers to editline buffers across calls.  Ensure struct
parsefile objects are properly zero initialised when created. Remove
push argument from setinputstring() and simplify logic as it was always
called with a value of one and as was written was potentially dangerous
if ever called with a value of zero.

This commit does not fix long lines when history is enabled but editing
is not (e.g. if there is no terminal).

MFC after:      3 weeks
Pull Request:   https://github.com/freebsd/freebsd-src/pull/2028
Signed-off-by: Kristofer Peterson <kris at tranception.com>
DeltaFile
+70-72bin/sh/input.c
+2-2bin/sh/parser.c
+1-1bin/sh/eval.c
+1-1bin/sh/input.h
+74-764 files

FreeBSD/src db513f3lib/libsys fcntl.2

fcntl.2: clarify arg use for F_SETFD

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
Differential revision:  https://reviews.freebsd.org/D57162
DeltaFile
+3-1lib/libsys/fcntl.2
+3-11 files

FreeBSD/src 09935bfsys/fs/tmpfs tmpfs_vfsops.c

tmpfs: Overhaul option handling on remount

On remount, we must accept all the same options as on initial mount.
For parameters which we're unable to modify on the fly, fail only if
the new value is different from the existing one.

PR:             295096
MFC after:      1 week
Reviewed by:    kib
Differential Revision:  https://reviews.freebsd.org/D57044

(cherry picked from commit 1cfc208a07b64a64377a4f8fe51c28f588a929cf)
DeltaFile
+62-38sys/fs/tmpfs/tmpfs_vfsops.c
+62-381 files

FreeBSD/src 0f4fd69sys/fs/tmpfs tmpfs_vfsops.c

tmpfs: Overhaul option handling on remount

On remount, we must accept all the same options as on initial mount.
For parameters which we're unable to modify on the fly, fail only if
the new value is different from the existing one.

PR:             295096
MFC after:      1 week
Reviewed by:    kib
Differential Revision:  https://reviews.freebsd.org/D57044

(cherry picked from commit 1cfc208a07b64a64377a4f8fe51c28f588a929cf)
DeltaFile
+62-38sys/fs/tmpfs/tmpfs_vfsops.c
+62-381 files

FreeBSD/src f3ded0fshare/man/man4 tcp.4, sys/netinet tcp_timewait.c tcp_var.h

tcp: Make RFC 6191 support configurable

Add a default-on per-VIMAGE sysctl for RFC 6191 connection recycling.
This makes it possible to merge the change to older branches where it
can be switched off by default to minimize risk.

MFC after:      1 week
Sponsored by:   Klara, Inc.
Sponsored by:   Modirum MDPay
Reviewed by:    pouria, marius.h_lden.org, tuexen
Differential Revision:  https://reviews.freebsd.org/D57045

(cherry picked from commit 2af70d7a384934cee497fb6d75678e04f1416287)

tcp: Fix typo in RFC 6191 sysctl

Fixes:          2af70d7a3849 ("tcp: Make RFC 6191 support configurable")
MFC after:      1 week
Sponsored by:   Klara, Inc.

    [3 lines not shown]
DeltaFile
+37-21sys/netinet/tcp_timewait.c
+10-1share/man/man4/tcp.4
+2-0sys/netinet/tcp_var.h
+49-223 files

FreeBSD/src d2c2193stand/i386/pxeldr pxeboot.8, stand/libsa rpc.c

pxeboot: warn and abort on TCP-only NFS server, which doesn't work for pxeboot

When pxeboot gets a 0 as a port number from portmapper (indicating an
error), it currently happily sends NFS packets to the server's port 0
in an endless loop. Change this to instead bail out with a useful
message.

This happens, for example, with recent Linux NFS servers as many
distributions switched to TCP only NFS serving by default. FreeBSD's
pxeboot must have UDP. In this situation pxeboot asks the server's
portmapper for the UDP NFS port and since there is none gets 0.

Also add a hint to the manpage explaining this and how to fix it.

Reviewed by: ziaee, kevans, imp
DeltaFile
+8-0stand/i386/pxeldr/pxeboot.8
+5-0stand/libsa/rpc.c
+13-02 files

FreeBSD/src 11d69a4share/man/man4 linuxkpi_wlan.4, sys/compat/linuxkpi/common/src linuxkpi_80211_pm.c linux_80211.c

LinuxKPI: 802.11: add support for suspend/resume

Add support for automatic suspend/resume as we know it for wireless.
The problem is that the PCI driver which would normally gets the code
is the LinuxKPI PCI framework/Linux wireless driver, which we cannot
ammend or generally add extra suspend/resume code to.
A further problem is that with growing support, the LinuxKPI 802.11
(mac80211) layer also is involved in suspend/resume for WoWLAN (not
yet supported) meaning that we need to hook the suspend/resume
framework into that as well.  Unlike Linux we do not have a general
suspend/resume "hook" we can hang into and we need to tie this one
to the hardware so cannot indepedently (after the driver one) run it.

The solution for FreeBSD, in order to not mangle the Linux native
drivers and get extra maintanace overhead, is to add a bus child
which inherits the general framework and thus is 2 lines + #includes
for each driver extra to add to.

The general suspend/resume framework lives in LinuxKPI (linuxkpi_80211_pm)

    [35 lines not shown]
DeltaFile
+214-0sys/compat/linuxkpi/common/src/linuxkpi_80211_pm.c
+137-0sys/compat/linuxkpi/common/src/linux_80211.c
+116-0sys/compat/linuxkpi/common/src/linux_80211_macops.c
+15-1sys/compat/linuxkpi/common/src/linux_80211.h
+7-1share/man/man4/linuxkpi_wlan.4
+8-0sys/contrib/dev/iwlwifi/lkpi_iwlwifi_pm.c
+497-27 files not shown
+521-413 files

FreeBSD/src 8ead192sys/compat/linuxkpi/common/src linux_80211.c

LinuxKPI: 802.11: reset chanctx when recycling

When we no longer need a channel context and put it back on the
reserved list, zero it for all but the vif so that we get the same
state as if it was freshly allocated.

Sponsored by:   The FreeBSD Foundation
Fixes:          e62c92c0a5cf, 88cb1e17f471
MFC after:      3 days
DeltaFile
+5-0sys/compat/linuxkpi/common/src/linux_80211.c
+5-01 files

FreeBSD/src 4d125edsys/netlink netlink_generic.c

netlink: Avoid potential undefined behaviour

Taking the address of an OOB array element is UB, even if not
dereferenced.

Reviewed by: des, bz
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D57172
DeltaFile
+3-5sys/netlink/netlink_generic.c
+3-51 files

FreeBSD/src 9f1e693usr.sbin/mfiutil mfiutil.8

mfiutil.8/mrsasutil.8: Use Broadcom/LSI consistently

Both tools support controllers from both companies, so document it.

Reviewed by:    ziaee (via IRC)
MFC after:      immediately
Differential Revision:  https://reviews.freebsd.org/D57212

(cherry picked from commit c74645b0c8df1307cb6f13d835012f88883dff3a)
DeltaFile
+3-3usr.sbin/mfiutil/mfiutil.8
+3-31 files

FreeBSD/src 54c8439share/man/man4 mrsas.4

mrsas.4: Use Broadcom/LSI consistently

Reviewed by:    ziaee (via IRC)
MFC after:      immediately
Differential Revision:  https://reviews.freebsd.org/D57211

(cherry picked from commit f30b1df048f00cd84f46b798c67234e7c3009962)
DeltaFile
+2-2share/man/man4/mrsas.4
+2-21 files

FreeBSD/src 71c50c1usr.sbin/mfiutil mfiutil.8

mfiutil.8/mrsasutil.8: Use Broadcom/LSI consistently

Both tools support controllers from both companies, so document it.

Reviewed by:    ziaee (via IRC)
MFC after:      immediately
Differential Revision:  https://reviews.freebsd.org/D57212

(cherry picked from commit c74645b0c8df1307cb6f13d835012f88883dff3a)
DeltaFile
+3-3usr.sbin/mfiutil/mfiutil.8
+3-31 files

FreeBSD/src ce40d96share/man/man4 mrsas.4

mrsas.4: Use Broadcom/LSI consistently

Reviewed by:    ziaee (via IRC)
MFC after:      immediately
Differential Revision:  https://reviews.freebsd.org/D57211

(cherry picked from commit f30b1df048f00cd84f46b798c67234e7c3009962)
DeltaFile
+2-2share/man/man4/mrsas.4
+2-21 files

FreeBSD/src c74645busr.sbin/mfiutil mfiutil.8

mfiutil.8/mrsasutil.8: Use Broadcom/LSI consistently

Both tools support controllers from both companies, so document it.

Reviewed by:    ziaee (via IRC)
MFC after:      immediately
Differential Revision:  https://reviews.freebsd.org/D57212
DeltaFile
+3-3usr.sbin/mfiutil/mfiutil.8
+3-31 files

FreeBSD/src f30b1dfshare/man/man4 mrsas.4

mrsas.4: Use Broadcom/LSI consistently

Reviewed by:    ziaee (via IRC)
MFC after:      immediately
Differential Revision:  https://reviews.freebsd.org/D57211
DeltaFile
+2-2share/man/man4/mrsas.4
+2-21 files

FreeBSD/src 1df4315bin/sh/tests/builtins read12.0 read11.0

sh/tests: Cut down builtins/read12.0 by 2 seconds

Since the test assumes a 250 ms response time, there is no need to delay
for 3 seconds. Instead, delay for the minimum possible 1 second.

Also, fix some assertions in builtins/read11.0 and builtins/read12.0. If
`set -e` is in effect, `foo` in `foo && bar` is considered tested and
therefore a failure does not cause the shell to exit.

Reviewed by:    bdrewery
Differential Revision:  https://reviews.freebsd.org/D55191
DeltaFile
+8-6bin/sh/tests/builtins/read12.0
+2-1bin/sh/tests/builtins/read11.0
+10-72 files

FreeBSD/src 1dbc104sys/netlink netlink_message_parser.c, sys/netlink/route rt.c iface_drivers.c

netlink: Check for NULL return from npt_alloc()

Reviewed by: glebius, pouria
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D57171
DeltaFile
+4-0sys/netlink/route/rt.c
+3-0sys/netlink/route/iface_drivers.c
+2-0sys/netlink/netlink_message_parser.c
+9-03 files

FreeBSD/src 65e0c7finclude unistd.h, lib/libc/gen freadlink.c Makefile.inc

libc: add freadlink(3)

(cherry picked from commit a2e0822543e93a8d815acd2d1c3d51ef73d6e262)
DeltaFile
+16-0lib/libc/gen/freadlink.c
+1-0include/unistd.h
+1-0lib/libc/gen/Makefile.inc
+1-0lib/libc/gen/Symbol.map
+19-04 files

FreeBSD/src 6646f95sys/ufs/ufs ufs_bmap.c

ufs: support unmapped bufs for indirect blocks in bmap

(cherry picked from commit bab04ddf1fd4b7a77d1cfae4a67ededf1f35ee0d)
DeltaFile
+134-9sys/ufs/ufs/ufs_bmap.c
+134-91 files

FreeBSD/src 5246249sys/compat/linux linux_common.h

linux/linux_common.h: make header self-contained

(cherry picked from commit f6f5eb3190165cea4470048809413b1fdbd97e04)
DeltaFile
+6-0sys/compat/linux/linux_common.h
+6-01 files

FreeBSD/src c1d05b8sys/sys fcntl.h

Add O_SYMLINK emulation

(cherry picked from commit 428da7d65b1c41c81a8786f66c1ce2f4242ac8bb)
DeltaFile
+7-0sys/sys/fcntl.h
+7-01 files

FreeBSD/src b393aa8sys/fs/nullfs null_vfsops.c

nullfs: do not allow to mount a vnode over itself

PR:     275570

(cherry picked from commit 7bdf2b5d5fbabfc8749c4ff6e618c3e843b14de0)
DeltaFile
+8-0sys/fs/nullfs/null_vfsops.c
+8-01 files

FreeBSD/src a0fb45esys/kern kern_umtx.c

kern_umtx.c: remove dead code

(cherry picked from commit d9c31658df8492a5666e799c2b267c425cb8f468)
DeltaFile
+6-11sys/kern/kern_umtx.c
+6-111 files