summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* net: Make sure BHs are disabled in sock_prot_inuse_add()David S. Miller2008-11-233-0/+9
| | | | | | | | | | The rule of calling sock_prot_inuse_add() is that BHs must be disabled. Some new calls were added where this was not true and this tiggers warnings as reported by Ilpo. Fix this by adding explicit BH disabling around those call sites. Signed-off-by: David S. Miller <davem@davemloft.net>
* net: fix tunnels in netns after ndo_ changesAlexey Dobriyan2008-11-234-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dev_net_set() should be the very first thing after alloc_netdev(). "ndo_" changes turned simple assignment (which is OK to do before netns assignment) into quite non-trivial operation (which is not OK, init_net was used). This leads to incomplete initialisation of tunnel device in netns. BUG: unable to handle kernel NULL pointer dereference at 00000004 IP: [<c02efdb5>] ip6_tnl_exit_net+0x37/0x4f *pde = 00000000 Oops: 0000 [#1] PREEMPT DEBUG_PAGEALLOC last sysfs file: /sys/class/net/lo/operstate Pid: 10, comm: netns Not tainted (2.6.28-rc6 #1) EIP: 0060:[<c02efdb5>] EFLAGS: 00010246 CPU: 0 EIP is at ip6_tnl_exit_net+0x37/0x4f EAX: 00000000 EBX: 00000020 ECX: 00000000 EDX: 00000003 ESI: c5caef30 EDI: c782bbe8 EBP: c7909f50 ESP: c7909f48 DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068 Process netns (pid: 10, ti=c7908000 task=c7905780 task.ti=c7908000) Stack: c03e75e0 c7390bc8 c7909f60 c0245448 c7390bd8 c7390bf0 c7909fa8 c012577a 00000000 00000002 00000000 c0125736 c782bbe8 c7909f90 c0308fe3 c782bc04 c7390bd4 c0245406 c084b718 c04f0770 c03ad785 c782bbe8 c782bc04 c782bc0c Call Trace: [<c0245448>] ? cleanup_net+0x42/0x82 [<c012577a>] ? run_workqueue+0xd6/0x1ae [<c0125736>] ? run_workqueue+0x92/0x1ae [<c0308fe3>] ? schedule+0x275/0x285 [<c0245406>] ? cleanup_net+0x0/0x82 [<c0125ae1>] ? worker_thread+0x81/0x8d [<c0128344>] ? autoremove_wake_function+0x0/0x33 [<c0125a60>] ? worker_thread+0x0/0x8d [<c012815c>] ? kthread+0x39/0x5e [<c0128123>] ? kthread+0x0/0x5e [<c0103b9f>] ? kernel_thread_helper+0x7/0x10 Code: db e8 05 ff ff ff 89 c6 e8 dc 04 f6 ff eb 08 8b 40 04 e8 38 89 f5 ff 8b 44 9e 04 85 c0 75 f0 43 83 fb 20 75 f2 8b 86 84 00 00 00 <8b> 40 04 e8 1c 89 f5 ff e8 98 04 f6 ff 89 f0 e8 f8 63 e6 ff 5b EIP: [<c02efdb5>] ip6_tnl_exit_net+0x37/0x4f SS:ESP 0068:c7909f48 ---[ end trace 6c2f2328fccd3e0c ]--- Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* net: Convert TCP/DCCP listening hash tables to use RCUEric Dumazet2008-11-235-116/+147
| | | | | | | | | | | | | | | | | | | | | | This is the last step to be able to perform full RCU lookups in __inet_lookup() : After established/timewait tables, we add RCU lookups to listening hash table. The only trick here is that a socket of a given type (TCP ipv4, TCP ipv6, ...) can now flight between two different tables (established and listening) during a RCU grace period, so we must use different 'nulls' end-of-chain values for two tables. We define a large value : #define LISTENING_NULLS_BASE (1U << 29) So that slots in listening table are guaranteed to have different end-of-chain values than slots in established table. A reader can still detect it finished its lookup in the right chain. Signed-off-by: Eric Dumazet <dada1@cosmosbay.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* dccp: Header option insertion routine for feature-negotiationGerrit Renker2008-11-232-60/+33
| | | | | | | | | | | | The patch extends existing code: * Confirm options divide into the confirmed value plus an optional preference list for SP values. Previously only the preference list was echoed for SP values, now the confirmed value is added as per RFC 4340, 6.1; * length and sanity checks are added to avoid illegal memory (or NULL) access. Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk> Acked-by: Ian McDonald <ian.mcdonald@jandi.co.nz> Signed-off-by: David S. Miller <davem@davemloft.net>
* dccp: Support for Mandatory optionsGerrit Renker2008-11-232-0/+17
| | | | | | | | | | Support for Mandatory options is provided by this patch, which will be used by subsequent feature-negotiation patches. Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk> Acked-by: Ian McDonald <ian.mcdonald@jandi.co.nz> Acked-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* dccp: Increase the scope of variable-length htonl/ntohl functionsGerrit Renker2008-11-232-7/+28
| | | | | | | | | | | | | | | This extends the scope of two available functions, encode|decode_value_var, to work up to 6 (8) bytes, to match maximum requirements in the RFC. These functions are going to be used both by general option processing and feature negotiation code, hence declarations have been put into feat.h. Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk> Acked-by: Ian McDonald <ian.mcdonald@jandi.co.nz> Acked-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* dccp: API to query the current TX/RX CCIDGerrit Renker2008-11-233-5/+30
| | | | | | | | | | | | | | This provides function to query the current TX/RX CCID dynamically, without reliance on the minisock value, using dynamic information available in the currently loaded CCID module. This query function is then used to (a) provide the getsockopt part for getting/setting CCIDs via sockopts; (b) replace the current test for "which CCID is in use" in probe.c. Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk> Acked-by: Ian McDonald <ian.mcdonald@jandi.co.nz> Signed-off-by: David S. Miller <davem@davemloft.net>
* dccp: Set per-connection CCIDs via socket optionsGerrit Renker2008-11-236-8/+61
| | | | | | | | | | | | | With this patch, TX/RX CCIDs can now be changed on a per-connection basis, which overrides the defaults set by the global sysctl variables for TX/RX CCIDs. To make full use of this facility, the remaining patches of this patch set are needed, which track dependencies and activate negotiated feature values. Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
* myri10ge: update firmware headersBrice Goglin2008-11-231-0/+1
| | | | | | | Update myri10ge firmware headers. Signed-off-by: Brice Goglin <brice@myri.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* myri10ge: update DCA commentsBrice Goglin2008-11-231-3/+3
| | | | | | | Update DCA sections closing comments. Signed-off-by: Brice Goglin <brice@myri.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* net: af_netlink should update its inuse counterEric Dumazet2008-11-231-0/+2
| | | | | | | | | In order to have relevant information for NETLINK protocol, in /proc/net/protocols, we should use sock_prot_inuse_add() to update a (percpu and pernamespace) counter of inuse sockets. Signed-off-by: Eric Dumazet <dada1@cosmosbay.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* net: some optimizations in af_inetEric Dumazet2008-11-231-5/+4
| | | | | | | | | | | | 1) Use eq_net() in inet_netns_ok() to speedup socket creation if !CONFIG_NET_NS 2) Reorder the tests about inet_ehash_secret generation (once only) Use the unlikely() macro when testing if inet_ehash_secret already generated. Signed-off-by: Eric Dumazet <dada1@cosmosbay.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge branch 'for-david' of ↵David S. Miller2008-11-2114-2066/+1379
|\ | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/chris/linux-2.6
| * WAN pc300too.c: Fix PC300-X.21 detectionKrzysztof Hałasa2008-11-221-24/+24
| | | | | | | | | | | | | | pc300too driver works around a bug in PCI9050 bridge. Unfortunately it was doing that too late. Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: syncppp.c is no longer used by any kernel code. Remove it.Krzysztof Hałasa2008-11-225-1681/+1
| | | | | | | | Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: new synchronous PPP implementation for generic HDLC.Krzysztof Hałasa2008-11-223-52/+606
| | | | | | | | Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: Simplify sca_init_port() in HD64572 driver.Krzysztof Hałasa2008-11-221-36/+31
| | | | | | | | Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: Correct comments in hd6457[02].cKrzysztof Hałasa2008-11-222-2/+2
| | | | | | | | Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: HD64572 drivers don't use next_desc() anymore.Krzysztof Hałasa2008-11-221-10/+3
| | | | | | | | Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: Simplify HD64572 drivers.Krzysztof Hałasa2008-11-223-135/+110
| | | | | | | | Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: don't print HD64572 driver versions anymore.Krzysztof Hałasa2008-11-222-26/+2
| | | | | | | | Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: Simplify HD64572 status handling.Krzysztof Hałasa2008-11-221-29/+8
| | | | | | | | Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: rework HD64572 interrupts a bit.Krzysztof Hałasa2008-11-221-23/+13
| | | | | | | | Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: HD64572 already handles TX underruns with DMAC.Krzysztof Hałasa2008-11-221-17/+15
| | | | | | | | Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: TX-done handler now uses the ownership bit in HD64572 drivers.Krzysztof Hałasa2008-11-221-8/+3
| | | | | | | | Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: convert HD64572-based drivers to NAPI.Krzysztof Hałasa2008-11-223-37/+71
| | | | | | | | Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: remove SCA support from SCA-II driversKrzysztof Hałasa2008-11-223-261/+45
| | | | | | | | Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: remove SCA II support from SCA driversKrzysztof Hałasa2008-11-223-205/+58
| | | | | | | | Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
| * WAN: split hd6457x.c into hd64570.c and hd64572.cKrzysztof Hałasa2008-11-226-4/+871
| | | | | | | | | | | | | | Supporting both original SCA and SCA-II in one file was nice at some point but now it's increasingly painful. Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
* | igb: do not use phy ops in ethtool test cleanup for non-copper partsAlexander Duyck2008-11-213-22/+50
| | | | | | | | | | | | | | | | | | | | | | Currently the igb driver is experiencing a panic due to a null function pointer being used during the cleanup of the ethtool looback test on fiber/serdes parts. This patch prevents that and adds a check prior to calling any phy function. Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | enic: misc cleanup items:Scott Feldman2008-11-213-2/+15
| | | | | | | | | | | | | | | | Clarrify reading PBA has no side-effect (clearing). Add missing GPL license text. Signed-off-by: Scott Feldman <scofeldm@cisco.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | enic: move wmb closer to where needed: before writing posted_index to hwScott Feldman2008-11-213-6/+16
| | | | | | | | | | Signed-off-by: Scott Feldman <scofeldm@cisco.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | enic: mask off some reserved bits in CQ descriptor for future useScott Feldman2008-11-211-2/+3
| | | | | | | | | | Signed-off-by: Scott Feldman <scofeldm@cisco.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | enic: driver/firmware API updatesScott Feldman2008-11-212-19/+60
| | | | | | | | | | | | | | | | | | | | Add driver/firmware compatibility check. Update firmware notify cmd to honor notify area size. Add new version of init cmd. Add link_down_cnt to notify area to track link down count. Signed-off-by: Scott Feldman <scofeldm@cisco.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | enic: enable ethtool LRO supportScott Feldman2008-11-212-20/+24
| | | | | | | | | | | | | | | | | | Enable ethtool support for get/set_flags so LRO can be turned on/off by fwding drivers such as the bridge driver. LRO is not compatible with fwding drivers. Signed-off-by: Scott Feldman <scofeldm@cisco.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | ne2k: convert to net_device_opsStephen Hemminger2008-11-213-15/+37
| | | | | | | | | | | | | | | | Convert driver to new net_device_ops. Compile tested only. This required some additional work to export common code ei_XXX. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | eql: convert to net_device_opsStephen Hemminger2008-11-211-4/+8
| | | | | | | | | | | | | | Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | sc92031: convert to net_device_opsStephen Hemminger2008-11-211-11/+18
| | | | | | | | | | | | | | Convert this driver to net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | qla3xxx: convert to net_device_opsStephen Hemminger2008-11-211-10/+12
| | | | | | | | | | | | | | Convert this driver to net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | hamachi: convert to net_device_opsStephen Hemminger2008-11-211-7/+14
| | | | | | | | | | | | | | Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | bnx2x: convert to net_device_opsStephen Hemminger2008-11-211-14/+20
| | | | | | | | | | | | | | | | Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | ns83820: convert to net_device_opsStephen Hemminger2008-11-211-8/+14
| | | | | | | | | | | | | | Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | yellowfin: convert to net_device_opsStephen Hemminger2008-11-211-6/+11
| | | | | | | | | | | | | | Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | r6040: convert to net_device_opsStephen Hemminger2008-11-211-11/+18
| | | | | | | | | | | | | | Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | sis900: convert to net_device_opsStephen Hemminger2008-11-211-11/+16
| | | | | | | | | | | | | | Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | tehuti: convert to net_device_opsStephen Hemminger2008-11-211-11/+16
| | | | | | | | | | | | | | Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | sfc: convert to net_device_opsStephen Hemminger2008-11-211-13/+18
| | | | | | | | | | | | | | | | Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Acked-by: Ben Hutchings <bhutchings@solarflare.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | netxen: convert to net_device_opsStephen Hemminger2008-11-212-20/+33
| | | | | | | | | | | | | | | | | | Convert driver to new net_device_ops. Compile tested only. Had to do some refactoring on multicast_list. Fix ethtool restart to propogate error code. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | dl2k: convert to net_device_opsStephen Hemminger2008-11-211-8/+14
| | | | | | | | | | | | | | Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | bnx2: convert to net_device_opsStephen Hemminger2008-11-211-16/+20
| | | | | | | | | | | | | | Convert driver to new net_device_ops. Compile tested only. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
OpenPOWER on IntegriCloud