From: Ingo Molnar <mingo@kernel.org>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: John Stultz <john.stultz@linaro.org>,
LKML <linux-kernel@vger.kernel.org>,
Badhri Jagan Sridharan <badhri@google.com>
Subject: Re: [PATCH 4/7] tracing: timer: Add deferrable flag to timer_start
Date: Sat, 23 May 2015 10:17:31 +0200 [thread overview]
Message-ID: <20150523081731.GA5428@gmail.com> (raw)
In-Reply-To: <alpine.DEB.2.11.1505230051240.5457@nanos>
* Thomas Gleixner <tglx@linutronix.de> wrote:
> On Thu, 21 May 2015, Ingo Molnar wrote:
> > * John Stultz <john.stultz@linaro.org> wrote:
> > > - TP_PROTO(struct timer_list *timer, unsigned long expires),
> > > + TP_PROTO(struct timer_list *timer,
> > > + unsigned long expires,
> >
> > This isn't compat safe, should any tooling rely on this.
>
> I can't see how that matters. [...]
It's good practice for any user facing ABI to not be bit depende. We
it for (almost) all the syscall ABIs.
> [...] The binary trace tells you from which machine (32 or 64 bit)
> it comes. [...]
Yeah, tooling can almost always fix up a crappy interface, but that's
no good reason to not do it right in the first place. That's one of
the reasons why (most) network protocols and most filesystems don't
have a 'bitness' nor an 'endianness' field in their formats. It's a
fundamentally fragile concept ...
> [...] So the field size is available for the tool. If the tool
> blindly applies the format string, it's hardly a fault of the
> kernel. And there is no point to bloat 32bit tracing with 64bit
> entries just because some random tool might be stupid.
Yeah, in a perfect world and so we could define arbitrarily complex
interfaces and expect tooling to follow it.
In a not so perfect world we are conservative in defining our ABIs to
be as simple as possible and are liberal in accepting them, not the
other way around.
And it's not just about tooling - just to give a simple technical
example: parsing a partly corrupted file is a lot easier if there's no
dependency on some header area defining a 'bitness value' - you can
just take any part of the stream and eventually have robust decoding
even if you lost part of the stream.
Thanks,
Ingo
next prev parent reply other threads:[~2015-05-23 8:17 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-20 17:19 [PATCH 0/7] Current queue for tip/timers/core John Stultz
2015-05-20 17:19 ` [PATCH 1/7] time: make sure tz_minuteswest is set to a valid value when setting time John Stultz
2015-05-20 17:19 ` [PATCH 2/7] timekeeping: Provide new API to get the current time resolution John Stultz
2015-05-20 17:53 ` Harald Geyer
2015-05-20 18:04 ` John Stultz
2015-05-20 18:55 ` Harald Geyer
2015-05-20 17:19 ` [PATCH 3/7] time: Rework debugging variables so they aren't global John Stultz
2015-05-21 6:14 ` Ingo Molnar
2015-05-20 17:19 ` [PATCH 4/7] tracing: timer: Add deferrable flag to timer_start John Stultz
2015-05-21 6:18 ` Ingo Molnar
2015-05-22 22:58 ` Thomas Gleixner
2015-05-23 8:17 ` Ingo Molnar [this message]
2015-05-24 6:20 ` Ingo Molnar
2015-05-20 17:19 ` [PATCH 5/7] time: include math64.h in time64.h John Stultz
2015-05-21 6:20 ` Ingo Molnar
2015-05-20 17:19 ` [PATCH 6/7] s390: time: Provide read_boot_clock64() and read_persistent_clock64() John Stultz
2015-05-21 6:23 ` Ingo Molnar
2015-05-20 17:19 ` [PATCH 7/7] time: Remove read_boot_clock() John Stultz
2015-05-21 6:25 ` Ingo Molnar
2015-05-20 18:42 ` [PATCH 0/7] Current queue for tip/timers/core John Stultz
2015-05-21 6:19 ` Ingo Molnar
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=20150523081731.GA5428@gmail.com \
--to=mingo@kernel.org \
--cc=badhri@google.com \
--cc=john.stultz@linaro.org \
--cc=linux-kernel@vger.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox