summaryrefslogtreecommitdiffstats
path: root/testsuite/systemtap.base/gtod.c
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/systemtap.base/gtod.c')
-rw-r--r--testsuite/systemtap.base/gtod.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/testsuite/systemtap.base/gtod.c b/testsuite/systemtap.base/gtod.c
new file mode 100644
index 00000000..abc08543
--- /dev/null
+++ b/testsuite/systemtap.base/gtod.c
@@ -0,0 +1,26 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/time.h>
+#include <unistd.h>
+
+int main (int argc, char *argv[])
+{
+ int i;
+ struct timeval tv[100][2];
+ int us = 0;
+ if (argc == 2) us = atoi(argv[1]);
+ for (i=0; i<100; i++) {
+ gettimeofday(&tv[i][0], NULL);
+ setsid();
+ gettimeofday(&tv[i][1], NULL);
+ if (us) usleep(us);
+ }
+ for (i=0; i<100; i++) {
+ // change last 4 chars for correctly sorting even if the
+ // time stamps are completely same.
+ printf("%8d%06d :%02d appl\n", tv[i][0].tv_sec, tv[i][0].tv_usec, i);
+ printf("%8d%06d :%02d prog\n", tv[i][1].tv_sec, tv[i][1].tv_usec, i);
+ }
+ return 0;
+}
+