Skip to content

Conversation

@mweibel
Copy link
Collaborator

@mweibel mweibel commented Dec 12, 2025

udevadm when called concurrently may potentially redo symlinks. Adding a lock, so if multiple pods attach at the same time, we don't call udevadm concurrently.
Adjusts the order so we first check if the device is available, before doing udevadm calls.
Adjust order of udevadm calls itself: first trigger, then settle.

Reason:

  • settle waits for new events to finish
  • trigger triggers new events but doesn't wait for them

Improve logging and increase the amount of logs (in debug level) to potentially debug issues with more data.

udevadm when called concurrently may potentially redo symlinks.
Adding a lock, so if multiple pods attach at the same time, we don't
call udevadm concurrently.
Adjusts the order so we first check if the device is available, before
doing udevadm calls.
Adjust order of udevadm calls itself: first trigger, then settle.

Reason:
- settle waits for new events to finish
- trigger triggers new events but doesn't wait for them

Improve logging and increase the amount of logs (in debug level) to
potentially debug issues with more data.
@mweibel mweibel mentioned this pull request Dec 16, 2025
@davidhalter
Copy link
Contributor

Oh god I still have nightmares about debugging and "fixing" this with udevadm. I don't even want to know how broken this fix was, haha. Liebs grüessli schönääää :)

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants