Skip to content
VulniPulse
Advisory severityMedium5.5Red Hat Linux

Medium [CVE-2026-52946] fix SOFTIRQ-unsafe lock order in fasync signaling

This medium-severity Red Hat Linux advisory covers CVE-2026-52946 affecting Red Hat Enterprise Linux 10, Red Hat Enterprise Linux 6, Red Hat Enterprise Linux 7.

Aggregated and source-linked by VulniPulse. Data sources, validation and limitations.

CVE-2026-52946 Source published Source updated

VulniPulse record published Record updated

CVE-2026-52946
Affected products & platforms
Red Hat LinuxLinux Kernel
Open source advisory

Summary

In the Linux kernel, the following vulnerability has been resolved: fs/fcntl: fix SOFTIRQ-unsafe lock order in fasync signaling A SOFTIRQ-safe to SOFTIRQ-unsafe lock order deadlock can occur in send_sigio() and send_sigurg() when a process group receives a signal.

When FASYNC is configured for a process group (PIDTYPE_PGID), both functions use read_lock(&tasklist_lock) to traverse the task list.

However, they are frequently called from softirq context: - send_sigio() via input_inject_event -> kill_fasync - send_sigurg() via tcp_check_urg -> sk_send_sigurg (NET_RX_SOFTIRQ) The deadlock is caused by the rwlock writer fairness mechanism: 1. CPU 0 (process context) holds read_lock(&tasklist_lock) in do_wait().

2. CPU 1 (process context) attempts write_lock(&tasklist_lock) in fork() or exit() and spins, which blocks all new readers.

3. CPU 0 is interrupted by a softirq (e.g., TCP URG packet reception).

4. The softirq calls send_sigurg() and attempts to acquire read_lock(&tasklist_lock), deadlocking because CPU 1 is waiting.

Since PID hashing and do_each_pid_task() traversals are already RCU-protected, the read_lock on tasklist_lock is no longer strictly required for safe traversal. Fix this by replacing tasklist_lock with rcu_read_lock(), aligning the process group signaling path with the single-PID path.

Is CVE-2026-52946 exploited?

No exploitation is reported in the sources VulniPulse tracks: CVE-2026-52946 is not in the CISA KEV catalog (checked ) and this advisory does not report exploitation. That is not proof the vulnerability cannot be exploited.

How do I fix CVE-2026-52946?

The advisory VulniPulse tracks names no fixed release. Follow Red Hat's guidance for workarounds and updates.

Confirm against the vendor advisory before you patch.

Affected versions

No affected-version range was extracted from the source record. The vendor advisory is authoritative. Check it before change work.

Official advisory · medium-confidence parse· fetched 14 days ago·verify at source

Fixed versions

No fixed release is recorded yet. That does not prove no patch exists. Confirm against the vendor advisory.

Official advisory · medium-confidence parse· fetched 14 days ago·verify at source

Mitigation

The source record does not include mitigation steps. That does not mean no fix exists. Read the vendor advisory below for the authoritative guidance.

Official advisory · medium-confidence parse· fetched 14 days ago·verify at source

Get an email when Red Hat Linux Kernel publishes the next one.

See Red Hat Linux Kernel's last 90 days of advisories first. Then choose one product with live alerts free for life, or a free month of real-time alerts on everything with the severity, the fixed version and the vendor's link (card needed, then US$15/month; we email you before the first charge).

Alert me about Red Hat Linux Kernel
All Red Hat Linux advisories

iPhone and Android apps · New on the App Store

Monitor future Red Hat Linux CVEs from your phone.

Choose a whole vendor or a precise platform, then receive matching security advisories by phone notification, email, or both. Coverage follows 34 official vendor sources and 160+ reviewed platform categories.

Discussion(0)

No comments yet. Share field notes, upgrade gotchas, or questions — verify against the vendor advisory before acting on community advice.

Sign in to join the discussion.