Re: [PATCH for-next 09/10] IB/mlx4: Add timestamp_mask and hca_core_clock to query_device

Christoph Lameter
2015-05-28T20:34:00Z

On Thu, 28 May 2015, Jason Gunthorpe wrote:

> Second: What about wrap around? Does it even make sense to expose less
> than 64 bits to userspace? Should the driver manage wrap around to
> create a flat 64 bit space?

The wrap around is given by the mask. Cycle registers are often shorter
than 64 bits.

> Otherwise, if the app has to do it, there is no event indicating wrap
> has occured.

Well yes. You take the difference and then apply the mask. If you are
outside of the cycle range then this will not give you a proper time.

> Without managing wrapping, cycle count difference is not a reliable
> calculation.

Counters only works for the interval in which they do not go
through a complete cycle. But that is the nature of these counters. And
thats what you see when you look into the kernel timer subsystem for
example.

> > This is not only for Ethernet. Internally Infiniband is frequently used
> > and there also timestamps are useful.
>
> Sure, but should any other vendors be commenting on this UAPI?

I think they would have spoken up if they had any objections?