aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* net/pcmcia: convert to use netdev_for_each_mc_addrJiri Pirko2010-02-195-69/+67
| | | | | | | | | | removed fill_multicast_tbl function in smc91c92_cs and do the work inline rewritten set_addresses function in xirc2ps_cs. This was kinda headache. Simulated the original and new functions and they bahave the same. Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* xfrm: Flushing empty SPD generates false eventsJamal Hadi Salim2010-02-193-6/+20
| | | | | | | | | | | | | To see the effect make sure you have an empty SPD. On window1 "ip xfrm mon" and on window2 issue "ip xfrm policy flush" You get prompt back in window2 and you see the flush event on window1. With this fix, you still get prompt on window1 but no event on window2. Thanks to Alexey Dobriyan for finding a bug in earlier version when using pfkey to do the flushing. Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca> Signed-off-by: David S. Miller <davem@davemloft.net>
* xfrm: Flushing empty SAD generates false eventsJamal Hadi Salim2010-02-193-4/+14
| | | | | | | | | | | | | To see the effect make sure you have an empty SAD. On window1 "ip xfrm mon" and on window2 issue "ip xfrm state flush" You get prompt back in window2 and you see the flush event on window1. With this fix, you still get prompt on window1 but no event on window2. Thanks to Alexey Dobriyan for finding a bug in earlier version when using pfkey to do the flushing. Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca> Signed-off-by: David S. Miller <davem@davemloft.net>
* pfkey: fix SA and SP flush sequenceJamal Hadi Salim2010-02-191-6/+27
| | | | | | | | | | | | | | | | | | RFC 2367 says flushing behavior should be: 1) user space -> kernel: flush 2) kernel: flush 3) kernel -> user space: flush event to ALL listeners This is not realistic today in the presence of selinux policies which may reject the flush etc. So we make the sequence become: 1) user space -> kernel: flush 2) kernel: flush 3) kernel -> user space: flush response to originater from #1 4) if there were no errors then: kernel -> user space: flush event to ALL listeners Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge branch 'master' of ↵David S. Miller2010-02-193-14/+15
|\ | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-next-2.6
| * netfilter: nf_queue: fix NF_STOLEN skb leakEric Dumazet2010-02-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | commit 3bc38712e3a6e059 (handle NF_STOP and unknown verdicts in nf_reinject) was a partial fix to packet leaks. If user asks NF_STOLEN status, we must free the skb as well. Reported-by: Afi Gjermund <afigjermund@gmail.com> Signed-off-by: Eric DUmazet <eric.dumazet@gmail.com> Signed-off-by: Patrick McHardy <kaber@trash.net>
| * netfilter: ctnetlink: fix creation of conntrack with helpersPablo Neira Ayuso2010-02-191-11/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes a bug that triggers an assertion if you create a conntrack entry with a helper and netfilter debugging is enabled. Basically, we hit the assertion because the confirmation flag is set before the conntrack extensions are added. To fix this, we move the extension addition before the aforementioned flag is set. This patch also removes the possibility of setting a helper for existing conntracks. This operation would also trigger the assertion since we are not allowed to add new extensions for existing conntracks. We know noone that could benefit from this operation sanely. Thanks to Eric Dumazet for initial posting a preliminary patch to address this issue. Reported-by: David Ramblewski <David.Ramblewski@atosorigin.com> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org> Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: Patrick McHardy <kaber@trash.net>
| * netfilter: restore POST_ROUTING hook in NF_HOOK_CONDPatrick McHardy2010-02-191-2/+3
| | | | | | | | | | | | | | | | | | | | | | Commit 2249065 ("netfilter: get rid of the grossness in netfilter.h") inverted the logic for conditional hook invocation, breaking the POST_ROUTING hook invoked by ip_output(). Correct the logic and remove an unnecessary initialization. Reported-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: Patrick McHardy <kaber@trash.net>
* | net: Make GRETH driver depend on SPARC.David S. Miller2010-02-181-1/+1
| | | | | | | | | | | | Reported by Stephen Rothwell. Signed-off-by: David S. Miller <davem@davemloft.net>
* | drivers/net/sis190.c: Use (pr|netdev|netif)_<level> macro helpersJoe Perches2010-02-181-77/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt Remove #define PFX Use pr_<level> Use netdev_<level> Use netif_<level> and netif_msg_<test> Remove local #define net_<test> macros Remove periods from formats Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | drivers/net/tg3.c: Use (pr|netdev)_<level> macro helpersJoe Perches2010-02-181-161/+109
| | | | | | | | | | | | | | | | | | | | | | | | | | Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt Remove #define PFX Use pr_<level> Use netdev_<level> Remove periods from most formats Coalesce long formats Use printk_once Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | Orphan DECnetChrissie Caulfield2010-02-181-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Due to lack of time, space, motivation, hardware and probably expertise, I have reluctantly decided to orphan the DECnet code in the kernel. Judging by the deafening silence on the linux-decnet mailing list I suspect it's either not being used anyway, or the few people that are using it are happy with their older kernels. Signed-Off-By: Christine Caulfield <christine.caulfield@googlemail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | be2net: free tx buffers when completions never arriveSathya Perla2010-02-181-0/+12
| | | | | | | | | | | | | | | | | | | | | | be2net: free tx buffers when completions never arrive In cases like when a pci device is disconnected on an error, pending tx completions will never arrive. Unmap and free such buffers in the tx cleanup path. Signed-off-by: Sathya Perla <sathyap@serverengines.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | xfrm: Introduce LINUX_MIB_XFRMFWDHDRERRORjamal2010-02-183-2/+3
| | | | | | | | | | | | | | | | | | XFRMINHDRERROR counter is ambigous when validating forwarding path. It makes it tricky to debug when you have both in and fwd validation. Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: TCP thin dupackAndreas Petlund2010-02-186-1/+42
| | | | | | | | | | | | | | | | | | | | | | | | This patch enables fast retransmissions after one dupACK for TCP if the stream is identified as thin. This will reduce latencies for thin streams that are not able to trigger fast retransmissions due to high packet interarrival time. This mechanism is only active if enabled by iocontrol or syscontrol and the stream is identified as thin. Signed-off-by: Andreas Petlund <apetlund@simula.no> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: TCP thin linear timeoutsAndreas Petlund2010-02-186-2/+54
| | | | | | | | | | | | | | | | | | | | | | | | This patch will make TCP use only linear timeouts if the stream is thin. This will help to avoid the very high latencies that thin stream suffer because of exponential backoff. This mechanism is only active if enabled by iocontrol or syscontrol and the stream is identified as thin. A maximum of 6 linear timeouts is tried before exponential backoff is resumed. Signed-off-by: Andreas Petlund <apetlund@simula.no> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: TCP thin-stream detectionAndreas Petlund2010-02-182-0/+55
| | | | | | | | | | | | | | | | | | Inline function to dynamically detect thin streams based on the number of packets in flight. Used to dynamically trigger thin-stream mechanisms if enabled by ioctl or sysctl. Signed-off-by: Andreas Petlund <apetlund@simula.no> Signed-off-by: David S. Miller <davem@davemloft.net>
* | tokenring: convert to use netdev_for_each_mc_addrJiri Pirko2010-02-185-17/+9
| | | | | | | | | | Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | staging: convert to use netdev_for_each_mc_addrJiri Pirko2010-02-189-60/+40
| | | | | | | | | | | | | | | | removed needless checks in arlan-main.c and slicoss.c fixed bug in et131x_netdev.c to actually fill addresses in. Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net/usb: convert to use netdev_for_each_mc_addrJiri Pirko2010-02-184-34/+15
| | | | | | | | | | | | | | also removed needless checks in smsc95xx Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | tulip: convert to use netdev_for_each_mc_addrJiri Pirko2010-02-186-50/+35
| | | | | | | | | | | | | | | | also bug in de2104x.c was corrected: for (i = 0; i < 32; i++) loop should be outside mc_list iteration. Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: convert multiple drivers to use netdev_for_each_mc_addr, part2Jiri Pirko2010-02-1823-87/+55
| | | | | | | | | | Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | smsc911x: convert to use netdev_for_each_mc_addrJiri Pirko2010-02-181-18/+9
| | | | | | | | | | | | | | also removed unnecessary checks Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | 3c5xx: use netdev_mc_* helpersJiri Pirko2010-02-186-19/+13
| | | | | | | | | | Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | depca: remove forgotten needless inicializationJiri Pirko2010-02-181-1/+1
| | | | | | | | | | Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | const: struct nla_policyAlexey Dobriyan2010-02-1810-33/+22
| | | | | | | | | | | | | | | | Make remaining netlink policies as const. Fixup coding style where needed. Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | ipv6: drop unused "dev" arg of icmpv6_send()Alexey Dobriyan2010-02-1818-39/+33
| | | | | | | | | | | | | | Dunno, what was the idea, it wasn't used for a long time. Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | ipv6: use standard lists for FIB walksAlexey Dobriyan2010-02-182-14/+5
| | | | | | | | | | Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | ipv6: remove stale MIB definitionsAlexey Dobriyan2010-02-181-5/+0
| | | | | | | | | | | | | | ICMP6 MIB statistics was per-netns for quite a time. Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | AF_UNIX: update locking commentStephen Hemminger2010-02-181-1/+1
| | | | | | | | | | | | | | The lock used in unix_state_lock() is a spin_lock not reader-writer. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | macvtap: add GSO/csum offload supportArnd Bergmann2010-02-181-24/+182
| | | | | | | | | | | | | | | | | | | | | | | | Added flags field to macvtap_queue to enable/disable processing of virtio_net_hdr via IFF_VNET_HDR. This flag is checked to prepend virtio_net_hdr in the receive path and process/skip virtio_net_hdr in the send path. Original patch by Sridhar, further changes by Arnd. Signed-off-by: Sridhar Samudrala <sri@us.ibm.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net/macvtap: add vhost supportArnd Bergmann2010-02-184-24/+97
| | | | | | | | | | | | | | | | | | | | | | | | This adds support for passing a macvtap file descriptor into vhost-net, much like we already do for tun/tap. Most of the new code is taken from the respective patch in the tun driver and may get consolidated in the future. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Sridhar Samudrala <sri@us.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | macvtap: rework object lifetime rulesArnd Bergmann2010-02-181-92/+91
|/ | | | | | | | | | | | | | | | | | | | | | | | This reworks the change done by the previous patch in a more complete way. The original macvtap code has a number of problems resulting from the use of RCU for protecting the access to struct macvtap_queue from open files. This includes - need for GFP_ATOMIC allocations for skbs - potential deadlocks when copy_*_user sleeps - inability to work with vhost-net Changing the lifetime of macvtap_queue to always depend on the open file solves all these. The RCU reference simply moves one step down to the reference on the macvlan_dev, which we only need for nonblocking operations. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Sridhar Samudrala <sri@us.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* netfilter: nf_defrag_ipv4: fix compilation error with NF_CONNTRACK=nPatrick McHardy2010-02-182-3/+9
| | | | | | | | | | | | | | | | | | | As reported by Randy Dunlap <randy.dunlap@oracle.com>, compilation of nf_defrag_ipv4 fails with: include/net/netfilter/nf_conntrack.h:94: error: field 'ct_general' has incomplete type include/net/netfilter/nf_conntrack.h:178: error: 'const struct sk_buff' has no member named 'nfct' include/net/netfilter/nf_conntrack.h:185: error: implicit declaration of function 'nf_conntrack_put' include/net/netfilter/nf_conntrack.h:294: error: 'const struct sk_buff' has no member named 'nfct' net/ipv4/netfilter/nf_defrag_ipv4.c:45: error: 'struct sk_buff' has no member named 'nfct' net/ipv4/netfilter/nf_defrag_ipv4.c:46: error: 'struct sk_buff' has no member named 'nfct' net/nf_conntrack.h must not be included with NF_CONNTRACK=n, add a few #ifdefs. Long term the header file should be fixed to be usable even with NF_CONNTRACK=n. Tested-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Patrick McHardy <kaber@trash.net>
* ipvs: SCTP Trasport Loadbalancing SupportVenkata Mohan Reddy2010-02-188-12/+1285
| | | | | | | | | | | Enhance IPVS to load balance SCTP transport protocol packets. This is done based on the SCTP rfc 4960. All possible control chunks have been taken care. The state machine used in this code looks some what lengthy. I tried to make the state machine easy to understand. Signed-off-by: Venkata Mohan Reddy Koppula <mohanreddykv@gmail.com> Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: Patrick McHardy <kaber@trash.net>
* Merge branch 'ebt_config_compat_v4' of git://git.breakpoint.cc/fw/nf-next-2.6Patrick McHardy2010-02-184-119/+1124
|\
| * netfilter: ebtables: mark: add CONFIG_COMPAT supportFlorian Westphal2010-02-162-0/+68
| | | | | | | | | | | | | | Add the required handlers to convert 32 bit ebtables mark match and match target structs to 64bit layout. Signed-off-by: Florian Westphal <fwestphal@astaro.com>
| * netfilter: ebt_limit: add CONFIG_COMPAT supportFlorian Westphal2010-02-161-0/+16
| | | | | | | | | | | | | | | | | | | | ebt_limit structure is larger on 64 bit systems due to "long" type used in the (kernel-only) data section. Setting .compatsize is enough in this case, these values have no meaning in userspace. Signed-off-by: Florian Westphal <fwestphal@astaro.com>
| * netfilter: ebtables: try native set/getsockopt handlers, tooFlorian Westphal2010-02-161-10/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ebtables can be compiled to perform userspace-side padding of structures. In that case, all the structures are already in the 'native' format expected by the kernel. This tries to determine what format the userspace program is using. For most set/getsockopts, this can be done by checking the len argument for sizeof(compat_ebt_replace) and re-trying the native handler on error. In case of EBT_SO_GET_ENTRIES, the native handler is tried first, it will error out early when checking the *len argument (the compat version has to defer this check until after iterating over the kernel data set once, to adjust for all the structure size differences). As this would cause error printks, remove those as well, as recommended by Bart de Schuymer. Signed-off-by: Florian Westphal <fw@strlen.de>
| * netfilter: ebtables: add CONFIG_COMPAT supportFlorian Westphal2010-02-161-1/+886
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Main code for 32 bit userland ebtables binary with 64 bit kernels support. Tested on x86_64 kernel only, using 64bit ebtables binary for output comparision. At least ebt_mark, m_mark and ebt_limit need CONFIG_COMPAT hooks, too. remaining problem: The ebtables userland makefile has: ifeq ($(shell uname -m),sparc64) CFLAGS+=-DEBT_MIN_ALIGN=8 -DKERNEL_64_USERSPACE_32 endif struct ebt_replace, ebt_entry_match etc. then contain userland-side padding, i.e. even if we are called from a 32 bit userland, the structures may already be in the right format. This problem is addressed in a follow-up patch. Signed-off-by: Florian Westphal <fwestphal@astaro.com>
| * netfilter: ebtables: split update_counters into two functionsFlorian Westphal2010-02-161-16/+26
| | | | | | | | | | | | | | allows to call do_update_counters() from upcoming CONFIG_COMPAT code instead of copy&pasting the same code. Signed-off-by: Florian Westphal <fw@strlen.de>
| * netfilter: ebtables: split copy_everything_to_user into two functionsFlorian Westphal2010-02-161-32/+38
| | | | | | | | | | | | | | | | | | | | once CONFIG_COMPAT support is added to ebtables, the new copy_counters_to_user function can be called instead of duplicating code. Also remove last use of MEMPRINT, as requested by Bart De Schuymer. Signed-off-by: Florian Westphal <fw@strlen.de>
| * netfilter: ebtables: split do_replace into two functionsFlorian Westphal2010-02-161-65/+71
| | | | | | | | | | | | | | | | once CONFIG_COMPAT support is merged this allows to call do_replace_finish() after doing the CONFIG_COMPAT conversion instead of copy & pasting this. Signed-off-by: Florian Westphal <fw@strlen.de>
* | IPv6: convert mc_lock to spinlockStephen Hemminger2010-02-172-10/+11
| | | | | | | | | | | | | | Only used for writing, so convert to spinlock Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | drivers/net/tehuti.c: Reapply use DEFINE_PCI_DEVICE_TABLE()Joe Perches2010-02-171-1/+1
| | | | | | | | | | | | | | | | | | | | Commit 865a21a5e3d1b384c559a44c898fcad93e187b82 overwrote commit a3aa18842a5303fc28fcc4d57dbd16618bd830a0 Fix it. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | drivers/net/yellowfin.c: Use (pr|netdev)_<level> macro helpersJoe Perches2010-02-171-84/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt Remove #define PFX Use pr_<level> Use netdev_<level> Convert formats like %8.8 to %08 Remove periods from formats Coalesce long formats Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | drivers/net/sky2.c: Use (pr|netdev)_<level> macro helpersJoe Perches2010-02-171-36/+27
| | | | | | | | | | | | | | | | | | | | Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt Remove #define PFX Use pr_<level> Use netdev_<level> Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | drivers/net/skge.c: Use (pr|netdev)_<level> macro helpersJoe Perches2010-02-171-39/+42
| | | | | | | | | | | | | | | | | | | | | | Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt Remove #define PFX Use pr_<level> Use netdev_<level> Checkpatch cleaning Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | drivers/net/skge.c: Use (pr|netdev)_<level> macro helpersJoe Perches2010-02-171-29/+21
| | | | | | | | | | | | | | | | | | | | Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt Remove #define PFX Use pr_<level> Use netdev_<level> Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | drivers/net/pci-skeleton.c: Use (pr|netdev|netif)_<level> macro helpersJoe Perches2010-02-171-516/+503
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt Remove #define PFX Use pr_<level> Use netdev_<level> Use netif_<level> Checkpatch cleaning Convert formats like 0x%08x to %#08x Remove periods from formats Coalesce long formats Use print_hex_dump Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>