From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752495AbcFFUbX (ORCPT ); Mon, 6 Jun 2016 16:31:23 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:37545 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752076AbcFFUbW (ORCPT ); Mon, 6 Jun 2016 16:31:22 -0400 Date: Mon, 6 Jun 2016 13:31:20 -0700 From: Andrew Morton To: kbuild test robot Cc: kbuild-all@01.org, linux-kernel@vger.kernel.org, Dan Williams , Linux Memory Management List , Chris Metcalf Subject: Re: undefined reference to `early_panic' Message-Id: <20160606133120.cb13d4fa3b6bba4f5b427ca5@linux-foundation.org> In-Reply-To: <201606051227.HWQZ0zJJ%fengguang.wu@intel.com> References: <201606051227.HWQZ0zJJ%fengguang.wu@intel.com> X-Mailer: Sylpheed 3.4.1 (GTK+ 2.24.23; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, 5 Jun 2016 12:33:29 +0800 kbuild test robot wrote: > It's probably a bug fix that unveils the link errors. > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master > head: 049ec1b5a76d34a6980cccdb7c0baeb4eed7a993 > commit: 888cdbc2c9a76a0e450f533b1957cdbfe7d483d5 hugetlb: fix compile error on tile > date: 5 months ago > config: tile-allnoconfig (attached as .config) > compiler: tilegx-linux-gcc (GCC) 4.6.2 > 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 888cdbc2c9a76a0e450f533b1957cdbfe7d483d5 > # save the attached .config to linux build tree > make.cross ARCH=tile > > All errors (new ones prefixed by >>): > > arch/tile/built-in.o: In function `setup_arch': > >> (.init.text+0x15d8): undefined reference to `early_panic' > arch/tile/built-in.o: In function `setup_arch': > (.init.text+0x1610): undefined reference to `early_panic' > arch/tile/built-in.o: In function `setup_arch': > (.init.text+0x1800): undefined reference to `early_panic' > arch/tile/built-in.o: In function `setup_arch': > (.init.text+0x1828): undefined reference to `early_panic' > arch/tile/built-in.o: In function `setup_arch': > (.init.text+0x1bd8): undefined reference to `early_panic' > arch/tile/built-in.o:(.init.text+0x1c18): more undefined references to `early_panic' follow This? From: Andrew Morton Subject: tile: early_printk.o is always required arch/tile/setup.o is always compiled, and it requires early_panic() and hence early_printk(), so we must always build and link early_printk.o. Reported-by: kbuild test robot Cc: Chris Metcalf Signed-off-by: Andrew Morton --- arch/tile/Kconfig | 1 + 1 file changed, 1 insertion(+) diff -puN arch/tile/Kconfig~tile-early_printko-is-always-required arch/tile/Kconfig --- a/arch/tile/Kconfig~tile-early_printko-is-always-required +++ a/arch/tile/Kconfig @@ -14,6 +14,7 @@ config TILE select GENERIC_FIND_FIRST_BIT select GENERIC_IRQ_PROBE select GENERIC_IRQ_SHOW + select EARLY_PRINTK select GENERIC_PENDING_IRQ if SMP select GENERIC_STRNCPY_FROM_USER select GENERIC_STRNLEN_USER _