Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752730AbcCGL2T (ORCPT ); Mon, 7 Mar 2016 06:28:19 -0500 Received: from mail-wm0-f53.google.com ([74.125.82.53]:33116 "EHLO mail-wm0-f53.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752344AbcCGL2J (ORCPT ); Mon, 7 Mar 2016 06:28:09 -0500 From: Nicolai Stange To: Takashi Iwai Cc: Tomi Valkeinen , kbuild test robot , Nicolai Stange , , Michal Simek , kbuild-all@01.org, linux-kernel@vger.kernel.org Subject: Re: [alsa-devel] ERROR: "isa_io_base" [sound/pci/vx222/snd-vx222.ko] undefined! References: <201603062033.hlQ3Lfnm%fengguang.wu@intel.com> <56DD39D5.80402@ti.com> Date: Mon, 07 Mar 2016 12:28:05 +0100 In-Reply-To: (Takashi Iwai's message of "Mon, 07 Mar 2016 11:06:08 +0100") Message-ID: <87k2leplx6.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3515 Lines: 79 Takashi Iwai writes: > On Mon, 07 Mar 2016 09:20:37 +0100, > Tomi Valkeinen wrote: >> >> On 06/03/16 14:38, kbuild test robot wrote: >> > Hi Nicolai, >> > >> > FYI, the error/warning still remains. >> > >> > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master >> > head: 67944024c1cdd897e49a09b0d6af3ea38d1388ca >> > commit: 48fd8ecf29e3c1199432e173858f5ca4bc529738 framebuffer: disable vgacon on microblaze arch >> > date: 7 months ago >> > config: microblaze-allmodconfig (attached as .config) >> > 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 48fd8ecf29e3c1199432e173858f5ca4bc529738 >> > # save the attached .config to linux build tree >> > make.cross ARCH=microblaze >> > >> > All errors (new ones prefixed by >>): >> > >> >>> ERROR: "isa_io_base" [sound/pci/vx222/snd-vx222.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/trident/snd-trident.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/snd-via82xx.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/snd-via82xx-modem.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/snd-sonicvibes.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/snd-maestro3.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/snd-fm801.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/snd-es1968.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/snd-es1938.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/snd-ens1371.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/snd-ens1370.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/snd-cmipci.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/snd-azt3328.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/snd-als300.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/riptide/snd-riptide.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/pcxhr/snd-pcxhr.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/oxygen/snd-oxygen-lib.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/lx6464es/snd-lx6464es.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/ice1712/snd-ice1724.ko] undefined! >> >>> ERROR: "isa_io_base" [sound/pci/ice1712/snd-ice1712.ko] undefined! >> >> I didn't look at this closely, but sounds like disabling vgacon on >> microblaze made sound drivers fail because they or microblaze does not >> enable something in the kernel config. > > Looking at this shortly, the reason is that EXPORT_SYMBOL() of > isa_io_base is missing for microblaze. I don't know, though, why the > mentioned commit triggers the bug, too... > I think that the commit in question did not introduce the isa_io_base link failer but rather revealed it in that the make process now proceeds to the module linking phase. >From the commit message in question: Fix an allmodconfig link failer on microblaze: drivers/built-in.o: In function `vgacon_save_screen': drivers/video/console/.tmp_vgacon.o:(.text+0x8fc10): undefined reference to `screen_info' Thus, it seems to me, that before that commit, the linking of vmlinux failed. AFAICT, module linking always comes after vmlinux has been built, justifying my above statement. In my opinion, the best thing to do here is simply to EXPORT_SYMBOL() the isa_io_base as Takashi said. Who sends a patch? Takashi, do you want to? If you don't, I'd gladly do it. Thanks, Nicolai