netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Build error v3.9-rc when CONFIG_IPV6 configured as module
@ 2013-04-14  9:45 Tomas Melin
  2013-04-15  9:02 ` Johannes Berg
  0 siblings, 1 reply; 6+ messages in thread
From: Tomas Melin @ 2013-04-14  9:45 UTC (permalink / raw)
  To: johannes, davem; +Cc: netdev

It seems CONFIG_IPV6 cannot be built as a module, using "m"-option
leads to to the following linking error:

net/built-in.o: In function `ieee80211_unregister_hw':
(.text+0x10f0e1): undefined reference to `unregister_inet6addr_notifier'
net/built-in.o: In function `ieee80211_register_hw':
(.text+0x10f610): undefined reference to `register_inet6addr_notifier'
make: *** [vmlinux] Error 1

This happens since the caller net/mac80211/main.c is statically built
in but net/ipv6/addrconf.c is then built as a module. Is this expected
behaviour or should it be fixed?

Configuration:  v3.9-rc6 with defconfig but ipv6 set to be a module
instead of built in.

-Tomas

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Build error v3.9-rc when CONFIG_IPV6 configured as module
  2013-04-14  9:45 Build error v3.9-rc when CONFIG_IPV6 configured as module Tomas Melin
@ 2013-04-15  9:02 ` Johannes Berg
  2013-04-15  9:04   ` Johannes Berg
  0 siblings, 1 reply; 6+ messages in thread
From: Johannes Berg @ 2013-04-15  9:02 UTC (permalink / raw)
  To: Tomas Melin; +Cc: davem, netdev

On Sun, 2013-04-14 at 12:45 +0300, Tomas Melin wrote:
> It seems CONFIG_IPV6 cannot be built as a module, using "m"-option
> leads to to the following linking error:
> 
> net/built-in.o: In function `ieee80211_unregister_hw':
> (.text+0x10f0e1): undefined reference to `unregister_inet6addr_notifier'
> net/built-in.o: In function `ieee80211_register_hw':
> (.text+0x10f610): undefined reference to `register_inet6addr_notifier'
> make: *** [vmlinux] Error 1
> 
> This happens since the caller net/mac80211/main.c is statically built
> in but net/ipv6/addrconf.c is then built as a module. Is this expected
> behaviour or should it be fixed?
> 
> Configuration:  v3.9-rc6 with defconfig but ipv6 set to be a module
> instead of built in.

Oops, I didn't realize that IPv6 could even (still) be built as a
module. I'll add this to mac80211's Kconfig:
	depends on IPV6 || !IPV6
to fix this.

johannes

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Build error v3.9-rc when CONFIG_IPV6 configured as module
  2013-04-15  9:02 ` Johannes Berg
@ 2013-04-15  9:04   ` Johannes Berg
  2013-04-15  9:05     ` Johannes Berg
  0 siblings, 1 reply; 6+ messages in thread
From: Johannes Berg @ 2013-04-15  9:04 UTC (permalink / raw)
  To: Tomas Melin; +Cc: davem, netdev

On Mon, 2013-04-15 at 11:02 +0200, Johannes Berg wrote:
> On Sun, 2013-04-14 at 12:45 +0300, Tomas Melin wrote:
> > It seems CONFIG_IPV6 cannot be built as a module, using "m"-option
> > leads to to the following linking error:
> > 
> > net/built-in.o: In function `ieee80211_unregister_hw':
> > (.text+0x10f0e1): undefined reference to `unregister_inet6addr_notifier'
> > net/built-in.o: In function `ieee80211_register_hw':
> > (.text+0x10f610): undefined reference to `register_inet6addr_notifier'
> > make: *** [vmlinux] Error 1
> > 
> > This happens since the caller net/mac80211/main.c is statically built
> > in but net/ipv6/addrconf.c is then built as a module. Is this expected
> > behaviour or should it be fixed?
> > 
> > Configuration:  v3.9-rc6 with defconfig but ipv6 set to be a module
> > instead of built in.
> 
> Oops, I didn't realize that IPv6 could even (still) be built as a
> module. I'll add this to mac80211's Kconfig:
> 	depends on IPV6 || !IPV6
> to fix this.

Hm, actually, that's not sufficient since there are no no-op versions of
these functions when IPv6 isn't built ... needs a bit more.

johannes

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Build error v3.9-rc when CONFIG_IPV6 configured as module
  2013-04-15  9:04   ` Johannes Berg
@ 2013-04-15  9:05     ` Johannes Berg
  2013-04-15 17:30       ` David Miller
  0 siblings, 1 reply; 6+ messages in thread
From: Johannes Berg @ 2013-04-15  9:05 UTC (permalink / raw)
  To: Tomas Melin; +Cc: davem, netdev

On Mon, 2013-04-15 at 11:04 +0200, Johannes Berg wrote:

> > Oops, I didn't realize that IPv6 could even (still) be built as a
> > module. I'll add this to mac80211's Kconfig:
> > 	depends on IPV6 || !IPV6
> > to fix this.
> 
> Hm, actually, that's not sufficient since there are no no-op versions of
> these functions when IPv6 isn't built ... needs a bit more.

Oh, never mind, I already handle that case ... Should check the code
before :)

johannes

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Build error v3.9-rc when CONFIG_IPV6 configured as module
  2013-04-15  9:05     ` Johannes Berg
@ 2013-04-15 17:30       ` David Miller
  2013-04-15 18:12         ` Johannes Berg
  0 siblings, 1 reply; 6+ messages in thread
From: David Miller @ 2013-04-15 17:30 UTC (permalink / raw)
  To: johannes; +Cc: tomas.melin, netdev

From: Johannes Berg <johannes@sipsolutions.net>
Date: Mon, 15 Apr 2013 11:05:29 +0200

> On Mon, 2013-04-15 at 11:04 +0200, Johannes Berg wrote:
> 
>> > Oops, I didn't realize that IPv6 could even (still) be built as a
>> > module. I'll add this to mac80211's Kconfig:
>> > 	depends on IPV6 || !IPV6
>> > to fix this.
>> 
>> Hm, actually, that's not sufficient since there are no no-op versions of
>> these functions when IPv6 isn't built ... needs a bit more.
> 
> Oh, never mind, I already handle that case ... Should check the code
> before :)

Johannes, we already fixed this, see 'net'.  Don't add more hacks to
mac80211.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Build error v3.9-rc when CONFIG_IPV6 configured as module
  2013-04-15 17:30       ` David Miller
@ 2013-04-15 18:12         ` Johannes Berg
  0 siblings, 0 replies; 6+ messages in thread
From: Johannes Berg @ 2013-04-15 18:12 UTC (permalink / raw)
  To: David Miller; +Cc: tomas.melin, netdev

On Mon, 2013-04-15 at 13:30 -0400, David Miller wrote:
> From: Johannes Berg <johannes@sipsolutions.net>
> Date: Mon, 15 Apr 2013 11:05:29 +0200
> 
> > On Mon, 2013-04-15 at 11:04 +0200, Johannes Berg wrote:
> > 
> >> > Oops, I didn't realize that IPv6 could even (still) be built as a
> >> > module. I'll add this to mac80211's Kconfig:
> >> >    depends on IPV6 || !IPV6
> >> > to fix this.
> >> 
> >> Hm, actually, that's not sufficient since there are no no-op versions of
> >> these functions when IPv6 isn't built ... needs a bit more.
> > 
> > Oh, never mind, I already handle that case ... Should check the code
> > before :)
> 
> Johannes, we already fixed this, see 'net'.  Don't add more hacks to
> mac80211.

Alright, thanks! Sorry for the noise, I wasn't aware of the other patch
until Tomas pointed it out.

johannes

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2013-04-15 18:12 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-14  9:45 Build error v3.9-rc when CONFIG_IPV6 configured as module Tomas Melin
2013-04-15  9:02 ` Johannes Berg
2013-04-15  9:04   ` Johannes Berg
2013-04-15  9:05     ` Johannes Berg
2013-04-15 17:30       ` David Miller
2013-04-15 18:12         ` Johannes Berg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).