From: Johannes Berg <johannes@sipsolutions.net> To: Thomas Gleixner <tglx@linutronix.de> Cc: LKML <linux-kernel@vger.kernel.org>, John Stultz <john.stultz@linaro.org>, Peter Zijlstra <peterz@infradead.org>, Ingo Molnar <mingo@kernel.org>, "John W. Linville" <linville@tuxdriver.com>, linux-wireless@vger.kernel.org, Stephen Hemminger <shemminger@linux-foundation.org>, netdev <netdev@vger.kernel.org> Subject: Re: net_timedelta() affected by settimeofday() (was: [patch 12/13] net: mac80211: Remove silly timespec dance) Date: Thu, 12 Jun 2014 11:21:54 +0200 [thread overview] Message-ID: <1402564914.8095.9.camel@jlt4.sipsolutions.net> (raw) In-Reply-To: <alpine.DEB.2.10.1406121047280.5170@nanos> On Thu, 2014-06-12 at 10:57 +0200, Thomas Gleixner wrote: > > > Right, but isn't that odd? Suddenly your delay measurement here might be > > > minutes, hours, or years if you settimeofday() between timestamping and > > > calculating the delta. That seems very strange to me, why would that be > > > the right behaviour in any way? > > Indeed. clock monotonic is the appropriate one for measurements. And that's what we had here with ktime_get_ts()? I thought so, just making sure. > > > Now, it seems that there are only two current users of net_timedelta() > > > (in DCCP) so perhaps it's not too late to change some of this? > > > > > > Maybe in general the skb timestamp should be based on a different clock > > > and only adjusted to real time when used in userspace? > > You have the same problem then, just at a different place: > > ts = ktime_get(); > > settimeofday() > offset_mono_to_real = new value; > > userts = mono_to_real(ts); Right. I'm not really sure if that's an issue though. > But maybe that's not a real issue, as ktime_get_real() can race with > settimeofday() or NTP as well. > > ts = ktime_get_real(); > settimeofday(); > userts = ts; > > So the user might see a weird timestamp for a packet, which cannot be > correlated with the user space gettimeofday(). Right, once settimeofday() is called the timestamps from before/during it can't really be correlated any more. This is part of the userspace API already, but might it have been better to expose the monotonic clock, since userspace can also get at it? Not sure. Either way it's an issue I guess; however I'm thinking your patch is making it worse for the measurement in this particular code (where the userspace issue doesn't come in, it should never be accessible there) johannes
next prev parent reply other threads:[~2014-06-12 9:22 UTC|newest] Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top 2014-06-11 23:59 [patch 00/13] time: Tree wide cleanup of interfaces and crap Thomas Gleixner 2014-06-11 23:59 ` [patch 01/13] acct: Use ktime_get_ts() Thomas Gleixner 2014-06-21 20:36 ` [tip:timers/core] " tip-bot for Thomas Gleixner 2014-06-11 23:59 ` [patch 02/13] tsacct: " Thomas Gleixner 2014-06-21 20:37 ` [tip:timers/core] " tip-bot for Thomas Gleixner 2014-06-11 23:59 ` [patch 03/13] delayacct: " Thomas Gleixner 2014-06-21 20:36 ` [tip:timers/core] " tip-bot for Thomas Gleixner 2014-06-11 23:59 ` [patch 05/13] sound: " Thomas Gleixner 2014-06-12 10:42 ` Takashi Iwai 2014-06-12 10:51 ` Thomas Gleixner 2014-06-12 10:59 ` Takashi Iwai 2014-06-11 23:59 ` [patch 04/13] net: mac80211: " Thomas Gleixner 2014-06-11 23:59 ` Thomas Gleixner 2014-06-12 6:53 ` Johannes Berg 2014-06-12 9:03 ` Luis R. Rodriguez 2014-06-12 9:03 ` [Cocci] " Luis R. Rodriguez 2014-06-12 9:51 ` Julia.Lawall 2014-06-12 9:51 ` Julia.Lawall at lip6.fr 2014-06-12 10:49 ` Thomas Gleixner 2014-06-12 10:49 ` Thomas Gleixner 2014-06-11 23:59 ` [patch 06/13] sound: intel8x0: Use ktime and ktime_get() Thomas Gleixner 2014-06-11 23:59 ` [patch 08/13] firewire: Use ktime_get_ts() Thomas Gleixner 2014-06-12 12:35 ` Stefan Richter 2014-06-12 14:12 ` Thomas Gleixner 2014-06-21 20:37 ` [tip:timers/core] " tip-bot for Thomas Gleixner 2014-06-11 23:59 ` [patch 07/13] kdb: " Thomas Gleixner 2014-06-21 20:37 ` [tip:timers/core] " tip-bot for Thomas Gleixner 2014-06-11 23:59 ` [patch 10/13] time: Remove do_posix_clock_monotonic_gettime() Thomas Gleixner 2014-06-11 23:59 ` [patch 09/13] fork: Use ktime_get_ts() Thomas Gleixner 2014-06-21 20:37 ` [tip:timers/core] " tip-bot for Thomas Gleixner 2014-06-11 23:59 ` [patch 11/13] wireless: mwifiex: Use the proper interfaces Thomas Gleixner 2014-06-11 23:59 ` Thomas Gleixner 2014-06-12 3:22 ` Bing Zhao 2014-06-12 8:31 ` [patch V2] " Thomas Gleixner 2014-06-12 8:38 ` Johannes Berg 2014-06-13 18:28 ` Bing Zhao 2014-06-13 18:28 ` Bing Zhao 2014-06-11 23:59 ` [patch 12/13] net: mac80211: Remove silly timespec dance Thomas Gleixner 2014-06-11 23:59 ` Thomas Gleixner 2014-06-12 6:49 ` Johannes Berg 2014-06-12 8:19 ` Thomas Gleixner 2014-06-12 8:35 ` net_timedelta() affected by settimeofday() (was: [patch 12/13] net: mac80211: Remove silly timespec dance) Johannes Berg 2014-06-12 8:39 ` Johannes Berg 2014-06-12 8:57 ` Thomas Gleixner 2014-06-12 9:21 ` Johannes Berg [this message] 2014-06-12 14:09 ` Thomas Gleixner 2014-06-12 14:09 ` Thomas Gleixner 2014-06-13 17:58 ` Johannes Berg 2014-06-11 23:59 ` [patch 13/13] tomoyo: Use sensible time interface Thomas Gleixner 2014-06-12 0:08 ` John Stultz 2014-06-12 0:22 ` Thomas Gleixner 2014-06-12 0:28 ` John Stultz 2014-06-12 0:36 ` Thomas Gleixner 2014-06-12 11:53 ` Tetsuo Handa 2014-06-21 20:37 ` [tip:timers/core] " tip-bot for Thomas Gleixner
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=1402564914.8095.9.camel@jlt4.sipsolutions.net \ --to=johannes@sipsolutions.net \ --cc=john.stultz@linaro.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-wireless@vger.kernel.org \ --cc=linville@tuxdriver.com \ --cc=mingo@kernel.org \ --cc=netdev@vger.kernel.org \ --cc=peterz@infradead.org \ --cc=shemminger@linux-foundation.org \ --cc=tglx@linutronix.de \ --subject='Re: net_timedelta() affected by settimeofday() (was: [patch 12/13] net: mac80211: Remove silly timespec dance)' \ /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
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.