/usr/share/systemtap/tapset/timestamp_gtod.stp is in systemtap-common 1.6-1ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | // timestamp tapset -- gettimeofday variants
// Copyright (C) 2005-2009 Red Hat Inc.
// Copyright (C) 2006 Intel Corporation.
//
// This file is part of systemtap, and is free software. You can
// redistribute it and/or modify it under the terms of the GNU General
// Public License (GPL); either version 2, or (at your option) any
// later version.
%{
#define STAP_NEED_GETTIMEOFDAY 1
%}
/**
* sfunction gettimeofday_ns - Number of nanoseconds since UNIX epoch
*
* Description: This function returns the number of nanoseconds
* since the UNIX epoch.
*/
function gettimeofday_ns:long () %{ /* pure */ /* unprivileged */
/* NOTE: we can't use do_gettimeofday because we could be called from a
* context where xtime_lock is already held. See bug #2525. */
THIS->__retvalue = _stp_gettimeofday_ns();
if (THIS->__retvalue < 0)
CONTEXT->last_error = "gettimeofday not initialized";
%}
/**
* sfunction gettimeofday_us - Number of microseconds since UNIX epoch
*
* Description: This function returns the number of microseconds
* since the UNIX epoch.
*/
function gettimeofday_us:long () {
return gettimeofday_ns() / 1000;
}
/**
* sfunction gettimeofday_ms - Number of milliseconds since UNIX epoch
*
* Description: This function returns the number of milliseconds
* since the UNIX epoch.
*/
function gettimeofday_ms:long () {
return gettimeofday_ns() / 1000000;
}
/**
* sfunction gettimeofday_s - Number of seconds since UNIX epoch
*
* Description: This function returns the number of seconds since
* the UNIX epoch.
*/
function gettimeofday_s:long () {
return gettimeofday_ns() / 1000000000;
}
// likewise jiffies, monotonic_clock ...
|