Highlights:
1) Memory leak and ipv6 statistic fix for network namespaces from
Alexey Dobriyan.
2) Fixes and new device ID additions in wireless via John Linville
and co.
3) IPV6 default gateway selection fix from Pedro Ribeiro
4) Netfilter fixups from Patrick McHardy and Pablo Neira Ayuso:
a) an #ifdef got lost in a conversion, breaking defragmentation
handling in some configurations
b) ctnetlink and nf_nat have an awful dependency, and Pablo found
a clean way to get rid of it
c) ebtables missing dependency fix based upon build failure
report by Ingo
5) decnet should use offsetof() instead of hand-written version
that generates build warnings
Please pull, thanks a lot!
The following changes since commit 485013717020cd8961337309e359d6cef43d6022:
Ron Mercer (1):
qlge: Fix page size ifdef test.
are available in the git repository at:
master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6.git master
Alexey Dobriyan (2):
netns: fix net_generic array leak
netns: correct mib stats in ip6_route_me_harder()
Andrey Borzenkov (1):
orinoco: fix unsafe locking in orinoco_cs_resume
Christian Lamparter (1):
p54usb: Device ID updates
David Kilroy (1):
orinoco: fix unsafe locking in spectrum_cs_suspend
David S. Miller (2):
Merge branch 'master' of git://git.kernel.org/.../linville/wireless-2.6
decnet: Fix compiler warning in dn_dev.c
Felix Fietkau (1):
rt2x00: fix regression introduced by "mac80211: free up 2 bytes in skb->cb"
Florent Fourcot (1):
rtl8187: Add USB ID for Belkin F5D7050 with RTL8187B chip
Johannes Berg (5):
mac80211: fix debugfs lockup
mac80211: fix HT information element parsing
mac80211: fix debugfs netdev rename
cfg80211: fix debugfs error handling
ath9k/mac80211: disallow fragmentation in ath9k, report to userspace
John W. Linville (1):
rtl8187: add device ID 0bda:8198
Jouni Malinen (1):
mac80211: Fix scan RX processing oops
Larry Finger (1):
p54: Fix compilation problem on PPC
Manish Katiyar (2):
libertas : Remove unused variable warning for "old_channel" from cmd.c
net/802/fc.c: Fix compilation warnings
Pablo Neira Ayuso (1):
netfilter: ctnetlink: remove bogus module dependency between ctnetlink and nf_nat
Patrick McHardy (2):
netfilter: restore lost #ifdef guarding defrag exception
netfilter: fix ebtables dependencies
Pedro Ribeiro (1):
IPV6: Fix default gateway criteria wrt. HIGH/LOW preference radv option
Rami Rosen (1):
iwlwifi: fix compilation warning when CONFIG_IWLWIFI_DEBUG is not set.
Randy Dunlap (1):
mac80211: fixme for kernel-doc
Randy Macleod (1):
Phonet: Simple doc fix.
Tomas Winkler (1):
iwlwifi: fix ct kill configuration for 5350
Documentation/networking/phonet.txt | 4 +-
drivers/net/wireless/ath9k/main.c | 8 ++-
drivers/net/wireless/iwlwifi/iwl-5000.c | 6 +-
drivers/net/wireless/iwlwifi/iwl-agn-rs.c | 2 +-
drivers/net/wireless/libertas/cmd.c | 2 +
drivers/net/wireless/orinoco_cs.c | 5 +-
drivers/net/wireless/p54/p54common.c | 1 -
drivers/net/wireless/p54/p54usb.c | 3 +-
drivers/net/wireless/rt2x00/rt2x00queue.c | 9 +-
drivers/net/wireless/rtl8187_dev.c | 3 +
drivers/net/wireless/spectrum_cs.c | 5 +-
include/linux/icmpv6.h | 6 +-
include/linux/netfilter/nfnetlink.h | 3 +
include/net/mac80211.h | 3 +-
include/net/netfilter/nf_nat_core.h | 8 ++
net/802/fc.c | 2 +-
net/bridge/netfilter/Kconfig | 1 +
net/core/net_namespace.c | 2 +-
net/decnet/dn_dev.c | 2 +-
net/ipv4/netfilter/nf_defrag_ipv4.c | 3 +-
net/ipv4/netfilter/nf_nat_core.c | 97 ++++++++++++++++++
net/ipv6/ndisc.c | 2 +-
net/ipv6/netfilter.c | 6 +-
net/mac80211/debugfs_netdev.c | 6 +-
net/mac80211/debugfs_sta.c | 11 ++
net/mac80211/ieee80211_i.h | 6 +-
net/mac80211/mlme.c | 3 -
net/mac80211/scan.c | 3 +-
net/mac80211/sta_info.c | 7 +-
net/mac80211/sta_info.h | 1 +
net/mac80211/util.c | 8 +-
net/mac80211/wext.c | 2 +-
net/netfilter/nf_conntrack_core.c | 7 ++
net/netfilter/nf_conntrack_netlink.c | 151 ++++++++++++-----------------
net/netfilter/nfnetlink.c | 12 ++-
net/wireless/core.c | 5 +-
36 files changed, 268 insertions(+), 137 deletions(-)
hi,
* David Miller <[email protected]> wrote:
> Pablo Neira Ayuso (1):
> netfilter: ctnetlink: remove bogus module dependency between ctnetlink and nf_nat
FYI, got a common build failure with latest -git, and bisected it back
to the commit above. Config attached, error log and bisect log below.
(The build failure output is at the bottom, it comes after dozens of
build warnings all across the kernel.)
Ingo
------------->
e6a7d3c04f8fe49099521e6dc9a46b0272381f2f is first bad commit
commit e6a7d3c04f8fe49099521e6dc9a46b0272381f2f
Author: Pablo Neira Ayuso <[email protected]>
Date: Tue Oct 14 11:58:31 2008 -0700
netfilter: ctnetlink: remove bogus module dependency between ctnetlink and nf_nat
# bad: [8cde1ad6] Merge branch 'sched-fixes-for-linus' of git://git.
# good: [3fa8749e] Linux 2.6.27
# good: [ead9d23d] Merge phase #4 (X2APIC, APIC unification, CPU iden
# good: [cf2fa660] Merge branch 'for_linus' of git://git.kernel.org/p
# good: [3400001c] powerpc: rename iommu_num_pages function to iommu_
# bad: [d7a6119f] rtc: rtc-ds1286 and rtc-m48t35 need <linux/io.h>
# good: [5edc2a51] binfmt_elf_fdpic: wire up AT_EXECFD, AT_EXECFN, AT
# good: [43526370] drivers/net/xen-netfront.c: Use DIV_ROUND_UP
# good: [59aaade7] Merge branch 'omap3-upstream' of git://git.kernel.
# bad: [ab55570d] Merge branch 'master' of git://git.kernel.org/pub/
# good: [96d46d5d] libertas : Remove unused variable warning for "old
# bad: [eef9d90d] netns: correct mib stats in ip6_route_me_harder()
# bad: [e6a7d3c0] netfilter: ctnetlink: remove bogus module dependen
# good: [129404a1] netfilter: fix ebtables dependencies
fs/afs/dir.c: In function ‘afs_d_revalidate’:
kernel/lockdep.c:580: warning: ‘print_lock_dependencies’ defined but not used
fs/coda/sysctl.c:14: warning: ‘fs_table_header’ defined but not used
fs/coda/sysctl.c:44: warning: ‘fs_table’ defined but not used
In file included from drivers/message/i2o/config-osm.c:40:
drivers/message/i2o/i2o_config.c: In function ‘i2o_cfg_passthru’:
drivers/message/i2o/i2o_config.c:887: warning: cast to pointer from integer of different size
drivers/message/i2o/i2o_config.c:942: warning: cast to pointer from integer of different size
drivers/isdn/hisax/config.c:1905: warning: ‘hisax_pci_tbl’ defined but not used
fs/xfs/xfs_rtalloc.c: In function ‘xfs_growfs_rt’:
drivers/char/specialix.c:2358: warning: ‘specialx_pci_tbl’ defined but not used
sound/soc/codecs/tlv320aic23.c: In function ‘tlv320aic23_set_dai_sysclk’:
sound/soc/codecs/tlv320aic23.c:424: warning: unused variable ‘codec’
drivers/isdn/i4l/isdn_ppp.c:435: warning: ‘get_filter’ defined but not used
fs/nfsd/nfs4proc.c:1120: warning: ‘nfsd4_op_name’ defined but not used
net/dccp/options.c: In function ‘dccp_parse_options’:
drivers/char/rocket.c:1873: warning: ‘rocket_pci_ids’ defined but not used
drivers/isdn/hisax/avm_pci.c: In function ‘avm_pci_setup’:
drivers/isdn/hisax/sedlbauer.c: In function ‘setup_sedlbauer_pci’:
drivers/isdn/hisax/nj_u.c: In function ‘setup_netjet_u’:
drivers/isdn/hisax/telespci.c: In function ‘setup_telespci’:
drivers/isdn/hisax/bkm_a4t.c: In function ‘setup_bkm_a4t’:
drivers/isdn/hisax/hfc_pci.c: In function ‘setup_hfcpci’:
drivers/isdn/hisax/nj_s.c: In function ‘setup_netjet_s’:
drivers/watchdog/i6300esb.c:365: warning: ‘esb_pci_tbl’ defined but not used
net/netfilter/nf_conntrack_proto_tcp.c: In function ‘tcp_in_window’:
net/netfilter/nf_conntrack_proto_tcp.c:491: warning: unused variable ‘net’
net/netfilter/nf_conntrack_proto_tcp.c: In function ‘tcp_packet’:
net/netfilter/nf_conntrack_proto_tcp.c:812: warning: unused variable ‘net’
drivers/isdn/hisax/enternow_pci.c: In function ‘setup_enternow_pci’:
drivers/isdn/hisax/diva.c: In function ‘setup_diva_pci’:
drivers/isdn/hisax/bkm_a8.c: In function ‘setup_sct_quadro’:
drivers/isdn/hisax/w6692.c: In function ‘setup_w6692’:
drivers/net/wireless/iwlwifi/iwl-scan.c:92: warning: ‘iwl_escape_essid’ defined but not used
net/mac80211/rc80211_minstrel_debugfs.c:145: warning: initialization from incompatible pointer type
net/netfilter/nf_conntrack_netlink.c:819: warning: ‘enum nf_nat_manip_type’ declared inside parameter list
net/netfilter/nf_conntrack_netlink.c:819: warning: its scope is only this definition or declaration, which is probably not what you want
net/netfilter/nf_conntrack_netlink.c:818: error: parameter 2 (‘manip’) has incomplete type
net/netfilter/nf_conntrack_netlink.c: In function ‘ctnetlink_parse_nat_setup’:
net/netfilter/nf_conntrack_netlink.c:821: error: ‘nfnetlink_parse_nat_setup_hook’ undeclared (first use in this function)
net/netfilter/nf_conntrack_netlink.c:821: error: (Each undeclared identifier is reported only once
net/netfilter/nf_conntrack_netlink.c:821: error: for each function it appears in.)
net/netfilter/nf_conntrack_netlink.c:821: warning: type defaults to ‘int’ in declaration of ‘parse_nat_setup’
net/netfilter/nf_conntrack_netlink.c:823: warning: type defaults to ‘int’ in declaration of ‘_________p1’
net/netfilter/nf_conntrack_netlink.c:823: warning: type defaults to ‘int’ in declaration of ‘type name’
net/netfilter/nf_conntrack_netlink.c:841: error: called object ‘parse_nat_setup’ is not a function
commit cfbb966e0a84eb75e8e7c192953ecf3ca48a9420
Author: Patrick McHardy <[email protected]>
Date: Fri Oct 17 13:50:35 2008 +0200
netfilter: ctnetlink: fix compilation error
Fix compilation error on (at least) ppc:
/home/benh/kernels/linux-powerpc/net/netfilter/nf_conntrack_netlink.c:819: warning: \u2018enum nf_nat_manip_type\u2019 declared inside parameter list
/home/benh/kernels/linux-powerpc/net/netfilter/nf_conntrack_netlink.c:819: warning: its scope is only this definition or declaration, which is probably not what you want
Signed-off-by: Patrick McHardy <[email protected]>
diff --git a/net/netfilter/nf_conntrack_netlink.c b/net/netfilter/nf_conntrack_netlink.c
index 08e82d6..deace06 100644
--- a/net/netfilter/nf_conntrack_netlink.c
+++ b/net/netfilter/nf_conntrack_netlink.c
@@ -39,6 +39,7 @@
#include <net/netfilter/nf_conntrack_tuple.h>
#include <net/netfilter/nf_conntrack_acct.h>
#ifdef CONFIG_NF_NAT_NEEDED
+#include <net/netfilter/nf_nat.h>
#include <net/netfilter/nf_nat_core.h>
#include <net/netfilter/nf_nat_protocol.h>
#endif
* Patrick McHardy <[email protected]> wrote:
>> net/netfilter/nf_conntrack_netlink.c:819: warning: ‘enum nf_nat_manip_type’ declared inside parameter list
>> net/netfilter/nf_conntrack_netlink.c:819: warning: its scope is only this definition or declaration, which is probably not what you want
>> net/netfilter/nf_conntrack_netlink.c:818: error: parameter 2 (‘manip’) has incomplete type
>
> Thanks Ingo. I just sent this patch to Benjamin Herrenschmidt
> for testing.
build still fails with the attached config.
Ingo
Ingo Molnar wrote:
> * Patrick McHardy <[email protected]> wrote:
>
>>> net/netfilter/nf_conntrack_netlink.c:819: warning: ?enum nf_nat_manip_type? declared inside parameter list
>>> net/netfilter/nf_conntrack_netlink.c:819: warning: its scope is only this definition or declaration, which is probably not what you want
>>> net/netfilter/nf_conntrack_netlink.c:818: error: parameter 2 (?manip?) has incomplete type
>> Thanks Ingo. I just sent this patch to Benjamin Herrenschmidt
>> for testing.
>
> build still fails with the attached config.
We have to wrap ctnetlink_parse_nat_setup with CONFIG_NF_NAT_NEEDED,
I'll send you a patch asap. Sorry for the breakage.
--
"Los honestos son inadaptados sociales" -- Les Luthiers
netfilter: ctnetlink: fix compilation without NAT support
This patch fixes the compilation of ctnetlink when the NAT support
is not enabled.
/home/benh/kernels/linux-powerpc/net/netfilter/nf_conntrack_netlink.c:819: warning: enum nf_nat_manip_type\u2019 declared inside parameter list
/home/benh/kernels/linux-powerpc/net/netfilter/nf_conntrack_netlink.c:819: warning: its scope is only this definition or declaration, which is probably not what you want
Signed-off-by: Pablo Neira Ayuso <[email protected]>
Index: net-next-2.6/net/netfilter/nf_conntrack_netlink.c
===================================================================
--- net-next-2.6.orig/net/netfilter/nf_conntrack_netlink.c 2008-10-17 14:15:26.000000000 +0200
+++ net-next-2.6/net/netfilter/nf_conntrack_netlink.c 2008-10-17 14:17:12.000000000 +0200
@@ -814,6 +814,7 @@
return err;
}
+#ifdef CONFIG_NF_NAT_NEEDED
static int
ctnetlink_parse_nat_setup(struct nf_conn *ct,
enum nf_nat_manip_type manip,
@@ -841,6 +842,7 @@
return parse_nat_setup(ct, manip, attr);
}
+#endif
static int
ctnetlink_change_status(struct nf_conn *ct, struct nlattr *cda[])
Pablo Neira Ayuso wrote:
> Ingo Molnar wrote:
>> * Patrick McHardy <[email protected]> wrote:
>>
>>>> net/netfilter/nf_conntrack_netlink.c:819: warning: ‘enum
>>>> nf_nat_manip_type’ declared inside parameter list
>>>> net/netfilter/nf_conntrack_netlink.c:819: warning: its scope is only
>>>> this definition or declaration, which is probably not what you want
>>>> net/netfilter/nf_conntrack_netlink.c:818: error: parameter 2
>>>> (‘manip’) has incomplete type
>>> Thanks Ingo. I just sent this patch to Benjamin Herrenschmidt
>>> for testing.
>>
>> build still fails with the attached config.
>
> This should fix it. I have slightly tested it here with your config.
>
Applied, thanks Pablo.
I'll look into cleaning up those conditional includes. Its getting
more and more complicated to even build-test all the combinations.
* Patrick McHardy <[email protected]> wrote:
> Pablo Neira Ayuso wrote:
>> Ingo Molnar wrote:
>>> * Patrick McHardy <[email protected]> wrote:
>>>
>>>>> net/netfilter/nf_conntrack_netlink.c:819: warning: ‘enum
>>>>> nf_nat_manip_type’ declared inside parameter list
>>>>> net/netfilter/nf_conntrack_netlink.c:819: warning: its scope is
>>>>> only this definition or declaration, which is probably not what
>>>>> you want
>>>>> net/netfilter/nf_conntrack_netlink.c:818: error: parameter 2
>>>>> (‘manip’) has incomplete type
>>>> Thanks Ingo. I just sent this patch to Benjamin Herrenschmidt
>>>> for testing.
>>>
>>> build still fails with the attached config.
>>
>> This should fix it. I have slightly tested it here with your config.
>>
>
> Applied, thanks Pablo.
>
> I'll look into cleaning up those conditional includes. Its getting
> more and more complicated to even build-test all the combinations.
yeah - very often build errors in rare .config scenarios are canaries
for structural problems.
(We had such a situation in the x86 code recently: we had those quirky
x86 subarchitectures, and they were a constant source of build errors
that no real user actually cared about - because there were no active
users left. We modularized them into the main platform and we havent had
a single build bug in them in the last couple of months.)
Ingo