AI-generated analysisPublished automatically and not human-verified. Validated context appears in community notes below.
← Watch feed
Low 45 Bitcoin

fix(core): fix event polling for multiple applets

Public commit record

What the developer wrote

Authored by cepetr

62/100 · Adequate
fix(core): fix event polling for multiple applets

[no changelog]
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Uses a recognizable type or scope! No meaningful explanatory body
The short version

What changed, and why it matters

This commit fixes two low-level operating-system bugs in Trezor's embedded firmware. First, it corrects how the kernel waits for hardware events (button presses, USB packets, etc.) when more than one mini-program ('applet') is running. Previously, the kernel stored direct pointers to each waiting task's event masks, which could create race conditions or incorrect results when multiple tasks polled at the same time; now it keeps private copies and only writes the result back when the task actually wakes up. Second, it fixes a bookkeeping bug where new system task IDs were never marked as used, which could eventually hand out the same ID twice. It also makes sure the memory-protection unit (MPU) is switched to the correct applet before a task starts running or is woken up. The commit is tagged '[no changelog]' and gives no security context, so while the bugs are real, there is no direct evidence they are exploitable for theft of funds or secrets.

Recommended action

Treat as a routine but important kernel correctness fix. Review whether the ID-allocation bug and the event-mask sharing issue could be reached from untrusted applet code, and consider whether a security advisory is warranted if applets can force ID reuse or corrupt another task's event state. No immediate CVE can be assigned from this commit alone.

Security signals we found

01

Concurrency/race-condition fix in shared event-mask pointers across multiple polling tasks

02

Memory Protection Unit (MPU) context now switched before applet task execution/resumption

03

Resource-allocation bug fix: system task IDs were not marked as used, risking ID reuse

04

Kernel-mode code path affected (KERNEL_MODE / KERNEL defines)

05

No changelog entry and no explicit security framing from the vendor

Risk score

Why this scored 45/100

Our methodology →
Potential impact 12/30
Exploitability 8/25
Stealth signal 7/15
Affected reach 10/15
Confidence 5/10
Evidence quality 3/5
Human-validated context

Community notes

Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.

No validated notes yet.

The AI analysis stands alone for now. Submit a note if you can add evidence or important context.