From: Eric Paris <eparis@redhat.com>
To: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Cc: rdunlap@xenotime.net, akpm@linux-foundation.org,
jmorris@namei.org, linux-fsdevel@vger.kernel.org
Subject: Re: [2.6.37-rc1] Build failure: __divdi3
Date: Fri, 05 Nov 2010 12:55:27 -0400 [thread overview]
Message-ID: <1288976127.20262.58.camel@localhost.localdomain> (raw)
In-Reply-To: <201011060148.AHA93123.FHOOMJSLtFFVOQ@I-love.SAKURA.ne.jp>
On Sat, 2010-11-06 at 01:48 +0900, Tetsuo Handa wrote:
> Hello.
>
> Randy Dunlap wrote:
> > On Fri, 05 Nov 2010 17:59:42 +0900 Tetsuo Handa wrote:
> >
> > >
> > > WARNING: modpost: Found 5 section mismatch(es).
> > > To see full details build your kernel with:
> > > 'make CONFIG_DEBUG_SECTION_MISMATCH=y'
> > > fs/built-in.o(.text+0x3e357): In function `alignfile':
> > > : undefined reference to `__divdi3'
> > > fs/built-in.o(.text+0x3e39b): In function `alignfile':
> > > : undefined reference to `__divdi3'
> > > fs/built-in.o(.text+0x3f1af): In function `elf_core_dump':
> > > : undefined reference to `__divdi3'
> > > make: *** [.tmp_vmlinux1] Error 1
> >
> >
> > Hm, all due to usage of roundup() AFAICT. Unfortunate.
>
> Indeed. There is a commit for avoiding 64-bit division.
>
> commit ea7f1b6ee9dc96c5827b06ba21d7769d553efb7d
> Author: Bjorn Helgaas <bjorn.helgaas@hp.com>
> Date: Thu Nov 5 11:17:11 2009 -0600
>
> x86/PCI: remove 64-bit division
>
> The roundup() caused a build error (undefined reference to `__udivdi3').
> We're aligning to power-of-two boundaries, so it's simpler to just use
> ALIGN() anyway, which avoids the division.
>
> Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
> Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
>
> It seems that the code itself has not changed between 2.6.36 and 2.6.37-rc1
>
> static int elf_core_dump(struct coredump_params *cprm)
> {
> (...snipped...)
> loff_t offset = 0, dataoff, foffset;
> (...snipped...)
> dataoff = offset = roundup(offset, ELF_EXEC_PAGESIZE);
>
> but the definition of roundup() has changed by
>
> commit b28efd54d9d5c8005a29cd8782335beb9daaa32d
> Author: Eric Paris <eparis@redhat.com>
> Date: Wed Oct 13 17:50:08 2010 -0400
>
> kernel: roundup should only reference arguments once
>
> Currently the roundup macro references it's arguments more than one time.
> This patch changes it so it will only use its arguments once.
>
> Suggested-by: Andrew Morton <akpm@linux-foundation.org>
> Signed-off-by: Eric Paris <eparis@redhat.com>
> Signed-off-by: James Morris <jmorris@namei.org>
>
> between 2.6.36 and 2.6.37-rc1.
Interesting, is this a result of the compiler previously being able to
optimize the division since it could tell it was a power of 2 and now
that we have a private variable it can't? The patch can easily be
reverted without breaking anyone else....
-Eric
next prev parent reply other threads:[~2010-11-05 16:56 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-05 8:59 [2.6.37-rc1] Build failure: __divdi3 Tetsuo Handa
2010-11-05 16:09 ` Randy Dunlap
2010-11-05 16:48 ` Tetsuo Handa
2010-11-05 16:55 ` Eric Paris [this message]
2010-11-05 17:08 ` Tetsuo Handa
2010-11-05 17:16 ` Tetsuo Handa
2010-11-05 17:41 ` Eric Paris
2010-11-05 17:53 ` Andrew Morton
2010-11-05 18:36 ` Tetsuo Handa
2010-11-09 0:13 ` Andrew Morton
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=1288976127.20262.58.camel@localhost.localdomain \
--to=eparis@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=jmorris@namei.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=penguin-kernel@I-love.SAKURA.ne.jp \
--cc=rdunlap@xenotime.net \
/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.