mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-25 18:55:26 -06:00
Re-add DTrace probes on 'dispose' functions
When converting to virObject, the probes on the 'Free' functions were removed on the basis that there is a probe on virObjectFree that suffices. This puts a burden on people writing probe scripts to identify which object is being dispose. This adds back probes in the 'Dispose' functions and updates the rpc monitor systemtap example to use them Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
This commit is contained in:
@@ -117,11 +117,9 @@ probe libvirt.rpc.socket_new {
|
||||
remoteAddrs[pid(), sock] = remoteAddr;
|
||||
}
|
||||
|
||||
probe libvirt.rpc.socket_free {
|
||||
if (refs == 1) {
|
||||
delete localAddrs[pid(), sock];
|
||||
delete remoteAddrs[pid(), sock];
|
||||
}
|
||||
probe libvirt.rpc.socket_dispose {
|
||||
delete localAddrs[pid(), sock];
|
||||
delete remoteAddrs[pid(), sock];
|
||||
}
|
||||
|
||||
|
||||
@@ -131,13 +129,11 @@ probe libvirt.rpc.client_new {
|
||||
print_ts(sprintf("C + %-16p local=%s remote=%s", client, localAddrs[pid(), sock], remoteAddrs[pid(), sock]));
|
||||
}
|
||||
|
||||
probe libvirt.rpc.client_free {
|
||||
if (refs == 1) {
|
||||
print_ts(sprintf("C - %-16p local=%s remote=%s", client,
|
||||
localAddrs[pid(), clientSocks[pid(), client]],
|
||||
remoteAddrs[pid(), clientSocks[pid(), client]]));
|
||||
delete clientSocks[pid(), client];
|
||||
}
|
||||
probe libvirt.rpc.client_dispose {
|
||||
print_ts(sprintf("C - %-16p local=%s remote=%s", client,
|
||||
localAddrs[pid(), clientSocks[pid(), client]],
|
||||
remoteAddrs[pid(), clientSocks[pid(), client]]));
|
||||
delete clientSocks[pid(), client];
|
||||
}
|
||||
|
||||
|
||||
@@ -147,13 +143,11 @@ probe libvirt.rpc.server_client_new {
|
||||
print_ts(sprintf("+ S %-16p local=%s remote=%s", client, localAddrs[pid(), sock], remoteAddrs[pid(), sock]));
|
||||
}
|
||||
|
||||
probe libvirt.rpc.server_client_free {
|
||||
if (refs == 1) {
|
||||
print_ts(sprintf("- S %-16p local=%s remote=%s", client,
|
||||
localAddrs[pid(), serverSocks[pid(), client]],
|
||||
remoteAddrs[pid(), serverSocks[pid(), client]]));
|
||||
delete serverSocks[pid(), client];
|
||||
}
|
||||
probe libvirt.rpc.server_client_dispose {
|
||||
print_ts(sprintf("- S %-16p local=%s remote=%s", client,
|
||||
localAddrs[pid(), serverSocks[pid(), client]],
|
||||
remoteAddrs[pid(), serverSocks[pid(), client]]));
|
||||
delete serverSocks[pid(), client];
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user