CVE-2022-49065

SUNRPC: Fix the svc_deferred_event trace class

State
Published
Severity
7.5 High
Published
Feb 26, 2025
Updated
Aug 5, 2026
Reserved
Feb 26, 2025

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

SUNRPC: Fix the svc_deferred_event trace class

Fix a NULL deref crash that occurs when an svc_rqst is deferred while the sunrpc tracing subsystem is enabled. svc_revisit() sets dr->xprt to NULL, so it can't be relied upon in the tracepoint to provide the remote's address.

Unfortunately we can't revert the "svc_deferred_class" hunk in commit ece200ddd54b ("sunrpc: Save remote presentation address in svc_xprt for trace events") because there is now a specific check of event format specifiers for unsafe dereferences. The warning that check emits is:

event svc_defer_recv has unsafe dereference of argument 1

A "%pISpc" format specifier with a "struct sockaddr *" is indeed flagged by this check.

Instead, take the brute-force approach used by the svcrdma_qp_error tracepoint. Convert the dr::addr field into a presentation address in the TP_fast_assign() arm of the trace event, and store that as a string. This fix can be backported to -stable kernels.

In the meantime, commit c6ced22997ad ("tracing: Update print fmt check to handle new __get_sockaddr() macro") is now in v5.18, so this wonky fix can be replaced with __sockaddr() and friends properly during the v5.19 merge window.

Scores

CVSSScoreVectorSource
3.17.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HLinux
3.15.5 MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HCISA-ADP

Weaknesses

Affected Products

ProductVersions
LinuxLinux
  • ece200ddd54b9ce840cfee554fb812560c545c7d to before 85ee17ca21cf92989e8c923e3ea4514c291e9d38Affected
  • ece200ddd54b9ce840cfee554fb812560c545c7d to before 726ae7300fcc25fefa46d188cc07eb16dc908f9eAffected
  • ece200ddd54b9ce840cfee554fb812560c545c7d to before c2456f470eea3bd06574d988bf6089e7c3f4c5ccAffected
  • ece200ddd54b9ce840cfee554fb812560c545c7d to before 4d5004451ab2218eab94a30e1841462c9316ba19Affected
LinuxLinux
  • 4.17Affected
  • before 4.17Not affected
  • 5.10.112 through 5.10.*Not affected
  • 5.15.35 through 5.15.*Not affected
  • 5.17.4 through 5.17.*Not affected
  • 5.18 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.