FreeBSD/src 4fdded8sys/dev/extres/clk clk_fixed.c

clk_fixed: reduce and clarify messages due to missing clk-frequency

The current dts for Raspberry 3B+ and 4B have 2 disabled fixed-clock
nodes which have no clock-frequency value.  Such nodes are non-standard.
This results in about 150 messages during autoconfiguration:

    clk_fixed2: <Fixed clock> disabled on ofwbus0
    clk_fixed2: Cannot FDT parameters.
    device_attach: clk_fixed2 attach returned 6

Defensively check for clock-frequency in the probe routine, and if
none, return an error with a more direct error message (1 line per
occurrence, 50 lines total):

    clk_fixed2: clock-fixed has no clock-frequency

Based on a patch by manu.

Approved by:    re(gjb)

    [5 lines not shown]
DeltaFile
+5-0sys/dev/extres/clk/clk_fixed.c
+5-01 files

FreeBSD/src d9b8e5asys/powerpc/aim mmu_radix.c

powerpc pmap: initialize kernel pmap radix trie

Commit 2d2bcba7ba70141388729ed49674b36fd01146c5 changed radix trie
implementation and made it necessary that radix tries be initialized
with vm_radix_init. @dbaio reports that in some configurations, there
is a powerpc boot panic and that this commit introduced the
problem. In powerpc/aim/mmu_radix.c, the radix trie in kernel_pmap is
initialized by zeroing all its fields.

Add a call to vm_radix_init to properly initialize
kernel_pmap->pm_radix.

Reported by:    dbaio
Reviewed by:    alc, jhibbits
Fixes:  2d2bcba7ba drop NULL check from radix trie search
Differential Revision:  https://reviews.freebsd.org/D41846

(cherry picked from commit 8763b9862f90dc3bdbbc5e3c2664890be7c1f0c4)
(cherry picked from commit a4c7a3f7f56a131a74b78ac48f6533feb8ef5aae)

    [2 lines not shown]
DeltaFile
+1-0sys/powerpc/aim/mmu_radix.c
+1-01 files

FreeBSD/src 84266fbusr.bin/chkey chkey.1, usr.bin/keylogin keylogin.1

Add deprecation notices to publickey(5) tools

Reviewed by:    imp, manu
MFC after:      3 days
Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D40144

(cherry picked from commit d5ef73a71f0e2fbc4dc9b907a6e59a15599c50b3)
DeltaFile
+4-0usr.sbin/keyserv/keyserv.8
+4-0usr.bin/chkey/chkey.1
+4-0usr.bin/keylogin/keylogin.1
+4-0usr.bin/keylogout/keylogout.1
+4-0usr.bin/newkey/newkey.8
+20-05 files

FreeBSD/src bb124a0sys/kern vfs_cache.c

vfs cache: retire dothits and dotdothits counters

They demonstrate nothing, and in case of dotdot they are not even hits.
This is just a count of lookups with "..", which are not worth
mentioniong.
DeltaFile
+0-6sys/kern/vfs_cache.c
+0-61 files

FreeBSD/src 8ac750econtrib/ofed/libirdma irdma_uverbs.c irdma_umain.h

irdma(4): remove artificial completion generator

Removing artificial completion generator as there had been no indication
of the code being required for E810 cards.  Further more it was found
that the code may have unpleasant side effects on user experience when
using ucmatose tool.

Signed-off-by: Bartosz Sobczak <bartosz.sobczak at intel.com>
Signed-off-by: Eric Joyner <erj at FreeBSD.org>

Reviewed by:    erj@
Sponsored by:   Intel Corporation
Differential Revision:  https://reviews.freebsd.org/D41593

(cherry picked from commit ffafa6a4d157e49e6b12567958c4ab0c9151c080)
DeltaFile
+1-160contrib/ofed/libirdma/irdma_uverbs.c
+0-8contrib/ofed/libirdma/irdma_umain.h
+1-1682 files

FreeBSD/src e3b3525sys/dev/irdma irdma_cm.c fbsd_kcompat.h

irdma(4): use related vnet for searching netdev

It was found through testing that when ULP uses individual vnet, the
search for the correct vlan_id may failing because of no proper
interface with given address.

