git.annexia.org
/
libguestfs.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
c12edb2
)
In verbose mode, daemon will display the time elapsed for each command.
author
Richard W.M. Jones
<rjones@redhat.com>
Thu, 2 Jul 2009 13:11:19 +0000
(14:11 +0100)
committer
Richard W.M. Jones
<rjones@redhat.com>
Thu, 2 Jul 2009 13:12:24 +0000
(14:12 +0100)
daemon/proto.c
patch
|
blob
|
history
diff --git
a/daemon/proto.c
b/daemon/proto.c
index
ffb4a4e
..
39cee5a
100644
(file)
--- a/
daemon/proto.c
+++ b/
daemon/proto.c
@@
-47,6
+47,8
@@
main_loop (int _sock)
char lenbuf[4];
unsigned len;
struct guestfs_message_header hdr;
char lenbuf[4];
unsigned len;
struct guestfs_message_header hdr;
+ struct timeval start_t, end_t;
+ int64_t start_us, end_us, elapsed_us;
sock = _sock;
sock = _sock;
@@
-102,6
+104,10
@@
main_loop (int _sock)
}
#endif
}
#endif
+ /* In verbose mode, display the time taken to run each command. */
+ if (verbose)
+ gettimeofday (&start_t, NULL);
+
/* Decode the message header. */
xdrmem_create (&xdr, buf, len, XDR_DECODE);
if (!xdr_guestfs_message_header (&xdr, &hdr)) {
/* Decode the message header. */
xdrmem_create (&xdr, buf, len, XDR_DECODE);
if (!xdr_guestfs_message_header (&xdr, &hdr)) {
@@
-133,6
+139,19
@@
main_loop (int _sock)
dispatch_incoming_message (&xdr);
/* Note that dispatch_incoming_message will also send a reply. */
dispatch_incoming_message (&xdr);
/* Note that dispatch_incoming_message will also send a reply. */
+ /* In verbose mode, display the time taken to run each command. */
+ if (verbose) {
+ gettimeofday (&end_t, NULL);
+
+ start_us = (int64_t) start_t.tv_sec * 1000000 + start_t.tv_usec;
+ end_us = (int64_t) end_t.tv_sec * 1000000 + end_t.tv_usec;
+ elapsed_us = end_us - start_us;
+ fprintf (stderr, "proc %d serial %d took %d.%02d seconds\n",
+ proc_nr, serial,
+ (int) (elapsed_us / 1000000),
+ (int) ((elapsed_us / 10000) % 100));
+ }
+
cont:
xdr_destroy (&xdr);
free (buf);
cont:
xdr_destroy (&xdr);
free (buf);