public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Jerry Van Baren <gerald.vanbaren@ge.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] ppc4xx: Enable support for 64bit printf on all PPC4xx variants
Date: Thu, 09 Jul 2009 08:24:49 -0400	[thread overview]
Message-ID: <4A55E191.9090402@ge.com> (raw)
In-Reply-To: <200907090700.19816.sr@denx.de>

Stefan Roese wrote:
> On Thursday 09 July 2009 00:18:54 Jerry Van Baren wrote:
>> Regardless of the in/out debate, we should print a warning if %ll is
>> used but not supported.  I would suggest simply printing the "%lld" (or
>> whatever the format is) and pop two longs from the varargs.  That would
>> make it clear something is missing and probably wrong.
>>
>> I don't like printing half and discarding half: it will be erroneous
>> with no warning if the upper half != 0.  It would also have endian
>> complications since the half you want to discard depends on the
>> machine's endianness (not insurmountable).
>>
>> One possible enhancement is to special-case %ll[0-9]*[Xx] and treat it
>> as as two %08lx formats.  Hmmm, this would need correct endian handling
>> too. :-/
> 
> All this would increase the code size for those boards not supporting the 
> 64bit printf format. Not sure by how much, but I suggest to just fix the 
> problem by supporting this format correctly instead of adding new code to 
> print some warnings here.
> 
> Best regards,
> Stefan

That is what Scott is trying to do, but fixing 64bit printf causes a 
2K++ increase in size to the boards that don't currently support 64bit 
printf (some of which are broken due to the error).  Wolfgang is 
resisting that.

Adding code to print a warning and handle the varargs properly will 
probably be less than 100 bytes.  It looks like this is the compromise 
Wolfgang favors.

On a related note, I am *strongly* opposed to popping a long long and 
only printing half of it.  While odds are good that it will be correct, 
when the upper half is non-zero, it will be silently printing a totally 
erroneous value.

FWIIW, in the avionics business, silently displaying an erroneous value 
is the unpardonable sin.
   <http://en.wikipedia.org/wiki/Unpardonable_sin>
It is better to sometimes not display correct data and never display 
incorrect data than it is to rarely (as in 1e-9 .. 1e-12) display 
incorrect data.  Hundreds of people have died because of this.[1]

Best regards,
gvb

[1] Just a couple examples:
<http://online.wsj.com/article/SB124411224440184797.html> (unknown 
cause, but incorrect airspeed indication is a known contributing factor)
<http://www.computerweekly.com/blogs/tony_collins/2009/06/youre-flying-too-fast-and-too.html>
<http://www.computerweekly.com/Articles/2009/06/12/236425/crash-one-birgenair-flight-301.htm>
<http://www.computerweekly.com/Articles/2009/06/12/236431/crash-two-aeroper-flight-603.htm>

  reply	other threads:[~2009-07-09 12:24 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-06  9:48 [U-Boot] [PATCH] ppc4xx: Enable support for 64bit printf on all PPC4xx variants Stefan Roese
2009-07-06 11:17 ` Wolfgang Denk
2009-07-06 15:39   ` Stefan Roese
2009-07-08 20:01     ` Wolfgang Denk
2009-07-08 21:11       ` Scott Wood
2009-07-08 21:24         ` Wolfgang Denk
2009-07-08 21:29           ` Scott Wood
2009-07-08 21:57             ` Wolfgang Denk
2009-07-08 22:27               ` Scott Wood
2009-07-09  4:57                 ` Stefan Roese
2009-07-09  7:41                 ` Wolfgang Denk
2009-07-08 22:18         ` Jerry Van Baren
2009-07-08 22:27           ` Scott Wood
2009-07-09  5:00           ` Stefan Roese
2009-07-09 12:24             ` Jerry Van Baren [this message]
2009-07-09 12:48               ` Stefan Roese
2009-07-09 13:02                 ` Jerry Van Baren
2009-07-09  4:54       ` Stefan Roese
2009-07-17 18:44         ` Wolfgang Denk

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=4A55E191.9090402@ge.com \
    --to=gerald.vanbaren@ge.com \
    --cc=u-boot@lists.denx.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