Skip to content

ui: don't spam logs when NetworkManager is not available - #38504

Merged
adeebshihadeh merged 3 commits into
commaai:masterfrom
mpurnell1:fix-wifi-manager-nm-absent
Aug 7, 2026
Merged

ui: don't spam logs when NetworkManager is not available#38504
adeebshihadeh merged 3 commits into
commaai:masterfrom
mpurnell1:fix-wifi-manager-nm-absent

Conversation

@mpurnell1

@mpurnell1 mpurnell1 commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Note

This branch temporarily includes the CI fix from #38514 so the Create UI Report job can run on fork PRs

Description
While working on #38502, I noticed the Create UI Report job logs are full of repeated tracebacks from wifi_manager.py (426 occurrences in the job linked below):

ValueError: Object path ('T') must start with /
Error getting adapter type 2: Object path ('T') must start with /

_get_adapter treats the reply body of GetDevices as a list of device paths without checking whether the reply is a D-Bus error. On hosts where D-Bus is up but NetworkManager is not on the bus (like the GitHub runners), the body is the error string "The name org.freedesktop.NetworkManager was not provided by any .service files", so the loop iterates the string character by character, throws DBusAddress('T') on the first one, and the 1 second retry loop in _wait_for_wifi_device logs a traceback every second, forever. This affects any PC running the UI without NetworkManager, not just CI.

The fix checks the reply type before using the body, matching how error replies are already handled elsewhere in the file.

Verification
Reproduced the error reply with plain jeepney against a bus without NetworkManager: the reply has message_type == MessageType.error, body[0] is the error string, and iterating it yields 'T'. The added guard catches exactly this case.

Log with tracebacks (426 occurrences during Create UI Report step):
#38502 UI Report

Clean log on this branch:
#38504 UI Report

@github-actions

Copy link
Copy Markdown
Contributor

Process replay diff report

Replays driving segments through this PR and compares the behavior to master.
Please review any changes carefully to ensure they are expected.

✅ 0 changed, 66 passed, 0 errors

@AmyJeanes

Copy link
Copy Markdown

This would be nice when working on WSL2 too!

andiradulescu and others added 2 commits August 2, 2026 23:15
_get_adapter treats the reply body as a list of device paths without
checking whether the reply is a D-Bus error. Without NetworkManager on
the bus the body is an error string, so it iterates the string, throws
on the first character, and the retry loop in _wait_for_wifi_device
logs a traceback every second.
@mpurnell1
mpurnell1 force-pushed the fix-wifi-manager-nm-absent branch from e6c57fc to c6b3806 Compare August 3, 2026 04:26
@github-actions github-actions Bot added the ui label Aug 7, 2026
@adeebshihadeh

Copy link
Copy Markdown
Contributor

Thanks!

@adeebshihadeh
adeebshihadeh merged commit bd7b419 into commaai:master Aug 7, 2026
9 of 11 checks passed
@mpurnell1
mpurnell1 deleted the fix-wifi-manager-nm-absent branch August 7, 2026 17:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants