netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Fw: [Bugme-new] [Bug 7179] New: Compilation of .tmp_linux1 fails due to missing declaration in net/netfilter/xt_physdev.c
@ 2006-09-21 22:37 Andrew Morton
  2006-09-22  8:41 ` Jarek Poplawski
  0 siblings, 1 reply; 9+ messages in thread
From: Andrew Morton @ 2006-09-21 22:37 UTC (permalink / raw)
  To: netdev


Methinks CONFIG_NETFILTER_XT_TARGET_CLASSIFY should depend upon
CONFIG_BRIDGE_NETFILTER.  Because brnf_deferred_hooks is defined in
net/bridge/br_netfilter.c and is referred to in net/netfilter/xt_physdev.c.

Or something else ;)



Begin forwarded message:

Date: Thu, 21 Sep 2006 14:41:13 -0700
From: bugme-daemon@bugzilla.kernel.org
To: bugme-new@lists.osdl.org
Subject: [Bugme-new] [Bug 7179] New: Compilation of .tmp_linux1 fails due to missing declaration in net/netfilter/xt_physdev.c


http://bugzilla.kernel.org/show_bug.cgi?id=7179

           Summary: Compilation of .tmp_linux1 fails due to missing
                    declaration in net/netfilter/xt_physdev.c
    Kernel Version: 2.6.18
            Status: NEW
          Severity: high
             Owner: laforge@gnumonks.org
         Submitter: gfrank@neoservers.com


Most recent kernel where this bug did not occur: 2.6.17.13
Distribution: CentOS
Hardware Environment: Dual Intel Xeon 5160
Software Environment: gcc 3.4.6, glibc 2.3.4, make 3.8
Problem Description:

Using the same config from 2.6.17.13, kernel 2.6.18 fails on make when 
attempting to make .tmp_vmlinux1

LD      .tmp_vmlinux1
net/built-in.o(.text.checkentry+0x1e1): In function `checkentry':
net/netfilter/xt_physdev.c:130: undefined reference to `brnf_deferred_hooks'
make: *** [.tmp_vmlinux1] Error 1

Line 130 is simply "brnf_deferred_hooks = 1;"  This variable is also used on 
line 118.

Adding 

"int brnf_deferred_hooks = 0;" 

in a line before line 104 (static int) will cause .tmp_vmlinux1 to be 
successfully created, and make will finish successfully.  However, it will 
generate a warning (seen below) on now line 119 which can be fixed by changing 
it to: 

"if ((brnf_deferred_hooks == 0) & (info->bitmask & XT_PHYSDEV_OP_OUT) && "

The warning generated is:

net/netfilter/xt_physdev.c: In function `checkentry':
net/netfilter/xt_physdev.c:118: warning: ISO C90 forbids mixed declarations 
and code

The kernel produced after making these changes works fine

Steps to reproduce:

I am unsure of which kernel .config parameter is sparking this.  My .config 
can be found here: http://www.animeforum.com/jakiao/misato.config

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.

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

* Re: Fw: [Bugme-new] [Bug 7179] New: Compilation of .tmp_linux1 fails due to missing declaration in net/netfilter/xt_physdev.c
  2006-09-21 22:37 Fw: [Bugme-new] [Bug 7179] New: Compilation of .tmp_linux1 fails due to missing declaration in net/netfilter/xt_physdev.c Andrew Morton
@ 2006-09-22  8:41 ` Jarek Poplawski
  2006-09-22  9:27   ` Jarek Poplawski
  0 siblings, 1 reply; 9+ messages in thread
From: Jarek Poplawski @ 2006-09-22  8:41 UTC (permalink / raw)
  To: Andrew Morton; +Cc: netdev

On 22-09-2006 00:37, Andrew Morton wrote:
> Methinks CONFIG_NETFILTER_XT_TARGET_CLASSIFY should depend upon
> CONFIG_BRIDGE_NETFILTER.  Because brnf_deferred_hooks is defined in
> net/bridge/br_netfilter.c and is referred to in net/netfilter/xt_physdev.c.
> 
> Or something else ;)
...
> I am unsure of which kernel .config parameter is sparking this.  My .config 
> can be found here: http://www.animeforum.com/jakiao/misato.config

