← Back to archive

Daily update · Aug 10–11, 2026

Kernel fixes: crypto regressions, regmap sync, and lockdep noise

A batch of mainline bug fixes touches the Crypto API, regmap cache, and rhashtable.

In brief

This set of Linux mainline changes is a batch of bug fixes. It addresses several Crypto API regressions, including restored cbc(paes) support and safer buffer handling in two drivers, plus regmap cache fixes that stop unnecessary device writes and a false lockdep warning in rhashtable destruction.

Bug fixes

crypto: ccm - Set rfc4309 maxauthsize from child

The rfc4309 (CCM with AES key wrap) wrapper now derives its maximum authentication size from the child algorithm instead of a hardcoded value.

Why it matters: Correctly reports auth size limits for rfc4309 users, fixing potential API misuse.

438f4896f78f

crypto: tegra - fix cryptlen calculation in GCM request

Fixes a crash when tegra_gcm_setauthsize() is not called before decrypt, which could cause a write beyond the destination scatter-gather buffer. Also removes an unused authsize field.

Why it matters: Avoids memory corruption on Tegra Security Engine.

360f2974fcea

rhashtable: fix false-positive lockdep splat on rhltable destruction

After dropping ht->mutex in the free path, one function still used a lockdep-checked dereference, causing a spurious warning when destroying rhltables.

Why it matters: Cleans up lockdep reports during netfilter/table teardown.

1132c3892788

crypto: qce - fix error path in devm_qce_register_algs

On registration failure, the error path now unregisters only the algorithms that were successfully registered, rather than repeatedly calling unregister on the same failed one.

Why it matters: Avoids incorrect cleanup during probe failure on Qualcomm crypto engines.

9c7540228640

crypto: starfive - use scatterlist length before DMA mapping

The driver read sg_dma_len() before DMA mapping, which is only valid after mapping. It now uses the original scatterlist length.

Why it matters: Fixes potential wrong length handling with CONFIG_NEED_SG_DMA_LENGTH.

6b36f13891ab

crypto: af_alg - Allow cbc(paes)

A previous commit dropped support for off-CPU crypto and accidentally broke cbc(paes), a special algorithm that lets userspace use AES keys stored as CAAM BLOBs. This restores the ability to use it through the AF_ALG interface.

Why it matters: Restores functionality for NXP CAAM users who need kernel-side key handling.

285d8204638c

regcache: Use a consistent sort for defaults table

The lookup and sort functions used different comparison functions, causing unexpected results when register addresses have the top bit set. Now both use the same explicit comparison.

Why it matters: Makes regmap cache lookups behave consistently for high addresses.

9ed3d974a266

regcache: Sort the local copy of an unsorted reg_defaults array

If a driver provides a reg_defaults array that isn't sorted, binary search misses some entries, causing them to be synced on every cache sync. The kernel now detects misordering and sorts a local copy.

Why it matters: Prevents unnecessary writes to hardware, reducing I/O.

4b05ccb17f92

Source commits8 entries +
438f4896f78f

crypto: ccm - Set rfc4309 maxauthsize from child

Herbert Xu · Jul 20, 2026 · 1 files

360f2974fcea

crypto: tegra - fix rctx->cryptlen calculation in tegra_gcm_do_one_req()

Vladislav Dronov · Jul 20, 2026 · 1 files

1132c3892788

rhashtable: fix false-positive lockdep splat on rhltable destruction

Florian Westphal · Jul 22, 2026 · 1 files

9c7540228640

crypto: qce - fix error path in devm_qce_register_algs

Thorsten Blum · Jul 24, 2026 · 1 files

6b36f13891ab

crypto: starfive - use scatterlist length before DMA mapping

Thorsten Blum · Jul 25, 2026 · 1 files

285d8204638c

crypto: af_alg - Allow cbc(paes)

Richard Weinberger · Jul 26, 2026 · 1 files

4b05ccb17f92

regcache: Sort the local copy of an unsorted reg_defaults array

Peter Ujfalusi · Aug 5, 2026 · 1 files

9ed3d974a266

regcache: Use a consistent sort for defaults table

Mark Brown · Aug 5, 2026 · 1 files