Skip to content

Propagate blocked-process GPU ID to D-Bus log entries #150

Description

@coderabbitai

Summary

The blocked-process report flow currently loses the GPU ID. The daemon creates LogEntry records with gpu_id: 1, even when the eBPF blocker has the actual ino_gpu_id.

Required changes

  • Add the GPU ID field to every ReportEvent layout used by the eBPF and daemon code.
  • Populate the field at every report_event call from is_inode_blocked's ino_gpu_id.
  • Pass the event GPU ID through report_logger and report_blocked.
  • Set LogEntry.gpu_id from the reported GPU ID instead of a hard-coded value.

Rationale

D-Bus clients need the actual blocked GPU ID to identify the GPU involved in each blocked-process event.

Affected areas

  • crates/cardwire-ebpf/src/helpers.rs
  • crates/cardwire-ebpf/src/maps.rs
  • crates/cardwire-daemon/src/analyzer/models.rs
  • The blocked-process D-Bus log payload path

Acceptance criteria

  • Each blocked-process ReportEvent carries the GPU ID.
  • Each report_event call supplies ino_gpu_id.
  • LogEntry.gpu_id equals the GPU ID from the report event.
  • The eBPF and daemon ReportEvent layouts remain compatible.

Backlinks

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

  • Status
    Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions