linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Fengguang Wu <fengguang.wu@intel.com>
To: Jesper Dangaard Brouer <brouer@redhat.com>
Cc: linux-kernel@vger.kernel.org,
	Linux Memory Management List <linux-mm@kvack.org>,
	kbuild-all@01.org, Andrew Morton <akpm@linux-foundation.org>,
	Alexander Duyck <alexander.h.duyck@redhat.com>,
	Michal Simek <monstr@monstr.eu>
Subject: Re: [kbuild-all] mm/slub.o:undefined reference to `_GLOBAL_OFFSET_TABLE_'
Date: Thu, 22 Sep 2016 22:43:18 +0800	[thread overview]
Message-ID: <20160922144318.urpvmj634kbmzvd7@wfg-t540p.sh.intel.com> (raw)
In-Reply-To: <20160922102946.4712077b@redhat.com>

Hi Jesper,

On Thu, Sep 22, 2016 at 10:29:46AM +0200, Jesper Dangaard Brouer wrote:
>On Thu, 22 Sep 2016 13:50:21 +0800
>kbuild test robot <fengguang.wu@intel.com> wrote:
>
>> Hi Jesper,
>>
>> FYI, the error/warning still remains.
>>
>> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
>> head:   7d1e042314619115153a0f6f06e4552c09a50e13
>> commit: d0ecd894e3d5f768a84403b34019c4a7daa05882 slub: optimize bulk slowpath free by detached freelist
>> date:   10 months ago
>> config: microblaze-allnoconfig (attached as .config)
>> compiler: microblaze-linux-gcc (GCC) 6.2.0
>> reproduce:
>>         wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
>>         chmod +x ~/bin/make.cross
>>         git checkout d0ecd894e3d5f768a84403b34019c4a7daa05882
>>         # save the attached .config to linux build tree
>>         make.cross ARCH=microblaze
>>
>> All errors (new ones prefixed by >>):
>>
>>    mm/built-in.o: In function `__slab_free.isra.14':
>> >> mm/slub.o:(.text+0x28d1c): undefined reference to `_GLOBAL_OFFSET_TABLE_'
>>    scripts/link-vmlinux.sh: line 52: 18051 Segmentation fault      ${LD} ${LDFLAGS} ${LDFLAGS_vmlinux} -o ${2} -T ${lds} ${KBUILD_VMLINUX_INIT} --start-group ${KBUILD_VMLINUX_MAIN} --end-group ${1}
>
>Hi Fengguang,
>
>I don't really understand if this is a real bug that I need to fix?
>
>It looks like a linker problem, resulting in a "Segmentation fault" for your script...
>
>The mentioned commit: d0ecd894e3d5f768a84 removes a call point to
>__slab_free() and instead call slab_free().  It does not make sense to
>my, why this results in a linker error on this ARCH=microblaze.

Yes this looks strange. CC Michal since such errors only show up in
microblaze:

linus/master errors
a??a??a?? microblaze-allnoconfig
a??A A  a??a??a?? mm-slub.o:(.text):undefined-reference-to-_GLOBAL_OFFSET_TABLE_
a??a??a?? microblaze-mmu_defconfig
a??A A  a??a??a?? net-sunrpc-stats.c:undefined-reference-to-_GLOBAL_OFFSET_TABLE_
a??a??a?? microblaze-nommu_defconfig
a??A A  a??a??a?? net-sunrpc-stats.c:undefined-reference-to-_GLOBAL_OFFSET_TABLE_


I can reproduce the error in commit d0ecd894e3d5f768a84, and
confirmed that it's parent commit builds fine.

=============== commit 461a5e510 ===============
/home/wfg/linux
HEAD is now at 461a5e5... do_div(): generic optimization for constant divisor on 32-bit machines
/home/wfg/linux/obj-compiletest

make ARCH=microblaze

!!! BUILD ERROR !!!
cat /tmp/build-err-461a5e51060c93f5844113f4be9dba513cc92830-wfg
<stdin>:1298:2: warning: #warning syscall userfaultfd not implemented [-Wcpp]
<stdin>:1301:2: warning: #warning syscall membarrier not implemented [-Wcpp]
<stdin>:1304:2: warning: #warning syscall mlock2 not implemented [-Wcpp]
<stdin>:1298:2: warning: #warning syscall userfaultfd not implemented [-Wcpp]
<stdin>:1301:2: warning: #warning syscall membarrier not implemented [-Wcpp]
<stdin>:1304:2: warning: #warning syscall mlock2 not implemented [-Wcpp]
../net/core/rtnetlink.c:1361:32: warning: 'ifla_vf_stats_policy' defined but not used [-Wunused-const-variable=]
 static const struct nla_policy ifla_vf_stats_policy[IFLA_VF_STATS_MAX + 1] = {
                                ^~~~~~~~~~~~~~~~~~~~
../net/core/net-sysfs.c:32:19: warning: 'fmt_long_hex' defined but not used [-Wunused-const-variable=]
 static const char fmt_long_hex[] = "%#lx\n";
                   ^~~~~~~~~~~~
../fs/proc/base.c:2239:37: warning: 'proc_timers_operations' defined but not used [-Wunused-const-variable=]
 static const struct file_operations proc_timers_operations = {
                                     ^~~~~~~~~~~~~~~~~~~~~~
../fs/cifs/netmisc.c:133:40: warning: 'mapping_table_ERRHRD' defined but not used [-Wunused-const-variable=]
 static const struct smb_to_posix_error mapping_table_ERRHRD[] = {
                                        ^~~~~~~~~~~~~~~~~~~~
../net/ipv4/ping.c:1139:36: warning: 'ping_v4_seq_ops' defined but not used [-Wunused-const-variable=]
 static const struct seq_operations ping_v4_seq_ops = {
                                    ^~~~~~~~~~~~~~~
net/built-in.o: In function `rpc_print_iostats':
/home/wfg/linux/obj-compiletest/../net/sunrpc/stats.c:204: undefined reference to `_GLOBAL_OFFSET_TABLE_'
../scripts/link-vmlinux.sh: line 52: 98396 Segmentation fault      ${LD} ${LDFLAGS} ${LDFLAGS_vmlinux} -o ${2} -T ${lds} ${KBUILD_VMLINUX_INIT} --start-group ${KBUILD_VMLINUX_MAIN} --end-group ${1}
make[1]: *** [vmlinux] Error 139
make[1]: Target '_all' not remade because of errors.
make: *** [sub-make] Error 2


Thanks,
Fengguang

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

      reply	other threads:[~2016-09-22 14:43 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-22  5:50 kbuild test robot
2016-09-22  8:29 ` Jesper Dangaard Brouer
2016-09-22 14:43   ` Fengguang Wu [this message]

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=20160922144318.urpvmj634kbmzvd7@wfg-t540p.sh.intel.com \
    --to=fengguang.wu@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=alexander.h.duyck@redhat.com \
    --cc=brouer@redhat.com \
    --cc=kbuild-all@01.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=monstr@monstr.eu \
    /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