All of lore.kernel.org
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: Kurt Kanzenbach <kurt@linutronix.de>
Cc: John Stultz <john.stultz@linaro.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Stephen Boyd <sboyd@kernel.org>, Ingo Molnar <mingo@redhat.com>,
	Jonathan Corbet <corbet@lwn.net>,
	Richard Cochran <richardcochran@gmail.com>,
	linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 1/3] timekeeping: Introduce fast accessor to clock tai
Date: Wed, 27 Apr 2022 13:22:05 -0400	[thread overview]
Message-ID: <20220427132205.386be5e6@gandalf.local.home> (raw)
In-Reply-To: <20220427112759.1cedda69@gandalf.local.home>

On Wed, 27 Apr 2022 11:27:59 -0400
Steven Rostedt <rostedt@goodmis.org> wrote:

> I'm able to trigger this on x86 64bit too.
> 
> One thing I noticed, is that the two numbers I have (from a different
> trace, but very similar to the above)
> 
> $ printf "%llx\n" 498151194674148935
> 6e9c9df4afd3647
> 
> $ printf "%llx\n" 1651072699280995911
> 16e9c9df4afd3647
> 
> That is, the last nibble either is 0 or 1, causing the change?
> 
> 06e9c9df4afd3647
> 16e9c9df4afd3647
> 
> The numbers are the same except for that last nibble.

And I just realized what the issue is. The ring buffer only allows for 59
bits of timestamp, as there's times it needs to inject a timestamp into the
buffer, which is 16 bytes, and the first 5 bits are meta data, leaving 59
bits for the timestamp. Since no timestamp came close to that before this
timer, everything worked.

Thus, when a full timestamp is injected, it takes off the 5 MSBs of the
timestamp (which took off that 1) and that is what is happening.

I can see if I can play some games to detect this and replace the top 5
bits with the saved timestamp at the head of the sub buffer.

-- Steve

  reply	other threads:[~2022-04-27 17:22 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-04-14  9:18 [PATCH v2 0/3] tracing: Introduce trace clock tai Kurt Kanzenbach
2022-04-14  9:18 ` [PATCH v2 1/3] timekeeping: Introduce fast accessor to " Kurt Kanzenbach
2022-04-14 14:59   ` Thomas Gleixner
2022-04-18 17:15     ` Steven Rostedt
2022-04-14 15:01   ` [tip: timers/core] " tip-bot2 for Kurt Kanzenbach
2022-04-26 21:53   ` [PATCH v2 1/3] " Steven Rostedt
2022-04-27  8:17     ` Thomas Gleixner
2022-04-27  8:38     ` Kurt Kanzenbach
2022-04-27 15:27       ` Steven Rostedt
2022-04-27 17:22         ` Steven Rostedt [this message]
2022-04-27 19:23           ` Steven Rostedt
2022-04-27 20:06         ` Thomas Gleixner
2022-04-27 20:08           ` Steven Rostedt
2022-04-27 20:42         ` Kurt Kanzenbach
2022-04-27 21:05           ` Steven Rostedt
2022-04-27 21:12           ` Thomas Gleixner
2022-04-14  9:18 ` [PATCH v2 2/3] tracing: Introduce trace " Kurt Kanzenbach
2022-04-14  9:18 ` [PATCH v2 3/3] tracing: Add documentation for " Kurt Kanzenbach
2022-04-14 11:27   ` Bagas Sanjaya
2022-04-14 11:38     ` Kurt Kanzenbach

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=20220427132205.386be5e6@gandalf.local.home \
    --to=rostedt@goodmis.org \
    --cc=corbet@lwn.net \
    --cc=john.stultz@linaro.org \
    --cc=kurt@linutronix.de \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=richardcochran@gmail.com \
    --cc=sboyd@kernel.org \
    --cc=tglx@linutronix.de \
    /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 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.