The solution is to use vnet associated to the connection whenever
possible.

Signed-off-by: Bartosz Sobczak <bartosz.sobczak at intel.com>
Signed-off-by: Eric Joyner <erj at FreeBSD.org>

Reviewed by:    erj@
Sponsored by:   Intel Corporation
Differential Revision:  https://reviews.freebsd.org/D41592

(cherry picked from commit bc3a013ccd23c50bb48f17211ffc36fe85d11e18)
DeltaFile
+24-11sys/dev/irdma/irdma_cm.c
+15-0sys/dev/irdma/fbsd_kcompat.h
+2-4sys/dev/irdma/fbsd_kcompat.c
+3-2sys/dev/irdma/irdma_main.h
+2-2sys/dev/irdma/irdma_verbs.c
+46-195 files

FreeBSD/src 1002fd4sys/dev/ice ice_rdma.c if_ice_iflib.c, sys/dev/irdma icrdma.c

ice(4): Match irdma interface changes

(This is a direct commit to stable/13)

Signed-off-by: Bartosz Sobczak <bartosz.sobczak at intel.com>
Signed-off-by: Eric Joyner <erj at FreeBSD.org>

Sponsored by:   Intel Corporation
DeltaFile
+54-5sys/dev/ice/ice_rdma.c
+7-8sys/dev/ice/if_ice_iflib.c
+6-5sys/dev/ice/ice_rdma.h
+0-4sys/dev/irdma/icrdma.c
+2-0sys/dev/ice/ice_rdma_internal.h
+69-225 files

FreeBSD/src f5f2cc9sys/dev/irdma irdma_cm.c fbsd_kcompat.c

irdma(4): upgrade to 1.2.17-k

Update Intel irdma driver to version 1.2.17-k

Notable changes:
- pf-reset handling improvements, including fixes in communication with if_ice(4)
- avoid racing when handling various events
- adding sw stats sysctls
- hand over pe_criterr handling from ice(4) to irdma(4)
- debug prints adjustments
- fix crash after changes in irdma_add_mqh_ifa_cb

Additional fixes in stable/13 but not in original cherry-picked commit:
- code appearance improvements
- bug fixes in fbsd_kcompat.c
- avoid waiting procedures under lock in irdma_add_mqh_ifa_cb
- busy wait for manage_qhash
- stats don't need to be RDTUN, RD is enough


    [8 lines not shown]
DeltaFile
+235-287sys/dev/irdma/irdma_cm.c
+394-58sys/dev/irdma/fbsd_kcompat.c
+234-204sys/dev/irdma/irdma_verbs.c
+204-104sys/dev/irdma/icrdma.c
+176-53sys/dev/irdma/irdma_utils.c
+57-107sys/dev/irdma/irdma_ctrl.c
+1,300-81338 files not shown
+1,764-1,30944 files

FreeBSD/src 1a644e8sys/kern vfs_subr.c

vfs: s/u_long vstir/bool vstir/

(cherry picked from commit 509d843a982b39a531a558c65794ffffcdf93ae8)
DeltaFile
+3-3sys/kern/vfs_subr.c
+3-31 files

FreeBSD/src e5114ccsys/kern vfs_subr.c

vfs: count how many times vnlru got woken up due to vnode shortage

(cherry picked from commit 9080190b970c7026695571f90b95fdcf7056ec67)
DeltaFile
+5-0sys/kern/vfs_subr.c
+5-01 files

FreeBSD/src b757ea2sys/kern vfs_subr.c

vfs: group vnode-related sysctls under vfs.vnode

Instead of having things scattered through vfs, debug and kern trees.

Old names remain for compatibility.

Sample output of "sysctl vfs.vnode":
vfs.vnode.vnlru.failed_runs: 0
vfs.vnode.vnlru.recycles_free: 0
vfs.vnode.vnlru.recycles: 0
vfs.vnode.stats.alloc_sleeps: 0
vfs.vnode.stats.free: 1310
vfs.vnode.stats.skipped_requeues: 0
vfs.vnode.stats.created: 1686
vfs.vnode.stats.count: 1641
vfs.vnode.param.wantfree: 2097152
vfs.vnode.param.limit: 8388608

(cherry picked from commit d3e6478912431309aad36211b6c39b0d741312dc)
DeltaFile
+29-3sys/kern/vfs_subr.c
+29-31 files

FreeBSD/src 873b6cdsys/kern vfs_subr.c

vfs: stabilize freevnodes_old

In face of parallel callers.

(cherry picked from commit ef89b78bb1f60484cc743fa590d623ad896ca8e9)
DeltaFile
+7-6sys/kern/vfs_subr.c
+7-61 files

FreeBSD/src b5210f3sys/kern vfs_subr.c

vfs: retire vnlru_under_unlocked

It only looks at the centralized value which in corner cases can end up
being negative.

(cherry picked from commit ba5dc166e0f390c703042910b637a83c705c8af3)
DeltaFile
+1-18sys/kern/vfs_subr.c
+1-181 files

FreeBSD/src 8e4a043sys/kern vfs_cache.c

vfs cache: garbage collect the fullpathfail2 counter

The conditions it checks cannot legally be true (modulo races against
forced unmount), so assert on it instead.

(cherry picked from commit 07f52c4b5a4f7a658bf7ed29eadd5c4d52a4f3b2)
DeltaFile
+1-9sys/kern/vfs_cache.c
+1-91 files

FreeBSD/src 210dd7asys/kern vfs_subr.c

vfs: fix stale comment about freevnodes management

(cherry picked from commit 9dc0c983b0931f359c2ff10d47ad835ef74e929a)
DeltaFile
+5-5sys/kern/vfs_subr.c
+5-51 files

FreeBSD/src 07c081esys/kern vfs_subr.c

vfs: use vnlru_read_freevnodes for the freevnodes sysctl

For a more accurate result.

(cherry picked from commit 03bfee175269960c67cab64d761bbb5eb9ac5878)
DeltaFile
+13-2sys/kern/vfs_subr.c
+13-21 files

FreeBSD/src b93b1b9sys/kern vfs_subr.c

vfs: retire kern.minvnodes

It was marked as legacy in 2005.

(cherry picked from commit 2a689cadf092a3319d7619c3f4aa242011c20c8e)
DeltaFile
+0-2sys/kern/vfs_subr.c
+0-21 files

FreeBSD/src 25d8cf2sys/ufs/ffs ffs_vnops.c, sys/ufs/ufs ufs_vnops.c

ufs: restore name cache fast path lookup

Found by:       dchagin
Fixes:  f3c81b973897 ("ufs: add missing vop_fplookup ops")

(cherry picked from commit a87c6962affc2d1994d8f30806c934eb4cb7af22)
DeltaFile
+4-2sys/ufs/ffs/ffs_vnops.c
+2-2sys/ufs/ufs/ufs_vnops.c
+6-42 files

FreeBSD/src 2ea531bsys/kern vfs_subr.c

vfs: don't kick vnlru if it is already running

Further shaves some lock trips.

(cherry picked from commit 76f1153790b6d2e1a4f0389c3ac24e41d08f9ba6)
DeltaFile
+4-2sys/kern/vfs_subr.c
+4-21 files

FreeBSD/src 206dd9dsys/kern vfs_subr.c

vfs: drop one vnode list lock trip during vnlru free recycle

vnlru_free_impl would take the lock prior to returning even though most
frequent caller does not need it.

Unsurprisingly vnode_list mtx is the primary bottleneck when recycling
and avoiding the useless lock trip helps.

Setting maxvnodes to 400000 and running 20 parallel finds each with a
dedicated directory tree of 1 million vnodes in total:
before: 4.50s user 1225.71s system 1979% cpu 1:02.14 total
after:  4.20s user 806.23s system 1973% cpu 41.059 total

That's 34% reduction in total real time.

With this the block *remains* the primary bottleneck when running on
ZFS.

(cherry picked from commit 74be676d87745eb727642f6f8329236c848929d5)
DeltaFile
+35-8sys/kern/vfs_subr.c
+35-81 files

FreeBSD/src 41fad65sys/kern vfs_cache.c

vfs cache: fix a hang when bumping vnode limit too high

Overflow in cache_changesize would make the value flip to 0 and stay
there as 0 << 1 does not do anything.

Note callers limit the outcome to something below u_int.

Also note there entire vnode handling thing both in vfs layer as a whole
and this file can't decide whether to long, u_long or u_int.

(cherry picked from commit 32988c1499f8698b41e15ed40a46d271e757bba3)
DeltaFile
+5-5sys/kern/vfs_cache.c
+5-51 files

FreeBSD/src dfdf0d7sys/dev/irdma irdma_cm.c irdma_verbs.c

irdma(4): Upgrade the driver to 1.1.11-k

Summary of changes:
- postpone mtu size assignment during load to avoid race condition
- refactor some of the debug prints
- add request reset handler
- refactor flush scheduler to increase efficiency and avoid racing
- put correct vlan_tag for UD traffic with PFC
- suspend QP before going to ERROR state to avoid CQP timout
- fix arithmetic error on irdma_debug_bugf
- allow debug flag to be settable during driver load
- introduce meaningful default values for DCQCN algorithm
- interrupt naming convention improvements
- skip unsignaled completions in poll_cmpl

Signed-off-by: Bartosz Sobczak bartosz.sobczak at intel.com
Signed-off-by: Eric Joyner <erj at FreeBSD.org>

Reviewed by:    hselasky@

    [4 lines not shown]
DeltaFile
+256-146sys/dev/irdma/irdma_cm.c
+109-111sys/dev/irdma/irdma_verbs.c
+133-61sys/dev/irdma/irdma_kcompat.c
+96-77sys/dev/irdma/irdma_hw.c
+81-50sys/dev/irdma/irdma_utils.c
+65-62sys/dev/irdma/irdma_uk.c
+740-50731 files not shown
+977-62537 files

FreeBSD/src 33fdf1asys/kern vfs_cache.c

vfs cache: mark vfs.cache.param.size as read-only

It was not meant to be writable and writes don't work correctly as they
fail to resize the hash.
DeltaFile
+1-1sys/kern/vfs_cache.c
+1-11 files

FreeBSD/src 02ef039sys/kern vfs_cache.c

vfs cache: Drop known argument of internal cache_recalc_neg_min()

'ncnegminpct' is to be passed always, so just drop the unneeded parameter.

Sponsored by:   The FreeBSD Foundation
Reviewed by:    mjg

Differential Revision: https://reviews.freebsd.org/D41763
DeltaFile
+5-5sys/kern/vfs_cache.c
+5-51 files

FreeBSD/src 02cbc02sys/kern vfs_lookup.c

vfs: fix reference counting/locking on LK_UPGRADE error

Factoring out this code unfortunately introduced reference and lock leaks in
case of failure in the lock upgrade path under VV_CROSSLOCK. In terms of
practical use, this impacts unionfs (and nullfs in a corner case).

Fixes:          80bd5ef07025 ("vfs: factor out mount point traversal to a dedicated routine")
MFC after:      3 days
MFC to:         stable/14 releng/14.0
Sponsored by:   The FreeBSD Foundation
Reviewed by:    mjg
[mjg: massaged the commit message a little bit]

Differential Revision: https://reviews.freebsd.org/D41731
DeltaFile
+8-1sys/kern/vfs_lookup.c
+8-11 files

FreeBSD/src 6a19664sys/dev/ice ice_common.c ice_switch.c

ice(4): Update to 1.38.16-k

New features
- Add sysctl "link_active_on_if_down" (defaults to 1 to match previous
behavior): set this to 0 to have the driver bring the physical link down when
the interface is brought administratively down
- Add sysctl "temp" to read chip temperature on E810 devices; this requires a
4.30 or newer NVM (see package sysutils/intel-nvmupdate-100g)

Bug fixes and general changes
- (linked to irdma) properly propagate PF reset request from irdma driver
- (linked to irdma) properly notify irdma of an impending PF reset
- (linked to irdma) move Protocol Engine error handling to irdma
- Print log message when using a DDP that doesn't support the "TX balancing"
mode
- Block LLDP agent configuration when DSCP QoS mode is enabled
- Fix kernel panic when updating NVM when adapter is in the "TX balancing" mode
- Remove ice_sbq_cmd.h since it's unused
- Fix LLDP RX filter to still allow LLDP frames to be received by SW after a PF

    [14 lines not shown]
DeltaFile
+259-231sys/dev/ice/ice_common.c
+186-146sys/dev/ice/ice_switch.c
+214-25sys/dev/ice/ice_lib.c
+104-24sys/dev/ice/if_ice_iflib.c
+80-43sys/dev/ice/ice_adminq_cmd.h
+0-120sys/dev/ice/ice_sbq_cmd.h
+843-58925 files not shown
+1,358-74731 files

FreeBSD/src 4e80493contrib/ofed/libirdma irdma_uverbs.c irdma_umain.h

irdma(4): remove artificial completion generator

Removing artificial completion generator as there had been no indication
of the code being required for E810 cards.  Further more it was found
that the code may have unpleasant side effects on user experience when
using ucmatose tool.

Signed-off-by: Bartosz Sobczak <bartosz.sobczak at intel.com>
Signed-off-by: Eric Joyner <erj at FreeBSD.org>

Reviewed by:    erj@
Sponsored by:   Intel Corporation
Differential Revision:  https://reviews.freebsd.org/D41593

(cherry picked from commit ffafa6a4d157e49e6b12567958c4ab0c9151c080)
DeltaFile
+1-160contrib/ofed/libirdma/irdma_uverbs.c
+0-8contrib/ofed/libirdma/irdma_umain.h
+1-1682 files

FreeBSD/src cc1abdcsys/dev/irdma irdma_cm.c fbsd_kcompat.h

irdma(4): use related vnet for searching netdev

It was found through testing that when ULP uses individual vnet, the
search for the correct vlan_id may failing because of no proper
interface with given address.

The solution is to use vnet associated to the connection whenever
possible.

Signed-off-by: Bartosz Sobczak <bartosz.sobczak at intel.com>
Signed-off-by: Eric Joyner <erj at FreeBSD.org>

Reviewed by:    erj@
Sponsored by:   Intel Corporation
Differential Revision:  https://reviews.freebsd.org/D41592

(cherry picked from commit bc3a013ccd23c50bb48f17211ffc36fe85d11e18)
DeltaFile
+24-11sys/dev/irdma/irdma_cm.c
+14-0sys/dev/irdma/fbsd_kcompat.h
+2-4sys/dev/irdma/fbsd_kcompat.c
+3-2sys/dev/irdma/irdma_main.h
+2-2sys/dev/irdma/irdma_verbs.c
+45-195 files

FreeBSD/src 65d0d78sys/conf files.amd64 files.arm64, sys/contrib/dev/ice LICENSE ice-1.3.35.0.pkg

ice_ddp: Update to 1.3.35.0

This is intended to be used with the upcoming updated ice(4) version
1.38.16-k.

Signed-off-by: Eric Joyner <erj at FreeBSD.org>

Sponsored by:   Intel Corporation

(cherry picked from commit e04c4b4a369df3f1dcbebbdf726193f02af60801)
DeltaFile
+3-3sys/conf/files.amd64
+3-3sys/conf/files.arm64
+3-3sys/conf/files.powerpc
+1-1sys/modules/ice_ddp/Makefile
+1-1sys/contrib/dev/ice/LICENSE
+0-0sys/contrib/dev/ice/ice-1.3.35.0.pkg
+11-111 files not shown
+11-117 files

FreeBSD/src e99406acrypto/openssl/crypto/perlasm arm-xlate.pl

OpenSSL: Fix handling of the "0:" label in arm-xlate.pl

When $label == "0", $label is not truthy, so `if ($label)` thinks there isn't
a label. Correct this by looking at the result of the s/// command.

Verified that there are no changes in the .S files created during a normal
build, and that the "0:" labels appear in the translation given in the error
report (and they are the only difference in the before and after output).

Obtained from:  OpenSSL commit 9607f5ccf285ac9988a86f95c5ad9f92b556a843

Reviewed by:    markj
Differential Revision:  https://reviews.freebsd.org/D41587

(cherry picked from commit eba6abafc1988dc8753b08822abff333d4810e75)
DeltaFile
+2-3crypto/openssl/crypto/perlasm/arm-xlate.pl
+2-31 files