diff mbox series

[meta-oe,1/2] valkey: Upgrade 9.1.1 -> 9.1.2

Message ID 20260908093043.249127-1-leon.anavi@konsulko.com
State New
Headers show
Series [meta-oe,1/2] valkey: Upgrade 9.1.1 -> 9.1.2 | expand

Commit Message

Leon Anavi Sept. 8, 2026, 9:30 a.m. UTC
Upgrade to release 9.1.2:

Security Fixes

- GHSA-jcj7-v34w-v9vv: Fix a use-after-free in RDMA connection
  handling that could allow an authenticated client to crash the
  server using CLIENT KILL. Only affects servers built with
  USE_RDMA and configured with an RDMA listener
- GHSA-fq2f-crmw-q97r: Fix an unauthenticated use-after-free of the
  Lua interpreter state, caused by a process-global script debugger
  command table that cached a raw pointer to a freed interpreter
  and was never invalidated

Bug Fixes

- Fix a double-free crash when a module timer callback stops its
  own timer with ValkeyModule_StopTimer
- Fix torn RESP3 push frames when a client publishes to a channel
  it is also subscribed to, which could desync client libraries
- Listpacks are now always validated on RDB load and RESTORE,
  preventing deferred assertion crashes; sanitize-dump-payload and
  its ACL flags become no-ops
- Fix crashes, hangs, and CPU spinning when the RDMA transport is
  used together with I/O threads
- RESET now clears the CLIENT IMPORT-SOURCE flag, so reused pooled
  connections return to normal expiration semantics
- Truncate a partially written MULTI block from the AOF on short
  read, preventing loss of newer writes after a later restart
- Fix an ACL bypass where duplicate STORE/STOREDIST options let
  GEORADIUS write or delete keys outside the user's permitted patterns
- Fix command log redaction leaking between commands in a MULTI
  transaction and missing for commands executed from scripts
- Fix a use-after-free crash when a module's cluster message type
  is received after the module is unloaded
- Fix out-of-bounds access for cluster module message type 255,
  which is now a valid, dispatchable message type
- AOF loading no longer performs ACL checks on replayed commands,
  preventing silent data loss when the default user is disabled
- Fix a client memory accounting leak on replicas that inflated
  the mem_clients_normal INFO field after primary disconnections
- Fix a permanent client deadlock when a blocking command like
  BLPOP is followed by a partially delivered pipelined command
- HGETEX now requires write permission on the key, closing an
  ACL gap that let read-only users change field TTLs or delete
  fields
- Compare the whole TLS certificate CN during authentication,
  so an embedded NUL can no longer impersonate another ACL user
- Fix atomic slot migration failures with I/O threads by not
  offloading the export job's writes while snapshotting
- Reject invalid slot import ranges when loading an RDB, so
  corrupted files can no longer create bad migration jobs
- Reject RDB slot import records with an invalid job name length,
  preventing an out-of-bounds read at startup
- MOVE and COPY now check ACL access to the current database, so
  users can no longer exfiltrate keys from an unauthorized DB
- Fix a crash on COPY with a trailing DB option during slot
  migration, and block cross-DB COPY regardless of option order
- Fix a server panic when pipelined commands with invalid arity
  reach the key prefetcher with I/O threads enabled
- HPERSIST, HTTL, HPTTL, HEXPIRETIME, and HPEXPIRETIME now return a
  syntax error when the FIELDS keyword is missing
- Fix a race between TLS I/O-thread writes and reads that could
  leave slot migration export jobs stuck until timeout
- Fix a signed overflow that let very large hash field expiration
  times (e.g. via HPEXPIREAT) crash the server
- Fix a frozen monotonic clock on hosts with unsynchronized TSC
  that stopped background tasks and key expiration
- Fix a stack overflow crash when retrying a failed TLS write
  with a large reply
- Fix the --check-system clocksource check to skip hosts using a
  hardware clock and suggest only actually available clocksources
- Fix an assertion failure with I/O threads when a blocked
  client's pending command was processed again before unblocking
- Sentinel no longer loads the built-in Lua scripting engine,
  removing a spurious warning at startup
- Validate channel, message, and module payload lengths in cluster
  bus packets, preventing forged packets from crashing nodes
- Harden stream validation on RDB load and RESTORE so crafted
  payloads can no longer crash the server on later commands
- Reject stream payloads with mismatched live/deleted record
  counts, preventing XDEL from destroying unaccounted entries
- Skip unnecessary post-read processing with I/O threads on socket
  and TLS connections, restoring small-payload throughput
- Fix a use-after-free crash when serving clients blocked on the
  same key if one client is freed during processing
- Avoid an unneeded client lookup per write completion with I/O
  threads on socket and TLS connections, improving pipelined
  throughput
- Fix CLUSTER SLOT-STATS ORDERBY returning wrong ordering when slot
  counters differ by more than 2^31
- Fix slot migration failures with I/O threads and TLS by keeping
  the export job's ACK reads on the main thread while snapshotting

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
---
 .../valkey/{valkey_9.1.1.bb => valkey_9.1.2.bb}                 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
 rename meta-oe/recipes-extended/valkey/{valkey_9.1.1.bb => valkey_9.1.2.bb} (98%)
diff mbox series

Patch

diff --git a/meta-oe/recipes-extended/valkey/valkey_9.1.1.bb b/meta-oe/recipes-extended/valkey/valkey_9.1.2.bb
similarity index 98%
rename from meta-oe/recipes-extended/valkey/valkey_9.1.1.bb
rename to meta-oe/recipes-extended/valkey/valkey_9.1.2.bb
index 92cb1cf2f2..187c9a046e 100644
--- a/meta-oe/recipes-extended/valkey/valkey_9.1.1.bb
+++ b/meta-oe/recipes-extended/valkey/valkey_9.1.2.bb
@@ -15,7 +15,7 @@  SRC_URI = "git://github.com/valkey-io/valkey.git;branch=${@oe.utils.trim_version
            file://0001-src-Do-not-reset-FINAL_LIBS.patch \
            file://GNU_SOURCE-7.patch \
            "
-SRCREV = "d27f9ba65a04e80d9c417112a7621fc98a56f70d"
+SRCREV = "7f1dffedff6de73058b2c2a389422b6ecd56c8fb"
 
 RPROVIDES:${PN} = "virtual-redis"