I don't see CONFIG_BRIDGE set in this misato.config,
so CONFIG_BRIDGE_NETFILTER was set in some unofficial way.

Jarek P. 

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

* Re: Fw: [Bugme-new] [Bug 7179] New: Compilation of .tmp_linux1 fails due to missing declaration in net/netfilter/xt_physdev.c
  2006-09-22  8:41 ` Jarek Poplawski
@ 2006-09-22  9:27   ` Jarek Poplawski
  2006-09-22  9:55     ` [PATCH] " Jarek Poplawski
  0 siblings, 1 reply; 9+ messages in thread
From: Jarek Poplawski @ 2006-09-22  9:27 UTC (permalink / raw)
  To: Andrew Morton; +Cc: netdev

On Fri, Sep 22, 2006 at 10:41:08AM +0200, Jarek Poplawski wrote:
> On 22-09-2006 00:37, Andrew Morton wrote:
> > Methinks CONFIG_NETFILTER_XT_TARGET_CLASSIFY should depend upon
> > CONFIG_BRIDGE_NETFILTER.  Because brnf_deferred_hooks is defined in
> > net/bridge/br_netfilter.c and is referred to in net/netfilter/xt_physdev.c.
> > 
> > Or something else ;)
> ...
> > I am unsure of which kernel .config parameter is sparking this.  My .config 
> > can be found here: http://www.animeforum.com/jakiao/misato.config
> 
> I don't see CONFIG_BRIDGE set in this misato.config,
> so CONFIG_BRIDGE_NETFILTER was set in some unofficial way.

... or I'm blind! Sorry.

There is CONFIG_BRIDGE=m and this is the source of a problem:
config shouldn't allow for:

CONFIG_NETFILTER_BRIDGE=y 
CONFIG_NETFILTER_XT_MATCH_PHYSDEV=y 

Jarek P.

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

* [PATCH] [Bugme-new] [Bug 7179] New: Compilation of .tmp_linux1 fails due to missing declaration in net/netfilter/xt_physdev.c
  2006-09-22  9:27   ` Jarek Poplawski
@ 2006-09-22  9:55     ` Jarek Poplawski
  2006-09-22 10:15       ` Patrick McHardy
  0 siblings, 1 reply; 9+ messages in thread
From: Jarek Poplawski @ 2006-09-22  9:55 UTC (permalink / raw)
  To: Andrew Morton; +Cc: netdev

On Fri, Sep 22, 2006 at 11:27:31AM +0200, Jarek Poplawski wrote:
...
> There is CONFIG_BRIDGE=m and this is the source of a problem:
> config shouldn't allow for:
> 
> CONFIG_NETFILTER_BRIDGE=y 
> CONFIG_NETFILTER_XT_MATCH_PHYSDEV=y 
 
So here is a patch proposal.

Jarek P.

diff -Nurp linux-2.6.18-/net/Kconfig linux-2.6.18/net/Kconfig
--- linux-2.6.18-/net/Kconfig	2006-09-20 05:42:06.000000000 +0200
+++ linux-2.6.18/net/Kconfig	2006-09-22 11:42:19.000000000 +0200
@@ -143,7 +143,7 @@ config NETFILTER_DEBUG
 
 config BRIDGE_NETFILTER
 	bool "Bridged IP/ARP packets filtering"
-	depends on BRIDGE && NETFILTER && INET
+	depends on BRIDGE=y && NETFILTER && INET
 	default y
 	---help---
 	  Enabling this option will let arptables resp. iptables see bridged

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

* Re: [PATCH] [Bugme-new] [Bug 7179] New: Compilation of .tmp_linux1 fails due to missing declaration in net/netfilter/xt_physdev.c
  2006-09-22  9:55     ` [PATCH] " Jarek Poplawski
@ 2006-09-22 10:15       ` Patrick McHardy
  2006-09-22 10:51         ` Jarek Poplawski
  0 siblings, 1 reply; 9+ messages in thread
From: Patrick McHardy @ 2006-09-22 10:15 UTC (permalink / raw)
  To: Jarek Poplawski; +Cc: Andrew Morton, netdev, David S. Miller

[-- Attachment #1: Type: text/plain, Size: 857 bytes --]

Jarek Poplawski wrote:
> On Fri, Sep 22, 2006 at 11:27:31AM +0200, Jarek Poplawski wrote:
> ...
> 
>>There is CONFIG_BRIDGE=m and this is the source of a problem:
>>config shouldn't allow for:
>>
>>CONFIG_NETFILTER_BRIDGE=y 
>>CONFIG_NETFILTER_XT_MATCH_PHYSDEV=y 
> 
>  
> So here is a patch proposal.
> 
> Jarek P.
> 
> diff -Nurp linux-2.6.18-/net/Kconfig linux-2.6.18/net/Kconfig
> --- linux-2.6.18-/net/Kconfig	2006-09-20 05:42:06.000000000 +0200
> +++ linux-2.6.18/net/Kconfig	2006-09-22 11:42:19.000000000 +0200
> @@ -143,7 +143,7 @@ config NETFILTER_DEBUG
>  
>  config BRIDGE_NETFILTER
>  	bool "Bridged IP/ARP packets filtering"
> -	depends on BRIDGE && NETFILTER && INET
> +	depends on BRIDGE=y && NETFILTER && INET

We should fix the physdev dependencies since this is what is causing
problems.


Signed-off-by: Patrick McHardy <kaber@trash.net>

[-- Attachment #2: x --]
[-- Type: text/plain, Size: 511 bytes --]

diff --git a/net/netfilter/Kconfig b/net/netfilter/Kconfig
index 0a28d2c..ce94732 100644
--- a/net/netfilter/Kconfig
+++ b/net/netfilter/Kconfig
@@ -365,7 +365,7 @@ config NETFILTER_XT_MATCH_MULTIPORT
 
 config NETFILTER_XT_MATCH_PHYSDEV
 	tristate '"physdev" match support'
-	depends on NETFILTER_XTABLES && BRIDGE_NETFILTER
+	depends on NETFILTER_XTABLES && BRIDGE && BRIDGE_NETFILTER
 	help
 	  Physdev packet matching matches against the physical bridge ports
 	  the IP packet arrived on or will leave by.

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

* Re: [PATCH] [Bugme-new] [Bug 7179] New: Compilation of .tmp_linux1 fails due to missing declaration in net/netfilter/xt_physdev.c
  2006-09-22 10:15       ` Patrick McHardy
@ 2006-09-22 10:51         ` Jarek Poplawski
  2006-09-22 10:54           ` Patrick McHardy
  0 siblings, 1 reply; 9+ messages in thread
From: Jarek Poplawski @ 2006-09-22 10:51 UTC (permalink / raw)
  To: Patrick McHardy; +Cc: Andrew Morton, netdev, David S. Miller

On Fri, Sep 22, 2006 at 12:15:43PM +0200, Patrick McHardy wrote:
...
> We should fix the physdev dependencies since this is what is causing
> problems.
...
>  config NETFILTER_XT_MATCH_PHYSDEV
>  	tristate '"physdev" match support'
> -	depends on NETFILTER_XTABLES && BRIDGE_NETFILTER
> +	depends on NETFILTER_XTABLES && BRIDGE && BRIDGE_NETFILTER

Sure! But someone may ask what for BRIDGE_NETFILTER depends
on BRIDGE if you should repeat this? 

Jarek P.

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

* Re: [PATCH] [Bugme-new] [Bug 7179] New: Compilation of .tmp_linux1 fails due to missing declaration in net/netfilter/xt_physdev.c
  2006-09-22 10:51         ` Jarek Poplawski
@ 2006-09-22 10:54           ` Patrick McHardy
  2006-09-22 11:48             ` Jarek Poplawski
  0 siblings, 1 reply; 9+ messages in thread
From: Patrick McHardy @ 2006-09-22 10:54 UTC (permalink / raw)
  To: Jarek Poplawski; +Cc: Andrew Morton, netdev, David S. Miller

Jarek Poplawski wrote:
> On Fri, Sep 22, 2006 at 12:15:43PM +0200, Patrick McHardy wrote:
> ...
> 
>>We should fix the physdev dependencies since this is what is causing
>>problems.
> 
> ...
> 
>> config NETFILTER_XT_MATCH_PHYSDEV
>> 	tristate '"physdev" match support'
>>-	depends on NETFILTER_XTABLES && BRIDGE_NETFILTER
>>+	depends on NETFILTER_XTABLES && BRIDGE && BRIDGE_NETFILTER
> 
> 
> Sure! But someone may ask what for BRIDGE_NETFILTER depends
> on BRIDGE if you should repeat this? 

Simply because it really depends on BRIDGE. The reason why we need
BRIDGE as dependency here also is because BRIDGE_NETFILTER is a
boolean, but may still result in a module because of special
logic in the bridge makefile.



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

* Re: [PATCH] [Bugme-new] [Bug 7179] New: Compilation of .tmp_linux1 fails due to missing declaration in net/netfilter/xt_physdev.c
  2006-09-22 10:54           ` Patrick McHardy
@ 2006-09-22 11:48             ` Jarek Poplawski
  2006-09-22 11:58               ` Patrick McHardy
  0 siblings, 1 reply; 9+ messages in thread
From: Jarek Poplawski @ 2006-09-22 11:48 UTC (permalink / raw)
  To: Patrick McHardy; +Cc: Andrew Morton, netdev, David S. Miller

On Fri, Sep 22, 2006 at 12:54:42PM +0200, Patrick McHardy wrote:
> Jarek Poplawski wrote:
> > On Fri, Sep 22, 2006 at 12:15:43PM +0200, Patrick McHardy wrote:
> > ...
> > 
> >>We should fix the physdev dependencies since this is what is causing
> >>problems.
> > 
> > ...
> > 
> >> config NETFILTER_XT_MATCH_PHYSDEV
> >> 	tristate '"physdev" match support'
> >>-	depends on NETFILTER_XTABLES && BRIDGE_NETFILTER
> >>+	depends on NETFILTER_XTABLES && BRIDGE && BRIDGE_NETFILTER
> > 
> > 
> > Sure! But someone may ask what for BRIDGE_NETFILTER depends
> > on BRIDGE if you should repeat this? 
> 
> Simply because it really depends on BRIDGE. The reason why we need
> BRIDGE as dependency here also is because BRIDGE_NETFILTER is a
> boolean, but may still result in a module because of special
> logic in the bridge makefile.

Anyway this special logic is also something misleading:

a) BRIDGE_NETFILTER=y and BRIDGE_NETFILTER depends on BRIDGE
sugest something which depends on BRIDGE is compiled into
kernel, which is usually impossible if BRIDGE=m

b) let's assume a) is right; shouldn't this dependency be
automatically added to _PHYSDEV etc.? I mean config script
behavior - not bridge makefile.

Thanks for explanation - my best regards,

Jarek P.  

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

* Re: [PATCH] [Bugme-new] [Bug 7179] New: Compilation of .tmp_linux1 fails due to missing declaration in net/netfilter/xt_physdev.c
  2006-09-22 11:48             ` Jarek Poplawski
@ 2006-09-22 11:58               ` Patrick McHardy
  0 siblings, 0 replies; 9+ messages in thread
From: Patrick McHardy @ 2006-09-22 11:58 UTC (permalink / raw)
  To: Jarek Poplawski; +Cc: Andrew Morton, netdev, David S. Miller

Jarek Poplawski wrote:
> Anyway this special logic is also something misleading:
> 
> a) BRIDGE_NETFILTER=y and BRIDGE_NETFILTER depends on BRIDGE
> sugest something which depends on BRIDGE is compiled into
> kernel, which is usually impossible if BRIDGE=m
> 
> b) let's assume a) is right; shouldn't this dependency be
> automatically added to _PHYSDEV etc.? I mean config script
> behavior - not bridge makefile.

Frankly, I don't care. And I'm definitely not interested in hacking
Kconfig.


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

end of thread, other threads:[~2006-09-22 11:58 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-09-21 22:37 Fw: [Bugme-new] [Bug 7179] New: Compilation of .tmp_linux1 fails due to missing declaration in net/netfilter/xt_physdev.c Andrew Morton
2006-09-22  8:41 ` Jarek Poplawski
2006-09-22  9:27   ` Jarek Poplawski
2006-09-22  9:55     ` [PATCH] " Jarek Poplawski
2006-09-22 10:15       ` Patrick McHardy
2006-09-22 10:51         ` Jarek Poplawski
2006-09-22 10:54           ` Patrick McHardy
2006-09-22 11:48             ` Jarek Poplawski
2006-09-22 11:58               ` Patrick McHardy

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).