-
Notifications
You must be signed in to change notification settings - Fork 29
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
systrack example breaks #96
Comments
hi @endersonmaia, thanks for the report.. did the system recover itself or did it crash completely? are you running another example altogether? I noticed this line (that is not related to systrack):
how many cores you have in this machine? can you try this patch and run it for a while to observe if it will crash eventually?
Notice, it will remove the device completely.. so, you won't be able to
then, observe |
please notice, that it should make the system irresponsive when stopping the runtime.. btw, on your tests did you happen to stop the runtime? |
Creashed.
I probably tried some other example, but I can make a clean test from scratch and see what happens.
It's a VirtualBox VM configured with 4 vCPUs $ nproc
4
sure, will send the logs on my next message |
I don't know how to stop the runtime. :) |
After applying the patch and running as you said, I see nothing relevant in |
no worries, it shouldn't be interfering
it should be working properly then.. can you also observe the CPU load (e.g., top)? So, we should be using a non-sleepable runtime for systrack.. for this, we would probably need to redesign systrack to use at least two separate runtimes.. one for the device driver and another for the probes, because the device might be able to sleep.. we could use a rcu.table for syncing the counters.. if want to give it a try, I can help.. but it's low prio for me right now.. the fastest way I see to fix this example is to use a whitelist or blacklist for the syscalls to track.. I will provide a patch for this shortly.. |
@endersonmaia can you give it a try? |
Hi, can you please create a formal issue and assign it to me ? I would like to work on it. |
hi @glk0,
sure; however, we would still need to groom such issue.. I've put more thoughts on it and I think we could actually have non-sleepable device drivers.. perhaps it should be enough to prevent syscalls to starve during probing.. however, we have a termination problem while stopping the systrack runtime that should be fixed as well.. so it will require more investigation.. would you like to join me on Matrix to discuss this further and come out with a proper issue? |
@glk0 another thing to consider is to add support for probes per CPU.. it could not only fix this but also improve probing overhead.. |
It worked and didn't break. :) |
please review the PR then =) |
When trying to run the
systrack
example, I cancat /dev/systrack
a couple of times but then the system breaks.My environment:
Full logs attached: systrack-dmesg.log
log snippet:
The text was updated successfully, but these errors were encountered: