-
Notifications
You must be signed in to change notification settings - Fork 284
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
Xapi thread classification - part 2 #6154
Merged
mg12
merged 3 commits into
xapi-project:feature/perf
from
GabrielBuica:private/dbuica/feature/perf/tgroups-part-2
Jan 8, 2025
Merged
Xapi thread classification - part 2 #6154
mg12
merged 3 commits into
xapi-project:feature/perf
from
GabrielBuica:private/dbuica/feature/perf/tgroups-part-2
Jan 8, 2025
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
psafont
reviewed
Dec 4, 2024
GabrielBuica
force-pushed
the
private/dbuica/feature/perf/tgroups-part-2
branch
2 times, most recently
from
December 5, 2024 16:49
f91bdb1
to
62a903a
Compare
lindig
reviewed
Dec 10, 2024
lindig
approved these changes
Dec 10, 2024
mg12
reviewed
Jan 3, 2025
mg12
reviewed
Jan 3, 2025
mg12
reviewed
Jan 3, 2025
mg12
reviewed
Jan 3, 2025
@mg12 can we get a review? I don't like large PRs lingering here. And @GabrielBuica what about comments? |
mg12
approved these changes
Jan 8, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it looks good to me, thanks
Adds more granurality in the xapi thread classification. Now, an individual thread can be mapped to the following: - {xapi_cgroup}/internal/SM; - {xapi_cgroup}/internal/cli; - {xapi_cgroup}/external/intrapool; - {xapi_cgroup}/external/unauthenticated; - {xapi_cgroup}/external/authenticated/{identity}; where {identity} is a {auth_user_sid}/{user_agent}. Both {auth_user_sid} and {user_agent} strings are sanitized when making the identity through `Identity.make`, by allowing only alphanumenric characters and a maximum length of 16 characters each. This is only the library change. This should allow for proper thread classification in xapi. Signed-off-by: Gabriel Buica <[email protected]>
Adds unit test for: - the correct thread classification of `of_creator`; - sanitation of `Identity.make`. Signed-off-by: Gabriel Buica <[email protected]>
Classifies the threads at the time of session creation and inside `do_dispatch`. This ensures that new threads created by current session/request inherit the propper classification. Note: threads created by xenopsd calling back into xapi are yet to be classified. Signed-off-by: Gabriel Buica <[email protected]>
GabrielBuica
force-pushed
the
private/dbuica/feature/perf/tgroups-part-2
branch
from
January 8, 2025 08:41
f29001c
to
63391ba
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Adds more granurality in the xapi thread classification. Now, an
individual thread can be mapped to the following:
where {identity} is a {auth_user_sid}/{user_agent}.
Both {auth_user_sid} and {user_agent} strings are sanitized when
making the identity through
Identity.make
, by allowing onlyalphanumeric characters and a maximum length of 16 characters each.
This should allow for proper thread classification in xapi.
Note: Threads calling back into xapi from xenopsd are yet to be classified.
e.g. Cgroup hierarchy based on the new classification
BVT: 208947 & BST: 208972