198d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam/* Ltrace Test : time-record.c. 298d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam Objectives : Verify that Ltrace can record timestamp and spent 398d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam time inside each call. 498d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam 598d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam This file was written by Yao Qi <qiyao@cn.ibm.com>. */ 698d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam#include <stdio.h> 798d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam#include <time.h> 898d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam 998d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam#define SLEEP_COUNT 2 1098d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam#define NANOSLEEP_COUNT 50 1198d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam 1298d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliamint 1398d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliammain () 1498d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam{ 1598d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam struct timespec request, remain; 1698d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam request.tv_sec = 0; 1798d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam request.tv_nsec = NANOSLEEP_COUNT * 1000000; 1898d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam 1998d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam sleep (SLEEP_COUNT); 2098d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam nanosleep (&request, NULL); 2198d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam 2298d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam return 0; 2398d884bfd78ea7a37f46515c6e9e3635a95d8cbcPaul Gilliam} 24