From: Oliver Hartkopp <oliver@hartkopp.net>
To: Patrick Ohly <patrick.ohly@intel.com>
Cc: netdev@vger.kernel.org
Subject: Re: hardware time stamping with extra skb->hwtstamp
Date: Thu, 27 Nov 2008 07:14:06 +0100 [thread overview]
Message-ID: <492E3AAE.3000709@hartkopp.net> (raw)
In-Reply-To: <1227096528-24150-1-git-send-email-patrick.ohly@intel.com>
Hello Patrick,
Patrick Ohly wrote:
> This patch series was discussed before on linux-netdev ("hardware
> time stamping + igb example implementation").
(..)
> This patch now adds a 8 byte field unconditionally.
This looks really better to me :-)
> There's one unsolved problem, though: time synchronization with
> PTP (the use case I'm working on) requires a transformation of
> raw hardware time stamps into system time. Currently this is done
> at the socket level by finding the device which created the time
> stamp and letting it do the transformation. This fails for
> incoming packets because skb->rt points to the "lo" device.
>
> Perhaps the interface number can be used to find the real
> hardware device. Alternatively the conversion could be done when
> generating the time stamp (might also be more accurate), but then
> another 8 byte field is needed. Delta encoding won't help because
> one cannot assume that hardware time stamps track system time
> closely enough.
>
I still have two questions of understanding regarding these (offset)
transformations that make it still difficult:
1. As no one has an insight of how the specific hardware generates the
hw time stamp anyway, why can't you put the already transformed values
into the hw timestamp field? I won't stick on the fact that the hw time
stamp is the value that has been read from specific controller registers
that are very hardware depended.
2. From what i've read in the discussion, i understood that the hardware
clock and the system clock skew. Assuming both to be strong
monotonic(?), is there a linear skew observable from your testing
experiences?
If so i would suggest to have some kind of sysfs entry like e.g.
/sys/class/net/eth0/hwstamp_skew_ns
that gives something like
-86234765@12277656012584334095
as output. In general:
<skew_in_ns>@<systemtime>
So if you would check this sysfs entry two or more times, you would get
an impression about the hw time stamp behaviour of your hardware by
simply calculating the linear (timedepended) offset based on several
'skew-sample-points', right?
I hope these suggestions are not completely damaged ;-)
Best regards,
Oliver
next prev parent reply other threads:[~2008-11-27 6:15 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-11-19 12:08 hardware time stamping with extra skb->hwtstamp Patrick Ohly
2008-11-19 12:08 ` [RFC PATCH 01/11] put_cmsg_compat + SO_TIMESTAMP[NS]: use same name for value as caller Patrick Ohly
2008-11-19 12:08 ` [RFC PATCH 02/11] net: new user space API for time stamping of incoming and outgoing packets Patrick Ohly
2008-11-19 12:08 ` [RFC PATCH 03/11] net: infrastructure for hardware time stamping Patrick Ohly
2008-11-19 12:08 ` [RFC PATCH 04/11] net: socket infrastructure for SO_TIMESTAMPING Patrick Ohly
2008-11-19 12:08 ` [RFC PATCH 05/11] ip: support for TX timestamps on UDP and RAW sockets Patrick Ohly
2008-11-19 12:08 ` [RFC PATCH 06/11] net: pass new SIOCSHWTSTAMP through to device drivers Patrick Ohly
2008-11-19 12:08 ` [RFC PATCH 07/11] igb: stub support for SIOCSHWTSTAMP Patrick Ohly
2008-11-19 12:08 ` [RFC PATCH 08/11] clocksource: allow usage independent of timekeeping.c Patrick Ohly
2008-11-19 12:08 ` [RFC PATCH 09/11] igb: infrastructure for hardware time stamping Patrick Ohly
2008-11-19 12:08 ` [RFC PATCH 10/11] time sync: generic infrastructure to map between time stamps generated by a clock source and system time Patrick Ohly
2008-11-19 12:08 ` [RFC PATCH 11/11] igb: use clocksync to implement hardware time stamping Patrick Ohly
2008-11-20 1:14 ` [RFC PATCH 10/11] time sync: generic infrastructure to map between time stamps generated by a clock source and system time Andrew Morton
2008-11-20 7:08 ` Ohly, Patrick
2008-12-05 21:05 ` [RFC PATCH 08/11] clocksource: allow usage independent of timekeeping.c john stultz
2008-12-11 12:11 ` Patrick Ohly
2008-12-11 22:23 ` john stultz
2008-12-12 8:50 ` Patrick Ohly
2008-11-19 15:21 ` [RFC PATCH 03/11] net: infrastructure for hardware time stamping Patrick Ohly
2008-11-27 6:14 ` Oliver Hartkopp [this message]
2008-11-27 10:07 ` hardware time stamping with extra skb->hwtstamp Patrick Ohly
2008-11-27 14:02 ` Octavian Purdila
2008-11-27 15:31 ` Patrick Ohly
2008-11-27 18:53 ` Octavian Purdila
2008-11-27 22:13 ` Oliver Hartkopp
2008-11-28 12:55 ` Octavian Purdila
2008-11-28 15:38 ` Oliver Hartkopp
2008-11-28 16:00 ` Octavian Purdila
2008-12-01 10:37 ` Patrick Ohly
2008-12-01 16:31 ` Patrick Ohly
2008-12-01 16:45 ` Oliver Hartkopp
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=492E3AAE.3000709@hartkopp.net \
--to=oliver@hartkopp.net \
--cc=netdev@vger.kernel.org \
--cc=patrick.ohly@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).