FreeBSD/src b676b5esys/dev/cxgbe/common t4_hw.c

cxgbe(4): Skip non-existent blocks in the interrupt handler

Fixes:  7b80c8b7d8d9 cxgbe(4): Expanded interrupt handling for T7
MFC after:      1 week
Sponsored by:   Chelsio Communications
DeltaFile
+8-2sys/dev/cxgbe/common/t4_hw.c
+8-21 files

FreeBSD/src c56a266sys/dev/mlx5/mlx5_en mlx5_en_main.c

mlx5: Fix compilation error when not building with KERN_TLS

Reported by: np
Fixes: 9349214a2815 mlx5: Preallocate ktls tags asynchronously
Sponsored by: Netflix
DeltaFile
+2-0sys/dev/mlx5/mlx5_en/mlx5_en_main.c
+2-01 files

FreeBSD/src 3a57277sys/dev/drm2 drm_os_freebsd.h

drm2: update gone_in to 16 from 13
DeltaFile
+1-1sys/dev/drm2/drm_os_freebsd.h
+1-11 files

FreeBSD/src c70f6e4stand/libsa/zfs zfsimpl.c, sys/cddl/boot/zfs zfsimpl.h

stand: Teach the zfs loader about dynamic gang headers

There is a pool feature, dynamic_gang_header, that is enabled by default
in new pools.  When this feature is active, gang headers may be larger
than 512 bytes.  The loader needs to be taught to cope with that.

Try using the vdev ashift to pick the gang block header size.  If the
checksum fails, fall back to the old gang block header size.

This is based on a patch by Paul Dagnelie, with testing, bug-fixing and
some simplifications from me.

Approved by:    re (cperciva)
PR:             289690
Co-authored by: Paul Dagnelie <paul.dagnelie at klarasystems.com>
Reviewed by:    imp
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D53578


    [2 lines not shown]
DeltaFile
+54-13stand/libsa/zfs/zfsimpl.c
+2-13sys/cddl/boot/zfs/zfsimpl.h
+56-262 files

FreeBSD/src 7b80c8bsys/dev/cxgbe adapter.h t4_main.c, sys/dev/cxgbe/common t4_hw.c common.h

cxgbe(4): Expanded interrupt handling for T7

- Catch up with the new cause/perr registers.  The high level approach
  is the same but the T7 has an extra top level INT_CAUSE concentrator
  and a PERR_CAUSE concentrator with a changed layout.

- Add various flags to control the interrupt handlers' behavior.

- Implement a t4_intr_clear that internally use the slow handler as an
  iterator over known cause/perr registers.  This lets the driver clear
  all of the interrupt sources that it knows about.  The firmware sets
  up the interrupt enables and clears the causes normally so this call
  should be redundant.

MFC after:      1 week
Sponsored by:   Chelsio Communications
DeltaFile
+1,194-292sys/dev/cxgbe/common/t4_hw.c
+11-1sys/dev/cxgbe/adapter.h
+6-3sys/dev/cxgbe/t4_main.c
+2-1sys/dev/cxgbe/common/common.h
+1-2sys/dev/cxgbe/t4_sge.c
+1,214-2995 files

FreeBSD/src fc22812sys/dev/mmc mmc_fdt_helpers.c

mmc_fdt: handle broken-cd property

The documented properties [1] for card-detection are one of:
 - cd-gpios
 - non-removable
 - broken-cd

In cd_setup() we handle the first two, but not the latter, resulting in
a silently undetected card on an affected system.

To work around this, force cd_disabled when broken-cd is specified, so
that the card detect helper function gets to run. A more complete
solution would implement some kind of polling mechanism to detect the
card's presence or removal.

Some variants of the Allwinner D1, such as the Lichee Rv, specify this
property in the mmc0 device node.

[1] sys/contrib/device-tree/Bindings/mmc/mmc-controller.yaml

    [9 lines not shown]
DeltaFile
+11-0sys/dev/mmc/mmc_fdt_helpers.c
+11-01 files

FreeBSD/src c035937sys/dev/uart uart_dev_snps.c uart_bus_fdt.c

uart: provide and use default rclk for JH7110 UART

A regression in the u-boot-provided JH7110 device tree leaves the uart
incorrectly configured.

The issue arises when a baud rate is specified ('current-speed'
property), but the rclk value is not ('clock-frequency'). Previous
releases, e.g. v2025.04, provided both.

The alternative way to retrieve this value is to query the parent clock,
but our clk framework is not available during early console probing and
configuration.

In this instance, we end up defaulting to DEFAULT_RCLK in ns8250_init(),
which is the wrong value. The relevant uart class (uart_snps) should
provide a default rclk in its definition, but it does not. Add a new
variant class with the correct default rclk of 24000000.

Finally, uart_cpu_fdt_probe() needs to be updated to actually query this

    [11 lines not shown]
DeltaFile
+10-0sys/dev/uart/uart_dev_snps.c
+6-0sys/dev/uart/uart_bus_fdt.c
+16-02 files

FreeBSD/src 587490dsys/arm64/arm64 machdep_boot.c

arm64: Fix calculating kernel size for preload metadata

Cast &end to vm_offset_t before subtracting VM_MIN_KERNEL_ADDRESS to
ensure the resulting size is correct for PRELOAD_PUSH_VALUE.
Previously the correct size was effectively divided by sizeof(void *).

Reviewed by:    andrew
Obtained from:  CheriBSD
Differential Revision:  https://reviews.freebsd.org/D53699
DeltaFile
+2-1sys/arm64/arm64/machdep_boot.c
+2-11 files

FreeBSD/src b19e61fsys/dev/sound/pcm sound.h

sound: Retire SND_DIAGNOSTIC PCM locking macros

Disabled by default, but also redundant, since most of the errors they
catch will be caught anyway by WITNESS and the locking subsystem.

Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Reviewed by:    kib
Differential Revision:  https://reviews.freebsd.org/D53735
DeltaFile
+0-103sys/dev/sound/pcm/sound.h
+0-1031 files

FreeBSD/src fa7bc98sys/dev/sound/pcm dsp.c

sound: Do not use double pointer in dsp_io_ops()

No reason to do so.

Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Reviewed by:    kib
Differential Revision:  https://reviews.freebsd.org/D53734
DeltaFile
+13-13sys/dev/sound/pcm/dsp.c
+13-131 files

FreeBSD/src 6b54319sys/dev/sound/pcm dsp.c

sound: Remove unnecessary uio checks in dsp_io_ops()

uiomove_faultflag() takes care of that already.

Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Reviewed by:    kib
Differential Revision:  https://reviews.freebsd.org/D53733
DeltaFile
+0-7sys/dev/sound/pcm/dsp.c
+0-71 files

FreeBSD/src a1b9b97sys/arm64/spe arm_spe_dev.c

arm64/spe: Fix the GENERIC-NODEBUG build

Fixes:  68f185ccc9f8 ("arm64: Add Arm SPE support")
DeltaFile
+1-0sys/arm64/spe/arm_spe_dev.c
+1-01 files

FreeBSD/src ae17780stand/libsa/zfs zfsimpl.c, sys/cddl/boot/zfs zfsimpl.h

stand: Teach the zfs loader about dynamic gang headers

There is a pool feature, dynamic_gang_header, that is enabled by default
in new pools.  When this feature is active, gang headers may be larger
than 512 bytes.  The loader needs to be taught to cope with that.

Try using the vdev ashift to pick the gang block header size.  If the
checksum fails, fall back to the old gang block header size.

This is based on a patch by Paul Dagnelie, with testing, bug-fixing and
some simplifications from me.

PR:             289690
Co-authored by: Paul Dagnelie <paul.dagnelie at klarasystems.com>
Reviewed by:    imp
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D53578

(cherry picked from commit 4d6801a6b5bdd4d055a00484a743cb4ada659669)
DeltaFile
+54-13stand/libsa/zfs/zfsimpl.c
+2-13sys/cddl/boot/zfs/zfsimpl.h
+56-262 files

FreeBSD/src 1fe7bfdsys/dev/sound/pcm dsp.c

sound: Retire OLDPCM_IOCTL

It is defined by default, and there is no reason to have a switch for
it. While here, also get rid of some unnecessary comments and ioctl
definitions.

No functional change intended.

Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
DeltaFile
+0-15sys/dev/sound/pcm/dsp.c
+0-151 files

FreeBSD/src 15d77c1sys/dev/sound/pcm mixer.c

sound: Move mixer->modify_counter to more appropriate place

