## mapped_tvalspec

Structure - Specifies the format the kernel uses to maintain a mapped clock's time.

### SYNOPSIS

    struct mapped_tvalspec
    {
           tvalspec_t          mtv_time;
           unsigned int        mtv_csec;
    };

    typedef struct mapped_tvalspec mapped_tvalspec_t;

### FIELDS

mtv_time
  Clock time.

mtv_csec
  A field used to synchronize with the kernel's setting of the time.

### DESCRIPTION

The mapped_tvalspec structure defines the format of the current-time structure maintained by the kernel and visible through a mapped clock (clock_map_time). The data in this structure is updated at the clock's current resolution and contains the same tvalspec value that would be returned by clock_get_time.

### NOTES

Because of the race between the referencing of the multiple fields in the clock value and the kernel's setting them, they should be referenced as follows:

       tvalspec_t* ts;
       do
       {
                  ts-> tv_sec = mtime -> mtv_time.tv_sec;
                  ts  -> tv_nsec = mtime -> mtv_time.tv_nsec;
       } while (ts  -> tv_sec != mtime -> mtv_csec);

### RELATED INFORMATION

Functions: clock_map_time, clock_get_time.

Data Structures: tvalspec.