cadets / freebsd-old

FreeBSD src tree http://www.FreeBSD.org/
Other
12 stars 7 forks source link

Introduce a UUID in the dtrace_provider struct #60

Open dstolfa opened 7 years ago

dstolfa commented 7 years ago

If we want to trace in a distributed environment, as well as have a global context in our script, we can not check the providers that have been created on other machines(be that virtual or remote) in the same way that dtrace_unregister() does now. As of now, dtrace_unregister() simply compares the memory address and finds the provider accordingly.

One could argue that a name of the provider might be sufficient, however, a counterexample of this is the syscall provider. In FreeBSD, once installed with lib32, there are two syscall providers. This can be verified by printf-ing a provider name every time a new one is created.

We could add a UUID in the dtrace_provider structure, which would allow us an extensible way to identify providers on different machines.

dstolfa commented 7 years ago

This email is related to this issue. It details the way of operation.