No functional change intended.

Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
DeltaFile
+5-5sys/dev/sound/pcm/mixer.c
+5-51 files

FreeBSD/src b55adf9sys/dev/sound/pcm mixer.c mixer.h

sound: Retire unused mixer functions

No functional change intended.

Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
DeltaFile
+0-43sys/dev/sound/pcm/mixer.c
+0-4sys/dev/sound/pcm/mixer.h
+0-472 files

FreeBSD/src 634e578sys/fs/cuse cuse.c

cuse: Fix cdevpriv bugs in cuse_client_open()

If devfs_set_cdevpriv() fails, we will panic when we enter the
cuse_client_free() callback, for a number of reasons:

- pcc->server is not yet assigned, so we'll use a NULL pointer.
- pcc has not yet been added to the pcs->hcli TAILQ, but we'll try to
  remove it.
- pccmd->sx and pccmd->cv are not yet initializated, but we'll try to
  destroy them.

Even if we'd get past all these somehow, we'd still get two errors in
the devfs_set_cdevpriv() failure block:

- We'll unref the server twice, once in cuse_client_free(), and again in
  cuse_client_open().
- A double-free panic, since we'd be trying to free(pcc), which has
  already been freed in cuse_client_free().


    [7 lines not shown]
DeltaFile
+5-13sys/fs/cuse/cuse.c
+5-131 files

FreeBSD/src e4b3198sys/dev/sound/midi midi.c

sound: Remove dead midi code

Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
DeltaFile
+14-123sys/dev/sound/midi/midi.c
+14-1231 files

FreeBSD/src 9d17b61usr.bin/ministat ministat.1 chameleon

ministat: Clean up usage message, manual page, and chameleon

In the manual page:
- Fix synopsis and use better argument names
- Improve description of flags.
- In EXAMPLES, list the contents of iguana and chameleon files.
- Use Rs to reference The Cartoon Guide to Statistics
- Fix misc indentation and style issues
- Tag SPDX

MFC after:      1 week
Reviewed by:    bcr, ziaee
Differential Revision:  https://reviews.freebsd.org/D53710
DeltaFile
+96-50usr.bin/ministat/ministat.1
+1-1usr.bin/ministat/chameleon
+1-1usr.bin/ministat/ministat.c
+98-523 files

FreeBSD/src 054ae5econtrib/less less.nro line.c

MFV: less v685.

(cherry picked from commit d5cb458b4b58b0f0b3c058a32439f232fd5455ca)
DeltaFile
+88-22contrib/less/less.nro
+95-11contrib/less/line.c
+43-31contrib/less/input.c
+44-7contrib/less/os.c
+41-7contrib/less/charset.c
+29-12contrib/less/main.c
+340-9027 files not shown
+597-14133 files

FreeBSD/src ca36afacontrib/less less.nro line.c

MFV: less v685.

(cherry picked from commit d5cb458b4b58b0f0b3c058a32439f232fd5455ca)
DeltaFile
+88-22contrib/less/less.nro
+95-11contrib/less/line.c
+43-31contrib/less/input.c
+44-7contrib/less/os.c
+41-7contrib/less/charset.c
+29-12contrib/less/main.c
+340-9027 files not shown
+597-14133 files

FreeBSD/src daa1f9b. ObsoleteFiles.inc, usr.sbin/apm apm.8 Makefile

apm(8): Drop MLINK to apmconf(8)

apmconf(8) was merged into apm(8) back in 2000 and this note and MLINK
were added as a transition aid, but that aid is no longer needed.
DeltaFile
+1-8usr.sbin/apm/apm.8
+3-0ObsoleteFiles.inc
+0-1usr.sbin/apm/Makefile
+4-93 files

FreeBSD/src 564cad5sys/modules/cxgbe/nvmf_che Makefile

cxgbe(4): fix nvmf_che module build

Fixes: ec0cd28
DeltaFile
+6-2sys/modules/cxgbe/nvmf_che/Makefile
+6-21 files

FreeBSD/src 17b4a0asys/dev/cxgbe/common t4_msg.h t4_regs.h, sys/dev/cxgbe/tom t4_cpl_io.c

cxgbe(4): T7 related updates to shared code

- Avoid some more registers with read side-effects during regdump.
- mps_tcam_size is 3x the size of T6/T5.
- Update rss_rd_row to work with T7.

Obtained from:  Chelsio Communications
MFC after:      1 week
Sponsored by:   Chelsio Communications
DeltaFile
+490-76sys/dev/cxgbe/common/t4_msg.h
+69-57usr.sbin/cxgbetool/reg_defs_t7.c
+94-6sys/dev/cxgbe/common/t4_regs.h
+69-29sys/dev/cxgbe/common/t4_hw.c
+1-1sys/dev/cxgbe/tom/t4_cpl_io.c
+723-1695 files

FreeBSD/src 4b17bb0sys/dev/cxgbe t4_main.c, sys/dev/cxgbe/firmware t4fw_interface.h

cxgbe(4): Add support for QSFP-DD connector and 400G transceivers

Tested with SR8 and DR4 transceivers.

MFC after:      1 week
Sponsored by:   Chelsio Communications
DeltaFile
+14-1sys/dev/cxgbe/t4_main.c
+4-3sys/dev/cxgbe/firmware/t4fw_interface.h
+18-42 files

FreeBSD/src ac562a7lib/libpfctl libpfctl.c

libpfctl: fix error handling

In two cases we returned E2BIG where it should have been a boolean ('false').

MFC after:      1 week
Sponsored by:   Rubicon Communications, LLC ("Netgate")

(cherry picked from commit 9bb1c46b4c38c44565fc24f13acdc19b0cb5a1c4)
DeltaFile
+2-2lib/libpfctl/libpfctl.c
+2-21 files

FreeBSD/src 2d608a4sys/net if_media.h ieee8023ad_lacp.c

if_media.h: Add 400GBase-SR8 and 400GBase-CR8

Reviewed by:    bz (network)
MFC after:      1 week
Sponsored by:   Chelsio Communications
Differential Revision:  https://reviews.freebsd.org/D53387
DeltaFile
+6-0sys/net/if_media.h
+2-0sys/net/ieee8023ad_lacp.c
+8-02 files

FreeBSD/src a34a57dsys/fs/tarfs tarfs_vfsops.c tarfs_io.c, tests/sys/fs/tarfs tarfs_test.sh

tarfs: Fix support for large files

* When fast-forwarding through a zstd frame, we incorrectly used the
  min() inline function instead of the MIN() macro.  The function
  truncates the result to unsigned int, resulting in a decompression
  error when trying to seek more than 4 GB into the frame.

* POSIX states that a size extended header record overrides the size
  field in the header if present, and that one must be included if the
  size of the file exceeds 8 GB (the size field maxes out at 64 GB).

* Reduce repetition in the exthdr parser by deduplicating the syntax
  error handler.

MFC after:      1 week
Sponsored by:   Klara, Inc.
Fixes:          69d94f4c7608 ("Add tarfs, a filesystem backed by tarballs.")
Reviewed by:    allanjude
Differential Revision:  https://reviews.freebsd.org/D53718
DeltaFile
+23-25sys/fs/tarfs/tarfs_vfsops.c
+27-0tests/sys/fs/tarfs/tarfs_test.sh
+1-1sys/fs/tarfs/tarfs_io.c
+51-263 files

FreeBSD/src 4c05ff1sys/dev/sound/midi midi.c mpu401.c, sys/dev/sound/pcm sound.h

sound: Remove KOBJMETHOD_END re-definitions

No functional change intended.

Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Reviewed by:    markj, emaste
Differential Revision:  https://reviews.freebsd.org/D53696
DeltaFile
+0-4sys/dev/sound/midi/midi.c
+0-4sys/dev/sound/midi/mpu401.c
+0-4sys/dev/sound/pcm/sound.h
+0-123 files

FreeBSD/src 6a56966share/examples/sound oss.h simple.c, share/examples/sound/oss audio.c

sound examples: Extend and clean up

- Simplify directory and file structure.
- Clean up and improve code. Add more comments.
- Add polling examples.

MFC after:      1 week
Reviewed by:    christos
Differential Revision:  https://reviews.freebsd.org/D53353
DeltaFile
+0-310share/examples/sound/oss/audio.c
+222-0share/examples/sound/oss.h
+147-0share/examples/sound/simple.c
+79-0share/examples/sound/kqueue.c
+70-0share/examples/sound/poll.c
+70-0share/examples/sound/select.c
+588-3102 files not shown
+595-3838 files