WIP: [connection-callback] Introduce a Report Retry timeout for hotplug events in HIDRAW #765
No reviewers
Labels
No labels
3rdparty
Android
API
Author does not respond
bsd
bug
build system/CI
ci-virtual-device
CMake
Contributions Welcome
Core
dependencies
device-specific
documentation
don't_merge
duplicate
enhancement
Example
Haiku
hidraw
hotplug
info required
invalid
libusb
macOS
Misc
Not an issue
question
Release
Test
Test GUI
Windows
wontfix
No milestone
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
gh-libusb/hidapi!765
Loading…
Reference in a new issue
No description provided.
Delete branch "hotplug_timeout"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This fix targets the scenario when
udevreported a new device, but the device is not yet ready to provide a report. This results in the independentusageentries not generating for the device and certain fields in the device not being filled.UPD: The patch, despite potentially solving timing related issues, proved to not be enough to solve the particular problem at hand, investigation continues. Marking as draft, going to update it in the next week.
Somehow Arch Linux build failed again, but not related to this PR.
error: target not found: libudev0
This needs to be changed to libudev0-shim.
Windows cmake build failed as well, again, nothing to do with this PR.
Testing revealed that the issue was somehow caused by the library being loaded through
dlopenand does not replicate with regular build-time linking. Function pointers retrieved throughdlsymdid not match and the calls failed. None of the resulting pointers were NULL.Building the aplication with
-rdynamiclinker flag also fixed the issue; without this flag, dynamically loaded throughdlopenhidapi cannot retrieve usages - and I don't know why. But at least I know this PR is not necessary.Pull request closed