FreeBSD/src 6c61f58sys/contrib/dev/athk/ath10k testmode.c core.c

ath10k: update Atheros/QCA's ath10k driver

This version is based on
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
24d479d26b25bce5faea3ddd9fa8f3a6c3129ea7 ( tag: v6.19-rc6 ).

Sponsored by:   The FreeBSD Foundation
DeltaFile
+234-41sys/contrib/dev/athk/ath10k/testmode.c
+11-17sys/contrib/dev/athk/ath10k/core.c
+18-1sys/contrib/dev/athk/ath10k/wmi.h
+15-0sys/contrib/dev/athk/ath10k/testmode_i.h
+5-1sys/contrib/dev/athk/ath10k/core.h
+1-1sys/contrib/dev/athk/ath10k/qmi.c
+284-612 files not shown
+286-628 files

FreeBSD/src 80ba893sys/contrib/dev/rtw88 bf.c bf.h, sys/modules/rtw88 Makefile

rtw88: update Realtek's rtw88 driver

This version is based on
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
24d479d26b25bce5faea3ddd9fa8f3a6c3129ea7 ( tag: v6.19-rc6 ).

Sponsored by:   The FreeBSD Foundation
DeltaFile
+7-1sys/contrib/dev/rtw88/bf.c
+7-0sys/contrib/dev/rtw88/bf.h
+3-1sys/contrib/dev/rtw88/sdio.c
+2-0sys/contrib/dev/rtw88/rtw8822bu.c
+2-0sys/contrib/dev/rtw88/rtw8822cu.c
+1-1sys/modules/rtw88/Makefile
+22-36 files

FreeBSD/src d4d13a5sys/netinet sctp_bsd_addr.c

sctp: support bridge interfaces

Reported by:    Timo Völker
Tested by:      Timo Völker

(cherry picked from commit 8d82dafa568baf7be46e5e443dd7310986a28aa9)
DeltaFile
+1-0sys/netinet/sctp_bsd_addr.c
+1-01 files

FreeBSD/src 2e19631sys/dev/dwc if_dwc.c

dwc: cleanup

No functional change intended.

Reviewed by:            Timo Völker
Differential Revision:  https://reviews.freebsd.org/D54788

(cherry picked from commit 3d771e0db66da77da5a7f323df1c0638e6b586ea)
DeltaFile
+6-10sys/dev/dwc/if_dwc.c
+6-101 files

FreeBSD/src 6f8adc8sys/modules/sctp Makefile

sctp: improve compilation as module

When compiling SCTP as a module, don't compile sctp_crc32.c into
the module. This avoids code and variable duplication since
sctp_crc32.c is compiled into the kernel. In particular, the variable
system_base_info is not duplicated. This fixes the handling of the
statistic counters sctps_sendhwcrc and sctps_sendswcrc when using
sctp_delayed_cksum.

(cherry picked from commit 68a449f09e2a38def9df822d42f91ecd2f27b0e2)
DeltaFile
+0-1sys/modules/sctp/Makefile
+0-11 files

FreeBSD/src cb94b17usr.bin/netstat sctp.c

netstat: fix typo

(cherry picked from commit 0ef8f7133d0f1ee28af1689f013f18e002eeae9f)
DeltaFile
+1-1usr.bin/netstat/sctp.c
+1-11 files

FreeBSD/src 75ea0edsys/dev/dwc if_dwc.c dwc1000_dma.c

dwc: add receive checksum offload for IPv6

This patch adds support for receive checksum offload for TCP/IPv6
and UDP/IPv6. Since receive checksum offload can't be configured
separately for IPv4 and IPv6, IFCAP_RXCSUM and IFCAP_RXCSUM_IPV6
can't be changed independently.

Reviewed by:            Timo Völker
Differential Revision:  https://reviews.freebsd.org/D54756

(cherry picked from commit 5d8777f3a7aee04eabbc9f3cf12138f9b56e3ebc)
DeltaFile
+3-3sys/dev/dwc/if_dwc.c
+2-2sys/dev/dwc/dwc1000_dma.c
+1-1sys/dev/dwc/dwc1000_core.c
+6-63 files

FreeBSD/src 97f7fb0sys/dev/dwc if_dwc.c dwc1000_dma.c

dwc: add transmit checksum offload for IPv6

This patch adds support for transmit checksum offload for TCP/IPv6
and UDP/IPv6.

Reviewed by:            Timo Völker
Differential Revision:  https://reviews.freebsd.org/D54754

(cherry picked from commit aca67c37a5215448828a2974a2ff44e75e9159bc)
DeltaFile
+8-2sys/dev/dwc/if_dwc.c
+1-1sys/dev/dwc/dwc1000_dma.c
+9-32 files

FreeBSD/src 8c54cf5sys/dev/dwc if_dwc.c

dwc: prepare for IPv6 transmit checksum offloading

No functional change intended.

(cherry picked from commit 97b177f51fb939943ef920415e541d00789d12f4)
DeltaFile
+3-3sys/dev/dwc/if_dwc.c
+3-31 files

FreeBSD/src a148f7eshare/man/man4 bge.4, sys/dev/bge if_bge.c

bge: disable TXCSUM if UDP transmit checksum offloading is disabled

The bge interface is special with respect to transmit checksumi
offloading. In the default settings, an bge interface announces TXCSUM
capabilities, but only supports TCP/IPv4 and not UDP/IPv4 due to
limitations of some of the NICs. This results in problems when the bge
interface becomes a member of a bridge. Since currently only the
TXCSUM capabilities are synced when a member is added to a bridge and
not the protocol specific capabilities, this can result in a situation
where UDP packets are sent out using a bge interface without having a
correct checksum.
To mitigate this problem, initially don't announce TXCSUM capabilities,
when UDP transmit checksum is disabled. It is still possible to enable
TXCSUM capabilities via ifconfig.

PR:                     291420
Reviewed by:            Timo Voelker
Differential Revision:  https://reviews.freebsd.org/D54486

(cherry picked from commit bbd30927b1af44226c8de0512912a7fedfce2824)
DeltaFile
+13-1sys/dev/bge/if_bge.c
+9-1share/man/man4/bge.4
+22-22 files

FreeBSD/src fac164csys/netinet6 ip6_output.c

ipv6: account for jumbo payload option

If a jumbo payload option is added, the length of the mbuf chain is
increased by 8 but the actual hop-by-hop extension header with the
jumbo playload option is only inserted in the packet if there are
other options. Therefore, adjust optlen to reflect the actual size
of IPv6 extension headers including the hop-by-hop extension header
containing the jumbo payload option.

Reported by:            syzbot+73fe316271df473230eb at syzkaller.appspotmail.com
Reviewed by:            markj, Timo Voelker
Differential Revision:  https://reviews.freebsd.org/D54394

(cherry picked from commit 1f5b1de1fdf2924066c1851ed6c73f36fe20b438)
DeltaFile
+1-0sys/netinet6/ip6_output.c
+1-01 files

FreeBSD/src decd5easys/dev/dwc dwc1000_dma.c

dwc: improve IPv4 transmit checksum offloading

This patch provides two improvements for TCP/IPv4 and UDP/IPv4
transmit checksum offloading:
(1) Use *CIC_SEG instead of *CIC_FULL, since FreeBSD always provides
    a pseudo header checksum.
(2) Don't make transmit IPv4 header checksum offloading a prerequisite
    for TCP/IPv4 or UDP/IPv4 transmit checksum offloading.
This is the root cause of PR 291696, since right now the epair
interface does not support transmit IPv4 header checksum offloading,
but TCP/IPv4 and UDP/IPv4 transmit checksum offloading.

PR:                     291696
Reviewed by:            Timo Voelker
Tested by:              Marek Benc
Differential Revision:  https://reviews.freebsd.org/D54395

(cherry picked from commit f8ddf74175c8013268e65b18750e247306fa088a)
DeltaFile
+7-14sys/dev/dwc/dwc1000_dma.c
+7-141 files

FreeBSD/src ba49ad5sys/netinet ip_output.c

tcp: fix checksum calculation bug

The new function in_delayed_cksum_o() was introduced to compute
the checksum in the case the mbuf chain does not start with the
IP header. The offset of the IP header is specified by the
parameter iph_offset.
If iph_offset was positive, the function computed an incorrect
checksum.

Reviewed by:            sobomax, tuexen
Fixes:                  5feb38e37847 ("netinet: provide "at offset" variant of the in_delayed_cksum() API")
Differential Revision:  https://reviews.freebsd.org/D54269

(cherry picked from commit c8b3b605ae854ead6c8804e0400d80cb8fa73fdf)
DeltaFile
+2-2sys/netinet/ip_output.c
+2-21 files

FreeBSD/src 4666ba9sys/dev/virtio/network if_vtnet.c

vtnet: improve consistency

Use sbuf_new_for_sysctl() instead of sbuf_new_auto() when exposing
the flags via sysctl.

(cherry picked from commit 8da838ac31692e381adfc63d83ea49f2adabbf23)
DeltaFile
+6-8sys/dev/virtio/network/if_vtnet.c
+6-81 files

FreeBSD/src c9e4a98share/man/man4 vtnet.4, sys/dev/virtio/network if_vtnet.c virtio_net.h

vtnet: expose features via sysctl tree

Right now the 64-bit flags field needs to be casted to a 32-bit field,
because clang warns if more than 32-bits are used.
Once clang is fixed, this restriction will be removed and more bits
will be added.

Reviewed by:            markj, Timo Völker
Differential Revision:  https://reviews.freebsd.org/D54288

(cherry picked from commit 634d9c0d111b630c3d63a1cf25d15c32a37afab8)
DeltaFile
+18-0sys/dev/virtio/network/if_vtnet.c
+8-0sys/dev/virtio/network/virtio_net.h
+3-1share/man/man4/vtnet.4
+29-13 files

FreeBSD/src ccfd678share/man/man9 printf.9, sys/kern subr_prf.c

printf.9: Support more than 32 bits in %b

This will be usable after clang has been extended to accept length
modifiers for %b when compiling kernel code.
But we need FreeBSD to support it first...

Reviewed by:            markj, Timo Völker
Differential Revision:  https://reviews.freebsd.org/D54286

(cherry picked from commit d2cb9cab8457b2a84898f0ac86f7b45e907f872c)
DeltaFile
+31-9sys/kern/subr_prf.c
+18-7share/man/man9/printf.9
+49-162 files

FreeBSD/src 18b92d6share/man/man9 printf.9

printf.9: fix style

Follow the style described by style.9.

Reported by:    markj

(cherry picked from commit 391e8709315d4a0e8f5ba91912e370571ab6841b)
DeltaFile
+1-2share/man/man9/printf.9
+1-21 files

FreeBSD/src 14cf01bshare/man/man4 vtnet.4

vtnet.4: put each sentence on its own line

Reported by:    ziaee
Fixes:          e3a0571ad74d ("vtnet: expose flags via sysctl tree")

(cherry picked from commit f6e183301851e3e826d53a29e76cfc9bc7626477)
DeltaFile
+2-1share/man/man4/vtnet.4
+2-11 files

FreeBSD/src baa28f5share/man/man4 vtnet.4, sys/dev/virtio/network if_vtnet.c if_vtnetvar.h

vtnet: expose flags via sysctl tree

Provide the flags used for a vtnet interface via the sysctl tree.
This is mostly used for debugging purposes.

Reviewed by:            Timo Völker
Differential Revision:  https://reviews.freebsd.org/D54283

(cherry picked from commit e3a0571ad74d8429a95fcae9efc1d91cc109a337)
DeltaFile
+20-0sys/dev/virtio/network/if_vtnet.c
+5-0sys/dev/virtio/network/if_vtnetvar.h
+3-1share/man/man4/vtnet.4
+28-13 files

FreeBSD/src 4d95227sys/dev/virtio/network virtio_net.h

vtnet: define flags in a consistent way

This allows adding flags in the upper 32 bits in a consistent way.
No functional change intended.

(cherry picked from commit e0c6c4ecfc755b78ac9135033053d2f15c62bf04)
DeltaFile
+23-23sys/dev/virtio/network/virtio_net.h
+23-231 files

FreeBSD/src 275c7f5sys/compat/linuxkpi/common/include/linux netdevice.h

LinuxKPI: netdevice: add structs net_device_path, net_device_path_ctx

mt76(4) is using this along with a mac80211.h functiontion pointer to
resolve a path in an offload case.

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+24-0sys/compat/linuxkpi/common/include/linux/netdevice.h
+24-01 files

FreeBSD/src d4898c6sys/compat/linuxkpi/common/include/linux ieee80211.h, sys/compat/linuxkpi/common/include/net mac80211.h cfg80211.h

LinuxKPi: 802.11: add more defines

Add more defines and a mac80211 op function pointer used by
mt76(4) at Linux v6.19-rc6.

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+2-0sys/compat/linuxkpi/common/include/net/mac80211.h
+1-0sys/compat/linuxkpi/common/include/net/cfg80211.h
+1-0sys/compat/linuxkpi/common/include/linux/ieee80211.h
+4-03 files

FreeBSD/src f1d7eeasys/compat/linuxkpi/common/include/linux skbuff.h

LinuxKPI: skbuff: implement skb_queue_splice()

Add skb_queue_splice() and use it in skb_queue_splice_init() which
already had that functionality (plus the init bit).
The new function is used by rtw89(4).

Sponosred by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+8-1sys/compat/linuxkpi/common/include/linux/skbuff.h
+8-11 files

FreeBSD/src 5f7b5ddsys/net80211 ieee80211_radiotap.h

radiotap: add more EHT definitions

Add more EHT definitions used by at least iwlwifi.

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+21-0sys/net80211/ieee80211_radiotap.h
+21-01 files

FreeBSD/src 18de283sys/compat/linuxkpi/common/include/net cfg80211.h

LinuxKPI: 802.11: add new field to struct cfg80211_bitrate_mask

rtw89(4) accesses eht_mcs[].
Add the field to struct cfg80211_bitrate_mask.

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+3-0sys/compat/linuxkpi/common/include/net/cfg80211.h
+3-01 files

FreeBSD/src b2c90d1sys/compat/linuxkpi/common/include/linux ieee80211.h, sys/compat/linuxkpi/common/include/net mac80211.h

LinuxKPI: 802.11: rename enum ieee80211_tx_rate_flags and move file

What we used to call enum ieee80211_tx_rate_flags is now used as
enum mac80211_rate_control_flags for the ieee80211_tx_rate.flags
in rtw89(4).  Rename the enum and move it to mac80211 as it seems
to belong there.

Sponsonred by:  The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+13-2sys/compat/linuxkpi/common/include/net/mac80211.h
+0-12sys/compat/linuxkpi/common/include/linux/ieee80211.h
+13-142 files

FreeBSD/src e4a4841sys/compat/linuxkpi/common/include/linux ieee80211.h

LinuxKPI: 802.11: Management MIC element can have 8 or 16 octets MIC

Management MIC element (MME) can have 8 or 16 octets MIC.  Add a second
structure used by at least iwlwifi and update reference to latest
standard version.

Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
DeltaFile
+11-3sys/compat/linuxkpi/common/include/linux/ieee80211.h
+11-31 files

FreeBSD/src 2c6bee2lib/libsys socket.2

socket.2: Cross-reference protocol families

While here, make wider use of Dv for socket types and protocol families
and reference fcntl(2) flags for the `type` argument values.

MFC after:              3 days
Reviewed by:            glebius, ziaee
Differential Revision:  https://reviews.freebsd.org/D54434
DeltaFile
+110-27lib/libsys/socket.2
+110-271 files

FreeBSD/src 98cb487share/man/man7 simd.7

simd.7: Add Arm MOPS memcpy(), memmove() and memset() to manpage

Fixes:                  41ccf82b29f3 (Use MOPS implementations)
Reviewed by:            ziaee
Sponsored by:           Arm Ltd
Differential Revision:  https://reviews.freebsd.org/D54812
DeltaFile
+5-4share/man/man7/simd.7
+5-41 files

FreeBSD/src 5eb1d4esys/rpc/rpcsec_tls rpctls_impl.c

rpctls_impl.c: Use a direct cast to uintptr_t instead of __DECONST

This fixes the build on CHERI architectures where the compiler warns
about a direct cast between uint64_t and const void * inside of
__DECONST.  However, GCC would also complain about this on 32-bit
kernels due to uint64_t not being the same size as a pointer.  Also,
a direct cast to uintptr_t to right-size the cookie value is more
direct than using __DECONST given that there is no "const" pointer
involved in the expression.

Reviewed by:    brooks, glebius
Obtained from:  CheriBSD
Sponsored by:   AFRL, DARPA
Differential Revision:  https://reviews.freebsd.org/D54797
DeltaFile
+1-1sys/rpc/rpcsec_tls/rpctls_impl.c
+1-11 files