Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757530AbbEWIRn (ORCPT ); Sat, 23 May 2015 04:17:43 -0400 Received: from mail-wg0-f45.google.com ([74.125.82.45]:33327 "EHLO mail-wg0-f45.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755039AbbEWIRg (ORCPT ); Sat, 23 May 2015 04:17:36 -0400 Date: Sat, 23 May 2015 10:17:31 +0200 From: Ingo Molnar To: Thomas Gleixner Cc: John Stultz , LKML , Badhri Jagan Sridharan Subject: Re: [PATCH 4/7] tracing: timer: Add deferrable flag to timer_start Message-ID: <20150523081731.GA5428@gmail.com> References: <1432142376-2077-1-git-send-email-john.stultz@linaro.org> <1432142376-2077-5-git-send-email-john.stultz@linaro.org> <20150521061837.GB11077@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2007 Lines: 52 * Thomas Gleixner wrote: > On Thu, 21 May 2015, Ingo Molnar wrote: > > * John Stultz 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 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/