-
Notifications
You must be signed in to change notification settings - Fork 241
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
Add and remove CPU from epoch computation on active and idle #3920
base: main
Are you sure you want to change the base?
Conversation
@CodiumAI-Agent /review |
PR Reviewer Guide 🔍(Review updated until commit af048fb)Here are some key observations to aid the review process:
|
7b60ca4
to
6dfd02b
Compare
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.
I hope that what I wrote isn't too annoying.
No, I loved it. I dislike that en-gb and en-us differ like this :-P |
Persistent review updated to latest commit af048fb |
1b357e6
to
0bb37d0
Compare
Converting to draft until usersim bug is fixed. |
88d6e89
to
98263a7
Compare
d4a4a2b
to
9ed7807
Compare
|
||
while (entry != &cpu_entry->epoch_state_list) { | ||
// Walk over each thread_entry in the epoch_state_list and compute the minimum epoch. | ||
for (ebpf_list_entry_t* entry = cpu_entry->epoch_state_list.Flink; entry != &cpu_entry->epoch_state_list; |
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.
If we were activating, do we still need to iterate over the state list? Won't the current epoch of everything on this CPU still be EBPF_EPOCH_UNKNOWN (even though we've updated the freed epoch).
Also, should the current epoch (as well as freed_epoch) for each state entry be updated to current_epoch in the above loop?
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.
Actually, I think it would be current_epoch-1 for the start epoch of the threads that started while we were activating, since this is the first propose since we started activation.
Signed-off-by: Alan Jowett <[email protected]>
Signed-off-by: Alan Jowett <[email protected]>
b584f3e
to
771aa20
Compare
Switching to draft until usersim is fixed microsoft/usersim#224 |
Description
Restore the changes reverted by 205802b and fix a bug that was causing use after free (the for loop for computing oldest epoch was malformed resulting in a no-op).
Note: This is intentionally three or more commits:
Testing
CI/CD + 24 hour run of api_test.exe (previously failing after 2 hours).
Documentation
Yes, in the files.
Installation
No.