All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tom Rini <trini@konsulko.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] Please pull u-boot-sunxi master
Date: Thu, 11 Jun 2015 11:08:44 -0400	[thread overview]
Message-ID: <20150611150844.GS1728@bill-the-cat> (raw)
In-Reply-To: <557990AA.6040200@redhat.com>

On Thu, Jun 11, 2015 at 03:44:10PM +0200, Hans de Goede wrote:
> Hi,
> 
> On 11-06-15 14:56, Tom Rini wrote:
> >On Thu, Jun 11, 2015 at 09:41:29AM +0200, Hans de Goede wrote:
> >>Hi,
> >>
> >>On 11-06-15 04:49, Simon Glass wrote:
> >>>Hi,
> >>>
> >>>On 10 June 2015 at 08:56, Tom Rini <trini@konsulko.com> wrote:
> >>>>On Wed, Jun 10, 2015 at 04:54:50PM +0200, Hans de Goede wrote:
> >>>>
> >>>>>Hi Tom,
> >>>>>
> >>>>>Please pull u-boot-sunxi/master into master for 2 small bug-fixes:
> >>>>>
> >>>>>The following changes since commit 3d0158ae18bef2ac89979f4c90419d3add436c71:
> >>>>>
> >>>>>   Prepare v2015.07-rc2 (2015-06-08 17:48:33 -0400)
> >>>>>
> >>>>>are available in the git repository at:
> >>>>>
> >>>>>   http://git.denx.de/u-boot-sunxi.git master
> >>>>>
> >>>>>for you to fetch changes up to 0751b138064db28f0866f0c2439afb8b3975180c:
> >>>>>
> >>>>>   sunxi: Enable CONFIG_SYS_64BIT_LBA when AHCI is used (2015-06-10 16:52:12 +0200)
> >>>>>
> >>>>
> >>>>Applied to u-boot/master, thanks!
> >>>
> >>>I don't see this patch on the mailing list or I would reply there.
> >>
> >>Hmm, I asked the submitter to Cc the list when he suggested this patch on irc,
> >>I guess he only send it to me and I did not notice.
> >>
> >>>But for my toolchain I get errors:
> >>>
> >>>crosfw -b Orangepi_mini -w
> >>>#
> >>># configuration written to .config
> >>>#
> >>>/opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-ld.bfd:
> >>>error: /opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.8.2/libgcc.a(bpabi.o)
> >>>uses VFP register arguments, u-boot does not
> >>>/opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-ld.bfd:
> >>>failed to merge target specific data of file
> >>>/opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.8.2/libgcc.a(bpabi.o)
> >>>/opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-ld.bfd:
> >>>error: /opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.8.2/libgcc.a(_divdi3.o)
> >>>uses VFP register arguments, u-boot does not
> >>>/opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-ld.bfd:
> >>>failed to merge target specific data of file
> >>>/opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.8.2/libgcc.a(_divdi3.o)
> >>>/opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-ld.bfd:
> >>>error: /opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.8.2/libgcc.a(_udivdi3.o)
> >>>uses VFP register arguments, u-boot does not
> >>>/opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/arm-linux-gnueabihf-ld.bfd:
> >>>failed to merge target specific data of file
> >>>/opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.8.2/libgcc.a(_udivdi3.o)
> >>>make[1]: *** [u-boot] Error 1
> >>>make[1]: *** Waiting for unfinished jobs....
> >>
> >>I'm not sure what todo about this, it works for me, and supporting disks
> >>larger then 2TB seems like a desirable feature in this time and age.
> >
> >Ug.  Yes, but you have to use do_div and friends and we've got another
> >case where something snuck past not using those helpers.  I forget the
> >right incantation to use on either nm or objdump to figure out just
> >which function/file is doing it wrong.
> 
> Ok, so hopefully someone reading the list remembers and can provide us with a list of
> culprits. I can probably make some time to fix this even if the problem is not in sunxi
> code (all the commit does is enable CONFIG_SYS_64BIT_LBA which AFAIK does not directly
> influence any sunxi code).
> 
> So for now lets keep this in master and try to get it fixed, if it is not fixed in say
> 2 rc-s from now then we should probably revert the sunxi commit (and break large
> disks again).
> 

OK, so I dug out the magic again (since there's a few other boards that
fail on different toolchain with the same type of problem but another
place).
First:
$ arm-linux-gnueabihf-nm /opt/linaro/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux/bin/../lib/gcc/arm-linux-gnueabihf/4.8.2/libgcc.a | grep -A 4 _udivdi3.o
This will show you all of the functions provided there.
Second:
$ for F in `find output-dir -name *.o`;do arm-linux-gnueabihf-nm $F 2>&1
| grep -q THATSYMBOL && echo $F;done

This will show you what object files have the function in question.
Third: 
arm-linux-gnueabihf-objdump -d ONE/OBJ/FILE.o | $PAGER
And hunt around for what function(s) here are calling the incorrect math
function.
Fourth: Examine the C in question until you spot the "bad" division,
correct to use a helper from include/linux/math64.h (and yes we have
some other helpers too that are home grown but I am in favor of using
the kernel ones).

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20150611/9c928190/attachment.sig>

  reply	other threads:[~2015-06-11 15:08 UTC|newest]

Thread overview: 111+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-10 14:54 [U-Boot] Please pull u-boot-sunxi master Hans de Goede
2015-06-10 14:56 ` Tom Rini
2015-06-11  2:49   ` Simon Glass
2015-06-11  7:41     ` Hans de Goede
2015-06-11 12:56       ` Tom Rini
2015-06-11 13:44         ` Hans de Goede
2015-06-11 15:08           ` Tom Rini [this message]
2015-06-11 22:27             ` Bernhard Nortmann
2015-06-12  0:48             ` Tom Rini
  -- strict thread matches above, loose matches on Subject: below --
2016-10-30 11:52 Hans de Goede
2016-10-30 18:15 ` Tom Rini
2016-10-10  8:17 Hans de Goede
2016-10-13  0:48 ` Tom Rini
2016-09-18 14:56 Hans de Goede
2016-09-19  0:31 ` Tom Rini
2016-08-26 18:42 Hans de Goede
2016-08-29 12:00 ` Tom Rini
2016-07-31 20:19 Hans de Goede
2016-08-01  0:34 ` Tom Rini
2016-07-26 22:30 Hans de Goede
2016-07-27  0:58 ` Tom Rini
2016-07-27  2:38 ` Chen-Yu Tsai
2016-07-27 13:18   ` Hans de Goede
2016-07-15 14:29 Hans de Goede
2016-07-16 13:52 ` Tom Rini
2016-07-16 17:54   ` Andreas Färber
2016-07-16 21:48     ` Tom Rini
2016-07-02 19:51 Hans de Goede
2016-07-05  2:44 ` Tom Rini
2016-06-20 21:03 Hans de Goede
2016-06-21  4:44 ` Tom Rini
2016-06-10 19:25 Hans de Goede
2016-06-19 14:07 ` Tom Rini
2016-05-25 16:15 Hans de Goede
2016-05-26 15:49 ` Tom Rini
2016-04-28 14:42 Hans de Goede
2016-04-28 22:44 ` Tom Rini
2016-04-12  9:07 Hans de Goede
2016-04-12 17:23 ` Tom Rini
2016-04-01 11:38 Hans de Goede
2016-04-01 17:00 ` Tom Rini
     [not found]   ` <20160402182702.GA2671@excalibur.cnev.de>
2016-04-02 21:42     ` Hans de Goede
2016-04-03  1:11       ` Tom Rini
2016-03-23 22:13 Hans de Goede
2016-03-25 22:59 ` Tom Rini
2016-02-23 20:29 Hans de Goede
2016-02-23 20:35 ` Tom Rini
2016-01-26 19:51 Hans de Goede
2016-01-27  2:04 ` Tom Rini
2015-12-21 20:39 Hans de Goede
2015-12-21 23:25 ` Tom Rini
2015-12-11 14:03 Hans de Goede
2015-12-12  1:13 ` Tom Rini
2015-11-22 11:22 Hans de Goede
2015-11-22 15:52 ` Tom Rini
2015-10-20 21:02 Hans de Goede
2015-10-21 13:10 ` Tom Rini
2015-10-03 12:01 Hans de Goede
2015-10-03 12:06 ` Tom Rini
2015-10-03 12:08 ` Luc Verhaegen
2015-09-29 12:00 Hans de Goede
2015-10-03  0:35 ` Tom Rini
2015-09-11 15:15 Hans de Goede
2015-09-12 12:47 ` Tom Rini
2015-08-31 16:05 Hans de Goede
2015-08-31 21:46 ` Tom Rini
2015-08-14  7:09 Hans de Goede
2015-08-14 20:52 ` Tom Rini
2015-08-08 15:42 Hans de Goede
2015-08-11  0:33 ` Tom Rini
2015-07-25 12:41 Hans de Goede
2015-07-25 19:50 ` Tom Rini
2015-06-18 10:01 Hans de Goede
2015-06-18 22:45 ` Tom Rini
2015-06-06  9:29 Hans de Goede
2015-06-06 13:27 ` Tom Rini
2015-05-30  9:18 Hans de Goede
2015-06-02 12:54 ` Tom Rini
2015-05-19 20:23 Hans de Goede
2015-05-21 13:10 ` Tom Rini
2015-05-04 15:21 Hans de Goede
2015-05-05 23:58 ` Tom Rini
2015-04-15 15:05 Hans de Goede
2015-04-16 20:41 ` Tom Rini
2015-04-04 13:41 Hans de Goede
2015-04-06 22:12 ` Tom Rini
2015-03-29 12:41 Hans de Goede
2015-03-26 12:24 Hans de Goede
2015-03-27 14:19 ` Tom Rini
2015-03-21 12:56 Hans de Goede
2015-03-24 20:29 ` Tom Rini
2015-03-10 15:00 Hans de Goede
2015-03-10 16:07 ` Tom Rini
2015-03-10 14:53 Hans de Goede
2015-02-21 18:22 Hans de Goede
2015-02-23 11:58 ` Tom Rini
2015-02-16 19:39 Hans de Goede
2015-02-17 20:24 ` Tom Rini
2015-02-02 14:19 Hans de Goede
2015-02-02 18:59 ` Tom Rini
2015-01-23 14:49 Hans de Goede
2015-01-23 21:57 ` Tom Rini
2015-01-14 14:16 Hans de Goede
2015-01-14 15:30 ` Tom Rini
2014-11-25 12:45 Hans de Goede
2014-11-25 17:52 ` Simon Glass
2014-11-25 21:52   ` Tom Rini
2014-11-26  9:20     ` Hans de Goede
2014-11-26 16:25       ` Tom Rini
2014-11-27  8:18         ` Hans de Goede
2014-11-26 16:24 ` Tom Rini

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=20150611150844.GS1728@bill-the-cat \
    --to=trini@konsulko.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 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.