Re: [patch 3/3] PTP: add kvm PTP driver

From: Miroslav Lichvar
Date: Tue Jan 17 2017 - 03:03:39 EST


On Mon, Jan 16, 2017 at 06:01:14PM -0200, Marcelo Tosatti wrote:
> On Mon, Jan 16, 2017 at 05:47:15PM -0200, Marcelo Tosatti wrote:
> > On Mon, Jan 16, 2017 at 05:36:55PM -0200, Marcelo Tosatti wrote:
> > > Sorry, unless i am misunderstanding how this works, it'll get the guest clock
> > > 2us behind, which is something not wanted.
> > >
> > > Miroslav, if ->gettime64 returns the host realtime at 2us in the past,
> > > this means Chrony will sync the guest clock to
> > >
> > > host realtime - 2us
> > >
> > > Is that correct?

Probably. It depends on the error of both host and guest timestamps.
If the error is the same on both sides, it will cancel out. An
occasional spike in the delay shouldn't be a problem as the reading
will be filtered out, but for best accuracy it's necessary that the
host's timestamp is taken in the middle between the guest's
timestamps.

Users of the PTP_SYS_OFFSET ioctl assume that (ts[0]+ts[2])/2
corresponds to ts[1], (ts[2]+ts[4])/2 corresponds to ts[3], and so on.

ts[1] ts[3]
Host time ---------+---------+........
| |
| |
Guest time ----+---------+---------+......
ts[0] ts[2] ts[4]

--
Miroslav Lichvar