LiveActive security incident?Get immediate response
CVE Record

CVE-2026-46202: HID: appletb-kbd: run inactivity autodim from workqueues

In the Linux kernel, the following vulnerability has been resolved: HID: appletb-kbd: run inactivity autodim from workqueues The autodim code in hid-appletb-kbd takes backlight_device->ops_lock via backlight_device_set_brightness() -> mutex_lock() from two different atomic contexts: * appletb_inactivity_timer() is a struct timer_list callback, so it runs in softirq context. Every expiry triggers BUG: sleeping function called from invalid context at kernel/locking/mutex.c:591 Call Trace: <IRQ> __might_resched __mutex_lock backlight_device_set_brightness appletb_inactivity_timer call_timer_fn run_timer_softirq * reset_inactivity_timer() is called from appletb_kbd_hid_event() and appletb_kbd_inp_event(). On real USB hardware these run in softirq/IRQ context (URB completion and input-event dispatch). When the Touch Bar has already been dimmed or turned off, the reset path calls backlight_device_set_brightness() directly to restore brightness, producing the same warning. Both call sites hit the same mutex_lock()-from-atomic bug. Fix them together by moving the blocking work onto the system workqueue: * Convert the inactivity timer from struct timer_list to struct delayed_work; the callback (appletb_inactivity_work) now runs in process context where mutex_lock() is legal. * Add a dedicated struct work_struct restore_brightness_work and have reset_inactivity_timer() schedule it instead of calling backlight_device_set_brightness() directly. Cancel both works synchronously during driver tear-down alongside the existing backlight reference drop. The semantics are unchanged (same delays, same state transitions on dim, turn-off and user activity); only the execution context of the sleeping call changes. The timer field and callback are renamed to match their new type; reset_inactivity_timer() keeps its name because it is invoked from input event paths that read naturally as "reset the inactivity timer".

UnknownCVSS not scoredNot KEV-listedUpdated
Glexia's TakeAutomated analysislow

Security readout for executives and security teams

Plain-English summary

This Linux kernel issue affects the Apple Touch Bar keyboard backlight driver. Under certain activity or inactivity paths, the driver tried to perform blocking backlight work in a context where sleeping is not allowed. The available sources describe a kernel correctness bug, not confirmed data theft, remote compromise, or active exploitation.

Executive priority

Treat this as routine kernel maintenance unless Apple Touch Bar Linux systems are business-critical or showing kernel warnings. There is no source-backed evidence of active exploitation, but affected systems should still receive vendor kernel updates.

Technical view

The hid-appletb-kbd autodim paths called backlight_device_set_brightness() from timer, USB, or input atomic contexts, triggering mutex_lock from invalid context. The fix moves dim and restore brightness operations onto workqueues, using delayed_work and restore_brightness_work, then cancels both synchronously during driver teardown.

Likely exposure

Exposure appears limited to Linux systems using the hid-appletb-kbd Apple Touch Bar keyboard backlight driver on affected kernel builds. The CVE source lists Linux as affected and provides stable kernel commits, but it does not provide distribution package mappings or broader product impact.

Exploitation context

The source bundle does not cite public exploitation, weaponization, or KEV listing. The reported behavior is a kernel warning caused by sleeping in atomic context during keyboard backlight dim or restore paths. Practical impact is unclear from the available sources.

Researcher notes

The fix is execution-context hardening: blocking backlight mutex acquisition is moved from timer and IRQ-like paths to process-context workqueues. Sources do not provide CVSS, CWE, exploitability analysis, or distribution-specific version ranges, so impact assessment should remain conservative.

Mitigation direction

  • Update to a kernel build containing the referenced stable fixes.
  • Check Linux distribution advisories for package-specific fixed versions.
  • Prioritize systems using Apple Touch Bar keyboard support.
  • If no fix is packaged, follow vendor guidance rather than applying ad hoc changes.

Validation and detection

  • Confirm whether affected systems use hid-appletb-kbd or Apple Touch Bar keyboard support.
  • Verify the running kernel includes one of the referenced stable commits or equivalent backport.
  • Review kernel logs for mutex or sleeping-in-atomic warnings involving appletb-kbd.
  • Regression test keyboard backlight dim, turn-off, restore, and driver teardown behavior.
Prepared
Confidence
medium
Sources
5

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cve · low confidence lookup

CVE-2026-46202 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Unknown
CVSS
Not scored
Known Exploited
No
Published
Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

0CVSS vectors
3Timeline events
0ADP providers
4Source links

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
LinuxLinux93a0fc48948107e0cc34e1de22c3cb363a8f2783, 93a0fc48948107e0cc34e1de22c3cb363a8f2783, 93a0fc48948107e0cc34e1de22c3cb363a8f2783unaffected
LinuxLinux6.15, 0, 6.18.32, 7.0.9, 7.1affected
Weakness

CWE details

No CWE listed

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.