From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: Randy Dunlap <rdunlap@xenotime.net>
Cc: "Adrian Bunk" <bunk@kernel.org>,
"Toralf Förster" <toralf.foerster@gmx.de>,
linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org
Subject: Re: build issue #503 for v2.6.26-rc2-433-gf26a398 : undefined reference to `request_firmware'
Date: Fri, 23 May 2008 17:52:44 -0500 [thread overview]
Message-ID: <1211583164.11477.52.camel@localhost.localdomain> (raw)
In-Reply-To: <20080523153924.af48e95e.rdunlap@xenotime.net>
On Fri, 2008-05-23 at 15:39 -0700, Randy Dunlap wrote:
> On Fri, 23 May 2008 17:00:30 -0500 James Bottomley wrote:
>
> > On Fri, 2008-05-23 at 14:48 -0700, Randy Dunlap wrote:
> > > On Fri, 23 May 2008 15:33:00 -0500 James Bottomley wrote:
> > >
> > > > On Fri, 2008-05-23 at 11:04 -0700, Randy Dunlap wrote:
> > > > > On Fri, 23 May 2008 12:59:11 -0500 James Bottomley wrote:
> > > > >
> > > > > > On Fri, 2008-05-23 at 10:54 -0700, Randy Dunlap wrote:
> > > > > > > On Thu, 22 May 2008 11:52:24 +0100 James Bottomley wrote:
> > > > > > >
> > > > > > > > On Sat, 2008-05-17 at 17:17 +0300, Adrian Bunk wrote:
> > > > > > > > > On Sat, May 17, 2008 at 11:04:31AM +0100, James Bottomley wrote:
> > > > > > > > > > On Fri, 2008-05-16 at 19:06 +0200, Toralf Förster wrote:
> > > > > > > > > > > Hello,
> > > > > > > > > > >
> > > > > > > > > > > the build (.config attached) failed, make ends with :
> > > > > > > > > > > ...
> > > > > > > > > > > UPD include/linux/compile.h
> > > > > > > > > > > CC init/version.o
> > > > > > > > > > > LD init/built-in.o
> > > > > > > > > > > LD vmlinux
> > > > > > > > > > > drivers/built-in.o: In function `sas_request_addr':
> > > > > > > > > > > (.text+0x33bab): undefined reference to `request_firmware'
> > > > > > > > > > > drivers/built-in.o: In function `sas_request_addr':
> > > > > > > > > > > (.text+0x33c3f): undefined reference to `release_firmware'
> > > > > > > > > > > make: *** [vmlinux] Error 1
> > > > > > > > > >
> > > > > > > > > > There's a slight fault in the stub logic. It fails for FW_LOADER=m and
> > > > > > > > > > the user =y.
> > > > > > > > > >
> > > > > > > > > > This should fix it.
> > > > > > > > >
> > > > > > > > > An interesting question is whether we actually want to have the stub at
> > > > > > > > > all - the compile errors catched cases where someone forgot to select
> > > > > > > > > FW_LOADER at compile time instead of turning them into possible runtime
> > > > > > > > > problems as will happen after your patch.
> > > > > > > >
> > > > > > > > Well, the original intent of the stubs was to have the loader nop if it
> > > > > > > > wasn't available. There was simply one case forgotten (the fact that a
> > > > > > > > modular loader isn't usable from built in components).
> > > > > > > >
> > > > > > > > > Are there any serious use cases where SCSI_SAS_LIBSAS is used in very
> > > > > > > > > space limited environments and without any other drivers that select
> > > > > > > > > FW_LOADER in the kernel?
> > > > > > > >
> > > > > > > > Probably in the future, certainly on embedded OSs used for storage
> > > > > > > > devices. Given the convergence of SAS/SATA chips, it's possible for
> > > > > > > > other handhelds, but I'm not convinced of that.
> > > > > > >
> > > > > > > Has there been any resolution to this build issue?
> > > > > > >
> > > > > > > Do we know what we want? then maybe a patch can be done...
> > > > > >
> > > > > > As long as the patch works, that's what I propose.
> > > > >
> > > > > Sorry, I am not understanding what you are saying.
> > > > > Please explain.
> > > >
> > > > As long as the patch I previously posted on this thread
> > > >
> > > > http://marc.info/?l=linux-scsi&m=121101871800303
> > > >
> > > > Actually works. This is the patch I propose to use to fix the issue.
> > >
> > >
> > > Thanks for the pointer to the patch. That does actually build cleanly
> > > (but I would say that the patch is incorrect).
> > >
> > > The case is (similar to that scsi_dh problem):
> > > CONFIG_SCSI_SAS_LIBSAS=y and CONFIG_FW_LOADER=m, so libsas's
> > > sas_request_addr() always returns -EINVAL as the value of
> > > request_firmware(). Is that what we want/expect for these CONFIGs?
> >
> > Actually, I disagree. There are two choices here
>
> Disagree with which part(s)?
Disagree that the patch was incorrect.
> > 1. No stubs and simply select FW_LOADER for everything
> > 2. Stubs that actually work in all situations.
> >
> > My patch does 2. I can see an argument for 1. but since we have the
> > stubs, making them work in all cases seems like the smaller change to
> > functionality.
>
> Oh, I'm for the stubs approach.
>
> So with SCSI_SAS_LIBSAS=y and FW_LOADER=m, you would want/expect
> request_firmware() to return -EINVAL all of the time?
If you want stubs, yes
> Hm, I suppose that it has to either do that or select FW_LOADER. ?
Exactly. I could imagine using Kconfig select trickery to force the
choice down to Y/N for firmware loader, but I bet it would be incredibly
fragile and difficult to understand.
James
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: Randy Dunlap <rdunlap@xenotime.net>
Cc: "Adrian Bunk" <bunk@kernel.org>,
"Toralf Förster" <toralf.foerster@gmx.de>,
linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org
Subject: Re: build issue #503 for v2.6.26-rc2-433-gf26a398 : undefined reference to `request_firmware'
Date: Fri, 23 May 2008 17:52:44 -0500 [thread overview]
Message-ID: <1211583164.11477.52.camel@localhost.localdomain> (raw)
In-Reply-To: <20080523153924.af48e95e.rdunlap@xenotime.net>
On Fri, 2008-05-23 at 15:39 -0700, Randy Dunlap wrote:
> On Fri, 23 May 2008 17:00:30 -0500 James Bottomley wrote:
>
> > On Fri, 2008-05-23 at 14:48 -0700, Randy Dunlap wrote:
> > > On Fri, 23 May 2008 15:33:00 -0500 James Bottomley wrote:
> > >
> > > > On Fri, 2008-05-23 at 11:04 -0700, Randy Dunlap wrote:
> > > > > On Fri, 23 May 2008 12:59:11 -0500 James Bottomley wrote:
> > > > >
> > > > > > On Fri, 2008-05-23 at 10:54 -0700, Randy Dunlap wrote:
> > > > > > > On Thu, 22 May 2008 11:52:24 +0100 James Bottomley wrote:
> > > > > > >
> > > > > > > > On Sat, 2008-05-17 at 17:17 +0300, Adrian Bunk wrote:
> > > > > > > > > On Sat, May 17, 2008 at 11:04:31AM +0100, James Bottomley wrote:
> > > > > > > > > > On Fri, 2008-05-16 at 19:06 +0200, Toralf Förster wrote:
> > > > > > > > > > > Hello,
> > > > > > > > > > >
> > > > > > > > > > > the build (.config attached) failed, make ends with :
> > > > > > > > > > > ...
> > > > > > > > > > > UPD include/linux/compile.h
> > > > > > > > > > > CC init/version.o
> > > > > > > > > > > LD init/built-in.o
> > > > > > > > > > > LD vmlinux
> > > > > > > > > > > drivers/built-in.o: In function `sas_request_addr':
> > > > > > > > > > > (.text+0x33bab): undefined reference to `request_firmware'
> > > > > > > > > > > drivers/built-in.o: In function `sas_request_addr':
> > > > > > > > > > > (.text+0x33c3f): undefined reference to `release_firmware'
> > > > > > > > > > > make: *** [vmlinux] Error 1
> > > > > > > > > >
> > > > > > > > > > There's a slight fault in the stub logic. It fails for FW_LOADER=m and
> > > > > > > > > > the user =y.
> > > > > > > > > >
> > > > > > > > > > This should fix it.
> > > > > > > > >
> > > > > > > > > An interesting question is whether we actually want to have the stub at
> > > > > > > > > all - the compile errors catched cases where someone forgot to select
> > > > > > > > > FW_LOADER at compile time instead of turning them into possible runtime
> > > > > > > > > problems as will happen after your patch.
> > > > > > > >
> > > > > > > > Well, the original intent of the stubs was to have the loader nop if it
> > > > > > > > wasn't available. There was simply one case forgotten (the fact that a
> > > > > > > > modular loader isn't usable from built in components).
> > > > > > > >
> > > > > > > > > Are there any serious use cases where SCSI_SAS_LIBSAS is used in very
> > > > > > > > > space limited environments and without any other drivers that select
> > > > > > > > > FW_LOADER in the kernel?
> > > > > > > >
> > > > > > > > Probably in the future, certainly on embedded OSs used for storage
> > > > > > > > devices. Given the convergence of SAS/SATA chips, it's possible for
> > > > > > > > other handhelds, but I'm not convinced of that.
> > > > > > >
> > > > > > > Has there been any resolution to this build issue?
> > > > > > >
> > > > > > > Do we know what we want? then maybe a patch can be done...
> > > > > >
> > > > > > As long as the patch works, that's what I propose.
> > > > >
> > > > > Sorry, I am not understanding what you are saying.
> > > > > Please explain.
> > > >
> > > > As long as the patch I previously posted on this thread
> > > >
> > > > http://marc.info/?l=linux-scsi&m=121101871800303
> > > >
> > > > Actually works. This is the patch I propose to use to fix the issue.
> > >
> > >
> > > Thanks for the pointer to the patch. That does actually build cleanly
> > > (but I would say that the patch is incorrect).
> > >
> > > The case is (similar to that scsi_dh problem):
> > > CONFIG_SCSI_SAS_LIBSAS=y and CONFIG_FW_LOADER=m, so libsas's
> > > sas_request_addr() always returns -EINVAL as the value of
> > > request_firmware(). Is that what we want/expect for these CONFIGs?
> >
> > Actually, I disagree. There are two choices here
>
> Disagree with which part(s)?
Disagree that the patch was incorrect.
> > 1. No stubs and simply select FW_LOADER for everything
> > 2. Stubs that actually work in all situations.
> >
> > My patch does 2. I can see an argument for 1. but since we have the
> > stubs, making them work in all cases seems like the smaller change to
> > functionality.
>
> Oh, I'm for the stubs approach.
>
> So with SCSI_SAS_LIBSAS=y and FW_LOADER=m, you would want/expect
> request_firmware() to return -EINVAL all of the time?
If you want stubs, yes
> Hm, I suppose that it has to either do that or select FW_LOADER. ?
Exactly. I could imagine using Kconfig select trickery to force the
choice down to Y/N for firmware loader, but I bet it would be incredibly
fragile and difficult to understand.
James
next prev parent reply other threads:[~2008-05-23 22:52 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-16 17:06 build issue #503 for v2.6.26-rc2-433-gf26a398 : undefined reference to `request_firmware' Toralf Förster
2008-05-16 20:30 ` Rafael J. Wysocki
2008-05-16 20:30 ` Rafael J. Wysocki
2008-05-16 20:52 ` Randy Dunlap
2008-05-16 20:52 ` Randy Dunlap
2008-05-17 10:04 ` James Bottomley
2008-05-17 10:04 ` James Bottomley
2008-05-17 14:17 ` Adrian Bunk
2008-05-17 14:17 ` Adrian Bunk
2008-05-22 10:52 ` James Bottomley
2008-05-22 10:52 ` James Bottomley
2008-05-23 17:54 ` Randy Dunlap
2008-05-23 17:54 ` Randy Dunlap
2008-05-23 17:59 ` James Bottomley
2008-05-23 17:59 ` James Bottomley
2008-05-23 18:04 ` Randy Dunlap
2008-05-23 18:04 ` Randy Dunlap
2008-05-23 20:33 ` James Bottomley
2008-05-23 20:33 ` James Bottomley
2008-05-23 21:48 ` Randy Dunlap
2008-05-23 21:48 ` Randy Dunlap
2008-05-23 22:00 ` James Bottomley
2008-05-23 22:00 ` James Bottomley
2008-05-23 22:06 ` Adrian Bunk
2008-05-23 22:06 ` Adrian Bunk
2008-05-23 22:39 ` Randy Dunlap
2008-05-23 22:39 ` Randy Dunlap
2008-05-23 22:52 ` James Bottomley [this message]
2008-05-23 22:52 ` James Bottomley
2008-06-10 13:24 ` Adrian Bunk
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=1211583164.11477.52.camel@localhost.localdomain \
--to=james.bottomley@hansenpartnership.com \
--cc=bunk@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=rdunlap@xenotime.net \
--cc=toralf.foerster@gmx.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.