-
Notifications
You must be signed in to change notification settings - Fork 51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[libusb] Improve transfer results ordering #462
Labels
Comments
emaxx-google
added a commit
that referenced
this issue
Oct 27, 2023
When choosing which of active Libusb transfers should receive a reply from the JS API, use the FIFO order rather than a random order. Also change the internal structures so that FIFO is used uniformly, which we'll use in follow-ups for correctly enqueueing JS API calls. The FIFO order is more intuitive and better corresponds to Libusb behavior on other platforms. Moreover, the FIFO property will be crucial to avoid the situation when an enqueued JS API call is discarded because the transfer happened to be resolved by the call originally triggered by a different transfer. This contributes to #462 and #1104.
emaxx-google
added a commit
that referenced
this issue
Nov 24, 2023
When choosing which of active Libusb transfers should receive a reply from the JS API, use the FIFO order rather than a random order. Also change the internal structures so that FIFO is used uniformly, which we'll use in follow-ups for correctly enqueueing JS API calls. The FIFO order is more intuitive and better corresponds to Libusb behavior on other platforms. Moreover, the FIFO property will be crucial to avoid the situation when an enqueued JS API call is discarded because the transfer happened to be resolved by the call originally triggered by a different transfer. This contributes to #462 and #1104.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Our current libusb implementation doesn't guarantee any particular ordering in case there are multiple transfers simultaneously in flight. This might or might not be a problem, depending on the needs of the consumer application.
There are several reasons that cause undetermined ordering:
The text was updated successfully, but these errors were encountered: