* [GIT]: Networking @ 2008-12-28 8:01 ` David Miller 0 siblings, 0 replies; 39+ messages in thread From: David Miller @ 2008-12-28 8:01 UTC (permalink / raw) To: torvalds; +Cc: akpm, netdev, linux-kernel [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #1: Type: Text/Plain; charset=utf-8, Size: 175386 bytes --] Here are the pending networking changes for the 2.6.29 merge window. A lot of what you see follows the usual boiler plate. A driver maintainer making a lot of changes to driver FOO. Similarly for maintainers of networking protocols. Another person does a series of similar sparse warning fixes, etc. And of course my list of changes is largely composed of merges. But here are the interesting other changes in here: 1) Socket hashes converted to RCU locking by Eric Dumazet. Some really excellent stuff, and he's also done some things to help out socket open/close scalability. Eric also has some VFS layer changes under review with the VFS folks to make that area even better. 2) Harvey Harrison has added some new %pX formatting handlers for ethernet MAC addresses, ipv4 addresses, and ipv6 addresses. 3) Alexey Dobriyan, Benjamin Thery, Daniel Lezcano, and Eric W. Biederman have made more large strides in namespace support for networking. 4) Stephen Hemminger has started the long laborious but useful process of seperating the driver callbacks out of the network device struct. All unconverted drivers still work just fine during this transition period, at pretty much no cost to the fast paths. 5) Ilpo Järvinen implemented resegmentation for the retransmit queue. This is a very powerful operation which cures the most expensive aspects during fast recovery after a loss. In such cases we have to hold onto an entire window of data, and if that window is very large then when the missing chunk gets filled in we loop for a long time freeing tons of SKBs. So as the SACK information advances the edge of packets received in order, we can coalesce these portions back into one large TSO'ish SKB. As a result, when the missing piece of the window is filled in, we do only a small number of SKB frees. It basically divides the work more evenly over the process of recovery. 6) Wang Chen went through the entire tree and made sure every networking driver uses netdev_priv() to get at the driver private. And as a result we could eliminate the struct netdev "priv" member entirely. This set of changes helped spot a few bugs and driver private memory lifetime issues. 7) Benchmarks over loopback hit the dev->last_rx shared data real hard on SMP boxes. This jiffies state is only used by bonding, so we've rearranged things such that only the bonding path even tries to set this thing. This work was done by Jay Vosburgh. Please pull, thanks a lot! The following changes since commit 4a6908a3a050aacc9c3a2f36b276b46c0629ad91: Linus Torvalds (1): Linux 2.6.28 are available in the git repository at: master.kernel.org:/pub/scm/linux/kernel/git/davem/net-next-2.6.git master Abbas, Mohamed (3): iwl3945: add debugfs support iwl3945: Fix iwl3945 rate scaling. iwl3945: Fix rate scale for B-mode connection Abhijeet Kolekar (3): iwlwifi : fix checkpatch.pl errors iwl3945 : Fix ad-hoc mode for 3945 iwl3945 : Fix a-band association for passive channels Adrian Bunk (1): The overdue eepro100 removal. Al Viro (1): ixgbe: section fixes Alan Cox (2): tty: Flags should be accessed via the foo_bit interfaces tty: driverdata and discdata are void * Alexander Duyck (20): e1000e: enable ECC correction on 82571 silicon igb: update name to reflect new hardware igb: simplify swap in clean_rx_irq if using packet split igb: Fix tx/rx_ring_count parameters for igb on suspend/resume/ring resize ixgbe: this patch adds support for DCB to the kernel and ixgbe driver DCB: Add interface to query for the DCB capabilities of an device. DCB: Add interface to query # of TCs supported by device DCB: Add interface to query the state of PFC feature. DCB: Add support for DCB BCN e1000e: disable correctable errors for quad ports while going to D3 igb: do not use phy ops in ethtool test cleanup for non-copper parts igb: remove unneeded bit refrence when enabling jumbo frames igb: loopback bits not correctly cleared from RCTL register igb: link up/down messages must follow a specific format igb: Add support for pci-e Advanced Error Reporting igb/e1000e: Naming interrupt vectors igb: update handling of RCTL for smaller buffer sizes igb: Correctly determine pci-e function number in virtual environment igb: defeature tx head writeback igb: re-order queues to support cleaner use of ivar on 82576 Alexey Dobriyan (85): net: reduce structures when XFRM=n net: don't use INIT_RCU_HEAD xfrm: C99 for xfrm_dev_notifier xfrm: remove unused struct xfrm_policy::next net: '&' redux netfilter: netns-aware ipt_addrtype netfilter: arptable_filter: merge forward hook netfilter: netns ebtables: part 1 netfilter: netns ebtables: part 2 netfilter: netns ebtables: more cleanup during ebt_unregister_table() netfilter: netns ebtables: ebtable_broute in netns netfilter: netns ebtables: ebtable_filter in netns netfilter: netns ebtables: ebtable_nat in netns netfilter: netns ebtables: br_nf_pre_routing_finish() fixup net: #ifdef ->sk_security net: mark flow_cache_cpu_prepare() as __init net: remove struct neigh_table::pde net: remove struct dst_entry::entry_size net: ifdef struct sock::sk_async_wait_queue net: use %pF for /proc/net/ptype ematch: simpler tcf_em_unregister() netfilter: xt_recent: don't save proc dirs netfilter: ip6table_filter: merge LOCAL_IN and FORWARD hooks netfilter: nf_conntrack_proto_gre: spread __exit net: fix tunnels in netns after ndo_ changes ah4/ah6: remove useless NULL assignments xfrm: remove useless forward declarations xfrm: initialise xfrm_policy_gc_work statically netns xfrm: add netns boilerplate netns xfrm: add struct xfrm_state::xs_net netns xfrm: per-netns xfrm_state_all list netns xfrm: per-netns xfrm_state_bydst hash netns xfrm: per-netns xfrm_state_bysrc hash netns xfrm: per-netns xfrm_state_byspi hash netns xfrm: per-netns xfrm_state_hmask netns xfrm: per-netns xfrm_state counts netns xfrm: per-netns xfrm_hash_work netns xfrm: per-netns state GC list netns xfrm: per-netns state GC work netns xfrm: per-netns km_waitq netns xfrm: add struct xfrm_policy::xp_net netns xfrm: per-netns policy list netns xfrm: per-netns xfrm_policy_byidx hash netns xfrm: per-netns xfrm_policy_byidx hashmask netns xfrm: per-netns inexact policies netns xfrm: per-netns xfrm_policy_bydst hash netns xfrm: per-netns policy counts netns xfrm: per-netns policy hash resizing work netns xfrm: propagate netns into bydst/bysrc/byspi hash functions netns xfrm: trivial netns propagations netns xfrm: state flush in netns netns xfrm: state lookup in netns netns xfrm: fixup xfrm_alloc_spi() netns xfrm: finding states in netns netns xfrm: state walking in netns netns xfrm: propagate netns into policy byidx hash netns xfrm: policy insertion in netns netns xfrm: policy flushing in netns netns xfrm: finding policy in netns netns xfrm: policy walking in netns netns xfrm: lookup in netns netns xfrm: xfrm_policy_check in netns netns xfrm: xfrm_route_forward() in netns netns xfrm: flushing/pruning bundles in netns netns xfrm: dst garbage-collecting in netns netns xfrm: xfrm_input() fixup netns xfrm: per-netns NETLINK_XFRM socket netns xfrm: xfrm_user module in netns netns xfrm: pass netns with KM notifications netns xfrm: KM reporting in netns netns xfrm: ->dst_lookup in netns netns xfrm: ->get_saddr in netns netns xfrm: flush SA/SPDs on netns stop netns PF_KEY: part 1 netns PF_KEY: part 2 netns PF_KEY: per-netns /proc/pfkey netns xfrm: AH/ESP in netns! netns xfrm: per-netns MIBs netns xfrm: /proc/net/xfrm_stat in netns netns xfrm: per-netns sysctls netdev: remove pathetic compile-command lines hydra: fix compilation simeth: convert to net_device_ops netns: igmp: allow IPPROTO_IGMP sockets in netns netns: igmp: make /proc/net/{igmp,mcfilter} per netns Alexey Fisher (1): ipw2200: make association only if SSID is known. Andrew Morton (1): drivers/net/smc911x.c: smc911x_drv_probe() cleanup Andrey Borzenkov (3): orinoco: reload firmware on resume orinoco: cache downloadable firmware image in memory for use during resume orinoco: indicate it is using dBm in wireless_stats and spy Andrey Yurovsky (4): ath5k: fix mesh point operation mac80211: allow all interfaces types to handle RX action frames mac80211: disable BSSID filtering for mesh interfaces mac80211_hwsim: enable Mesh Point operation Andy Fleming (6): gianfar: Use gfar_halt to stop DMA in gfar_probe gianfar: Convert gianfar to an of_platform_driver gianfar: Add macros for stepping through BDs phylib: Remove unnecessary "reset" fixups in genphy_setup_forced gianfar: Fix packet drop when out of memory gianfar: Continue polling until both tx and rx are empty Andy Gospodarek (1): bonding: update docs to correctly reflect arp_ip_target behavior Andy Whitcroft (1): netfilter: ip{,6}t_policy.h should include xp_policy.h Anna Neal (2): libertas: Fine grained configuration of wake-on-lan. libertas: Create sysfs entry for changing the mesh probe response limit Anton Vorontsov (7): ucc_geth: Fix endless loop in stop_{tx,rx} routines ucc_geth: Fix TX watchdog timeout handling ucc_geth: Fix IRQ freeing code in ucc_geth_open() ucc_geth: Cleanup repetitive ucc_geth_memclean() calls ucc_geth: Fix IO memory (un)mapping code ucc_geth: Remove UGETH_FILTERING dead code ucc_geth: Eliminate the need for forward references Arjan van de Ven (1): pci: use pci_ioremap_bar() in drivers/net Arnaldo Carvalho de Melo (1): dccp_diag: LISTEN sockets don't have CCIDs Arnaud Ebalard (1): net: Remove unused parameter of xfrm_gen_index() Atsushi Nemoto (2): tc35815: Define more Rx status bits tc35815: Enable StripCRC feature Balazs Scheidler (1): TPROXY: implemented IP_RECVORIGDSTADDR socket option Baruch Siach (1): enc28j60: reduce the number of spi transfers in enc28j60_set_bank() Ben Greear (1): ipv4: Fix ARP behavior with many mac-vlans Ben Hutchings (41): sfc: Correct address of gPXE boot configuration in EEPROM sfc: Clean up non-volatile memory partitioning sfc: Expose flash region storing boot code as MTD sfc: Use lm87 and lm90 drivers for board temperature/power monitoring sfc: Do not reset when hardware monitor detects a fault sfc: Fix dependency for SFC_MTD sfc: Board support fixes sfc: Change SPI lengths to type size_t sfc: Remove unneeded register write sfc: Correct interpretation of second param to ethtool phys_id() sfc: Clean up waits for flash/EEPROM operations sfc: Work around unreliable strap pins sfc: Restore phy_flash_cfg module parameter sfc: Provide hints to irqbalance daemon sfc: Abbreviate self-test names so they are not truncated sfc: Don't count RX checksum errors during loopback self-test sfc: Remove MII extension cruft sfc: Add support for MMDs numbered >15 sfc: Add phy_type device attribute sfc: Clean up board identification sfc: Clean up MDIO flag setting sfc: Add support for sub-10G speeds sfc: Implement auto-negotiation sfc: Rework MAC, PHY and board event handling sfc: Add support for Solarflare 10Xpress SFT9001 sfc: Add support for SFN4111T sfc: Remove leading spaces sfc: Specify a meaningful component for loopback RX-side and PHY tests sfc: Use mutex_lock_interruptible() for ethtool EEPROM access sfc: Use model numbers for PHY type names sfc: Use kzalloc() to ensure struct efx_spi_device is fully initialised sfc: Fix synchronisation of efx_mtd_{probe,rename,remove} sfc: Version 2.3 sfc: Generate unique names for per-NIC workqueues sfc: Fix unreliable link detection in some loopback modes sfc: Clean up PHY mode management in loopback self-test sfc: Merge top-level functions for self-tests sfc: Add support for multiple PHY self-tests sfc: SFT9001: Add cable diagnostics sfc: When disabling the NIC, close the device rather than unregistering it sfc: If AN is enabled, always read speed/duplex from the AN advertising bits Benjamin Thery (11): net: fix /proc/net/ip_mr_cache display - V2 net: /proc/net/ip_mr_cache, display Iif as a signed short netns: ip6mr: allocate mroute6_socket per-namespace. netns: ip6mr: dynamically allocates vif6_table netns: ip6mr: store netns in struct mfc6_cache netns: ip6mr: dynamically allocate mfc6_cache_array netns: ip6mr: declare counter cache_resolve_queue_len per-namespace netns: ip6mr: declare mroute_do_assert and mroute_do_pim per-namespace netns: ip6mr: declare reg_vif_num per-namespace netns: ip6mr: declare ip6mr /proc/net entries per-namespace netns: ip6mr: enable namespace support in ipv6 multicast forwarding code Benoit PAPILLAULT (2): ath9k : Display MAC/BB and RF version at startup (v2) ath5k: fix 802.11 header padding on RX, unpadding on TX Bob Copeland (11): mac80211: fix a few typos in mac80211 kernel doc ath9k: remove useless conditional ath5k: fix keytable type buglet in ath5k_hw_reset_key ath5k: enable hardware encryption for WEP ath5k: update keycache to support TKIP handling ath5k: set mac address in add_interface ath5k: preserve higher order bits when setting mac address ath5k: clean up ath5k_hw_set_key ath5k: enable combined michael mic in key cache ath5k: fix endianness of bitwise ops when installing mic ath5k: correct packet length in tx descriptors Brian Haley (1): bonding: send IPv6 neighbor advertisement on failover Brice Goglin (7): myri10ge: fix per-slice rx/tx_dropped counters myri10ge: remove hardcoded sram_size myri10ge: update DCA comments myri10ge: update firmware headers myri10ge: check fragmentation in LRO get_frag_header() myri10ge: update firmware headers to 1.4.37 myri10ge: update driver version to 1.4.4-1.395 Bruce Allan (11): e1000e: commit speed/duplex changes for m88 PHY e1000e: 82571 check for link fix on 82571 serdes e1000e: update comments listing supported parts for each MAC family e1000e: check return of pci_save_state e1000e: ESB2 config after link up e1000e: link up/down messages must follow a specific format e1000e: sync change flow control variables with ixgbe e1000e: cosmetic newline in debug message e1000e: store EEPROM version number to prevent unnecessary NVM reads e1000e: fix incorrect link status when switch module pulled e1000e: check return code from NVM accesses and fix bank detection Chaithrika U S (1): phy: Add LSI ET1011C PHY driver Chatre, Reinette (2): iwlwifi: replace magic constants with define iwlwifi: store ucode version number Chr (1): p54: initialize all deprecated fields Christian Lamparter (30): p54: honour bss_info_changed's short slot time settings p54: broken out edcf changes p54: refactor statistic timer code p54: p54: refactor p54_rx_frame_sent p54: fix memory management p54: borrow some setup code from stlc45xx p54: introduce new names for device firmwares p54: more definitions form lmac_longbow.h and pda.h p54: put broadcast frames into the right queues p54: AP & Ad-hoc testing p54: enable Mesh Point support p54: minor fixes p54pci: cache firmware for suspend/resume p54: honour bss_info_changed's basic_rates and other settings p54: fix wmm queue settings mac80211: add sta_notify_ps callback p54: revamp station power save management in access point mode p54: utilize cryptographic accelerator p54: include support for 2.13.24.0 USB LM87 Firmwares p54: refactoring p54: per-device names p54usb: rewriting rx/tx routines to make use of usb_anchor's facilities mac80211: integrate sta_notify_ps cmds into sta_notify p54: enforce strict tx_queue limits p54: fix oops on faulty devices p54: move statistic timer update routine into a workqueue p54: update ACK failure statistic counter in real-time p54: more accurate rssi to dBm conversion p54: remove free_on_tx parameter p54usb: bring first generation devices back to life Colin McCabe (1): ath9k: Replace ath9k_opmode with nl80211_iftype Cyrill Gorcunov (2): net: ppp_generic - use idr technique instead of cardmaps net: ppp_generic - use DEFINE_IDR for static initialization Dai Haruki (9): gianfar: Optimize interrupt coalescing configuration gianfar: Fix eTSEC configuration procedure gianfar: Fix VLAN HW feature related frame/buffer size calculation. gianfar: Enable padding and Optimize the frame prepended bytes handling gianfar: Remove unused gfar_add_fcb() function parameter gianfar: Make all BD status writes 32-bit gianfar: Add Scatter Gather support gianfar: Use interface name in interrupt name to distinguish the source. gianfar: Merge Tx and Rx interrupt for scheduling clean up ring Daniel C. Halperin (1): iwlwifi: convert correctly rate_n_flags to PLCP index for mimo3 packets Daniel Halperin (1): iwlwifi: Update reclaim flag Daniel Lezcano (3): veth: Remove useless veth field veth: remove unused list netns: filter out uevent not belonging to init_net Daniel Silverstone (1): net: Add support for the KS8695 ethernet devices. Dave Jones (1): net: Allow dependancies of FDDI & Tokenring to be modular. David Brownell (1): pegasus: minor resource shrinkage David Kilroy (8): orinoco: Move sources to a subdirectory orinoco: Separate fw caching from download orinoco: Cache Symbol firmware orinoco: Resume spectrum_cs in the same way as orinoco_cs orinoco: Provide option to avoid unnecessary fw caching orinoco: Fix function names used in debug strings orinoco: Fix inappropriate use of IRQ_BAP spectrum_cs: Fix function names used in debug strings David S. Miller (49): Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'davem-next' of master.kernel.org:/.../jgarzik/netdev-2.6 sunrpc: Fix build warning due to typo in %pI4 format changes. drivers/net: Kill now superfluous ->last_rx stores. net/: Kill now superfluous ->last_rx stores. Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'davem-next' of master.kernel.org:/.../jgarzik/netdev-2.6 Revert "net: Guaranetee the proper ordering of the loopback device." Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 dm9000: Fix build error. Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 inet_diag: Missed conversion after changing inet ehash lockl to spinlocks. Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 Merge branch 'for-david' of git://git.kernel.org/.../chris/linux-2.6 net: Make sure BHs are disabled in sock_prot_inuse_add() axnet_cs: Fix build after net device ops ne2k conversion. Revert "hso: Add TIOCM ioctl handling." Revert "hso: Fix free of mutexes still in use." Revert "hso: Fix crashes on close." smc-mca: Fix build failure due to typo. Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'master' of git://git.kernel.org/.../kaber/nf-next-2.6 phy: Add file missed in previous commit. Merge branch 'master' of ssh://master.kernel.org/.../rusty/linux-2.6-for-linus Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'master' of git://git.kernel.org/.../holtmann/bluetooth-next-2.6 Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 bluetooth: Fix rfcomm_sock_ioctl() build failure with debugging enabled. bluetooth: Fix unused var warning properly in rfcomm_sock_ioctl(). Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 8390/8390p: Fix compat netdev ops handling. Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 bnx2: Don't redefine FLOW_CTRL_{RX,TX}. bnx2x: Fix namespace collision with FLOW_CTRL_{TX,RX} Revert "net: release skb->dst in sock_queue_rcv_skb()" Revert "xfrm: Accept ESP packets regardless of UDP encapsulation mode" Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'for-david' of git://git.kernel.org/.../chris/linux-2.6 net: Fix warning fallout from recent NAPI interface changes. igb: Fix build warning when DCA is disabled. Merge branch 'master' of ../net-next-2.6/ into net2629 David Woodhouse (2): atm: 32-bit ioctl compatibility atm: Driver for Solos PCI ADSL2+ card. Denis Joseph Barrow (6): hso: Add new usb device id's. hso: Fix crashes on close. hso: Fix URB submission -EINVAL. hso: Fix free of mutexes still in use. hso: Add TIOCM ioctl handling. hso: Hook up ->reset_resume Divy Le Ray (8): cxgb3 - enable lro control through ethtool cxgb3: set hard_xmit in the netdev_ops cxgb3: avoid potential memory leak. cxgb3: integrate FW and protocol engines in the kernel cxgb3: Update FW loading path. cxgb3: Add multiple Tx queue support. cxgb3: untie strict FW matching cxgb3: add control to access embedded images Don Skidmore (4): net: fix dcbnl_setnumtcs operation check net: fix DCB setstate to return success/failure net: add DCNA attribute to the BCN interface for DCB ixgbe: fix the display of DCB control stats in ethtool Donald Skidmore (1): ixgbe: add SFP+ driver support Ed Swierk (1): forcedeth: power down phy when interface is down Emmanuel Grumbach (2): iwlwifi: rename generic iwlagn functions that had a HW specific name iwlwifi: rename double inclusion protection name in iwl-commands.h Eric Dumazet (43): udp: introduce struct udp_table and multiple spinlocks udp: RCU handling for Unicast packets. udp: calculate udp_mem based on low memory instead of all memory udp: udp_get_next() should use spin_unlock_bh() udp: introduce sk_for_each_rcu_safenext() udp: Should use spin_lock_bh()/spin_unlock_bh() in udp_lib_unhash() udp: add a missing smp_wmb() in udp_lib_get_port() net: sk_free_datagram() should use sk_mem_reclaim_partial() net: Introduce read_pnet() and write_pnet() helpers net: ib_net pointer should depends on CONFIG_NET_NS net: Cleanup of neighbour code net: speedup dst_release() rcu: Introduce hlist_nulls variant of hlist udp: Use hlist_nulls in UDP RCU code net: Convert TCP & DCCP hash tables to use RCU / hlist_nulls rcu: documents rculist_nulls net: make sure struct dst_entry refcount is aligned on 64 bytes net: Cleanup of af_unix net: af_unix can make unix_nr_socks visbile in /proc net: af_unix should update its inuse counter net: sctp should update its inuse counter net: af_packet should update its inuse counter net: make /proc/net/protocols namespace aware net: inet_diag_handler structs can be const net: af_unix should use KERN_INFO instead of KERN_DEBUG net: listening_hash get a spinlock per bucket net: convert TCP/DCCP ehash rwlocks to spinlocks net: use net_eq() in INET_MATCH and INET_TW_MATCH net: some optimizations in af_inet net: af_netlink should update its inuse counter net: Convert TCP/DCCP listening hash tables to use RCU eth: Declare an optimized compare_ether_addr_64bits() function net: Make sure BHs are disabled in sock_prot_inuse_add() net: Make sure BHs are disabled in sock_prot_inuse_add() net: avoid a pair of dst_hold()/dst_release() in ip_append_data() net: avoid a pair of dst_hold()/dst_release() in ip_push_pending_frames() net: Make sure BHs are disabled in sock_prot_inuse_add() net: udp_unhash() can test if sk is hashed net: Use a percpu_counter for sockets_allocated net: Use a percpu_counter for orphan_count net: release skb->dst in sock_queue_rcv_skb() net: percpu_counter_inc() should not be called in BH-disabled section vlan: fix convertion to net_device_ops Eric Leblond (4): netfilter: xt_NFLOG: don't call nf_log_packet in NFLOG module. netfilter: nfmark routing in OUTPUT, mangle, NFQUEUE netfilter: nfmark IPV6 routing in OUTPUT, mangle, NFQUEUE netfilter: xt_NFLOG is dependant of nfnetlink_log Eric W. Biederman (6): netns: Coexist with the sysfs limitations v2 netns: Delete virtual interfaces during namespace cleanup net: Guaranetee the proper ordering of the loopback device. net: Don't leak packets when a netns is going down net: fib_rules ordering fixes. net: Guaranetee the proper ordering of the loopback device. v2 Fabio Rossi (1): mac80211: accept empty strings for hidden SSIDs Fabrice Bellet (1): iwl3945: iwl3945_mac_get_tsf() should not return zero Felix Fietkau (4): minstrel: improve performance for non-MRR drivers ath5k: ignore the return value of ath5k_hw_noise_floor_calibration mac80211: fix BUILD_BUG_ON() caused by misalignment on arm ath5k: Clean up eeprom parsing and add missing calibration data Florian Fainelli (1): r6040: bump release number to 0.19 Francois Romieu (1): r8169: convert to net_device_ops Gerrit Renker (33): dccp: Basic data structure for feature negotiation dccp: Implement lookup table for feature-negotiation information dccp: List management for new feature negotiation dccp: Per-socket initialisation of feature negotiation dccp: Cleanup routines for feature negotiation dccp: Limit feature negotiation to connection setup phase dccp: Registration routines for changing feature values dccp: Query supported CCIDs dccp: Resolve dependencies of features on choice of CCID dccp: Mechanism to resolve CCID dependencies dccp: Deprecate old setsockopt framework dccp: Feature negotiation for minimum-checksum-coverage dccp: Deprecate Ack Ratio sysctl dccp: Tidy up setsockopt calls dccp: Fix bracing in dccp_feat_list_lookup. dccp: Set per-connection CCIDs via socket options dccp: API to query the current TX/RX CCID dccp: Increase the scope of variable-length htonl/ntohl functions dccp: Support for Mandatory options dccp: Header option insertion routine for feature-negotiation dccp: Insert feature-negotiation options into skb dccp: Integrate feature-negotiation insertion code dccp: Preference list reconciliation dccp: Process incoming Change feature-negotiation options dccp: Processing Confirm options dccp: Feature activation handlers dccp: Integration of dynamic feature activation - part 1 (socket setup) dccp: Integration of dynamic feature activation - part 2 (server side) dccp: Integration of dynamic feature activation - part 3 (client side) dccp: Clean up old feature-negotiation infrastructure dccp: Remove obsolete parts of the old CCID interface dccp: Remove manual influence on NDP Count feature dccp ccid-2: Phase out the use of boolean Ack Vector sysctl Giuseppe Cavallaro (3): phy: add natsemi PHY driver phy: power management support phy: add the ST ste10Xp PHYs Guo-Fu Tseng (1): jme: Remove 64 and 40 bit dma_mask Halperin, Daniel C (2): iwlwifi: update iwl-commands.h for 3 stream support iwlwifi: implement iwl_debug_report_frame for iwlagn Hannes Eder (37): pkt_sched: fix sparse warning mISDN: use NULL pointer instead of plain integer mISDN: consistently define 'debug' as '*u_int' mISDN: make global symbols static or include header files mISDN: un-export symbol 'plx_lock' mISDN: fix sparse warning: symbol 'nskb' shadows an earlier one mISDN: fix sparse warning: symbol 'id' shadows an earlier one mISDN: comment out unused symbols mISDN: timerdev: use __user for mISDN_read's buffer argument mISDN: hfcmulti: use __iomem address space modifier isdn: eicon: fix sparse warning: make global functions static drivers/net: fix sparse warning: use ANSI-style function declaration drivers/net: fix sparse warnings: make do-while a compound statement drivers/net: fix sparse warning: returning void-valued expression drivers/net: fix sparse warnings: make symbols static drivers/net/arcnet: fix sparse warnings: make symbols static drivers/net/atlx: fix sparse warnings: make symbols static drivers/net/bonding: fix sparse warnings: move decls to header file drivers/net/cxgb3: comment out dead code drivers/net/e1000e: fix sparse warnings: make symbols static drivers/net/enic: fix sparse warning: make symbol static drivers/net/igb: remove dead code (function 'igb_read_pci_cfg') drivers/net/irda: fix sparse warnings: make symbols static drivers/net/ixgbe: fix sparse warnings: make symbols static drivers/net/netxen: fix sparse warnings: use NULL pointer instead of plain integer drivers/net/qlge: fix sparse warnings: make symbols static drivers/net/skfp: fix sparse warnings: make symbols static drivers/net/tokenring: fix sparse warnings: make symbols static drivers/net/tulip: fix sparse warnings: make do-while a compound statement drivers/net/wan: fix sparse warnings: make do-while a compound statement drivers/net/wan: fix sparse warning: make symbol static drivers/net/wan/z85230.c: fix sparse warnings: un-EXPORT symbols drivers/net/wireless: fix sparse warnings: make symbols static drivers/net/wireless/ath9k: fix sparse warnings: make symbols static drivers/net/wireless/b43: fix sparse warnings: make symbols static drivers/net/wireless/ipw2x00: fix sparse warnings: make symbols static drivers/net/wireless/prism54: fix sparse warnings: make symbols static Hannes Hering (1): ehea: Fix some whitespace issues Harvey Harrison (35): printk: add %pM format specifier for MAC addresses printk: add %p6 format specifier for IPv6 addresses net: replace all current users of NIP6_SEQFMT with %#p6 misc: replace NIP6_FMT with %p6 format specifier netfilter: replace uses of NIP6_FMT with %p6 net: replace uses of NIP6_FMT with %p6 net, misc: replace uses of NIP6_FMT with %p6 infiniband: use %p6 for printing message ids infiniband: ipoib replace IPOIB_GID_FMT with %p6 infiniband: remove IPOIB_GID_RAW_ARG, IPOIB_GID_ARG, IPOIB_GID_FMT uwb: use the %pM formatting specifier in eda.c net: remove NIP6(), NIP6_FMT, NIP6_SEQFMT and final users printk: add %I4, %I6, %i4, %i6 format specifiers net: replace %#p6 format specifier with %pi6 net: replace %p6 with %pI6 printk: remove %p6 format specifier, fix up comments net: easy removals of HIPQUAD using %pI4 format net: replace NIPQUAD() in net/ipv4/netfilter/ net: replace NIPQUAD() in net/ipv4/ net/ipv6/ net: replace NIPQUAD() in net/netfilter/ net: replace NIPQUAD() in net/*/ drivers: replace NIPQUAD() fs: replace NIPQUAD() misc: replace NIPQUAD() printk: ipv4 address digits printed in reverse order ipvs: oldlen, newlen should be be16, not be32 phonet: sparse annotations of protocol, remove forward declaration tipc: trivial endian annotation in debug statement isdn: use %pI4, remove get_{u8/u16/u32} and put_{u8/u16/u32} inlines net: ip_sockglue.c add static, annotate ports' endianness isdn: isdn_net.c annotate struct ip_ports and trivial sparse fixes aoe: remove private mac address format function decnet: remove private wrappers of endian helpers decnet: compile fix for removal of byteorder wrapper iwlwifi: remove uses of __constant_{endian} helpers Helmut Schaa (2): iwl3945: remove obsolete irq handling ipw2200: fix scanning while associated Henning Rogge (1): nl80211: Add signal strength and bandwith to nl80211station info Henrique de Moraes Holschuh (7): rfkill: use killable locks instead of interruptible rfkill: export global states to rfkill-input rfkill: add master_switch_mode and EPO lock to rfkill and rfkill-input rfkill: honour EPO state when resuming a rfkill controller rfkill: rate-limit rfkill-input workqueue usage (v3) rfkill: preserve state across suspend rfkill: always call get_state() hook on resume Herbert Xu (11): net: Add frag_list support to skb_segment net: Add frag_list support to GSO net: Add Generic Receive Offload infrastructure ipv4: Add GRO infrastructure net: Add skb_gro_receive tcp: Add GRO support ethtool: Add GGRO and SGRO ops e1000e: Add GRO support tcp: Always set urgent pointer if it's beyond snd_nxt ipsec: Remove useless ret variable gro: Fix potential use after free Herton Ronaldo Krzesinski (6): rtl8187: adapt for deprecated IEEE80211_CONF_SHORT_SLOT_TIME flag rtl8187: add short slot handling for 8187B rtl8187: fix 8187B throughput regression rtl8187: implement conf_tx callback to configure tx queues rtl8187: feedback transmitted packets using tx close descriptor for 8187B rtl8187: Fix crash on unload when using SLUB debug Holger Eitzenberger (23): bonding: add and use bond_is_lb() bonding: use table for mode names bonding: fix compile error if debug enabled bonding: use pr_debug instead of own macros bonding: remove duplicate declarations bonding: make tbl argument to bond_parse_parm() const bonding: turn all bond_parm_tbls const bonding: improve elaborate port_state assignment bonding: introduce and use port_params structure bonding: use port_params in __record_pdu() bonding: use plain memcpy in __record_default() bonding: init port_params from template bonding: remove various function declarations bonding: use port_params in __update_selected() bonding: use port_params in __update_default_selected() bonding: use port_params in __update_lacpdu_from_port 802.3ad: make ntt bool 802.3ad: turn ports is_enabled into a bool 802.3ad: turn ports is_individual into a bool 802.3ad: remove typedef around ad_system 802.3ad: initialize ports LACPDU from const initializer 802.3ad: generalize out mac address initializer 802.3ad: use standard ethhdr instead of ad_header Holger Schurig (1): wireless: fix two bad print_ssid conversions Ilpo Järvinen (40): b43legacy: reindent misleading statement tcp: collapse more than two on retransmission tcp: move tcp_simple_retransmit to tcp_input tcp: more aggressive skipping tcp: Make SACK code to split only at mss boundaries tcp: make tcp_sacktag_one able to handle partial skb too tcp: Try to restore large SKBs while SACK processing tcp: Make shifting not clear the hints tcp: add some mibs to track collapsing tcp: handle shift/merge of cloned skbs too tcp: tcp_limit_reno_sacked can become static tcp: skb_shift cannot cache frag ptrs past pskb_expand_head niu: use net_device_stats nowadays available in net_device bnx2: use net_device_stats nowadays available in net_device ne2: silence static never defined warnings dccp: use roundup instead of opencoding tcp: force mss equality with the next skb too. tcp: Fix thinko making the not-shiftable to cover S|R as well tcp: make mtu probe failure to not break gso'ed skbs unnecessarily tcp: introduce struct tcp_sacktag_state to reduce arg pressure tcp: no need to pass prev skb around, reduces arg pressure tcp: drop tcp_bound_rto, merge content of it tcp_set_rto tcp: share code through function, not through copy-paste. :-) tcp: move some parts from tcp_write_xmit tcp: use tcp_write_xmit also in tcp_push_one tcp: fix tso_should_defer in 64bit icsk: join error paths using goto xfrm6_tunnel: join error paths using goto ipv6/mcast: join error paths using goto ip6mr: use goto to common label instead of opencoding xfrm: join error paths can: merge error paths ax25: join the return paths that free skb bt/rfcomm/tty: join error paths irda: merge exit paths nf/dccp: merge errorpaths rpc/rdma: goto instead of copypaste hp100: use roundup instead of open coding ipmr: merge common code libertas: use roundup instead of opencoding Ingo Molnar (24): netfilter: fix warning in net/netfilter/nf_conntrack_proto_tcp.c netfilter: fix warning in net/netfilter/nf_conntrack_ftp.c s2io: fix warning in drivers/net/s2io.c niu: fix warnings in drivers/net/niu.c niu: fix another warning in drivers/net/niu.c qla3xxx: fix warning in drivers/net/qla3xxx.c sunrpc: fix warning in net/sunrpc/xprtrdma/svc_rdma_transport.c pkt_sched: fix warning in net/sched/sch_hfsc.c ipv6: fix warning in net/ipv6/ip6_flowlabel.c dsa: fix warning in net/dsa/mv88e6xxx.c dsa: fix warning in net/dsa/mv88e6060.c fix warning in fs/dlm/netlink.c sis900: fix warning in drivers/net/sis900.c z85230: fix warning in drivers/net/wan/z85230.c mlx4: fix error path in drivers/net/mlx4/en_rx.c cassini: fix warning in drivers/net/cassini.c dccp: fix warning in net/dccp/options.c mlx4: fix warning in drivers/net/mlx4/mcg.c ax25: fix warning in net/ax25/sysctl_net_ax25.c sunrpc: fix warning in net/sunrpc/xprtrdma/verbs.c bluetooth: fix warning in net/bluetooth/rfcomm/sock.c atlx: fix warning in drivers/net/atlx/atl2.c depca: fix warning in drivers/net/depca.c 3c523: fix warning in drivers/net/3c523.c Ivan Kuten (1): mac80211: fix unaligned access in ieee80211_wep_encrypt_data Ivo van Doorn (26): rt2x00: Optimize configuration handling rt2x00: Remove ieee80211_bss_conf from rt2x00_intf rt2x00: Improve interface_modes initialization rt2x00: Release rt2x00 2.2.2 rt2x00: Remove debugfs CSR access wrappers rt2x00: Remove RATE_BASIC flag rt2x00: Fix LED state handling rt2x00: Block set_key() during suspend/shutdown rt2x00: Fix BUG_ON() with antenna handling rt2x00: Cleanup TX/RX entry handling rt2x00: Optimize get_duration / get_duration_res rt2x00: Fix race condition when using inderect registers rt2x00: Cleanup indirect register access rt2x00: Move rt73usb register access wrappers into rt2x00usb rt2x00: Fix TX failure path rt2x00: Detect USB BULK in/out endpoints rt2x00: Don't switch off LED on initialization rt2x00: Optimize IV/EIV handling rt2x00: Store retry limit values rt2x00: Remove duplicate code rt2x00: Implement HW encryption (rt2500usb) rt2x00: Release rt2x00 2.2.3 rt2x00: Add RXDONE_CRYPTO_IV/ICV flags rt2x00: Fix check for BSS info changes rt2x00: Move crypto TX descriptor handling to rt2x00crypto.c rt2x00: Correctly initialize AID during set_key() James Chapman (1): l2tp: fix UDP checksum support Jarek Poplawski (24): pkt_sched: sch_generic: Add Qdisc_ops peek() method. pkt_sched: sch_generic: Add generic qdisc->ops->peek() implementation. pkt_sched: Add qdisc->ops->peek() implementation. pkt_sched: Use qdisc->ops->peek() instead of ->dequeue() & ->requeue() pkt_sched: Add peek emulation for non-work-conserving qdiscs. sch_netem: Remove classful functionality sch_netem: Replace ->requeue() method with open code pkt_sched: sch_generic: Kfree gso_skb in qdisc_reset() pkt_sched: Fix qdisc len in qdisc_peek_dequeued() pkt_sched: Remove qdisc->ops->requeue() etc. pkt_sched: sch_drr: Fix qlen in drr_drop() net: gen_estimator: Fix gen_kill_estimator() lookups pkt_sched: sch_api: Remove qdisc_list_lock pkt_sched: gen_estimator: Optimize gen_estimator_active() pkt_sched: sch_htb: Remove htb_class aprio field pkt_sched: sch_htb: Remove htb_sched nwc_hit field pkt_sched: sch_htb: Clean htb_class prio and quantum fields pkt_sched: sch_htb: Remove L2T() pkt_sched: sch_htb: Replace HTB_ACCNT() macro with inlines pkt_sched: sch_htb: Optimize htb_find_next_upper() pkt_sched: sch_htb: Optimize WARN_ONs in htb_dequeue_tree() etc. pkt_sched: Annotate uninitialized var in sfq_enqueue() net: Fix oops in dev_ifsioc() pkt_sched: Remove smp_wmb() in qdisc_watchdog() Jay Sternberg (3): iwlwifi: define firmware file name once iwlwifi: expand error lookup and align output iwlwifi: indicate txpower is off in sysfs Jay Vosburgh (3): bonding, net: Move last_rx update into bonding recv logic bonding: Fix ALB mode to balance traffic on VLANs bonding: alternate agg selection policies for 802.3ad Jeff Kirsher (6): DCB: fix kconfig option ixgbe: cleanup link up/down messages e1000: cleanup link up/down messages ixgb: cleanup link up/down messages e100: cleanup link up/down messages igb: fixup AER with proper error handling Jesper Dangaard Brouer (3): NIU: Implement discard counters NIU: Implement discard counters, info/debug statements. NIU: Implement discard counters, optimize Jesse Brandeburg (3): ixgbe: add device support for 82598AT (copper 10GbE) adapters pktgen: add full reset functionality ixgbe: fix dma mapping unbalance Jianjun Kong (12): af_unix: clean up net/unix/af_unix.c garbage.c sysctl_net_unix.c net: clean up net/ipv4/ah4.c esp4.c fib_semantics.c inet_connection_sock.c inetpeer.c ip_output.c net: clean up net/ipv4/ipip.c raw.c tcp.c tcp_minisocks.c tcp_yeah.c xfrm4_policy.c net: clean up net/ipv4/fib_frontend.c fib_hash.c ip_gre.c net: clean up net/ipv4/igmp.c net: clean up net/ipv4/ip_sockglue.c tcp_output.c net: clean up net/ipv4/ipmr.c net: clean up net/ipv4/ip_fragment.c tcp_timer.c ip_input.c net: clean up net/ipv4/pararp.c net: clean up net/ipv4/devinet.c net: clean up net/ipv4/tcp_ipv4.c net: remove two duplicated #include Jiri Slaby (1): Ath5k: add AP mode Jirka Pirko (3): tokenring/3c359.c: fix allocation null check tokenring/3c359.c: Fix error message when allocating tx_ring tokenring/3c359.c: Prevent possible mem leak when open failed Joe Chou (2): r6040: fix wrong logic in mdio code r6040: save and restore MIER correctly in the interrupt routine Joe Korty (1): forcdeth: increase max_interrupt_work Joe Perches (3): include/net net/ - csum_partial - remove unnecessary casts drivers/s390/ - csum_partial - remove unnecessary casts net/ipv6/ip6mr.c: Use kmem_cache_zalloc, remove memset Johannes Berg (72): mac80211: convert to %pM away from print_mac net: convert print_mac to %pM net: convert more to %pM mac80211: remove aggregation status write support from debugfs mac80211: remove writable debugs mesh parameters mac80211: minor code cleanups mac80211: remove wiphy_to_hw mac80211: clean up ieee80211_hw_config errors mac80211: remove max_antenna_gain config mac80211: fix short slot handling 802.11: clean up/fix HT support mac80211: kill hw.conf.antenna_sel_{rx,tx} mac80211: introduce hw config change flags mac80211: provide sequence numbers nl80211: export HT capabilities iwl3945: fix station stuff in RC algorithm mac80211: make retry limits part of hw config mac80211: move bss_conf into vif mac80211: rewrite HT handling p54/rtl8187: fix up the seqno patch mac80211: add might_sleep to hw_config mac80211/drivers: rewrite the rate control API p54: implement MRR make ieee80211 invisible nl80211: fix monitor flags mac80211: remove rate_control_clear mac80211: inform userspace of probe/auth/assoc timeout wireless: don't publish __regulatory_hint wireless: remove cfg80211_reg_mutex wireless: get rid of pointless request list wireless: fix EU check mac80211: insert AP sta entry after filling it wireless: remove write-only 'granted' variable wireless: make regdom passing semantics simpler wireless: remove struct regdom hinting wireless: clean up regulatory ignore_request function wireless regulatory: move ignore_request mac80211: fix two kernel-doc warnings wireless: move mesh config length constant wireless: fix a few sparse warnings ath9k: remove useless NULL initialisers iwl3945: remove dead code iwlwifi: remove implicit direct scan iwlwifi: remove unused essid variable b43/legacy: remove SSID code adm8211: remove SSID code mac80211: remove SSID driver code iwl3945: remove bogus comment don't use net/ieee80211.h wireless: implement basic rate helper function b43: implement short slot and basic rate handling libertas_tf: fix skb tail pointer b43legacy: implement short slot and basic rate handling b43: remove rate index warning wireless: clean up sysfs code using %pM ath5k: name pci driver "ath5k" too mac80211: only transition STAs ps->wake on data frames cfg80211: handle SIOCGIWNAME cfg80211: handle SIOCGIWMODE/SIOCSIWMODE wireless: clean up radiotap a bit cfg80211: fix wiphy remove if no regulatory request cfg80211: "fix" 11d oops p54: fix lm87 checksum endianness iwlwifi: disable AP mode mac80211: improve sta_notify documentation cfg80211: fix nl80211 frequency handling mac80211: only create default STA interface if supported ath9k: remove fragmentation workaround again mac80211: remove fragmentation offload functionality mac80211/cfg80211: check endianness in sparse runs rfkill: strip pointless notifier chain forcedeth: don't poll NV event 36 John Daiker (2): ath5k: reduce checkpatch.pl errors rt2x00: reduce checkpatch.pl errors John W. Linville (21): p54: integrate parts of lmac_longbow.h and other parts of stlc45xx wireless: consolidate on a single escape_essid implementation wireless: remove NETWORK_EMPTY_ESSID flag wireless: escape_ssid should handle non-printables wireless: use individual buffers for printing ssid values wireless: avoid some net/ieee80211.h vs. linux/ieee80211.h conflicts p54: eliminate warning for uninitialized variable 'tim_len' ath9k: correct warning about unintialized variable 'tid' netdevice zd1201: Convert directly reference of netdev->priv to netdev_priv() ipw2100, ipw2200: select LIB80211 lib80211: absorb crypto bits from net/ieee80211 lib80211: consolidate crypt init routines ipw2x00: relocate ipw2100/ipw2200 to common directory net/ieee80211 -> drivers/net/ipw2x00/libipw_* rename mac80211: add explicit padding in struct ieee80211_tx_info rtl8180: adapt for deprecated IEEE80211_CONF_SHORT_SLOT_TIME flag MAINTAINERS: claim maintenance over rtl818x drivers mac80211_hwsim: fix-up some print_mac merge damage hostap: select required crypto bits in Kconfig mac80211: deauth when interface is marked down ieee80211_security: correct warning about width of auth_mode Jouni Malinen (25): mac80211_hwsim: Debug info for BSS config changes nl80211: Add basic rate configuration for AP mode mac80211_hwsim: Debug info for TX queue parameters nl80211: Add TX queue parameter configuration mac80211_hwsim: Make sure beacon_timer gets deleted mac80211: Allow AP mode to be enabled mac80211_hwsim: Add support for client PS mode mac80211_hwsim: Update documentation (AP mode enabled) nl80211: Report max TX power in NL80211_BAND_ATTR_FREQS nl80211: Change max TX power to be in mBm instead of dBm nl80211: Add frequency configuration (including HT40) ath9k: Free Beacon skbs in AP mode ath9k: Disable staggered Beacon frame scheduling mac80211: Disable requests for new scans in AP mode ath9k: Do not remove header padding on RX from short frames mac80211: Add HT rates into RX status reporting ath9k: Report HT rates in RX status mac80211: Send Layer 2 Update frame on reassociation mac80211: Remove radiotap rate-present flag for HT ath9k: Fix TX status reporting for retries and MCS index ath9k: Remove MAC header pad before reporting TX status ath9k: Fix a NULL pointer dereference in ath_rate_get ath9k: Key cache allocation for AP mode ath9k: Fix key cache slot selection for splitmic ath9k: Fixed RX decryption status reporting Julia Lawall (10): drivers/net/wireless/ath9k/rc.c: use ARRAY_SIZE Bluetooth: Change simple_strtol to simple_strtoul drivers/isdn/mISDN: use ARRAY_SIZE drivers/net/hamradio: Move a dereference below a NULL test drivers/net/wan: Remove redundant test drivers/net/au1000_eth.c: Remove redundant test drivers/net/ehea: Remove redundant test drivers/net: Remove redundant test drivers/net/wan: Remove redundant test net/appletalk: Remove redundant test Julius Volz (3): IPVS: Add IPv6 support to SH and DH schedulers IPVS: Add IPv6 support to LBLC/LBLCR schedulers IPVS: Remove supports_ipv6 scheduler flag Kalle Valo (4): mac80211: document ieee80211_tx_info.pad mac80211: enable IEEE80211_CONF_PS only when associated mac80211: track master queue status mac80211: implement dynamic power save Karen Xie (1): cxgb3: manage private iSCSI IP address Karsten Keil (1): misdn: Fix lockdep warning Kay Sievers (2): net: struct device - replace bus_id with dev_name(), dev_set_name() ssb: struct device - replace bus_id with dev_name(), dev_set_name() Kolekar, Abhijeet (3): iwl3945 : Fix Sparse Warnings iwl3945 : Simplify iwl3945_send_beacon_cmd iwl3945 : Simplify iwl3945_pci_probe Komuro (1): fmvj18x_cs: write interrupt ack bit for lan and modem to work simultaneously. Krzysztof Halasa (1): net: PHYLIB mdio fixes #2 Krzysztof HaÅasa (28): WAN: split hd6457x.c into hd64570.c and hd64572.c WAN: remove SCA II support from SCA drivers WAN: remove SCA support from SCA-II drivers WAN: convert HD64572-based drivers to NAPI. WAN: TX-done handler now uses the ownership bit in HD64572 drivers. WAN: HD64572 already handles TX underruns with DMAC. WAN: rework HD64572 interrupts a bit. WAN: Simplify HD64572 status handling. WAN: don't print HD64572 driver versions anymore. WAN: Simplify HD64572 drivers. WAN: HD64572 drivers don't use next_desc() anymore. WAN: Correct comments in hd6457[02].c WAN: Simplify sca_init_port() in HD64572 driver. WAN: new synchronous PPP implementation for generic HDLC. WAN: syncppp.c is no longer used by any kernel code. Remove it. WAN pc300too.c: Fix PC300-X.21 detection IXP4xx: check for queue being empty in qmgr_release_queue(). IXP4xx: clear IRQ stat in qmgr_disable_irq(). IXP4xx: Silence section mismatch warning in Ethernet driver. IXP4xx: Make the Ethernet driver use built-in netdev stats. IXP4xx: Add PHYLIB support to Ethernet driver. IXP4xx: Add PHYLIB MII ioctl to the Ethernet driver. IXP4xx: Add ethtool support to Ethernet driver. WAN: Add IXP4xx HSS HDLC driver. Update MAINTAINERS entries for IXP4xx and WAN network drivers. IXP4xx: move common debugging from network drivers to QMGR module. HDLC_PPP: Fix Configure-Ack to return original options as required by the standard. Convert ixp4xx_eth driver to use net_device_ops. Larry Finger (20): p54: Move rx_mtu to struct bootrec_desc hostap: Fix sparse warnings rtl8187: Remove large delays rtl8187: Remove OFDM delays rtl8187: Remove CCK delays rtl8187: Remove msleep calls after calls to rtl8225_write rtl8187: Remove primitive write delays rtl8187: Reduce channel switch delay rtl8187: Change TX power settings Move all rtl818x files to a common directory. Update of MAINTAINERS for RTL8187 rtl8187: Update file authorship in comments rtl8187: Remove module warning and dependence on CONFIG_EXPERIMENTAL mac80211: Fix pid rate-setting algorithm to allow rate changes rtl8187: Fix transmission count sent to mac80211 rtl8187: Improve wireless statistics for RTL8187 rtl8187: Use usb anchor facilities to manage urbs b43legacy: Fix sparse warnings rtl8187: Fix error returns mac80211: Print unknown packet type in tasklet_handler Lennert Buytenhek (6): mv643xx_eth: checkpatch fixes mv643xx_eth: introduce per-port register area pointer mv643xx_eth: inline txq_alloc_desc_index() mv643xx_eth: implement ->set_rx_mode() mv643xx_eth: move receive error handling out of line mv643xx_eth: calculate descriptor pointer only once in rxq_refill() Luis R. Rodriguez (32): ath5k/ath9k: correct signal quality ath9k: correct signal quality report ath5k: correct ath5k signal quality mac80211: make use of regulatory tx power settings on change of tx power ath9k: remove pointless sc_txintrperiod and spin_lock_bh on tx prepare ath9k: enable RX interrupt mitigation ath9k: Allow user to change tx power when asked ath9k: use ETH_P_PAE cfg80211: a reg rule is invalid if freq diff is 0 cfg80211: Add regulatory domain intersection capability cfg80211: make use of reg macros on REG_RULE cfg80211: Add kdoc for struct regulatory_request ath5k: allow APs to receive beacons ath9k: enable RXing of beacons on STA/IBSS cfg80211: mark negative frequencies as invalid cfg80211: remove switch from __regulatory_hint() cfg80211: remove switch from __set_regdom() cfg80211: separate intersection section in __set_regdom() cfg80211: expect different rd in cfg80211 when intersecting cfg80211: call_crda() won't tell us if CRDA was present cfg80211: mark regdomains with > NL80211_MAX_SUPP_REG_RULES invalid cfg80211/mac80211: Add 802.11d support cfg80211: add support for custom firmware regulatory solutions iwlwifi: enable custom fw regulatory solution ath9k: Clarify we only want 32-bit DMA ath9k: make DMA memory consistent mac80211: don't assume driver has been attached on registration mac80211: make Minstrel the default rate control algorithm ath9k: Handle -ENOMEM on RX gracefully nl80211: relicense nl80211.h under the ISC ath9k: Check for pci_map_single() errors ath9k: Use GFP_ATOMIC when allocating TX private area Luotao Fu (1): smc91x: remove isa stuff from smc91x driver Marcel Holtmann (10): Bluetooth: Add fine grained mem_flags usage to btusb driver Bluetooth: Handle bulk URBs in btusb driver from notify callback Bluetooth: Add suspend/resume support to btusb driver Bluetooth: Fix warnings for bt_key_strings and bt_slock_key_strings Bluetooth: Remove deprecated hci_usb driver Bluetooth: Send HCI Reset command by default on device initialization Bluetooth: Allow SCO audio with Asus WL-BTD202 dongle Bluetooth: Enable per-module dynamic debug messages Bluetooth: Fix format arguments warning Bluetooth: Fix RFCOMM release oops when device is still in use Mark McLoughlin (4): virtio_net: Recycle some more rx buffer pages virtio_net: hook up the set-tso ethtool op virtio_net: VIRTIO_NET_F_MSG_RXBUF (imprive rcv buffer allocation) virtio_net: large tx MTU support Martin Willi (3): xfrm: Notify changes in UDP encapsulation via netlink xfrm: Accept XFRM_STATE_AF_UNSPEC SAs on IPv4/IPv6 only hosts xfrm: Accept ESP packets regardless of UDP encapsulation mode Matt Carlson (30): tg3: Add 5761S support tg3: Use pci_ioremap_bar() tg3: Preserve DASH connectivity when WOL enabled tg3: Preserve LAA when device control is released tg3: Reclaim TG3_FLG3_5761_5784_AX_FIXES flag tg3: Do not enable APE on bcm5700 tg3: Move phylib report to end of tg3_init_one tg3: Refine power management and WOL code tg3: Allow WOL for phylib controlled Broadcom phys tg3: Refine phylib support tg3: 5785 enhancements broadcom: Add flow control support broadcom: Refine expansion register access routine broadcom: Add support for BCM50610 tg3: Update version to 3.95 tg3: Use NET_IP_ALIGN tg3: Qualify use of tp->pcix_cap tg3: Prevent corruption at 10 / 100Mbps w CLKREQ tg3: Enable GPHY APD on select devices tg3: Extract FW ver from alt NVRAM formats tg3: Embrace pci_ioremap_bar() tg3: Allow GPHY powerdown on 5761 tg3: Add 57780 support broadcom: Add 57780 support tg3: Update version to 3.96 tg3: WOL fixes tg3: Cleanup IPV6 LSO tg3: Remove unused cfgspc device members tg3: tg3.h cleanups tg3: Update version to 3.97 Matt Mackall (1): tcp: Stop scaring users with "treason uncloaked!" Michael Buesch (3): b43: Fix some MAC locking b43: Suspend MAC while killing the radio b43: Add key memory dumping Michael Chan (7): bnx2: Add PCI ID for 5716S. bnx2: Restrict WoL support. bnx2: Set rx buffer water marks based on MTU. bnx2: Reorganize timeout constants. bnx2: Update version to 1.8.2. bnx2: Rename MSI-X vectors. bnx2: Update version to 1.9.0. Mike Frysinger (2): smc91x: add __init markings to smc_drv_probe() netdev/smc91x: unify Blackfin code a bit and use proper read/write functions Mohamed Abbas (6): iwlwifi: clear scanning bits upon failure iwlwifi: do not call statistics from rfkill iwlagn: fix resume for ADHOC network iwl3945: fix resume for ADHOC network iwlwifi: fix resume while txpower off iwlagn: fix agn rate scaling Nathan Lynch (1): ehea: use get_zeroed_page for alignment-sensitive allocation Neil Horman (2): net: implement emergency route cache rebulds when gc_elasticity is exceeded net: Remove unused netdev arg from some NAPI interfaces. Neil Turton (1): sfc: Add option to use a separate channel for TX completions Nick Andrew (2): wireless: Fix incorrect use of loose in wext.c net: Fix incorrect use of loose in spider_net.c Nick Kossifidis (3): ath5k: Update interrupt masking code ath5k: Update PCU code ath5k: Fix IMR init Nick Pelly (1): Bluetooth: Respect HCI_UART_DEBUG config in hci_ll.c Nicolas Dichtel (1): xfrm6: handling fragment Oliver Hartkopp (2): vcan: convert to net_device_ops vcan: whitespace fixes Oliver Neukum (2): net: prepare usb net drivers for addition of status as a parameter net: startup race in hso driver PJ Waskiewicz (1): ixgbe: Fix usage of netif_*_all_queues() with netif_carrier_{off|on}() Pablo Neira Ayuso (7): netfilter: ctnetlink: use nf_conntrack_get instead of atomic_inc netfilter: ctnetlink: use EOPNOTSUPP instead of EINVAL if the conntrack has no helper netfilter: ctnetlink: get rid of module refcounting in ctnetlink netfilter: nf_conntrack: connection tracking helper name persistent aliases netfilter: ctnetlink: helper modules load-on-demand support netfilter: ctnetlink: deliver events for conntracks changed from userspace filter: add SKF_AD_NLATTR_NEST to look for nested attributes Patrick McHardy (12): netlink: constify struct nlattr * arg to parsing functions pkt_sched: Add ->peek() methods for fifo, prio and SFQ qdiscs. netfilter: nfnetlink_log: fix warning and prototype mismatch netfilter: nf_conntrack: fix warning and prototype mismatch netlink: avoid memset of 0 bytes sparse warning pkt_sched: add DRR scheduler pkt_sched: remove unnecessary xchg() in packet schedulers pkt_sched: remove unnecessary xchg() in packet classifiers netfilter: nf_conntrack_proto_sctp: avoid bogus warning netfilter: nf_conntrack_ftp: change "partial ..." message to pr_debug() pkt_sched: sch_drr: fix drr_dequeue loop() netlink: allow empty nested attributes Paulius Zaleckas (2): phylib: rename mdio-ofgpio to mdio-gpio phylib: make mdio-gpio work without OF (v4) Pavel Roskin (3): p54: don't report known but unhandled EEPROM codes as unknown orinoco: fix last beacon reporting on 64-bit systems airport: remove useless return in a function returning void Peter P Waskiewicz Jr (4): ixgbe: Implement PCIe AER support net: Init NAPI dev_list on napi_del ixgbe: Fix NAPI enable/disable path when using DCB ixgbe: Fix set_ringparam in ixgbe to use the same memory pools. Petr Tesarik (1): tcp: remove an unnecessary field in struct tcp_skb_cb Qinghuang Feng (1): net: remove redundant argument comments Rafael J. Wysocki (2): skge: adapt skge to use reworked PCI PM e100: adapt to the reworked PCI PM Rami Rosen (13): mac80211: remove unused declaration of struct sta_attribute. mac80211: use HWSIM_STA_MAGIC in hwsim_check_sta_magic() and hwsim_set_sta_magic(). mac80211: check return value of dev_alloc_skb() in ieee80211_sta_join_ibss(). mac80211: remove unnecessary include. wireless: missing include in lib80211.h mac80211: tx module cleanup. iwlwifi: cleanup (remove pm_state) iwlwifi: fix build error (iwl-rx.c). mac80211: misc cleanups iwlwifi: fix build warning (iwl-rx.c) iwlwifi: remove a parameter (dest) from *_fill_beacon_frame() methods. mac80211: fix a typo in ieee80211_send_assoc() method. iwlwifi: iwl-tx.c cleanup (remove unused parameter and unused local variable). Randy Dunlap (2): mac80211: remove more excess kernel-doc sctp: fix missing label when PROC_FS=n Reinette Chatre (2): iwlwifi: rely on API version read from firmware mac80211: remove WARN_ON() from ieee80211_hw_config Robert Olsson (2): niu: Naming interrupt vectors. ixgbe: Naming interrupt vectors Roel Kluin (2): net: Make static qlge: ql_adapter_down() typo Roland Dreier (1): cxgb3: Fix sparse warning and micro-optimize is_pure_response() Rémi Denis-Courmont (8): Phonet: use net_device built-in stats for GPRS Phonet: basic net namespace support Phonet: improve GPRS variable names Phonet: allocate a non-Ethernet ARP type Phonet: allocate separate ARP type for GPRS over a Phonet pipe Phonet: use atomic for packet TX window Phonet: get rid of deferred work on the transmission path Phonet: USB CDC Phonet function for gadget framework Sakari Ailus (1): tlan: Remove broken support for big buffers Samuel Ortiz (1): iwl3945: Select correct sta ID from find_station() Sangtae Ha (1): [TCP] CUBIC v2.3 Scott Feldman (5): enic: enable ethtool LRO support enic: driver/firmware API updates enic: mask off some reserved bits in CQ descriptor for future use enic: move wmb closer to where needed: before writing posted_index to hw enic: misc cleanup items: Senthil Balasubramanian (12): ath9k: INI update for atheros chipets. ath9k: incorrect noise floor threshold values. ath9k: Build RFKILL feature even when RFKILL subsystem is a MODULE ath9k: IRQ should be disabled before calling free_irq() ath9k: Race condition in accessing TX and RX buffers. wireless: Incorrect LEAP authentication algorithm identifier. ath9k: Adding AR9285 chipset register information. ath9k: Adding initvalues for Atheros AR9285 chipset. ath9k: Adding support for Atheros AR9285 chipset. ath9k: Incorrect band enum causes invalid antenna configuration. ath9k: avoid rx frames with corrupted descriptor. ath9k: BH shouldn't be enabled when hardirqs are disabled. Simon Arlott (1): netfilter: nf_nat: remove warn_if_extra_mangle Stephen Hemminger (92): vlan: propogate ethtool speed values macvlan: add support for ethtool get settings atlx: use embedded net_device_stats atlx: timer cleanup net: increase receive packet quantum netem: eliminate unneeded return values netdev: network device operations infrastructure netdev: introduce dev_get_stats() netdev: expose ethernet address primitives netdev: convert loopback to net_device_ops ifb: convert to net_device_ops bridge: convert to net_device_ops veth: convert to net_device_ops macvlan: convert to net_device_ops ip: convert to net_device_ops for ioctl vlan: convert to net_device_ops bonding: convert to net_device_ops e1000e: convert to net_device_ops sky2: convert to net_device_ops skge: convert to net_device_ops 8139: convert to net_device_ops tun: convert to net_device_ops atl1e: convert to net_device_ops atlx: convert to net_device_ops cxgb3: convert to net_device_ops cxgb2: convert to net_device_ops e1000: convert to net_device_ops via-velocity: convert to net_device_ops igb: convert to net_device_ops e100: convert to net_device_ops ppp: convert to net_device_ops enic: convert to net_device_ops ixgb: convert to net_device_ops tg3: convert to net_device_ops forcedeth: convert to net_device_ops niu: convert to net_device_ops acenic: convert to net_device_ops netdev: add more functions to netdevice ops dummy: convert to net_device_ops ipmr: convert ipmr virtual interface to net_device_ops fddi: convert to new network device ops defxx: convert driver to net_device_ops hippi: convert driver to net_device_ops ipip: convert to net_device_ops ipv6: convert tunnels to net_device_ops ipgre: convert to netdevice_ops jme: convert driver to net_device_ops s2io: convert to net_device_ops qlge: convert to net_device_ops qlge: fix sparse warnings via-rhine: convert to net_device_ops myri10ge: convert to net_device_ops mlx4: convert to net_device_ops bnx2: convert to net_device_ops dl2k: convert to net_device_ops netxen: convert to net_device_ops sfc: convert to net_device_ops tehuti: convert to net_device_ops sis900: convert to net_device_ops r6040: convert to net_device_ops yellowfin: convert to net_device_ops ns83820: convert to net_device_ops bnx2x: convert to net_device_ops hamachi: convert to net_device_ops qla3xxx: convert to net_device_ops sc92031: convert to net_device_ops eql: convert to net_device_ops ne2k: convert to net_device_ops 8139too: use err.h macros netdev: add HAVE_NET_DEVICE_OPS 8390: add common net_device ops wd: use net_device_ops hp-plus: convert to net_device_ops smc: convert to net_device_ops ne3210: convert to net_device_ops es3210: convert to net_device_ops e2100: convert to net_device_ops lne390: convert to net_device_ops hp: convert to net_device_ops ne2: convert to net_device_ops apne: convert to net_device_ops stnic: convert to net_device_ops 3c503: convert to net_device_ops ne2000: convert to net_device_ops tc: propogate errors from tcf_hash_create tc: check for errors in gen_rate_estimator creation tc: policing requires a rate estimator etherh: build fix for net-next mac8390: update to net_device_ops zorro8390: convert to net_device_ops hydra: convert to net_device_ops ne-h8300: convert to net_device_ops Steve Glendinning (15): SMSC LAN911x and LAN921x vendor driver smsc95xx: add tx checksum offload support smsc911x: add dynamic bus configuration smsc9420: SMSC LAN9420 10/100 PCI ethernet adapter smsc911x: make smsc911x_poll_controller static smsc9420: add netpoll support smsc9420: add ethtool eeprom support smsc9420: add ethtool register dump support net: Move flow control definitions to mii.h net: Refactor full duplex flow control resolution smsc911x: fix BUG if module is removed while interface is up smsc911x: convert driver to use net_device_ops smsc911x: make smsc911x_ethtool_ops constant smsc911x: don't clobber driver_data smsc911x: fix platform resource call during module unload Steve Hodgson (2): sfc: Make reset_workqueue driver-global rather than per-NIC sfc: Treat probe as unsuccessful if it scheduled a reset Sujith (57): mac80211: Change WARN_ON to WARN_ON_ONCE ath9k: Check if the STA supports HT when initializing rate control mac80211: Re-enable aggregation ath9k: Node cleanup ath9k: Simplify node attach/detach routines ath9k: Revamp transmit control block ath9k: Remove SM Power Save as it is not supported now ath9k: Ensure ath_node is not NULL when updating tx chainmask ath9k: Use bitfields to store tid's state in a single variable ath9k: Revamp VAP management ath9k: Refactor hw.c ath9k: Remove unused function ath_get_currentCountry() ath9k: Streamline attach/detach ath9k: Remove unnecessary TSF reset ath9k: Enable interrupts at the proper place ath9k: Remove ath_tx_aggr_resp() ath9k: Clear HT info on starting the driver ath9k: Remove internal RX A-MPDU processing mac80211: Add a new event in ieee80211_ampdu_mlme_action ath9k: Fix compilation failure when RFKILL is enabled mac80211: Use the HT capabilities from the IE instead of the station's caps. ath9k: Merge struct ath_tx_ratectrl with ath_rate_node ath9k: Simplify RC alloc/free functions ath9k: Remove ath_setup_rates ath9k: Remove ath_rate_newassoc() ath9k: Remove half/quarter rate tables ath9k: Nuke fixed rate handling in driver ath9k: Revamp RX handling ath9k: We don't support non-HT devices, so remove superfluous code. ath9k: Remove rate control reference in VAP ath9k: Remove ath_rate_softc ath9k: Use rate_driver_data ath9k: Remove ath9k_rate_table ath9k: General code scrub ath9k: Use helpers ath9k: Move TX completion routine to xmit.c ath9k: Fix bug in deciphering channel flags ath9k: Update TX trigger level on a FIFO underrun. ath9k: Use straightforward PCI routines to setup the TX buffer. ath9k: Code scrub ath9k: Use proper TX channel width for setting channels ath9k: Handle channel initialization for AP mode ath9k: Use cleaner debug masks ath9k: Add ATH9K_DEBUG configuration option ath9k: Remove includes that are not needed ath9k: Add initial layout for an ath9k specific debugfs mechanism ath9k: Add a debugfs file for dumping DMA status ath9k: Choose correct ANI calibration period ath9k: Fix bug in rate table management ath9k: Maintain rate table choice after association ath9k: Add a debugfs file to show interrupt statistics ath9k: Remove remaining occurrences of CONFIG_SLOW_ANT_DIV ath9k: Merge structures ath_atx, ath_node_aggr with ath_node ath9k: Refactor struct ath_softc mac80211: Fix HT channel selection ath9k: Do not use association state to update rate table ath9k: Protect config() callback with a mutex Thomas Graf (1): pkt_sched: Control group classifier Tilman Schmidt (4): gigaset: remove unnecessary poll method gigaset: get rid of info() and warn() macros gigaset: use pr_err() and pr_info() gigaset: ifdef cleanup Tim Gardner (1): ipw2x00: change default policy for auto-associate Tomas Winkler (34): iwlwifi: make initial calibration set configurable iwlwifi: take a valid antenna upon rate scale init iwlwifi: refactor rxon time command iwlwifi: remove host commands structures from iwl_cmd iwlwifi: add iwl_cmd_queue_free for readability iwlwifi: unify tx antenna toggling iwlwifi: fix TX cmd dma unmapping iwlwifi: tx command must run on same tfd as packet iwlwifi: protect headers from double inclusion iwlwifi: refactor TX response flow iwlwifi: don't update TFD free counter for invalid station iwlwifi: parametrize eeprom versions iwlwifi: calibration command namespace renaming iwlwifi: refactor tx byte count table usage iwlwifi: run through spell checker mac80211: fix basic rates setting from association response iwlwifi: revamp tx scheduler byte count tables handling iwlwifi: move spectrum measurement code to iwl-spectrum.c file mac80211: rc80211_pid eliminate sparse warnings iwlwifi: consolidate station management code iwlwifi: rs: remove fc variable and other cleanups iwlwifi: iwl-fh.h cleanup iwlwifi: enable base band calibration in 5000 HW Bluetooth: Fix TX error path in btsdio driver mac80211: disassociate prior to unlinking AP/station iwlwifi: properly initialize calibration command header iwlwifi: 5150 add support for 5150 iwlwifi: 5150 enable DC calibration iwlwifi: 5150 compute ct kill threshold iwlwifi: 5150 parametrize eeprom versions iwlwifi: remove unused clip_groups priv member iwlwifi: remove includes of iwl-helpers.h where not needed iwlwifi: remove 4965 from common uCode API structures iwlwifi: add contact email to MODULE_AUTHOR Vasanthakumar Thiagarajan (5): ath9k: Configure AR_PHY_SWITCH_COM with apropriate antenna control ath9k: Fix panic while unregistering rfkill ath9k: Dont update rate control for every AMPDU ath9k: Synchronize DMA transfer with CPU at right place ath9k: Move rate control alg register/unregister to appropriate place Vegard Nossum (2): Bluetooth: Fix leak of uninitialized data to userspace netlink: fix (theoretical) overrun in message iteration Vivek Natarajan (1): mac80211: Look out for some other AP when disassoc is received. Wang Chen (37): airo: Kill directly reference of netdev->priv netdevice libertas: Fix directly reference of netdev->priv netdevice: safe convert to netdev_priv() #part-1 netdevice: safe convert to netdev_priv() #part-2 netdevice: safe convert to netdev_priv() #part-3 netdevice: safe convert to netdev_priv() #part-4 netdevice chelsio: Convert directly reference of netdev->priv netdevice: 82596: Convert netdev->priv to netdev_priv netdevice hamradio: Convert directly reference of netdev->priv netdevice lance: Convert directly reference of netdev->priv netdevice ppp: Convert directly reference of netdev->priv netdevice ni65: Convert directly reference of netdev->priv netdevice wanrouter: Convert directly reference of netdev->priv ixgbe: convert directly reference of netdev->priv netdevice hdlc: Convert directly reference of netdev->priv netdevice pc300: Convert directly reference of netdev->priv netdevice pc300: Add the reason about PC300 BROKEN in Kconfig netdevice sbni: Convert directly reference of netdev->priv infiniband: Kill directly reference of netdev->priv hysdn: Kill directly reference of netdev->priv isdn: Kill directly reference of netdev->priv dvb: Kill directly reference of netdev->priv mptlan: Kill directly reference of netdev->priv bond: Kill directly reference of netdev->priv ixgbe: function comment typo e1000: e1000_adapter->polling_netdev is useless if_usb: Kill directly reference of netdev->priv simeth: Kill directly reference of netdev->priv xtensa: Kill directly reference of netdev->priv um: Kill directly reference of netdev->priv sgi-xp: Kill directly reference of netdev->priv s390_net: Kill directly reference of netdev->priv staging-p80211: Kill directly reference of netdev->priv staging-slicoss: Kill directly reference of netdev->priv staging-winbond: Kill directly reference of netdev->priv netdevice: Kill netdev->priv netdevice zd1201: Use after free Wei Yongjun (6): xfrm: Cleanup for unlink SPD entry sctp: Bring SCTP_MAXSEG socket option into ietf API extension compliance sctp: Fix a typo in socket.c sctp: Implement socket option SCTP_GET_ASSOC_NUMBER sctp: Avoid memory overflow while FWD-TSN chunk is received with bad stream ID sctp: Add validity check for SCTP_PARTIAL_DELIVERY_POINT socket option Winkler, Tomas (21): iwlwifi: reorganize flow handler bitology iwlwifi: trivial removal of some 4965 remaining from iwl-agn-rs.h iwlwifi: iwl-agn-rs: initialize rs with valid antenna iwlwifi: trivial fix in includes iwlwifi: don't fail power set when calibration is not done yet iwlwifi: move rx queue read pointer into rxq iwlwifi: move iwl_print_hex_dump to iwl-debug.h iwlwifi: get some more information about command failure iwlwifi: move iwl_clear_stations_table to iwl-sta.c iwlwifi: 4965 define firmware file name once iwlwifi: TX setup fix confusion between TX queue and TX DMA channel iwlwifi: TX update chicken bits iwlwifi: 5150 enable LO, TXIQ and BB calibrations iwlwifi: move host command check function into separate file iwlwifi: move disable/enable interrupts to iwl-core.c iwlwifi: move channels sysfs to debugfs iwlwifi: change email contact information iwlifi: remove twice defined SINGLE_FRAME RX FH MASK iwlwifi: 3945 remove qos module parameter iwlwifi: remove qos module parameter iwlwifi: cleanup iwl-dev.h Wu Fengguang (2): generic swap(): ath9k: rename swap() to swap_array() iwlwifi: remove useless goto Wu, Fengguang (4): iwlwifi: add line feed to printk iwlwifi: update comments on the debug interface iwlwifi: use type uint for module param debug iwlwifi: use meaningful vars in _iwl_poll_bit() Yang Hongyang (3): ipv6: Add IPV6_PKTINFO sticky option support to setsockopt() ipv6: fix the return interface index when get it while no message is received ipv6: fix the outgoing interface selection order in udpv6_sendmsg() Yevgeny Petrilin (5): mlx4_en: Memory leak on completion queue free mlx4_en: Removed TX locking when polling TX cq mlx4_en: Removed redundant cq->armed flag mlx4_en: Removed Interrupt moderation module parameters mlx4_en: Remove pauses module parameters. Zhaolei (2): Fix debugfs_create_bool's error checking method for wireless/iwlwifi/ Fix debugfs_create_*'s error checking method for wireless/rt2x00/ Zhu Yi (4): mac80211: print reason code for deauth/dissoc frames iwlwifi: fix printk size format error iwlwifi: fix DMA channel number in iwl_txq_ctx_stop iwlwifi: use GFP_KERNEL to allocate Rx SKB memory Zhu, Yi (9): iwlwifi: fix priv->iw_mode setting when multiple vif are configured iwlwifi: use Rx single frame mode (one Rx frame per RB) iwlwifi: configure_filter rewrite iwlwifi: some fh document fix and cleanup iwlwifi: fix time interval misuse in iwl_poll_{direct_}bit iwlwifi: fix "MAC in deep sleep" error iwlwifi: iwl_poll_{direct_}bit cleanup iwlwifi: use rmb/wmb to protect indirect mmio operation iwlwifi: use iwl_poll_direct_bit in EEPROM reading akeemting (1): jme: GHC register control fix for new hardware colin@cozybit.com (1): Add nl80211 commands to get and set o11s mesh networking parameters herton (1): rtl8187: fix retry count passed in rtl8187_tx Documentation/DocBook/Makefile | 2 +- Documentation/DocBook/networking.tmpl | 3 - Documentation/DocBook/wanbook.tmpl | 99 - Documentation/RCU/rculist_nulls.txt | 167 + Documentation/feature-removal-schedule.txt | 7 - Documentation/networking/README.ipw2200 | 2 +- Documentation/networking/bonding.txt | 68 +- Documentation/networking/dccp.txt | 32 +- Documentation/networking/driver.txt | 2 +- Documentation/networking/generic-hdlc.txt | 8 +- Documentation/networking/ip-sysctl.txt | 6 + Documentation/networking/mac80211_hwsim/README | 9 +- Documentation/networking/netdevices.txt | 2 +- Documentation/networking/regulatory.txt | 22 +- Documentation/powerpc/dts-bindings/fsl/tsec.txt | 12 +- Documentation/rfkill.txt | 20 +- MAINTAINERS | 48 +- arch/arm/mach-ixp4xx/fsg-setup.c | 9 +- arch/arm/mach-ixp4xx/include/mach/qmgr.h | 35 +- arch/arm/mach-ixp4xx/ixp4xx_qmgr.c | 44 +- arch/arm/mach-ixp4xx/nas100d-setup.c | 5 +- arch/arm/mach-ixp4xx/nslu2-setup.c | 5 +- arch/ia64/hp/sim/simeth.c | 25 +- arch/powerpc/boot/dts/asp834x-redboot.dts | 20 + arch/powerpc/boot/dts/ksi8560.dts | 20 + arch/powerpc/boot/dts/mpc8313erdb.dts | 20 + arch/powerpc/boot/dts/mpc8315erdb.dts | 19 + arch/powerpc/boot/dts/mpc8349emitx.dts | 18 + arch/powerpc/boot/dts/mpc8349emitxgp.dts | 5 + arch/powerpc/boot/dts/mpc834x_mds.dts | 19 + arch/powerpc/boot/dts/mpc8377_mds.dts | 19 + arch/powerpc/boot/dts/mpc8377_rdb.dts | 19 + arch/powerpc/boot/dts/mpc8378_mds.dts | 19 + arch/powerpc/boot/dts/mpc8378_rdb.dts | 17 + arch/powerpc/boot/dts/mpc8379_mds.dts | 18 + arch/powerpc/boot/dts/mpc8379_rdb.dts | 18 + arch/powerpc/boot/dts/mpc8536ds.dts | 18 + arch/powerpc/boot/dts/mpc8540ads.dts | 31 + arch/powerpc/boot/dts/mpc8541cds.dts | 18 + arch/powerpc/boot/dts/mpc8544ds.dts | 20 + arch/powerpc/boot/dts/mpc8548cds.dts | 44 + arch/powerpc/boot/dts/mpc8555cds.dts | 18 + arch/powerpc/boot/dts/mpc8560ads.dts | 18 + arch/powerpc/boot/dts/mpc8568mds.dts | 18 + arch/powerpc/boot/dts/mpc8572ds.dts | 45 + arch/powerpc/boot/dts/mpc8641_hpcn.dts | 45 + arch/powerpc/boot/dts/sbc8349.dts | 18 + arch/powerpc/boot/dts/sbc8548.dts | 18 + arch/powerpc/boot/dts/sbc8560.dts | 18 + arch/powerpc/boot/dts/sbc8641d.dts | 44 + arch/powerpc/boot/dts/stx_gp3_8560.dts | 18 + arch/powerpc/boot/dts/tqm8540.dts | 28 + arch/powerpc/boot/dts/tqm8541.dts | 18 + arch/powerpc/boot/dts/tqm8548-bigflash.dts | 44 + arch/powerpc/boot/dts/tqm8548.dts | 44 + arch/powerpc/boot/dts/tqm8555.dts | 18 + arch/powerpc/boot/dts/tqm8560.dts | 18 + arch/powerpc/sysdev/fsl_soc.c | 241 +- arch/s390/appldata/appldata_net_sum.c | 4 +- arch/sparc64/kernel/idprom.c | 5 +- arch/um/drivers/daemon_kern.c | 2 +- arch/um/drivers/mcast_kern.c | 2 +- arch/um/drivers/net_kern.c | 29 +- arch/um/drivers/pcap_kern.c | 2 +- arch/um/drivers/slip_kern.c | 2 +- arch/um/drivers/slirp_kern.c | 2 +- arch/um/drivers/vde_kern.c | 2 +- arch/um/os-Linux/drivers/ethertap_kern.c | 2 +- arch/um/os-Linux/drivers/tuntap_kern.c | 2 +- arch/xtensa/platforms/iss/network.c | 21 +- drivers/atm/Kconfig | 6 + drivers/atm/Makefile | 1 + drivers/atm/solos-pci.c | 790 ++ drivers/block/aoe/aoe.h | 1 - drivers/block/aoe/aoeblk.c | 2 +- drivers/block/aoe/aoecmd.c | 22 +- drivers/block/aoe/aoenet.c | 11 - drivers/bluetooth/Kconfig | 20 - drivers/bluetooth/Makefile | 1 - drivers/bluetooth/bcm203x.c | 9 +- drivers/bluetooth/bfusb.c | 11 +- drivers/bluetooth/bpa10x.c | 7 +- drivers/bluetooth/bt3c_cs.c | 8 +- drivers/bluetooth/btsdio.c | 6 +- drivers/bluetooth/btusb.c | 229 +- drivers/bluetooth/hci_bcsp.c | 5 - drivers/bluetooth/hci_h4.c | 5 - drivers/bluetooth/hci_ldisc.c | 9 +- drivers/bluetooth/hci_usb.c | 1136 --- drivers/bluetooth/hci_usb.h | 129 - drivers/bluetooth/hci_vhci.c | 5 - drivers/firmware/iscsi_ibft.c | 7 +- drivers/infiniband/core/sysfs.c | 10 +- drivers/infiniband/hw/amso1100/c2_provider.c | 8 +- drivers/infiniband/hw/mthca/mthca_mcg.c | 23 +- drivers/infiniband/hw/nes/nes.c | 17 +- drivers/infiniband/hw/nes/nes_cm.c | 31 +- drivers/infiniband/hw/nes/nes_hw.c | 2 +- drivers/infiniband/hw/nes/nes_nic.c | 13 +- drivers/infiniband/hw/nes/nes_utils.c | 5 +- drivers/infiniband/ulp/ipoib/ipoib.h | 23 - drivers/infiniband/ulp/ipoib/ipoib_cm.c | 8 +- drivers/infiniband/ulp/ipoib/ipoib_ib.c | 6 +- drivers/infiniband/ulp/ipoib/ipoib_main.c | 25 +- drivers/infiniband/ulp/ipoib/ipoib_multicast.c | 70 +- drivers/infiniband/ulp/iser/iser_verbs.c | 8 +- drivers/infiniband/ulp/srp/ib_srp.c | 31 +- drivers/isdn/gigaset/asyncdata.c | 18 +- drivers/isdn/gigaset/bas-gigaset.c | 13 +- drivers/isdn/gigaset/common.c | 21 +- drivers/isdn/gigaset/ev-layer.c | 42 +- drivers/isdn/gigaset/gigaset.h | 20 +- drivers/isdn/gigaset/i4l.c | 4 +- drivers/isdn/gigaset/interface.c | 52 +- drivers/isdn/gigaset/isocdata.c | 6 +- drivers/isdn/gigaset/ser-gigaset.c | 32 +- drivers/isdn/gigaset/usb-gigaset.c | 14 +- drivers/isdn/hardware/eicon/di.c | 28 +- drivers/isdn/hardware/eicon/message.c | 60 +- drivers/isdn/hardware/mISDN/hfc_multi.h | 4 +- drivers/isdn/hardware/mISDN/hfcmulti.c | 67 +- drivers/isdn/hysdn/hysdn_net.c | 6 +- drivers/isdn/i4l/isdn_concap.c | 4 +- drivers/isdn/i4l/isdn_net.c | 224 +- drivers/isdn/i4l/isdn_net.h | 50 +- drivers/isdn/i4l/isdn_ppp.c | 32 +- drivers/isdn/mISDN/core.c | 8 +- drivers/isdn/mISDN/dsp_audio.c | 2 +- drivers/isdn/mISDN/dsp_cmx.c | 8 +- drivers/isdn/mISDN/dsp_core.c | 4 +- drivers/isdn/mISDN/dsp_hwec.c | 2 +- drivers/isdn/mISDN/dsp_pipeline.c | 2 +- drivers/isdn/mISDN/dsp_tones.c | 92 +- drivers/isdn/mISDN/l1oip_codec.c | 1 + drivers/isdn/mISDN/l1oip_core.c | 22 +- drivers/isdn/mISDN/layer1.c | 3 +- drivers/isdn/mISDN/layer2.c | 16 +- drivers/isdn/mISDN/socket.c | 2 +- drivers/isdn/mISDN/stack.c | 2 +- drivers/isdn/mISDN/tei.c | 4 +- drivers/isdn/mISDN/timerdev.c | 9 +- drivers/media/dvb/b2c2/flexcop.c | 2 +- drivers/media/dvb/bt8xx/dst.c | 4 +- drivers/media/dvb/dm1105/dm1105.c | 3 +- drivers/media/dvb/dvb-core/dvb_net.c | 37 +- drivers/media/dvb/dvb-usb/dvb-usb-dvb.c | 5 +- drivers/media/dvb/pluto2/pluto2.c | 3 +- drivers/message/fusion/mptlan.c | 22 +- drivers/message/fusion/mptlan.h | 2 +- drivers/misc/sgi-xp/xpnet.c | 13 +- drivers/net/3c501.c | 3 +- drivers/net/3c501.h | 2 +- drivers/net/3c503.c | 21 +- drivers/net/3c505.c | 51 +- drivers/net/3c507.c | 15 +- drivers/net/3c509.c | 6 +- drivers/net/3c515.c | 13 +- drivers/net/3c523.c | 46 +- drivers/net/3c527.c | 4 +- drivers/net/3c59x.c | 13 +- drivers/net/7990.c | 1 - drivers/net/8139cp.c | 47 +- drivers/net/8139too.c | 57 +- drivers/net/82596.c | 48 +- drivers/net/8390.c | 50 +- drivers/net/8390.h | 15 + drivers/net/8390p.c | 50 +- drivers/net/Kconfig | 64 +- drivers/net/Makefile | 11 +- drivers/net/a2065.c | 5 +- drivers/net/ac3200.c | 5 +- drivers/net/acenic.c | 37 +- drivers/net/amd8111e.c | 12 +- drivers/net/apne.c | 29 +- drivers/net/appletalk/cops.c | 9 - drivers/net/appletalk/ipddp.c | 6 +- drivers/net/appletalk/ltpc.c | 13 +- drivers/net/arcnet/arc-rawmode.c | 5 +- drivers/net/arcnet/arc-rimi.c | 16 +- drivers/net/arcnet/arcnet.c | 32 +- drivers/net/arcnet/capmode.c | 9 +- drivers/net/arcnet/com20020-isa.c | 4 +- drivers/net/arcnet/com20020-pci.c | 2 +- drivers/net/arcnet/com20020.c | 10 +- drivers/net/arcnet/com90io.c | 4 +- drivers/net/arcnet/com90xx.c | 12 +- drivers/net/arcnet/rfc1051.c | 9 +- drivers/net/arcnet/rfc1201.c | 14 +- drivers/net/ariadne.c | 21 +- drivers/net/arm/Kconfig | 10 +- drivers/net/arm/Makefile | 3 +- drivers/net/arm/am79c961a.c | 7 +- drivers/net/arm/at91_ether.c | 11 +- drivers/net/arm/ep93xx_eth.c | 8 +- drivers/net/arm/ether1.c | 5 +- drivers/net/arm/ether3.c | 5 +- drivers/net/arm/etherh.c | 24 +- drivers/net/arm/ixp4xx_eth.c | 344 +- drivers/net/arm/ks8695net.c | 1676 ++++ drivers/net/arm/ks8695net.h | 107 + drivers/net/at1700.c | 16 +- drivers/net/atarilance.c | 52 +- drivers/net/atl1e/atl1e_main.c | 47 +- drivers/net/atlx/atl1.c | 102 +- drivers/net/atlx/atl1.h | 4 +- drivers/net/atlx/atl2.c | 101 +- drivers/net/atlx/atl2.h | 1 - drivers/net/atlx/atlx.c | 13 - drivers/net/atp.c | 29 +- drivers/net/au1000_eth.c | 50 +- drivers/net/ax88796.c | 9 +- drivers/net/b44.c | 13 +- drivers/net/bfin_mac.c | 1 - drivers/net/bmac.c | 7 +- drivers/net/bnx2.c | 94 +- drivers/net/bnx2.h | 42 +- drivers/net/bnx2x_link.c | 72 +- drivers/net/bnx2x_link.h | 10 +- drivers/net/bnx2x_main.c | 95 +- drivers/net/bonding/Makefile | 3 + drivers/net/bonding/bond_3ad.c | 667 +- drivers/net/bonding/bond_3ad.h | 59 +- drivers/net/bonding/bond_alb.c | 37 +- drivers/net/bonding/bond_ipv6.c | 216 + drivers/net/bonding/bond_main.c | 477 +- drivers/net/bonding/bond_sysfs.c | 160 +- drivers/net/bonding/bonding.h | 68 +- drivers/net/can/vcan.c | 24 +- drivers/net/cassini.c | 16 +- drivers/net/chelsio/cxgb2.c | 94 +- drivers/net/chelsio/sge.c | 10 +- drivers/net/cpmac.c | 15 +- drivers/net/cris/eth_v10.c | 4 +- drivers/net/cs89x0.c | 16 +- drivers/net/cxgb3/adapter.h | 5 +- drivers/net/cxgb3/common.h | 4 +- drivers/net/cxgb3/cxgb3_ctl_defs.h | 17 + drivers/net/cxgb3/cxgb3_main.c | 130 +- drivers/net/cxgb3/cxgb3_offload.c | 76 +- drivers/net/cxgb3/sge.c | 105 +- drivers/net/cxgb3/t3_hw.c | 26 +- drivers/net/cxgb3/version.h | 2 +- drivers/net/cxgb3/vsc8211.c | 2 + drivers/net/de600.c | 4 +- drivers/net/de620.c | 26 +- drivers/net/declance.c | 7 +- drivers/net/defxx.c | 27 +- drivers/net/depca.c | 54 +- drivers/net/dl2k.c | 28 +- drivers/net/dm9000.c | 40 +- drivers/net/dummy.c | 15 +- drivers/net/e100.c | 68 +- drivers/net/e1000/e1000.h | 1 - drivers/net/e1000/e1000_main.c | 107 +- drivers/net/e1000e/82571.c | 19 +- drivers/net/e1000e/defines.h | 8 + drivers/net/e1000e/e1000.h | 2 + drivers/net/e1000e/es2lan.c | 194 +- drivers/net/e1000e/ethtool.c | 82 +- drivers/net/e1000e/hw.h | 8 +- drivers/net/e1000e/ich8lan.c | 151 +- drivers/net/e1000e/lib.c | 80 +- drivers/net/e1000e/netdev.c | 131 +- drivers/net/e1000e/phy.c | 12 +- drivers/net/e2100.c | 24 +- drivers/net/eepro.c | 10 +- drivers/net/eepro100.c | 2401 ------ drivers/net/eexpress.c | 3 +- drivers/net/ehea/ehea.h | 2 +- drivers/net/ehea/ehea_main.c | 7 +- drivers/net/ehea/ehea_qmr.c | 18 +- drivers/net/enc28j60.c | 49 +- drivers/net/enic/cq_desc.h | 5 +- drivers/net/enic/enic.h | 2 +- drivers/net/enic/enic_main.c | 86 +- drivers/net/enic/enic_res.c | 7 +- drivers/net/enic/enic_res.h | 4 - drivers/net/enic/vnic_dev.c | 70 +- drivers/net/enic/vnic_devcmd.h | 19 +- drivers/net/enic/vnic_intr.h | 2 +- drivers/net/enic/vnic_resource.h | 2 +- drivers/net/enic/vnic_rq.h | 9 +- drivers/net/enic/vnic_rss.h | 13 + drivers/net/enic/vnic_wq.h | 9 +- drivers/net/epic100.c | 56 +- drivers/net/eql.c | 12 +- drivers/net/es3210.c | 34 +- drivers/net/eth16i.c | 15 +- drivers/net/ewrk3.c | 18 +- drivers/net/fealnx.c | 6 +- drivers/net/fec.c | 6 +- drivers/net/fec_mpc52xx.c | 3 +- drivers/net/forcedeth.c | 90 +- drivers/net/fs_enet/fs_enet-main.c | 9 +- drivers/net/gianfar.c | 861 ++- drivers/net/gianfar.h | 78 +- drivers/net/gianfar_ethtool.c | 89 +- drivers/net/gianfar_mii.c | 212 +- drivers/net/gianfar_mii.h | 2 + drivers/net/hamachi.c | 27 +- drivers/net/hamradio/6pack.c | 1 - drivers/net/hamradio/baycom_epp.c | 1 - drivers/net/hamradio/bpqether.c | 8 +- drivers/net/hamradio/dmascc.c | 13 +- drivers/net/hamradio/hdlcdrv.c | 1 - drivers/net/hamradio/mkiss.c | 4 +- drivers/net/hamradio/scc.c | 13 +- drivers/net/hamradio/yam.c | 1 - drivers/net/hp-plus.c | 27 +- drivers/net/hp.c | 25 +- drivers/net/hp100.c | 24 +- drivers/net/hydra.c | 28 +- drivers/net/ibm_newemac/core.c | 11 +- drivers/net/ibmlana.c | 6 +- drivers/net/ibmveth.c | 46 +- drivers/net/ifb.c | 13 +- drivers/net/igb/e1000_defines.h | 7 +- drivers/net/igb/e1000_mac.c | 25 +- drivers/net/igb/e1000_regs.h | 4 + drivers/net/igb/igb.h | 44 +- drivers/net/igb/igb_ethtool.c | 131 +- drivers/net/igb/igb_main.c | 403 +- drivers/net/ioc3-eth.c | 13 +- drivers/net/ipg.c | 9 - drivers/net/irda/ali-ircc.c | 17 +- drivers/net/irda/au1k_ir.c | 1 - drivers/net/irda/donauboe.c | 8 +- drivers/net/irda/irda-usb.c | 15 +- drivers/net/irda/irtty-sir.c | 7 +- drivers/net/irda/kingsun-sir.c | 1 - drivers/net/irda/ks959-sir.c | 1 - drivers/net/irda/ksdazzle-sir.c | 1 - drivers/net/irda/ma600-sir.c | 2 +- drivers/net/irda/mcs7780.c | 1 - drivers/net/irda/nsc-ircc.c | 17 +- drivers/net/irda/pxaficp_ir.c | 4 - drivers/net/irda/sa1100_ir.c | 28 +- drivers/net/irda/sir_dev.c | 12 +- drivers/net/irda/smsc-ircc2.c | 6 +- drivers/net/irda/stir4200.c | 1 - drivers/net/irda/via-ircc.c | 16 +- drivers/net/irda/vlsi_ir.c | 37 +- drivers/net/irda/w83977af_ir.c | 29 +- drivers/net/isa-skeleton.c | 16 +- drivers/net/iseries_veth.c | 14 +- drivers/net/ixgb/ixgb_main.c | 58 +- drivers/net/ixgbe/Makefile | 2 + drivers/net/ixgbe/ixgbe.h | 32 +- drivers/net/ixgbe/ixgbe_82598.c | 192 +- drivers/net/ixgbe/ixgbe_dcb.c | 332 + drivers/net/ixgbe/ixgbe_dcb.h | 184 + drivers/net/ixgbe/ixgbe_dcb_82598.c | 398 + drivers/net/ixgbe/ixgbe_dcb_82598.h | 94 + drivers/net/ixgbe/ixgbe_dcb_nl.c | 641 ++ drivers/net/ixgbe/ixgbe_ethtool.c | 134 +- drivers/net/ixgbe/ixgbe_main.c | 485 +- drivers/net/ixgbe/ixgbe_phy.c | 326 + drivers/net/ixgbe/ixgbe_phy.h | 25 + drivers/net/ixgbe/ixgbe_type.h | 28 +- drivers/net/ixp2000/ixpdev.c | 6 +- drivers/net/jazzsonic.c | 4 +- drivers/net/jme.c | 71 +- drivers/net/jme.h | 34 +- drivers/net/korina.c | 5 +- drivers/net/lance.c | 32 +- drivers/net/lib82596.c | 14 +- drivers/net/lib8390.c | 20 +- drivers/net/lne390.c | 29 +- drivers/net/loopback.c | 29 +- drivers/net/lp486e.c | 29 +- drivers/net/mac8390.c | 22 +- drivers/net/mac89x0.c | 16 +- drivers/net/macb.c | 18 +- drivers/net/mace.c | 34 +- drivers/net/macmace.c | 6 +- drivers/net/macsonic.c | 9 +- drivers/net/macvlan.c | 49 +- drivers/net/meth.c | 4 +- drivers/net/mlx4/en_cq.c | 4 +- drivers/net/mlx4/en_netdev.c | 48 +- drivers/net/mlx4/en_params.c | 20 +- drivers/net/mlx4/en_rx.c | 9 +- drivers/net/mlx4/en_tx.c | 29 +- drivers/net/mlx4/mcg.c | 25 +- drivers/net/mlx4/mlx4_en.h | 12 +- drivers/net/mv643xx_eth.c | 525 +- drivers/net/mvme147.c | 9 +- drivers/net/myri10ge/myri10ge.c | 71 +- drivers/net/myri10ge/myri10ge_mcp.h | 175 +- drivers/net/myri10ge/myri10ge_mcp_gen_header.h | 2 + drivers/net/myri_sbus.c | 27 +- drivers/net/natsemi.c | 12 +- drivers/net/ne-h8300.c | 30 +- drivers/net/ne.c | 29 +- drivers/net/ne2.c | 29 +- drivers/net/ne2k-pci.c | 28 +- drivers/net/ne3210.c | 31 +- drivers/net/netconsole.c | 9 +- drivers/net/netx-eth.c | 1 - drivers/net/netxen/netxen_nic_ethtool.c | 10 +- drivers/net/netxen/netxen_nic_hw.c | 6 +- drivers/net/netxen/netxen_nic_init.c | 2 - drivers/net/netxen/netxen_nic_main.c | 57 +- drivers/net/netxen/netxen_nic_niu.c | 7 +- drivers/net/ni5010.c | 15 +- drivers/net/ni52.c | 43 +- drivers/net/ni65.c | 39 +- drivers/net/niu.c | 145 +- drivers/net/niu.h | 2 +- drivers/net/ns83820.c | 28 +- drivers/net/pasemi_mac.c | 14 +- drivers/net/pasemi_mac_ethtool.c | 4 +- drivers/net/pci-skeleton.c | 8 +- drivers/net/pcmcia/3c574_cs.c | 6 +- drivers/net/pcmcia/3c589_cs.c | 6 +- drivers/net/pcmcia/axnet_cs.c | 22 +- drivers/net/pcmcia/com20020_cs.c | 6 +- drivers/net/pcmcia/fmvj18x_cs.c | 79 +- drivers/net/pcmcia/nmclan_cs.c | 6 +- drivers/net/pcmcia/pcnet_cs.c | 3 +- drivers/net/pcmcia/smc91c92_cs.c | 5 +- drivers/net/pcmcia/xirc2ps_cs.c | 6 +- drivers/net/pcnet32.c | 10 +- drivers/net/phy/Kconfig | 23 +- drivers/net/phy/Makefile | 5 +- drivers/net/phy/broadcom.c | 216 +- drivers/net/phy/et1011c.c | 113 + drivers/net/phy/mdio-gpio.c | 296 + drivers/net/phy/mdio-ofgpio.c | 204 - drivers/net/phy/mdio_bus.c | 40 +- drivers/net/phy/national.c | 155 + drivers/net/phy/phy.c | 2 +- drivers/net/phy/phy_device.c | 54 +- drivers/net/phy/smsc.c | 28 + drivers/net/phy/ste10Xp.c | 137 + drivers/net/plip.c | 35 +- drivers/net/ppp_async.c | 6 - drivers/net/ppp_generic.c | 206 +- drivers/net/ppp_synctty.c | 6 - drivers/net/pppoe.c | 5 +- drivers/net/pppol2tp.c | 94 +- drivers/net/ps3_gelic_net.c | 6 +- drivers/net/ps3_gelic_wireless.c | 37 +- drivers/net/ps3_gelic_wireless.h | 4 +- drivers/net/qla3xxx.c | 42 +- drivers/net/qlge/qlge_ethtool.c | 2 +- drivers/net/qlge/qlge_main.c | 79 +- drivers/net/qlge/qlge_mpi.c | 2 +- drivers/net/r6040.c | 51 +- drivers/net/r8169.c | 57 +- drivers/net/rionet.c | 31 +- drivers/net/rrunner.c | 25 +- drivers/net/s2io.c | 146 +- drivers/net/sb1000.c | 1 - drivers/net/sb1250-mac.c | 11 +- drivers/net/sc92031.c | 30 +- drivers/net/seeq8005.c | 13 +- drivers/net/sfc/Kconfig | 8 + drivers/net/sfc/Makefile | 5 +- drivers/net/sfc/boards.c | 206 +- drivers/net/sfc/boards.h | 14 +- drivers/net/sfc/efx.c | 449 +- drivers/net/sfc/efx.h | 12 +- drivers/net/sfc/enum.h | 36 +- drivers/net/sfc/ethtool.c | 175 +- drivers/net/sfc/falcon.c | 476 +- drivers/net/sfc/falcon.h | 3 + drivers/net/sfc/falcon_gmac.c | 229 + drivers/net/sfc/falcon_hwdefs.h | 161 +- drivers/net/sfc/falcon_xmac.c | 261 +- drivers/net/sfc/gmii.h | 137 +- drivers/net/sfc/mac.h | 16 +- drivers/net/sfc/mdio_10g.c | 483 +- drivers/net/sfc/mdio_10g.h | 63 +- drivers/net/sfc/mtd.c | 268 + drivers/net/sfc/net_driver.h | 131 +- drivers/net/sfc/phy.h | 7 +- drivers/net/sfc/rx.c | 2 +- drivers/net/sfc/selftest.c | 145 +- drivers/net/sfc/selftest.h | 14 +- drivers/net/sfc/sfe4001.c | 225 +- drivers/net/sfc/spi.h | 34 +- drivers/net/sfc/tenxpress.c | 796 ++- drivers/net/sfc/workarounds.h | 12 +- drivers/net/sfc/xfp_phy.c | 29 +- drivers/net/sgiseeq.c | 7 +- drivers/net/sh_eth.c | 3 +- drivers/net/sis190.c | 7 +- drivers/net/sis900.c | 99 +- drivers/net/skfp/skfddi.c | 27 +- drivers/net/skge.c | 103 +- drivers/net/sky2.c | 56 +- drivers/net/slip.c | 12 +- drivers/net/smc-mca.c | 27 +- drivers/net/smc-ultra.c | 27 +- drivers/net/smc-ultra32.c | 5 +- drivers/net/smc911x.c | 16 +- drivers/net/smc9194.c | 13 +- drivers/net/smc91x.c | 42 +- drivers/net/smc91x.h | 58 +- drivers/net/smsc911x.c | 2071 +++++ drivers/net/smsc911x.h | 390 + drivers/net/smsc9420.c | 1744 ++++ drivers/net/smsc9420.h | 275 + drivers/net/sonic.c | 1 - drivers/net/sonic.h | 20 +- drivers/net/spider_net.c | 17 +- drivers/net/spider_net_ethtool.c | 8 +- drivers/net/starfire.c | 24 +- drivers/net/stnic.c | 25 +- drivers/net/sun3_82586.c | 40 +- drivers/net/sun3lance.c | 10 +- drivers/net/sunbmac.c | 22 +- drivers/net/sundance.c | 6 +- drivers/net/sungem.c | 65 +- drivers/net/sunhme.c | 31 +- drivers/net/sunlance.c | 7 +- drivers/net/sunqe.c | 15 +- drivers/net/sunvnet.c | 5 +- drivers/net/tc35815.c | 49 +- drivers/net/tehuti.c | 73 +- drivers/net/tg3.c | 1068 ++- drivers/net/tg3.h | 188 +- drivers/net/tlan.c | 213 +- drivers/net/tokenring/3c359.c | 13 +- drivers/net/tokenring/Kconfig | 2 +- drivers/net/tokenring/abyss.c | 4 +- drivers/net/tokenring/ibmtr.c | 15 +- drivers/net/tokenring/lanstreamer.c | 36 +- drivers/net/tokenring/madgemc.c | 12 +- drivers/net/tokenring/olympic.c | 52 +- drivers/net/tokenring/proteon.c | 7 +- drivers/net/tokenring/skisa.c | 7 +- drivers/net/tokenring/smctr.c | 2 - drivers/net/tokenring/tms380tr.c | 15 +- drivers/net/tokenring/tmspci.c | 5 +- drivers/net/tsi108_eth.c | 12 +- drivers/net/tulip/de2104x.c | 54 +- drivers/net/tulip/de4x5.c | 17 +- drivers/net/tulip/dmfe.c | 7 +- drivers/net/tulip/eeprom.c | 2 +- drivers/net/tulip/interrupt.c | 10 +- drivers/net/tulip/tulip_core.c | 15 +- drivers/net/tulip/uli526x.c | 8 +- drivers/net/tulip/winbond-840.c | 16 +- drivers/net/tulip/xircom_cb.c | 4 +- drivers/net/tun.c | 33 +- drivers/net/typhoon.c | 15 +- drivers/net/ucc_geth.c | 408 +- drivers/net/ucc_geth.h | 1 + drivers/net/usb/asix.c | 5 +- drivers/net/usb/catc.c | 43 +- drivers/net/usb/dm9601.c | 5 +- drivers/net/usb/hso.c | 34 +- drivers/net/usb/kaweth.c | 17 +- drivers/net/usb/mcs7830.c | 9 +- drivers/net/usb/pegasus.c | 74 +- drivers/net/usb/rtl8150.c | 38 +- drivers/net/usb/smsc95xx.c | 110 +- drivers/net/usb/usbnet.c | 5 +- drivers/net/veth.c | 30 +- drivers/net/via-rhine.c | 47 +- drivers/net/via-velocity.c | 28 +- drivers/net/virtio_net.c | 217 +- drivers/net/wan/Kconfig | 9 + drivers/net/wan/Makefile | 3 +- drivers/net/wan/c101.c | 6 +- drivers/net/wan/cosa.c | 1 - drivers/net/wan/cycx_x25.c | 91 +- drivers/net/wan/dlci.c | 37 +- drivers/net/wan/dscc4.c | 4 +- drivers/net/wan/farsync.c | 2 - drivers/net/wan/{hd6457x.c => hd64570.c} | 255 +- drivers/net/wan/hd64572.c | 640 ++ drivers/net/wan/hdlc_fr.c | 10 +- drivers/net/wan/hdlc_ppp.c | 649 ++- drivers/net/wan/hostess_sv11.c | 1 - drivers/net/wan/ixp4xx_hss.c | 1325 +++ drivers/net/wan/lapbether.c | 3 - drivers/net/wan/lmc/lmc_main.c | 1 - drivers/net/wan/lmc/lmc_proto.c | 1 - drivers/net/wan/n2.c | 9 +- drivers/net/wan/pc300_drv.c | 22 +- drivers/net/wan/pc300too.c | 121 +- drivers/net/wan/pci200syn.c | 79 +- drivers/net/wan/sbni.c | 101 +- drivers/net/wan/sdla.c | 48 +- drivers/net/wan/sealevel.c | 1 - drivers/net/wan/syncppp.c | 1480 ---- drivers/net/wan/wanxl.c | 9 +- drivers/net/wan/x25_asy.c | 52 +- drivers/net/wan/z85230.c | 12 +- drivers/net/wd.c | 29 +- drivers/net/wireless/Kconfig | 163 +- drivers/net/wireless/Makefile | 22 +- drivers/net/wireless/adm8211.c | 52 +- drivers/net/wireless/adm8211.h | 2 - drivers/net/wireless/airo.c | 243 +- drivers/net/wireless/arlan-main.c | 27 +- drivers/net/wireless/ath5k/ath5k.h | 102 +- drivers/net/wireless/ath5k/attach.c | 14 +- drivers/net/wireless/ath5k/base.c | 191 +- drivers/net/wireless/ath5k/desc.c | 4 +- drivers/net/wireless/ath5k/dma.c | 190 +- drivers/net/wireless/ath5k/eeprom.c | 1194 +++- drivers/net/wireless/ath5k/eeprom.h | 253 +- drivers/net/wireless/ath5k/initvals.c | 8 +- drivers/net/wireless/ath5k/pcu.c | 233 +- drivers/net/wireless/ath5k/phy.c | 9 +- drivers/net/wireless/ath5k/qcu.c | 37 +- drivers/net/wireless/ath5k/reg.h | 16 +- drivers/net/wireless/ath5k/reset.c | 9 +- drivers/net/wireless/ath9k/Kconfig | 11 + drivers/net/wireless/ath9k/Makefile | 9 +- drivers/net/wireless/ath9k/ani.c | 852 ++ drivers/net/wireless/ath9k/ath9k.h | 432 +- drivers/net/wireless/ath9k/beacon.c | 319 +- drivers/net/wireless/ath9k/calib.c | 1021 +++ drivers/net/wireless/ath9k/core.c | 1886 ----- drivers/net/wireless/ath9k/core.h | 926 +-- drivers/net/wireless/ath9k/debug.c | 262 + drivers/net/wireless/ath9k/eeprom.c | 2824 +++++++ drivers/net/wireless/ath9k/hw.c | 8490 +++++--------------- drivers/net/wireless/ath9k/hw.h | 165 +- drivers/net/wireless/ath9k/initvals.h | 1938 +++++- drivers/net/wireless/ath9k/mac.c | 946 +++ drivers/net/wireless/ath9k/main.c | 2353 ++++-- drivers/net/wireless/ath9k/phy.c | 24 +- drivers/net/wireless/ath9k/phy.h | 5 + drivers/net/wireless/ath9k/rc.c | 1832 ++--- drivers/net/wireless/ath9k/rc.h | 220 +- drivers/net/wireless/ath9k/recv.c | 1242 +--- drivers/net/wireless/ath9k/reg.h | 109 +- drivers/net/wireless/ath9k/regd.c | 85 +- drivers/net/wireless/ath9k/regd.h | 2 +- drivers/net/wireless/ath9k/xmit.c | 1532 ++-- drivers/net/wireless/atmel.c | 79 +- drivers/net/wireless/b43/b43.h | 1 - drivers/net/wireless/b43/debugfs.c | 1 + drivers/net/wireless/b43/debugfs.h | 1 + drivers/net/wireless/b43/dma.c | 4 +- drivers/net/wireless/b43/main.c | 280 +- drivers/net/wireless/b43/phy_a.c | 4 +- drivers/net/wireless/b43/phy_common.c | 18 + drivers/net/wireless/b43/phy_g.c | 28 +- drivers/net/wireless/b43/pio.c | 3 +- drivers/net/wireless/b43/xmit.c | 64 +- drivers/net/wireless/b43/xmit.h | 5 +- drivers/net/wireless/b43legacy/b43legacy.h | 5 +- drivers/net/wireless/b43legacy/debugfs.c | 2 +- drivers/net/wireless/b43legacy/dma.c | 48 +- drivers/net/wireless/b43legacy/main.c | 211 +- drivers/net/wireless/b43legacy/phy.c | 6 +- drivers/net/wireless/b43legacy/pio.c | 31 +- drivers/net/wireless/b43legacy/xmit.c | 26 +- drivers/net/wireless/b43legacy/xmit.h | 2 +- drivers/net/wireless/hostap/Kconfig | 13 +- drivers/net/wireless/hostap/hostap.h | 2 +- drivers/net/wireless/hostap/hostap_80211.h | 2 +- drivers/net/wireless/hostap/hostap_80211_rx.c | 72 +- drivers/net/wireless/hostap/hostap_80211_tx.c | 23 +- drivers/net/wireless/hostap/hostap_ap.c | 253 +- drivers/net/wireless/hostap/hostap_ap.h | 8 +- drivers/net/wireless/hostap/hostap_common.h | 13 - drivers/net/wireless/hostap/hostap_hw.c | 71 +- drivers/net/wireless/hostap/hostap_info.c | 16 +- drivers/net/wireless/hostap/hostap_ioctl.c | 157 +- drivers/net/wireless/hostap/hostap_main.c | 45 +- drivers/net/wireless/hostap/hostap_pci.c | 2 +- drivers/net/wireless/hostap/hostap_proc.c | 35 +- drivers/net/wireless/hostap/hostap_wlan.h | 8 +- drivers/net/wireless/ipw2x00/Kconfig | 191 + drivers/net/wireless/ipw2x00/Makefile | 14 + drivers/net/wireless/{ => ipw2x00}/ipw2100.c | 71 +- drivers/net/wireless/{ => ipw2x00}/ipw2100.h | 0 drivers/net/wireless/{ => ipw2x00}/ipw2200.c | 482 +- drivers/net/wireless/{ => ipw2x00}/ipw2200.h | 2 + .../net/wireless/ipw2x00/libipw_geo.c | 0 .../net/wireless/ipw2x00/libipw_module.c | 51 +- .../net/wireless/ipw2x00/libipw_rx.c | 124 +- .../net/wireless/ipw2x00/libipw_tx.c | 7 +- .../net/wireless/ipw2x00/libipw_wx.c | 98 +- drivers/net/wireless/iwlwifi/Kconfig | 2 + drivers/net/wireless/iwlwifi/Makefile | 3 +- drivers/net/wireless/iwlwifi/iwl-3945-commands.h | 148 +- drivers/net/wireless/iwlwifi/iwl-3945-core.h | 28 +- drivers/net/wireless/iwlwifi/iwl-3945-debug.h | 2 +- drivers/net/wireless/iwlwifi/iwl-3945-hw.h | 4 +- drivers/net/wireless/iwlwifi/iwl-3945-io.h | 24 +- drivers/net/wireless/iwlwifi/iwl-3945-led.c | 2 +- drivers/net/wireless/iwlwifi/iwl-3945-led.h | 2 +- drivers/net/wireless/iwlwifi/iwl-3945-rs.c | 223 +- drivers/net/wireless/iwlwifi/iwl-3945-rs.h | 2 +- drivers/net/wireless/iwlwifi/iwl-3945.c | 125 +- drivers/net/wireless/iwlwifi/iwl-3945.h | 40 +- drivers/net/wireless/iwlwifi/iwl-4965-hw.h | 203 +- drivers/net/wireless/iwlwifi/iwl-4965.c | 251 +- drivers/net/wireless/iwlwifi/iwl-5000-hw.h | 64 +- drivers/net/wireless/iwlwifi/iwl-5000.c | 440 +- drivers/net/wireless/iwlwifi/iwl-agn-hcmd-check.c | 108 + drivers/net/wireless/iwlwifi/iwl-agn-rs.c | 179 +- drivers/net/wireless/iwlwifi/iwl-agn-rs.h | 22 +- drivers/net/wireless/iwlwifi/iwl-agn.c | 1241 +-- drivers/net/wireless/iwlwifi/iwl-calib.c | 19 +- drivers/net/wireless/iwlwifi/iwl-calib.h | 2 +- drivers/net/wireless/iwlwifi/iwl-commands.h | 536 +- drivers/net/wireless/iwlwifi/iwl-core.c | 335 +- drivers/net/wireless/iwlwifi/iwl-core.h | 78 +- drivers/net/wireless/iwlwifi/iwl-csr.h | 8 +- drivers/net/wireless/iwlwifi/iwl-debug.h | 33 +- drivers/net/wireless/iwlwifi/iwl-debugfs.c | 83 +- drivers/net/wireless/iwlwifi/iwl-dev.h | 183 +- drivers/net/wireless/iwlwifi/iwl-eeprom.c | 50 +- drivers/net/wireless/iwlwifi/iwl-eeprom.h | 15 +- drivers/net/wireless/iwlwifi/iwl-fh.h | 173 +- drivers/net/wireless/iwlwifi/iwl-hcmd.c | 4 +- drivers/net/wireless/iwlwifi/iwl-helpers.h | 111 +- drivers/net/wireless/iwlwifi/iwl-io.h | 37 +- drivers/net/wireless/iwlwifi/iwl-led.c | 7 +- drivers/net/wireless/iwlwifi/iwl-led.h | 2 +- drivers/net/wireless/iwlwifi/iwl-power.c | 38 +- drivers/net/wireless/iwlwifi/iwl-power.h | 2 +- drivers/net/wireless/iwlwifi/iwl-prph.h | 8 +- drivers/net/wireless/iwlwifi/iwl-rfkill.c | 12 +- drivers/net/wireless/iwlwifi/iwl-rfkill.h | 2 +- drivers/net/wireless/iwlwifi/iwl-rx.c | 230 +- drivers/net/wireless/iwlwifi/iwl-scan.c | 131 +- drivers/net/wireless/iwlwifi/iwl-spectrum.c | 198 + drivers/net/wireless/iwlwifi/iwl-spectrum.h | 3 +- drivers/net/wireless/iwlwifi/iwl-sta.c | 259 +- drivers/net/wireless/iwlwifi/iwl-sta.h | 16 +- drivers/net/wireless/iwlwifi/iwl-tx.c | 438 +- drivers/net/wireless/iwlwifi/iwl3945-base.c | 751 +- drivers/net/wireless/libertas/assoc.c | 69 +- drivers/net/wireless/libertas/cmd.c | 32 +- drivers/net/wireless/libertas/cmd.h | 3 +- drivers/net/wireless/libertas/debugfs.c | 11 +- drivers/net/wireless/libertas/decl.h | 4 - drivers/net/wireless/libertas/defs.h | 14 +- drivers/net/wireless/libertas/dev.h | 7 +- drivers/net/wireless/libertas/ethtool.c | 14 +- drivers/net/wireless/libertas/host.h | 9 + drivers/net/wireless/libertas/hostcmd.h | 26 +- drivers/net/wireless/libertas/if_sdio.c | 3 +- drivers/net/wireless/libertas/if_usb.c | 7 +- drivers/net/wireless/libertas/main.c | 135 +- drivers/net/wireless/libertas/persistcfg.c | 18 +- drivers/net/wireless/libertas/radiotap.h | 3 - drivers/net/wireless/libertas/scan.c | 105 +- drivers/net/wireless/libertas/scan.h | 4 + drivers/net/wireless/libertas/tx.c | 2 +- drivers/net/wireless/libertas/types.h | 5 +- drivers/net/wireless/libertas/wext.c | 80 +- drivers/net/wireless/libertas_tf/cmd.c | 5 +- drivers/net/wireless/libertas_tf/main.c | 8 +- drivers/net/wireless/mac80211_hwsim.c | 294 +- drivers/net/wireless/netwave_cs.c | 6 +- drivers/net/wireless/orinoco/Makefile | 12 + drivers/net/wireless/{ => orinoco}/airport.c | 2 +- drivers/net/wireless/{ => orinoco}/hermes.c | 0 drivers/net/wireless/{ => orinoco}/hermes.h | 0 drivers/net/wireless/{ => orinoco}/hermes_dld.c | 0 drivers/net/wireless/{ => orinoco}/hermes_dld.h | 0 drivers/net/wireless/{ => orinoco}/hermes_rid.h | 0 drivers/net/wireless/{ => orinoco}/orinoco.c | 231 +- drivers/net/wireless/{ => orinoco}/orinoco.h | 9 + drivers/net/wireless/{ => orinoco}/orinoco_cs.c | 10 +- .../net/wireless/{ => orinoco}/orinoco_nortel.c | 0 drivers/net/wireless/{ => orinoco}/orinoco_pci.c | 0 drivers/net/wireless/{ => orinoco}/orinoco_pci.h | 0 drivers/net/wireless/{ => orinoco}/orinoco_plx.c | 0 drivers/net/wireless/{ => orinoco}/orinoco_tmd.c | 0 drivers/net/wireless/{ => orinoco}/spectrum_cs.c | 31 +- drivers/net/wireless/p54/p54.h | 74 +- drivers/net/wireless/p54/p54common.c | 1620 +++- drivers/net/wireless/p54/p54common.h | 349 +- drivers/net/wireless/p54/p54pci.c | 70 +- drivers/net/wireless/p54/p54pci.h | 2 +- drivers/net/wireless/p54/p54usb.c | 261 +- drivers/net/wireless/p54/p54usb.h | 1 + drivers/net/wireless/prism54/isl_ioctl.c | 24 +- drivers/net/wireless/prism54/islpci_hotplug.c | 8 +- drivers/net/wireless/ray_cs.c | 12 +- drivers/net/wireless/rndis_wlan.c | 95 +- drivers/net/wireless/rt2x00/Kconfig | 1 + drivers/net/wireless/rt2x00/rt2400pci.c | 373 +- drivers/net/wireless/rt2x00/rt2400pci.h | 2 + drivers/net/wireless/rt2x00/rt2500pci.c | 407 +- drivers/net/wireless/rt2x00/rt2500pci.h | 2 + drivers/net/wireless/rt2x00/rt2500usb.c | 443 +- drivers/net/wireless/rt2x00/rt2500usb.h | 5 + drivers/net/wireless/rt2x00/rt2x00.h | 113 +- drivers/net/wireless/rt2x00/rt2x00config.c | 202 +- drivers/net/wireless/rt2x00/rt2x00crypto.c | 79 +- drivers/net/wireless/rt2x00/rt2x00debug.c | 47 +- drivers/net/wireless/rt2x00/rt2x00debug.h | 13 + drivers/net/wireless/rt2x00/rt2x00dev.c | 86 +- drivers/net/wireless/rt2x00/rt2x00leds.c | 88 +- drivers/net/wireless/rt2x00/rt2x00lib.h | 33 +- drivers/net/wireless/rt2x00/rt2x00mac.c | 56 +- drivers/net/wireless/rt2x00/rt2x00pci.c | 41 +- drivers/net/wireless/rt2x00/rt2x00pci.h | 37 +- drivers/net/wireless/rt2x00/rt2x00queue.c | 94 +- drivers/net/wireless/rt2x00/rt2x00queue.h | 47 +- drivers/net/wireless/rt2x00/rt2x00usb.c | 145 +- drivers/net/wireless/rt2x00/rt2x00usb.h | 141 +- drivers/net/wireless/rt2x00/rt61pci.c | 469 +- drivers/net/wireless/rt2x00/rt61pci.h | 2 + drivers/net/wireless/rt2x00/rt73usb.c | 689 +- drivers/net/wireless/rt2x00/rt73usb.h | 2 + drivers/net/wireless/rtl818x/Makefile | 7 + drivers/net/wireless/{ => rtl818x}/rtl8180.h | 0 drivers/net/wireless/{ => rtl818x}/rtl8180_dev.c | 48 +- .../net/wireless/{ => rtl818x}/rtl8180_grf5101.c | 0 .../net/wireless/{ => rtl818x}/rtl8180_grf5101.h | 0 .../net/wireless/{ => rtl818x}/rtl8180_max2820.c | 0 .../net/wireless/{ => rtl818x}/rtl8180_max2820.h | 0 .../net/wireless/{ => rtl818x}/rtl8180_rtl8225.c | 14 +- .../net/wireless/{ => rtl818x}/rtl8180_rtl8225.h | 0 .../net/wireless/{ => rtl818x}/rtl8180_sa2400.c | 0 .../net/wireless/{ => rtl818x}/rtl8180_sa2400.h | 0 drivers/net/wireless/{ => rtl818x}/rtl8187.h | 8 +- drivers/net/wireless/{ => rtl818x}/rtl8187_dev.c | 459 +- .../net/wireless/{ => rtl818x}/rtl8187_rtl8225.c | 397 +- .../net/wireless/{ => rtl818x}/rtl8187_rtl8225.h | 0 drivers/net/wireless/{ => rtl818x}/rtl818x.h | 1 + drivers/net/wireless/strip.c | 22 +- drivers/net/wireless/wavelan.c | 122 +- drivers/net/wireless/wavelan_cs.c | 39 +- drivers/net/wireless/wl3501.h | 4 +- drivers/net/wireless/wl3501_cs.c | 11 +- drivers/net/wireless/zd1201.c | 131 +- drivers/net/wireless/zd1211rw/zd_chip.c | 4 +- drivers/net/wireless/zd1211rw/zd_mac.c | 44 +- drivers/net/wireless/zd1211rw/zd_usb.c | 2 +- drivers/net/xen-netfront.c | 9 +- drivers/net/xtsonic.c | 6 +- drivers/net/yellowfin.c | 42 +- drivers/net/znet.c | 28 +- drivers/net/zorro8390.c | 29 +- drivers/parisc/led.c | 4 +- drivers/s390/net/lcs.c | 12 +- drivers/s390/net/qeth_core_offl.c | 8 +- drivers/s390/net/qeth_l2_main.c | 18 +- drivers/scsi/iscsi_tcp.c | 4 +- drivers/scsi/qla4xxx/ql4_os.c | 3 +- drivers/ssb/main.c | 11 +- drivers/ssb/pcihost_wrapper.c | 2 +- drivers/staging/slicoss/slicoss.c | 7 +- drivers/staging/winbond/linux/wbusb.c | 6 +- drivers/staging/wlan-ng/p80211netdev.c | 20 +- drivers/staging/wlan-ng/p80211wext.c | 58 +- drivers/usb/atm/cxacru.c | 4 +- drivers/usb/atm/usbatm.c | 5 +- drivers/usb/gadget/f_phonet.c | 621 ++ drivers/usb/gadget/u_ether.c | 10 +- drivers/usb/gadget/u_phonet.h | 21 + drivers/uwb/wlp/eda.c | 38 +- firmware/Makefile | 3 + firmware/WHENCE | 11 + firmware/cxgb3/t3b_psram-1.1.0.bin.ihex | 162 + firmware/cxgb3/t3c_psram-1.1.0.bin.ihex | 162 + firmware/cxgb3/t3fw-7.0.0.bin.ihex | 1881 +++++ fs/afs/proc.c | 4 +- fs/afs/server.c | 9 +- fs/cifs/cifs_spnego.c | 6 +- fs/cifs/connect.c | 4 +- fs/dlm/netlink.c | 2 +- fs/lockd/host.c | 8 +- fs/lockd/mon.c | 2 +- fs/nfs/nfsroot.c | 6 +- fs/nfs/super.c | 6 +- fs/nfsd/nfs4state.c | 4 +- fs/nfsd/nfsctl.c | 2 +- fs/ocfs2/cluster/netdebug.c | 8 +- fs/ocfs2/cluster/nodemanager.c | 2 +- fs/ocfs2/cluster/tcp.c | 29 +- include/linux/atm.h | 17 +- include/linux/atmdev.h | 15 + include/linux/cgroup_subsys.h | 6 + include/linux/dcbnl.h | 340 + include/linux/dccp.h | 42 +- include/linux/etherdevice.h | 46 + include/linux/ethtool.h | 2 + include/linux/fddidevice.h | 1 + include/linux/filter.h | 3 +- include/linux/fsl_devices.h | 18 +- include/linux/hdlc.h | 4 +- include/linux/hippidevice.h | 4 +- include/linux/ieee80211.h | 212 +- include/linux/if.h | 1 + include/linux/if_arp.h | 3 + include/linux/in.h | 4 + include/linux/ipv6.h | 1 + include/linux/kernel.h | 12 - include/linux/list_nulls.h | 94 + include/linux/mdio-gpio.h | 25 + include/linux/mii.h | 33 + include/linux/mroute6.h | 26 +- include/linux/netdevice.h | 400 +- include/linux/netfilter_bridge/ebtables.h | 3 +- include/linux/netfilter_ipv4/ipt_policy.h | 2 + include/linux/netfilter_ipv6/ip6t_policy.h | 2 + include/linux/netlink.h | 3 +- include/linux/netpoll.h | 5 - include/linux/nl80211.h | 223 +- include/linux/phy.h | 2 + include/linux/pkt_cls.h | 14 + include/linux/pkt_sched.h | 16 + include/linux/rculist_nulls.h | 110 + include/linux/rfkill.h | 8 +- include/linux/rtnetlink.h | 5 + include/linux/skbuff.h | 54 +- include/linux/smsc911x.h | 47 + include/linux/snmp.h | 3 + include/linux/sunrpc/svc_xprt.h | 8 +- include/linux/virtio_net.h | 9 + include/linux/xfrm.h | 14 + include/net/bluetooth/bluetooth.h | 4 +- include/net/bluetooth/hci.h | 2 +- include/net/cfg80211.h | 142 +- include/net/checksum.h | 2 +- include/net/dcbnl.h | 53 + include/net/dn.h | 8 +- include/net/dn_fib.h | 6 +- include/net/dst.h | 39 +- include/net/flow.h | 9 +- include/net/gen_stats.h | 3 +- include/net/ieee80211.h | 148 +- include/net/ieee80211_radiotap.h | 15 +- include/net/inet_hashtables.h | 85 +- include/net/inet_timewait_sock.h | 10 +- include/net/ip.h | 3 +- include/net/ip_vs.h | 17 +- include/net/{ieee80211_crypt.h => lib80211.h} | 75 +- include/net/mac80211.h | 446 +- include/net/ndisc.h | 14 + include/net/neighbour.h | 15 +- include/net/net_namespace.h | 22 + include/net/netfilter/nf_conntrack.h | 5 +- include/net/netfilter/nf_conntrack_ecache.h | 57 +- include/net/netfilter/nf_conntrack_expect.h | 2 + include/net/netfilter/nf_conntrack_helper.h | 5 +- include/net/netfilter/nf_conntrack_l4proto.h | 2 +- include/net/netfilter/nf_conntrack_tuple.h | 12 +- include/net/netfilter/nfnetlink_log.h | 14 + include/net/netlink.h | 24 +- include/net/netns/ipv4.h | 2 + include/net/netns/ipv6.h | 12 + include/net/netns/mib.h | 3 + include/net/netns/x_tables.h | 5 + include/net/netns/xfrm.h | 56 + include/net/phonet/pep.h | 2 +- include/net/phonet/phonet.h | 2 +- include/net/phonet/pn_dev.h | 2 +- include/net/pkt_cls.h | 2 +- include/net/protocol.h | 3 + include/net/sch_generic.h | 38 +- include/net/sctp/sctp.h | 9 +- include/net/sctp/user.h | 2 + include/net/sock.h | 86 +- include/net/syncppp.h | 102 - include/net/tcp.h | 20 +- include/net/udp.h | 25 +- include/net/udplite.h | 2 +- include/net/wireless.h | 90 +- include/net/xfrm.h | 110 +- lib/vsprintf.c | 77 + net/802/fddi.c | 8 +- net/802/hippi.c | 14 +- net/802/tr.c | 24 +- net/8021q/vlan.c | 26 +- net/8021q/vlan.h | 6 +- net/8021q/vlan_core.c | 2 - net/8021q/vlan_dev.c | 76 +- net/9p/trans_rdma.c | 2 - net/Kconfig | 7 +- net/Makefile | 4 +- net/appletalk/aarp.c | 3 +- net/appletalk/ddp.c | 5 +- net/appletalk/sysctl_net_atalk.c | 14 +- net/atm/atm_sysfs.c | 2 +- net/atm/br2684.c | 7 +- net/atm/clip.c | 4 +- net/atm/common.h | 1 + net/atm/ioctl.c | 49 +- net/atm/lec.c | 60 +- net/atm/mpc.c | 40 +- net/atm/mpoa_caches.c | 18 +- net/atm/pvc.c | 3 + net/atm/resources.c | 88 +- net/atm/resources.h | 2 +- net/atm/svc.c | 19 + net/ax25/ax25_in.c | 41 +- net/ax25/sysctl_net_ax25.c | 58 +- net/bluetooth/af_bluetooth.c | 50 +- net/bluetooth/bnep/bnep.h | 2 +- net/bluetooth/bnep/core.c | 8 +- net/bluetooth/bnep/netdev.c | 11 +- net/bluetooth/bnep/sock.c | 5 - net/bluetooth/cmtp/capi.c | 5 - net/bluetooth/cmtp/core.c | 5 - net/bluetooth/cmtp/sock.c | 5 - net/bluetooth/hci_conn.c | 5 - net/bluetooth/hci_core.c | 11 +- net/bluetooth/hci_event.c | 5 - net/bluetooth/hci_sock.c | 5 - net/bluetooth/hci_sysfs.c | 12 +- net/bluetooth/hidp/core.c | 5 - net/bluetooth/hidp/sock.c | 5 - net/bluetooth/l2cap.c | 5 - net/bluetooth/rfcomm/core.c | 5 - net/bluetooth/rfcomm/sock.c | 9 +- net/bluetooth/rfcomm/tty.c | 48 +- net/bluetooth/sco.c | 5 - net/bridge/br_device.c | 20 +- net/bridge/br_if.c | 4 +- net/bridge/br_netfilter.c | 13 +- net/bridge/br_sysfs_br.c | 2 +- net/bridge/netfilter/ebt_log.c | 18 +- net/bridge/netfilter/ebtable_broute.c | 26 +- net/bridge/netfilter/ebtable_filter.c | 41 +- net/bridge/netfilter/ebtable_nat.c | 38 +- net/bridge/netfilter/ebtables.c | 52 +- net/can/raw.c | 22 +- net/core/datagram.c | 5 +- net/core/dev.c | 458 +- net/core/dst.c | 6 +- net/core/ethtool.c | 53 +- net/core/fib_rules.c | 7 +- net/core/filter.c | 19 + net/core/flow.c | 6 +- net/core/gen_estimator.c | 97 +- net/core/neighbour.c | 73 +- net/core/net-sysfs.c | 15 +- net/core/net_namespace.c | 2 - net/core/netpoll.c | 20 +- net/core/pktgen.c | 42 +- net/core/rtnetlink.c | 15 +- net/core/skbuff.c | 277 +- net/core/sock.c | 46 +- net/core/sysctl_net_core.c | 68 +- net/dcb/Kconfig | 22 + net/dcb/Makefile | 1 + net/dcb/dcbnl.c | 1122 +++ net/dccp/ackvec.c | 9 +- net/dccp/ackvec.h | 5 +- net/dccp/ccid.c | 62 +- net/dccp/ccid.h | 26 +- net/dccp/ccids/ccid2.c | 6 +- net/dccp/dccp.h | 17 +- net/dccp/diag.c | 11 +- net/dccp/feat.c | 1458 +++- net/dccp/feat.h | 130 +- net/dccp/input.c | 44 +- net/dccp/ipv4.c | 13 +- net/dccp/ipv6.c | 15 +- net/dccp/minisocks.c | 54 +- net/dccp/options.c | 229 +- net/dccp/output.c | 19 +- net/dccp/probe.c | 19 +- net/dccp/proto.c | 224 +- net/dccp/sysctl.c | 21 - net/dccp/timer.c | 12 - net/decnet/af_decnet.c | 62 +- net/decnet/dn_dev.c | 22 +- net/decnet/dn_neigh.c | 18 +- net/decnet/dn_nsp_in.c | 28 +- net/decnet/dn_nsp_out.c | 23 +- net/decnet/dn_route.c | 29 +- net/decnet/dn_table.c | 2 +- net/decnet/sysctl_net_decnet.c | 48 +- net/dsa/mv88e6060.c | 6 +- net/dsa/mv88e6123_61_65.c | 4 +- net/dsa/mv88e6131.c | 4 +- net/dsa/mv88e6xxx.c | 2 +- net/dsa/slave.c | 2 +- net/dsa/tag_dsa.c | 1 - net/dsa/tag_edsa.c | 1 - net/dsa/tag_trailer.c | 1 - net/ethernet/eth.c | 19 +- net/ieee80211/Kconfig | 73 - net/ieee80211/Makefile | 12 - net/ieee80211/ieee80211_crypt.c | 206 - net/ipv4/af_inet.c | 116 +- net/ipv4/ah4.c | 10 +- net/ipv4/arp.c | 36 +- net/ipv4/cipso_ipv4.c | 1 - net/ipv4/devinet.c | 19 +- net/ipv4/esp4.c | 8 +- net/ipv4/fib_frontend.c | 10 +- net/ipv4/fib_hash.c | 12 +- net/ipv4/fib_semantics.c | 8 +- net/ipv4/fib_trie.c | 6 +- net/ipv4/icmp.c | 39 +- net/ipv4/igmp.c | 95 +- net/ipv4/inet_connection_sock.c | 31 +- net/ipv4/inet_diag.c | 31 +- net/ipv4/inet_hashtables.c | 277 +- net/ipv4/inet_lro.c | 4 +- net/ipv4/inet_timewait_sock.c | 48 +- net/ipv4/inetpeer.c | 2 +- net/ipv4/ip_forward.c | 2 +- net/ipv4/ip_fragment.c | 21 +- net/ipv4/ip_gre.c | 58 +- net/ipv4/ip_input.c | 10 +- net/ipv4/ip_output.c | 24 +- net/ipv4/ip_sockglue.c | 72 +- net/ipv4/ipcomp.c | 10 +- net/ipv4/ipconfig.c | 40 +- net/ipv4/ipip.c | 37 +- net/ipv4/ipmr.c | 280 +- net/ipv4/netfilter.c | 7 +- net/ipv4/netfilter/arp_tables.c | 16 +- net/ipv4/netfilter/arptable_filter.c | 12 +- net/ipv4/netfilter/ip_tables.c | 12 +- net/ipv4/netfilter/ipt_CLUSTERIP.c | 9 +- net/ipv4/netfilter/ipt_LOG.c | 7 +- net/ipv4/netfilter/ipt_addrtype.c | 16 +- net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c | 27 +- net/ipv4/netfilter/nf_conntrack_proto_icmp.c | 4 +- net/ipv4/netfilter/nf_nat_h323.c | 58 +- net/ipv4/netfilter/nf_nat_irc.c | 4 +- net/ipv4/netfilter/nf_nat_rule.c | 27 +- net/ipv4/netfilter/nf_nat_sip.c | 18 +- net/ipv4/netfilter/nf_nat_snmp_basic.c | 9 +- net/ipv4/proc.c | 8 +- net/ipv4/raw.c | 10 +- net/ipv4/route.c | 227 +- net/ipv4/sysctl_net_ipv4.c | 188 +- net/ipv4/tcp.c | 130 +- net/ipv4/tcp_cubic.c | 120 +- net/ipv4/tcp_diag.c | 2 +- net/ipv4/tcp_input.c | 511 +- net/ipv4/tcp_ipv4.c | 137 +- net/ipv4/tcp_minisocks.c | 2 +- net/ipv4/tcp_output.c | 219 +- net/ipv4/tcp_probe.c | 7 +- net/ipv4/tcp_timer.c | 14 +- net/ipv4/tcp_yeah.c | 4 +- net/ipv4/udp.c | 271 +- net/ipv4/udp_impl.h | 4 +- net/ipv4/udplite.c | 14 +- net/ipv4/xfrm4_input.c | 4 +- net/ipv4/xfrm4_policy.c | 15 +- net/ipv4/xfrm4_state.c | 2 - net/ipv6/addrconf.c | 80 +- net/ipv6/addrlabel.c | 34 +- net/ipv6/af_inet6.c | 2 +- net/ipv6/ah6.c | 9 +- net/ipv6/anycast.c | 6 +- net/ipv6/datagram.c | 3 +- net/ipv6/esp6.c | 7 +- net/ipv6/exthdrs.c | 2 +- net/ipv6/icmp.c | 21 +- net/ipv6/inet6_connection_sock.c | 2 +- net/ipv6/inet6_hashtables.c | 182 +- net/ipv6/ip6_flowlabel.c | 6 +- net/ipv6/ip6_output.c | 5 +- net/ipv6/ip6_tunnel.c | 37 +- net/ipv6/ip6mr.c | 490 +- net/ipv6/ipcomp6.c | 10 +- net/ipv6/ipv6_sockglue.c | 34 +- net/ipv6/mcast.c | 41 +- net/ipv6/mip6.c | 3 +- net/ipv6/ndisc.c | 105 +- net/ipv6/netfilter.c | 7 +- net/ipv6/netfilter/ip6t_LOG.c | 7 +- net/ipv6/netfilter/ip6t_REJECT.c | 2 +- net/ipv6/netfilter/ip6table_filter.c | 17 +- net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c | 5 +- net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c | 2 +- net/ipv6/netfilter/nf_conntrack_reasm.c | 6 +- net/ipv6/raw.c | 3 +- net/ipv6/reassembly.c | 12 +- net/ipv6/route.c | 47 +- net/ipv6/sit.c | 35 +- net/ipv6/syncookies.c | 2 +- net/ipv6/sysctl_net_ipv6.c | 4 +- net/ipv6/tcp_ipv6.c | 28 +- net/ipv6/udp.c | 151 +- net/ipv6/udp_impl.h | 4 +- net/ipv6/udplite.c | 9 +- net/ipv6/xfrm6_input.c | 9 +- net/ipv6/xfrm6_policy.c | 22 +- net/ipv6/xfrm6_state.c | 2 - net/ipv6/xfrm6_tunnel.c | 33 +- net/ipx/sysctl_net_ipx.c | 2 +- net/irda/irlan/irlan_client.c | 4 +- net/irda/irlan/irlan_common.c | 2 +- net/irda/irlap_frame.c | 17 +- net/irda/irsysctl.c | 50 +- net/irda/irttp.c | 14 +- net/irda/timer.c | 2 +- net/key/af_key.c | 217 +- net/llc/af_llc.c | 1 - net/llc/llc_proc.c | 3 +- net/llc/sysctl_net_llc.c | 20 +- net/mac80211/Kconfig | 8 +- net/mac80211/Makefile | 2 + net/mac80211/cfg.c | 194 +- net/mac80211/debugfs.c | 12 +- net/mac80211/debugfs_key.c | 4 +- net/mac80211/debugfs_netdev.c | 117 +- net/mac80211/debugfs_sta.c | 84 +- net/mac80211/event.c | 5 +- net/mac80211/ht.c | 265 +- net/mac80211/ieee80211_i.h | 90 +- net/mac80211/iface.c | 54 +- net/mac80211/key.c | 10 +- net/mac80211/main.c | 284 +- net/mac80211/mesh.c | 4 +- net/mac80211/mesh.h | 5 +- net/mac80211/mesh_hwmp.c | 7 +- net/mac80211/mesh_plink.c | 49 +- net/mac80211/mlme.c | 606 +- net/mac80211/rate.c | 52 +- net/mac80211/rate.h | 11 +- net/mac80211/rc80211_minstrel.c | 109 +- net/mac80211/rc80211_minstrel.h | 2 + net/mac80211/rc80211_pid.h | 3 +- net/mac80211/rc80211_pid_algo.c | 38 +- net/mac80211/rc80211_pid_debugfs.c | 5 +- net/mac80211/rx.c | 174 +- net/mac80211/scan.c | 24 +- net/mac80211/sta_info.c | 37 +- net/mac80211/sta_info.h | 45 +- net/mac80211/tkip.c | 10 +- net/mac80211/tx.c | 462 +- net/mac80211/util.c | 107 +- net/mac80211/wep.c | 33 +- net/mac80211/wep.h | 2 +- net/mac80211/wext.c | 257 +- net/mac80211/wme.c | 32 +- net/mac80211/wpa.c | 32 +- net/netfilter/Kconfig | 5 +- net/netfilter/ipvs/ip_vs_conn.c | 20 +- net/netfilter/ipvs/ip_vs_core.c | 20 +- net/netfilter/ipvs/ip_vs_ctl.c | 82 +- net/netfilter/ipvs/ip_vs_dh.c | 34 +- net/netfilter/ipvs/ip_vs_ftp.c | 13 +- net/netfilter/ipvs/ip_vs_lblc.c | 69 +- net/netfilter/ipvs/ip_vs_lblcr.c | 96 +- net/netfilter/ipvs/ip_vs_lc.c | 3 - net/netfilter/ipvs/ip_vs_nq.c | 3 - net/netfilter/ipvs/ip_vs_proto.c | 38 +- net/netfilter/ipvs/ip_vs_proto_ah_esp.c | 10 +- net/netfilter/ipvs/ip_vs_proto_tcp.c | 8 +- net/netfilter/ipvs/ip_vs_proto_udp.c | 8 +- net/netfilter/ipvs/ip_vs_rr.c | 3 - net/netfilter/ipvs/ip_vs_sed.c | 3 - net/netfilter/ipvs/ip_vs_sh.c | 34 +- net/netfilter/ipvs/ip_vs_sync.c | 4 +- net/netfilter/ipvs/ip_vs_wlc.c | 3 - net/netfilter/ipvs/ip_vs_wrr.c | 3 - net/netfilter/ipvs/ip_vs_xmit.c | 34 +- net/netfilter/nf_conntrack_acct.c | 2 +- net/netfilter/nf_conntrack_amanda.c | 1 + net/netfilter/nf_conntrack_core.c | 61 +- net/netfilter/nf_conntrack_ecache.c | 14 +- net/netfilter/nf_conntrack_expect.c | 43 +- net/netfilter/nf_conntrack_ftp.c | 24 +- net/netfilter/nf_conntrack_h323_main.c | 13 +- net/netfilter/nf_conntrack_helper.c | 32 +- net/netfilter/nf_conntrack_irc.c | 14 +- net/netfilter/nf_conntrack_netbios_ns.c | 1 + net/netfilter/nf_conntrack_netlink.c | 201 +- net/netfilter/nf_conntrack_pptp.c | 1 + net/netfilter/nf_conntrack_proto_generic.c | 4 +- net/netfilter/nf_conntrack_proto_gre.c | 2 +- net/netfilter/nf_conntrack_proto_sctp.c | 30 +- net/netfilter/nf_conntrack_proto_tcp.c | 50 +- net/netfilter/nf_conntrack_proto_udp.c | 8 +- net/netfilter/nf_conntrack_proto_udplite.c | 4 +- net/netfilter/nf_conntrack_sane.c | 1 + net/netfilter/nf_conntrack_sip.c | 1 + net/netfilter/nf_conntrack_standalone.c | 16 +- net/netfilter/nf_conntrack_tftp.c | 1 + net/netfilter/nfnetlink_log.c | 4 +- net/netfilter/xt_NFLOG.c | 5 +- net/netfilter/xt_dccp.c | 16 +- net/netfilter/xt_hashlimit.c | 14 +- net/netfilter/xt_iprange.c | 36 +- net/netfilter/xt_recent.c | 32 +- net/netlabel/netlabel_addrlist.c | 4 +- net/netlabel/netlabel_mgmt.c | 1 - net/netlink/af_netlink.c | 7 + net/netlink/attr.c | 8 +- net/netrom/sysctl_net_netrom.c | 48 +- net/packet/af_packet.c | 2 + net/phonet/af_phonet.c | 8 +- net/phonet/pep-gprs.c | 218 +- net/phonet/pep.c | 38 +- net/phonet/pn_dev.c | 6 +- net/phonet/socket.c | 13 +- net/phonet/sysctl.c | 4 +- net/rfkill/rfkill-input.c | 337 +- net/rfkill/rfkill-input.h | 3 + net/rfkill/rfkill.c | 183 +- net/rose/sysctl_net_rose.c | 40 +- net/rxrpc/af_rxrpc.c | 4 +- net/rxrpc/ar-connection.c | 2 +- net/rxrpc/ar-connevent.c | 2 +- net/rxrpc/ar-error.c | 3 +- net/rxrpc/ar-local.c | 16 +- net/rxrpc/ar-peer.c | 8 +- net/rxrpc/ar-proc.c | 16 +- net/rxrpc/ar-security.c | 2 +- net/rxrpc/ar-transport.c | 12 +- net/rxrpc/rxkad.c | 2 +- net/sched/Kconfig | 22 + net/sched/Makefile | 2 + net/sched/act_api.c | 18 +- net/sched/act_gact.c | 4 +- net/sched/act_ipt.c | 4 +- net/sched/act_mirred.c | 4 +- net/sched/act_nat.c | 4 +- net/sched/act_pedit.c | 4 +- net/sched/act_police.c | 33 +- net/sched/act_simple.c | 4 +- net/sched/act_skbedit.c | 4 +- net/sched/cls_api.c | 3 +- net/sched/cls_basic.c | 2 +- net/sched/cls_cgroup.c | 288 + net/sched/cls_fw.c | 2 +- net/sched/cls_route.c | 2 +- net/sched/cls_tcindex.c | 6 - net/sched/cls_u32.c | 11 +- net/sched/ematch.c | 18 +- net/sched/sch_api.c | 50 +- net/sched/sch_atm.c | 36 +- net/sched/sch_blackhole.c | 1 + net/sched/sch_cbq.c | 76 +- net/sched/sch_drr.c | 519 ++ net/sched/sch_dsmark.c | 22 +- net/sched/sch_fifo.c | 4 +- net/sched/sch_generic.c | 40 +- net/sched/sch_gred.c | 22 +- net/sched/sch_hfsc.c | 64 +- net/sched/sch_htb.c | 171 +- net/sched/sch_multiq.c | 82 +- net/sched/sch_netem.c | 160 +- net/sched/sch_prio.c | 50 +- net/sched/sch_red.c | 33 +- net/sched/sch_sfq.c | 71 +- net/sched/sch_tbf.c | 44 +- net/sched/sch_teql.c | 19 +- net/sctp/ipv6.c | 35 +- net/sctp/protocol.c | 29 +- net/sctp/sm_statefuns.c | 24 +- net/sctp/socket.c | 206 +- net/sctp/sysctl.c | 82 +- net/socket.c | 1 - net/sunrpc/clnt.c | 8 +- net/sunrpc/rpcb_clnt.c | 17 +- net/sunrpc/svcauth_unix.c | 24 +- net/sunrpc/svcsock.c | 6 +- net/sunrpc/xprtrdma/svc_rdma_recvfrom.c | 4 +- net/sunrpc/xprtrdma/svc_rdma_sendto.c | 2 +- net/sunrpc/xprtrdma/svc_rdma_transport.c | 16 +- net/sunrpc/xprtrdma/transport.c | 14 +- net/sunrpc/xprtrdma/verbs.c | 16 +- net/sunrpc/xprtsock.c | 41 +- net/tipc/eth_media.c | 3 +- net/tipc/name_table.c | 2 +- net/unix/af_unix.c | 200 +- net/unix/garbage.c | 12 +- net/unix/sysctl_net_unix.c | 3 +- net/wanrouter/wanmain.c | 36 +- net/wireless/Kconfig | 30 + net/wireless/Makefile | 7 + net/wireless/core.c | 14 +- net/wireless/core.h | 13 + net/wireless/lib80211.c | 284 + .../lib80211_crypt_ccmp.c} | 129 +- .../lib80211_crypt_tkip.c} | 181 +- .../lib80211_crypt_wep.c} | 79 +- net/wireless/nl80211.c | 417 +- net/wireless/reg.c | 1005 ++- net/wireless/reg.h | 33 +- net/wireless/sysfs.c | 25 +- net/wireless/util.c | 19 + net/wireless/wext-compat.c | 139 + net/wireless/wext.c | 2 +- net/x25/sysctl_net_x25.c | 22 +- net/xfrm/Makefile | 4 +- net/xfrm/xfrm_input.c | 25 +- net/xfrm/xfrm_output.c | 18 +- net/xfrm/xfrm_policy.c | 511 +- net/xfrm/xfrm_proc.c | 26 +- net/xfrm/xfrm_state.c | 407 +- net/xfrm/xfrm_sysctl.c | 85 + net/xfrm/xfrm_user.c | 249 +- security/selinux/avc.c | 4 +- security/selinux/hooks.c | 4 +- 1395 files changed, 73267 insertions(+), 48032 deletions(-) delete mode 100644 Documentation/DocBook/wanbook.tmpl create mode 100644 Documentation/RCU/rculist_nulls.txt create mode 100644 drivers/atm/solos-pci.c delete mode 100644 drivers/bluetooth/hci_usb.c delete mode 100644 drivers/bluetooth/hci_usb.h create mode 100644 drivers/net/arm/ks8695net.c create mode 100644 drivers/net/arm/ks8695net.h create mode 100644 drivers/net/bonding/bond_ipv6.c delete mode 100644 drivers/net/eepro100.c create mode 100644 drivers/net/ixgbe/ixgbe_dcb.c create mode 100644 drivers/net/ixgbe/ixgbe_dcb.h create mode 100644 drivers/net/ixgbe/ixgbe_dcb_82598.c create mode 100644 drivers/net/ixgbe/ixgbe_dcb_82598.h create mode 100644 drivers/net/ixgbe/ixgbe_dcb_nl.c create mode 100644 drivers/net/phy/et1011c.c create mode 100644 drivers/net/phy/mdio-gpio.c delete mode 100644 drivers/net/phy/mdio-ofgpio.c create mode 100644 drivers/net/phy/national.c create mode 100644 drivers/net/phy/ste10Xp.c create mode 100644 drivers/net/sfc/falcon_gmac.c create mode 100644 drivers/net/sfc/mtd.c create mode 100644 drivers/net/smsc911x.c create mode 100644 drivers/net/smsc911x.h create mode 100644 drivers/net/smsc9420.c create mode 100644 drivers/net/smsc9420.h rename drivers/net/wan/{hd6457x.c => hd64570.c} (78%) create mode 100644 drivers/net/wan/hd64572.c create mode 100644 drivers/net/wan/ixp4xx_hss.c delete mode 100644 drivers/net/wan/syncppp.c create mode 100644 drivers/net/wireless/ath9k/ani.c create mode 100644 drivers/net/wireless/ath9k/calib.c delete mode 100644 drivers/net/wireless/ath9k/core.c create mode 100644 drivers/net/wireless/ath9k/debug.c create mode 100644 drivers/net/wireless/ath9k/eeprom.c create mode 100644 drivers/net/wireless/ath9k/mac.c create mode 100644 drivers/net/wireless/ipw2x00/Kconfig create mode 100644 drivers/net/wireless/ipw2x00/Makefile rename drivers/net/wireless/{ => ipw2x00}/ipw2100.c (99%) rename drivers/net/wireless/{ => ipw2x00}/ipw2100.h (100%) rename drivers/net/wireless/{ => ipw2x00}/ipw2200.c (97%) rename drivers/net/wireless/{ => ipw2x00}/ipw2200.h (99%) rename net/ieee80211/ieee80211_geo.c => drivers/net/wireless/ipw2x00/libipw_geo.c (100%) rename net/ieee80211/ieee80211_module.c => drivers/net/wireless/ipw2x00/libipw_module.c (88%) rename net/ieee80211/ieee80211_rx.c => drivers/net/wireless/ipw2x00/libipw_rx.c (94%) rename net/ieee80211/ieee80211_tx.c => drivers/net/wireless/ipw2x00/libipw_tx.c (98%) rename net/ieee80211/ieee80211_wx.c => drivers/net/wireless/ipw2x00/libipw_wx.c (91%) create mode 100644 drivers/net/wireless/iwlwifi/iwl-agn-hcmd-check.c create mode 100644 drivers/net/wireless/iwlwifi/iwl-spectrum.c create mode 100644 drivers/net/wireless/orinoco/Makefile rename drivers/net/wireless/{ => orinoco}/airport.c (99%) rename drivers/net/wireless/{ => orinoco}/hermes.c (100%) rename drivers/net/wireless/{ => orinoco}/hermes.h (100%) rename drivers/net/wireless/{ => orinoco}/hermes_dld.c (100%) rename drivers/net/wireless/{ => orinoco}/hermes_dld.h (100%) rename drivers/net/wireless/{ => orinoco}/hermes_rid.h (100%) rename drivers/net/wireless/{ => orinoco}/orinoco.c (96%) rename drivers/net/wireless/{ => orinoco}/orinoco.h (96%) rename drivers/net/wireless/{ => orinoco}/orinoco_cs.c (98%) rename drivers/net/wireless/{ => orinoco}/orinoco_nortel.c (100%) rename drivers/net/wireless/{ => orinoco}/orinoco_pci.c (100%) rename drivers/net/wireless/{ => orinoco}/orinoco_pci.h (100%) rename drivers/net/wireless/{ => orinoco}/orinoco_plx.c (100%) rename drivers/net/wireless/{ => orinoco}/orinoco_tmd.c (100%) rename drivers/net/wireless/{ => orinoco}/spectrum_cs.c (95%) create mode 100644 drivers/net/wireless/rtl818x/Makefile rename drivers/net/wireless/{ => rtl818x}/rtl8180.h (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_dev.c (96%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_grf5101.c (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_grf5101.h (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_max2820.c (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_max2820.h (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_rtl8225.c (98%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_rtl8225.h (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_sa2400.c (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_sa2400.h (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8187.h (97%) rename drivers/net/wireless/{ => rtl818x}/rtl8187_dev.c (79%) rename drivers/net/wireless/{ => rtl818x}/rtl8187_rtl8225.c (69%) rename drivers/net/wireless/{ => rtl818x}/rtl8187_rtl8225.h (100%) rename drivers/net/wireless/{ => rtl818x}/rtl818x.h (98%) create mode 100644 drivers/usb/gadget/f_phonet.c create mode 100644 drivers/usb/gadget/u_phonet.h create mode 100644 firmware/cxgb3/t3b_psram-1.1.0.bin.ihex create mode 100644 firmware/cxgb3/t3c_psram-1.1.0.bin.ihex create mode 100644 firmware/cxgb3/t3fw-7.0.0.bin.ihex create mode 100644 include/linux/dcbnl.h create mode 100644 include/linux/list_nulls.h create mode 100644 include/linux/mdio-gpio.h create mode 100644 include/linux/rculist_nulls.h create mode 100644 include/linux/smsc911x.h create mode 100644 include/net/dcbnl.h rename include/net/{ieee80211_crypt.h => lib80211.h} (58%) create mode 100644 include/net/netfilter/nfnetlink_log.h create mode 100644 include/net/netns/xfrm.h delete mode 100644 include/net/syncppp.h create mode 100644 net/dcb/Kconfig create mode 100644 net/dcb/Makefile create mode 100644 net/dcb/dcbnl.c delete mode 100644 net/ieee80211/Kconfig delete mode 100644 net/ieee80211/Makefile delete mode 100644 net/ieee80211/ieee80211_crypt.c create mode 100644 net/sched/cls_cgroup.c create mode 100644 net/sched/sch_drr.c create mode 100644 net/wireless/lib80211.c rename net/{ieee80211/ieee80211_crypt_ccmp.c => wireless/lib80211_crypt_ccmp.c} (74%) rename net/{ieee80211/ieee80211_crypt_tkip.c => wireless/lib80211_crypt_tkip.c} (79%) rename net/{ieee80211/ieee80211_crypt_wep.c => wireless/lib80211_crypt_wep.c} (74%) create mode 100644 net/wireless/wext-compat.c create mode 100644 net/xfrm/xfrm_sysctl.c ÿôèº{.nÇ+·®+%Ëÿ±éݶ\x17¥wÿº{.nÇ+·¥{±þG«éÿ{ayº\x1dÊÚë,j\a¢f£¢·hïêÿêçz_è®\x03(éÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?¨èÚ&£ø§~á¶iOæ¬z·vØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?I¥ ^ permalink raw reply [flat|nested] 39+ messages in thread
* [GIT]: Networking @ 2008-12-28 8:01 ` David Miller 0 siblings, 0 replies; 39+ messages in thread From: David Miller @ 2008-12-28 8:01 UTC (permalink / raw) To: torvalds; +Cc: akpm, netdev, linux-kernel Here are the pending networking changes for the 2.6.29 merge window. A lot of what you see follows the usual boiler plate. A driver maintainer making a lot of changes to driver FOO. Similarly for maintainers of networking protocols. Another person does a series of similar sparse warning fixes, etc. And of course my list of changes is largely composed of merges. But here are the interesting other changes in here: 1) Socket hashes converted to RCU locking by Eric Dumazet. Some really excellent stuff, and he's also done some things to help out socket open/close scalability. Eric also has some VFS layer changes under review with the VFS folks to make that area even better. 2) Harvey Harrison has added some new %pX formatting handlers for ethernet MAC addresses, ipv4 addresses, and ipv6 addresses. 3) Alexey Dobriyan, Benjamin Thery, Daniel Lezcano, and Eric W. Biederman have made more large strides in namespace support for networking. 4) Stephen Hemminger has started the long laborious but useful process of seperating the driver callbacks out of the network device struct. All unconverted drivers still work just fine during this transition period, at pretty much no cost to the fast paths. 5) Ilpo Järvinen implemented resegmentation for the retransmit queue. This is a very powerful operation which cures the most expensive aspects during fast recovery after a loss. In such cases we have to hold onto an entire window of data, and if that window is very large then when the missing chunk gets filled in we loop for a long time freeing tons of SKBs. So as the SACK information advances the edge of packets received in order, we can coalesce these portions back into one large TSO'ish SKB. As a result, when the missing piece of the window is filled in, we do only a small number of SKB frees. It basically divides the work more evenly over the process of recovery. 6) Wang Chen went through the entire tree and made sure every networking driver uses netdev_priv() to get at the driver private. And as a result we could eliminate the struct netdev "priv" member entirely. This set of changes helped spot a few bugs and driver private memory lifetime issues. 7) Benchmarks over loopback hit the dev->last_rx shared data real hard on SMP boxes. This jiffies state is only used by bonding, so we've rearranged things such that only the bonding path even tries to set this thing. This work was done by Jay Vosburgh. Please pull, thanks a lot! The following changes since commit 4a6908a3a050aacc9c3a2f36b276b46c0629ad91: Linus Torvalds (1): Linux 2.6.28 are available in the git repository at: master.kernel.org:/pub/scm/linux/kernel/git/davem/net-next-2.6.git master Abbas, Mohamed (3): iwl3945: add debugfs support iwl3945: Fix iwl3945 rate scaling. iwl3945: Fix rate scale for B-mode connection Abhijeet Kolekar (3): iwlwifi : fix checkpatch.pl errors iwl3945 : Fix ad-hoc mode for 3945 iwl3945 : Fix a-band association for passive channels Adrian Bunk (1): The overdue eepro100 removal. Al Viro (1): ixgbe: section fixes Alan Cox (2): tty: Flags should be accessed via the foo_bit interfaces tty: driverdata and discdata are void * Alexander Duyck (20): e1000e: enable ECC correction on 82571 silicon igb: update name to reflect new hardware igb: simplify swap in clean_rx_irq if using packet split igb: Fix tx/rx_ring_count parameters for igb on suspend/resume/ring resize ixgbe: this patch adds support for DCB to the kernel and ixgbe driver DCB: Add interface to query for the DCB capabilities of an device. DCB: Add interface to query # of TCs supported by device DCB: Add interface to query the state of PFC feature. DCB: Add support for DCB BCN e1000e: disable correctable errors for quad ports while going to D3 igb: do not use phy ops in ethtool test cleanup for non-copper parts igb: remove unneeded bit refrence when enabling jumbo frames igb: loopback bits not correctly cleared from RCTL register igb: link up/down messages must follow a specific format igb: Add support for pci-e Advanced Error Reporting igb/e1000e: Naming interrupt vectors igb: update handling of RCTL for smaller buffer sizes igb: Correctly determine pci-e function number in virtual environment igb: defeature tx head writeback igb: re-order queues to support cleaner use of ivar on 82576 Alexey Dobriyan (85): net: reduce structures when XFRM=n net: don't use INIT_RCU_HEAD xfrm: C99 for xfrm_dev_notifier xfrm: remove unused struct xfrm_policy::next net: '&' redux netfilter: netns-aware ipt_addrtype netfilter: arptable_filter: merge forward hook netfilter: netns ebtables: part 1 netfilter: netns ebtables: part 2 netfilter: netns ebtables: more cleanup during ebt_unregister_table() netfilter: netns ebtables: ebtable_broute in netns netfilter: netns ebtables: ebtable_filter in netns netfilter: netns ebtables: ebtable_nat in netns netfilter: netns ebtables: br_nf_pre_routing_finish() fixup net: #ifdef ->sk_security net: mark flow_cache_cpu_prepare() as __init net: remove struct neigh_table::pde net: remove struct dst_entry::entry_size net: ifdef struct sock::sk_async_wait_queue net: use %pF for /proc/net/ptype ematch: simpler tcf_em_unregister() netfilter: xt_recent: don't save proc dirs netfilter: ip6table_filter: merge LOCAL_IN and FORWARD hooks netfilter: nf_conntrack_proto_gre: spread __exit net: fix tunnels in netns after ndo_ changes ah4/ah6: remove useless NULL assignments xfrm: remove useless forward declarations xfrm: initialise xfrm_policy_gc_work statically netns xfrm: add netns boilerplate netns xfrm: add struct xfrm_state::xs_net netns xfrm: per-netns xfrm_state_all list netns xfrm: per-netns xfrm_state_bydst hash netns xfrm: per-netns xfrm_state_bysrc hash netns xfrm: per-netns xfrm_state_byspi hash netns xfrm: per-netns xfrm_state_hmask netns xfrm: per-netns xfrm_state counts netns xfrm: per-netns xfrm_hash_work netns xfrm: per-netns state GC list netns xfrm: per-netns state GC work netns xfrm: per-netns km_waitq netns xfrm: add struct xfrm_policy::xp_net netns xfrm: per-netns policy list netns xfrm: per-netns xfrm_policy_byidx hash netns xfrm: per-netns xfrm_policy_byidx hashmask netns xfrm: per-netns inexact policies netns xfrm: per-netns xfrm_policy_bydst hash netns xfrm: per-netns policy counts netns xfrm: per-netns policy hash resizing work netns xfrm: propagate netns into bydst/bysrc/byspi hash functions netns xfrm: trivial netns propagations netns xfrm: state flush in netns netns xfrm: state lookup in netns netns xfrm: fixup xfrm_alloc_spi() netns xfrm: finding states in netns netns xfrm: state walking in netns netns xfrm: propagate netns into policy byidx hash netns xfrm: policy insertion in netns netns xfrm: policy flushing in netns netns xfrm: finding policy in netns netns xfrm: policy walking in netns netns xfrm: lookup in netns netns xfrm: xfrm_policy_check in netns netns xfrm: xfrm_route_forward() in netns netns xfrm: flushing/pruning bundles in netns netns xfrm: dst garbage-collecting in netns netns xfrm: xfrm_input() fixup netns xfrm: per-netns NETLINK_XFRM socket netns xfrm: xfrm_user module in netns netns xfrm: pass netns with KM notifications netns xfrm: KM reporting in netns netns xfrm: ->dst_lookup in netns netns xfrm: ->get_saddr in netns netns xfrm: flush SA/SPDs on netns stop netns PF_KEY: part 1 netns PF_KEY: part 2 netns PF_KEY: per-netns /proc/pfkey netns xfrm: AH/ESP in netns! netns xfrm: per-netns MIBs netns xfrm: /proc/net/xfrm_stat in netns netns xfrm: per-netns sysctls netdev: remove pathetic compile-command lines hydra: fix compilation simeth: convert to net_device_ops netns: igmp: allow IPPROTO_IGMP sockets in netns netns: igmp: make /proc/net/{igmp,mcfilter} per netns Alexey Fisher (1): ipw2200: make association only if SSID is known. Andrew Morton (1): drivers/net/smc911x.c: smc911x_drv_probe() cleanup Andrey Borzenkov (3): orinoco: reload firmware on resume orinoco: cache downloadable firmware image in memory for use during resume orinoco: indicate it is using dBm in wireless_stats and spy Andrey Yurovsky (4): ath5k: fix mesh point operation mac80211: allow all interfaces types to handle RX action frames mac80211: disable BSSID filtering for mesh interfaces mac80211_hwsim: enable Mesh Point operation Andy Fleming (6): gianfar: Use gfar_halt to stop DMA in gfar_probe gianfar: Convert gianfar to an of_platform_driver gianfar: Add macros for stepping through BDs phylib: Remove unnecessary "reset" fixups in genphy_setup_forced gianfar: Fix packet drop when out of memory gianfar: Continue polling until both tx and rx are empty Andy Gospodarek (1): bonding: update docs to correctly reflect arp_ip_target behavior Andy Whitcroft (1): netfilter: ip{,6}t_policy.h should include xp_policy.h Anna Neal (2): libertas: Fine grained configuration of wake-on-lan. libertas: Create sysfs entry for changing the mesh probe response limit Anton Vorontsov (7): ucc_geth: Fix endless loop in stop_{tx,rx} routines ucc_geth: Fix TX watchdog timeout handling ucc_geth: Fix IRQ freeing code in ucc_geth_open() ucc_geth: Cleanup repetitive ucc_geth_memclean() calls ucc_geth: Fix IO memory (un)mapping code ucc_geth: Remove UGETH_FILTERING dead code ucc_geth: Eliminate the need for forward references Arjan van de Ven (1): pci: use pci_ioremap_bar() in drivers/net Arnaldo Carvalho de Melo (1): dccp_diag: LISTEN sockets don't have CCIDs Arnaud Ebalard (1): net: Remove unused parameter of xfrm_gen_index() Atsushi Nemoto (2): tc35815: Define more Rx status bits tc35815: Enable StripCRC feature Balazs Scheidler (1): TPROXY: implemented IP_RECVORIGDSTADDR socket option Baruch Siach (1): enc28j60: reduce the number of spi transfers in enc28j60_set_bank() Ben Greear (1): ipv4: Fix ARP behavior with many mac-vlans Ben Hutchings (41): sfc: Correct address of gPXE boot configuration in EEPROM sfc: Clean up non-volatile memory partitioning sfc: Expose flash region storing boot code as MTD sfc: Use lm87 and lm90 drivers for board temperature/power monitoring sfc: Do not reset when hardware monitor detects a fault sfc: Fix dependency for SFC_MTD sfc: Board support fixes sfc: Change SPI lengths to type size_t sfc: Remove unneeded register write sfc: Correct interpretation of second param to ethtool phys_id() sfc: Clean up waits for flash/EEPROM operations sfc: Work around unreliable strap pins sfc: Restore phy_flash_cfg module parameter sfc: Provide hints to irqbalance daemon sfc: Abbreviate self-test names so they are not truncated sfc: Don't count RX checksum errors during loopback self-test sfc: Remove MII extension cruft sfc: Add support for MMDs numbered >15 sfc: Add phy_type device attribute sfc: Clean up board identification sfc: Clean up MDIO flag setting sfc: Add support for sub-10G speeds sfc: Implement auto-negotiation sfc: Rework MAC, PHY and board event handling sfc: Add support for Solarflare 10Xpress SFT9001 sfc: Add support for SFN4111T sfc: Remove leading spaces sfc: Specify a meaningful component for loopback RX-side and PHY tests sfc: Use mutex_lock_interruptible() for ethtool EEPROM access sfc: Use model numbers for PHY type names sfc: Use kzalloc() to ensure struct efx_spi_device is fully initialised sfc: Fix synchronisation of efx_mtd_{probe,rename,remove} sfc: Version 2.3 sfc: Generate unique names for per-NIC workqueues sfc: Fix unreliable link detection in some loopback modes sfc: Clean up PHY mode management in loopback self-test sfc: Merge top-level functions for self-tests sfc: Add support for multiple PHY self-tests sfc: SFT9001: Add cable diagnostics sfc: When disabling the NIC, close the device rather than unregistering it sfc: If AN is enabled, always read speed/duplex from the AN advertising bits Benjamin Thery (11): net: fix /proc/net/ip_mr_cache display - V2 net: /proc/net/ip_mr_cache, display Iif as a signed short netns: ip6mr: allocate mroute6_socket per-namespace. netns: ip6mr: dynamically allocates vif6_table netns: ip6mr: store netns in struct mfc6_cache netns: ip6mr: dynamically allocate mfc6_cache_array netns: ip6mr: declare counter cache_resolve_queue_len per-namespace netns: ip6mr: declare mroute_do_assert and mroute_do_pim per-namespace netns: ip6mr: declare reg_vif_num per-namespace netns: ip6mr: declare ip6mr /proc/net entries per-namespace netns: ip6mr: enable namespace support in ipv6 multicast forwarding code Benoit PAPILLAULT (2): ath9k : Display MAC/BB and RF version at startup (v2) ath5k: fix 802.11 header padding on RX, unpadding on TX Bob Copeland (11): mac80211: fix a few typos in mac80211 kernel doc ath9k: remove useless conditional ath5k: fix keytable type buglet in ath5k_hw_reset_key ath5k: enable hardware encryption for WEP ath5k: update keycache to support TKIP handling ath5k: set mac address in add_interface ath5k: preserve higher order bits when setting mac address ath5k: clean up ath5k_hw_set_key ath5k: enable combined michael mic in key cache ath5k: fix endianness of bitwise ops when installing mic ath5k: correct packet length in tx descriptors Brian Haley (1): bonding: send IPv6 neighbor advertisement on failover Brice Goglin (7): myri10ge: fix per-slice rx/tx_dropped counters myri10ge: remove hardcoded sram_size myri10ge: update DCA comments myri10ge: update firmware headers myri10ge: check fragmentation in LRO get_frag_header() myri10ge: update firmware headers to 1.4.37 myri10ge: update driver version to 1.4.4-1.395 Bruce Allan (11): e1000e: commit speed/duplex changes for m88 PHY e1000e: 82571 check for link fix on 82571 serdes e1000e: update comments listing supported parts for each MAC family e1000e: check return of pci_save_state e1000e: ESB2 config after link up e1000e: link up/down messages must follow a specific format e1000e: sync change flow control variables with ixgbe e1000e: cosmetic newline in debug message e1000e: store EEPROM version number to prevent unnecessary NVM reads e1000e: fix incorrect link status when switch module pulled e1000e: check return code from NVM accesses and fix bank detection Chaithrika U S (1): phy: Add LSI ET1011C PHY driver Chatre, Reinette (2): iwlwifi: replace magic constants with define iwlwifi: store ucode version number Chr (1): p54: initialize all deprecated fields Christian Lamparter (30): p54: honour bss_info_changed's short slot time settings p54: broken out edcf changes p54: refactor statistic timer code p54: p54: refactor p54_rx_frame_sent p54: fix memory management p54: borrow some setup code from stlc45xx p54: introduce new names for device firmwares p54: more definitions form lmac_longbow.h and pda.h p54: put broadcast frames into the right queues p54: AP & Ad-hoc testing p54: enable Mesh Point support p54: minor fixes p54pci: cache firmware for suspend/resume p54: honour bss_info_changed's basic_rates and other settings p54: fix wmm queue settings mac80211: add sta_notify_ps callback p54: revamp station power save management in access point mode p54: utilize cryptographic accelerator p54: include support for 2.13.24.0 USB LM87 Firmwares p54: refactoring p54: per-device names p54usb: rewriting rx/tx routines to make use of usb_anchor's facilities mac80211: integrate sta_notify_ps cmds into sta_notify p54: enforce strict tx_queue limits p54: fix oops on faulty devices p54: move statistic timer update routine into a workqueue p54: update ACK failure statistic counter in real-time p54: more accurate rssi to dBm conversion p54: remove free_on_tx parameter p54usb: bring first generation devices back to life Colin McCabe (1): ath9k: Replace ath9k_opmode with nl80211_iftype Cyrill Gorcunov (2): net: ppp_generic - use idr technique instead of cardmaps net: ppp_generic - use DEFINE_IDR for static initialization Dai Haruki (9): gianfar: Optimize interrupt coalescing configuration gianfar: Fix eTSEC configuration procedure gianfar: Fix VLAN HW feature related frame/buffer size calculation. gianfar: Enable padding and Optimize the frame prepended bytes handling gianfar: Remove unused gfar_add_fcb() function parameter gianfar: Make all BD status writes 32-bit gianfar: Add Scatter Gather support gianfar: Use interface name in interrupt name to distinguish the source. gianfar: Merge Tx and Rx interrupt for scheduling clean up ring Daniel C. Halperin (1): iwlwifi: convert correctly rate_n_flags to PLCP index for mimo3 packets Daniel Halperin (1): iwlwifi: Update reclaim flag Daniel Lezcano (3): veth: Remove useless veth field veth: remove unused list netns: filter out uevent not belonging to init_net Daniel Silverstone (1): net: Add support for the KS8695 ethernet devices. Dave Jones (1): net: Allow dependancies of FDDI & Tokenring to be modular. David Brownell (1): pegasus: minor resource shrinkage David Kilroy (8): orinoco: Move sources to a subdirectory orinoco: Separate fw caching from download orinoco: Cache Symbol firmware orinoco: Resume spectrum_cs in the same way as orinoco_cs orinoco: Provide option to avoid unnecessary fw caching orinoco: Fix function names used in debug strings orinoco: Fix inappropriate use of IRQ_BAP spectrum_cs: Fix function names used in debug strings David S. Miller (49): Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'davem-next' of master.kernel.org:/.../jgarzik/netdev-2.6 sunrpc: Fix build warning due to typo in %pI4 format changes. drivers/net: Kill now superfluous ->last_rx stores. net/: Kill now superfluous ->last_rx stores. Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'davem-next' of master.kernel.org:/.../jgarzik/netdev-2.6 Revert "net: Guaranetee the proper ordering of the loopback device." Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 dm9000: Fix build error. Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 inet_diag: Missed conversion after changing inet ehash lockl to spinlocks. Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 Merge branch 'for-david' of git://git.kernel.org/.../chris/linux-2.6 net: Make sure BHs are disabled in sock_prot_inuse_add() axnet_cs: Fix build after net device ops ne2k conversion. Revert "hso: Add TIOCM ioctl handling." Revert "hso: Fix free of mutexes still in use." Revert "hso: Fix crashes on close." smc-mca: Fix build failure due to typo. Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'master' of git://git.kernel.org/.../kaber/nf-next-2.6 phy: Add file missed in previous commit. Merge branch 'master' of ssh://master.kernel.org/.../rusty/linux-2.6-for-linus Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'master' of git://git.kernel.org/.../holtmann/bluetooth-next-2.6 Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 bluetooth: Fix rfcomm_sock_ioctl() build failure with debugging enabled. bluetooth: Fix unused var warning properly in rfcomm_sock_ioctl(). Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 8390/8390p: Fix compat netdev ops handling. Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 bnx2: Don't redefine FLOW_CTRL_{RX,TX}. bnx2x: Fix namespace collision with FLOW_CTRL_{TX,RX} Revert "net: release skb->dst in sock_queue_rcv_skb()" Revert "xfrm: Accept ESP packets regardless of UDP encapsulation mode" Merge branch 'master' of git://git.kernel.org/.../linville/wireless-next-2.6 Merge branch 'master' of master.kernel.org:/.../davem/net-2.6 Merge branch 'for-david' of git://git.kernel.org/.../chris/linux-2.6 net: Fix warning fallout from recent NAPI interface changes. igb: Fix build warning when DCA is disabled. Merge branch 'master' of ../net-next-2.6/ into net2629 David Woodhouse (2): atm: 32-bit ioctl compatibility atm: Driver for Solos PCI ADSL2+ card. Denis Joseph Barrow (6): hso: Add new usb device id's. hso: Fix crashes on close. hso: Fix URB submission -EINVAL. hso: Fix free of mutexes still in use. hso: Add TIOCM ioctl handling. hso: Hook up ->reset_resume Divy Le Ray (8): cxgb3 - enable lro control through ethtool cxgb3: set hard_xmit in the netdev_ops cxgb3: avoid potential memory leak. cxgb3: integrate FW and protocol engines in the kernel cxgb3: Update FW loading path. cxgb3: Add multiple Tx queue support. cxgb3: untie strict FW matching cxgb3: add control to access embedded images Don Skidmore (4): net: fix dcbnl_setnumtcs operation check net: fix DCB setstate to return success/failure net: add DCNA attribute to the BCN interface for DCB ixgbe: fix the display of DCB control stats in ethtool Donald Skidmore (1): ixgbe: add SFP+ driver support Ed Swierk (1): forcedeth: power down phy when interface is down Emmanuel Grumbach (2): iwlwifi: rename generic iwlagn functions that had a HW specific name iwlwifi: rename double inclusion protection name in iwl-commands.h Eric Dumazet (43): udp: introduce struct udp_table and multiple spinlocks udp: RCU handling for Unicast packets. udp: calculate udp_mem based on low memory instead of all memory udp: udp_get_next() should use spin_unlock_bh() udp: introduce sk_for_each_rcu_safenext() udp: Should use spin_lock_bh()/spin_unlock_bh() in udp_lib_unhash() udp: add a missing smp_wmb() in udp_lib_get_port() net: sk_free_datagram() should use sk_mem_reclaim_partial() net: Introduce read_pnet() and write_pnet() helpers net: ib_net pointer should depends on CONFIG_NET_NS net: Cleanup of neighbour code net: speedup dst_release() rcu: Introduce hlist_nulls variant of hlist udp: Use hlist_nulls in UDP RCU code net: Convert TCP & DCCP hash tables to use RCU / hlist_nulls rcu: documents rculist_nulls net: make sure struct dst_entry refcount is aligned on 64 bytes net: Cleanup of af_unix net: af_unix can make unix_nr_socks visbile in /proc net: af_unix should update its inuse counter net: sctp should update its inuse counter net: af_packet should update its inuse counter net: make /proc/net/protocols namespace aware net: inet_diag_handler structs can be const net: af_unix should use KERN_INFO instead of KERN_DEBUG net: listening_hash get a spinlock per bucket net: convert TCP/DCCP ehash rwlocks to spinlocks net: use net_eq() in INET_MATCH and INET_TW_MATCH net: some optimizations in af_inet net: af_netlink should update its inuse counter net: Convert TCP/DCCP listening hash tables to use RCU eth: Declare an optimized compare_ether_addr_64bits() function net: Make sure BHs are disabled in sock_prot_inuse_add() net: Make sure BHs are disabled in sock_prot_inuse_add() net: avoid a pair of dst_hold()/dst_release() in ip_append_data() net: avoid a pair of dst_hold()/dst_release() in ip_push_pending_frames() net: Make sure BHs are disabled in sock_prot_inuse_add() net: udp_unhash() can test if sk is hashed net: Use a percpu_counter for sockets_allocated net: Use a percpu_counter for orphan_count net: release skb->dst in sock_queue_rcv_skb() net: percpu_counter_inc() should not be called in BH-disabled section vlan: fix convertion to net_device_ops Eric Leblond (4): netfilter: xt_NFLOG: don't call nf_log_packet in NFLOG module. netfilter: nfmark routing in OUTPUT, mangle, NFQUEUE netfilter: nfmark IPV6 routing in OUTPUT, mangle, NFQUEUE netfilter: xt_NFLOG is dependant of nfnetlink_log Eric W. Biederman (6): netns: Coexist with the sysfs limitations v2 netns: Delete virtual interfaces during namespace cleanup net: Guaranetee the proper ordering of the loopback device. net: Don't leak packets when a netns is going down net: fib_rules ordering fixes. net: Guaranetee the proper ordering of the loopback device. v2 Fabio Rossi (1): mac80211: accept empty strings for hidden SSIDs Fabrice Bellet (1): iwl3945: iwl3945_mac_get_tsf() should not return zero Felix Fietkau (4): minstrel: improve performance for non-MRR drivers ath5k: ignore the return value of ath5k_hw_noise_floor_calibration mac80211: fix BUILD_BUG_ON() caused by misalignment on arm ath5k: Clean up eeprom parsing and add missing calibration data Florian Fainelli (1): r6040: bump release number to 0.19 Francois Romieu (1): r8169: convert to net_device_ops Gerrit Renker (33): dccp: Basic data structure for feature negotiation dccp: Implement lookup table for feature-negotiation information dccp: List management for new feature negotiation dccp: Per-socket initialisation of feature negotiation dccp: Cleanup routines for feature negotiation dccp: Limit feature negotiation to connection setup phase dccp: Registration routines for changing feature values dccp: Query supported CCIDs dccp: Resolve dependencies of features on choice of CCID dccp: Mechanism to resolve CCID dependencies dccp: Deprecate old setsockopt framework dccp: Feature negotiation for minimum-checksum-coverage dccp: Deprecate Ack Ratio sysctl dccp: Tidy up setsockopt calls dccp: Fix bracing in dccp_feat_list_lookup. dccp: Set per-connection CCIDs via socket options dccp: API to query the current TX/RX CCID dccp: Increase the scope of variable-length htonl/ntohl functions dccp: Support for Mandatory options dccp: Header option insertion routine for feature-negotiation dccp: Insert feature-negotiation options into skb dccp: Integrate feature-negotiation insertion code dccp: Preference list reconciliation dccp: Process incoming Change feature-negotiation options dccp: Processing Confirm options dccp: Feature activation handlers dccp: Integration of dynamic feature activation - part 1 (socket setup) dccp: Integration of dynamic feature activation - part 2 (server side) dccp: Integration of dynamic feature activation - part 3 (client side) dccp: Clean up old feature-negotiation infrastructure dccp: Remove obsolete parts of the old CCID interface dccp: Remove manual influence on NDP Count feature dccp ccid-2: Phase out the use of boolean Ack Vector sysctl Giuseppe Cavallaro (3): phy: add natsemi PHY driver phy: power management support phy: add the ST ste10Xp PHYs Guo-Fu Tseng (1): jme: Remove 64 and 40 bit dma_mask Halperin, Daniel C (2): iwlwifi: update iwl-commands.h for 3 stream support iwlwifi: implement iwl_debug_report_frame for iwlagn Hannes Eder (37): pkt_sched: fix sparse warning mISDN: use NULL pointer instead of plain integer mISDN: consistently define 'debug' as '*u_int' mISDN: make global symbols static or include header files mISDN: un-export symbol 'plx_lock' mISDN: fix sparse warning: symbol 'nskb' shadows an earlier one mISDN: fix sparse warning: symbol 'id' shadows an earlier one mISDN: comment out unused symbols mISDN: timerdev: use __user for mISDN_read's buffer argument mISDN: hfcmulti: use __iomem address space modifier isdn: eicon: fix sparse warning: make global functions static drivers/net: fix sparse warning: use ANSI-style function declaration drivers/net: fix sparse warnings: make do-while a compound statement drivers/net: fix sparse warning: returning void-valued expression drivers/net: fix sparse warnings: make symbols static drivers/net/arcnet: fix sparse warnings: make symbols static drivers/net/atlx: fix sparse warnings: make symbols static drivers/net/bonding: fix sparse warnings: move decls to header file drivers/net/cxgb3: comment out dead code drivers/net/e1000e: fix sparse warnings: make symbols static drivers/net/enic: fix sparse warning: make symbol static drivers/net/igb: remove dead code (function 'igb_read_pci_cfg') drivers/net/irda: fix sparse warnings: make symbols static drivers/net/ixgbe: fix sparse warnings: make symbols static drivers/net/netxen: fix sparse warnings: use NULL pointer instead of plain integer drivers/net/qlge: fix sparse warnings: make symbols static drivers/net/skfp: fix sparse warnings: make symbols static drivers/net/tokenring: fix sparse warnings: make symbols static drivers/net/tulip: fix sparse warnings: make do-while a compound statement drivers/net/wan: fix sparse warnings: make do-while a compound statement drivers/net/wan: fix sparse warning: make symbol static drivers/net/wan/z85230.c: fix sparse warnings: un-EXPORT symbols drivers/net/wireless: fix sparse warnings: make symbols static drivers/net/wireless/ath9k: fix sparse warnings: make symbols static drivers/net/wireless/b43: fix sparse warnings: make symbols static drivers/net/wireless/ipw2x00: fix sparse warnings: make symbols static drivers/net/wireless/prism54: fix sparse warnings: make symbols static Hannes Hering (1): ehea: Fix some whitespace issues Harvey Harrison (35): printk: add %pM format specifier for MAC addresses printk: add %p6 format specifier for IPv6 addresses net: replace all current users of NIP6_SEQFMT with %#p6 misc: replace NIP6_FMT with %p6 format specifier netfilter: replace uses of NIP6_FMT with %p6 net: replace uses of NIP6_FMT with %p6 net, misc: replace uses of NIP6_FMT with %p6 infiniband: use %p6 for printing message ids infiniband: ipoib replace IPOIB_GID_FMT with %p6 infiniband: remove IPOIB_GID_RAW_ARG, IPOIB_GID_ARG, IPOIB_GID_FMT uwb: use the %pM formatting specifier in eda.c net: remove NIP6(), NIP6_FMT, NIP6_SEQFMT and final users printk: add %I4, %I6, %i4, %i6 format specifiers net: replace %#p6 format specifier with %pi6 net: replace %p6 with %pI6 printk: remove %p6 format specifier, fix up comments net: easy removals of HIPQUAD using %pI4 format net: replace NIPQUAD() in net/ipv4/netfilter/ net: replace NIPQUAD() in net/ipv4/ net/ipv6/ net: replace NIPQUAD() in net/netfilter/ net: replace NIPQUAD() in net/*/ drivers: replace NIPQUAD() fs: replace NIPQUAD() misc: replace NIPQUAD() printk: ipv4 address digits printed in reverse order ipvs: oldlen, newlen should be be16, not be32 phonet: sparse annotations of protocol, remove forward declaration tipc: trivial endian annotation in debug statement isdn: use %pI4, remove get_{u8/u16/u32} and put_{u8/u16/u32} inlines net: ip_sockglue.c add static, annotate ports' endianness isdn: isdn_net.c annotate struct ip_ports and trivial sparse fixes aoe: remove private mac address format function decnet: remove private wrappers of endian helpers decnet: compile fix for removal of byteorder wrapper iwlwifi: remove uses of __constant_{endian} helpers Helmut Schaa (2): iwl3945: remove obsolete irq handling ipw2200: fix scanning while associated Henning Rogge (1): nl80211: Add signal strength and bandwith to nl80211station info Henrique de Moraes Holschuh (7): rfkill: use killable locks instead of interruptible rfkill: export global states to rfkill-input rfkill: add master_switch_mode and EPO lock to rfkill and rfkill-input rfkill: honour EPO state when resuming a rfkill controller rfkill: rate-limit rfkill-input workqueue usage (v3) rfkill: preserve state across suspend rfkill: always call get_state() hook on resume Herbert Xu (11): net: Add frag_list support to skb_segment net: Add frag_list support to GSO net: Add Generic Receive Offload infrastructure ipv4: Add GRO infrastructure net: Add skb_gro_receive tcp: Add GRO support ethtool: Add GGRO and SGRO ops e1000e: Add GRO support tcp: Always set urgent pointer if it's beyond snd_nxt ipsec: Remove useless ret variable gro: Fix potential use after free Herton Ronaldo Krzesinski (6): rtl8187: adapt for deprecated IEEE80211_CONF_SHORT_SLOT_TIME flag rtl8187: add short slot handling for 8187B rtl8187: fix 8187B throughput regression rtl8187: implement conf_tx callback to configure tx queues rtl8187: feedback transmitted packets using tx close descriptor for 8187B rtl8187: Fix crash on unload when using SLUB debug Holger Eitzenberger (23): bonding: add and use bond_is_lb() bonding: use table for mode names bonding: fix compile error if debug enabled bonding: use pr_debug instead of own macros bonding: remove duplicate declarations bonding: make tbl argument to bond_parse_parm() const bonding: turn all bond_parm_tbls const bonding: improve elaborate port_state assignment bonding: introduce and use port_params structure bonding: use port_params in __record_pdu() bonding: use plain memcpy in __record_default() bonding: init port_params from template bonding: remove various function declarations bonding: use port_params in __update_selected() bonding: use port_params in __update_default_selected() bonding: use port_params in __update_lacpdu_from_port 802.3ad: make ntt bool 802.3ad: turn ports is_enabled into a bool 802.3ad: turn ports is_individual into a bool 802.3ad: remove typedef around ad_system 802.3ad: initialize ports LACPDU from const initializer 802.3ad: generalize out mac address initializer 802.3ad: use standard ethhdr instead of ad_header Holger Schurig (1): wireless: fix two bad print_ssid conversions Ilpo Järvinen (40): b43legacy: reindent misleading statement tcp: collapse more than two on retransmission tcp: move tcp_simple_retransmit to tcp_input tcp: more aggressive skipping tcp: Make SACK code to split only at mss boundaries tcp: make tcp_sacktag_one able to handle partial skb too tcp: Try to restore large SKBs while SACK processing tcp: Make shifting not clear the hints tcp: add some mibs to track collapsing tcp: handle shift/merge of cloned skbs too tcp: tcp_limit_reno_sacked can become static tcp: skb_shift cannot cache frag ptrs past pskb_expand_head niu: use net_device_stats nowadays available in net_device bnx2: use net_device_stats nowadays available in net_device ne2: silence static never defined warnings dccp: use roundup instead of opencoding tcp: force mss equality with the next skb too. tcp: Fix thinko making the not-shiftable to cover S|R as well tcp: make mtu probe failure to not break gso'ed skbs unnecessarily tcp: introduce struct tcp_sacktag_state to reduce arg pressure tcp: no need to pass prev skb around, reduces arg pressure tcp: drop tcp_bound_rto, merge content of it tcp_set_rto tcp: share code through function, not through copy-paste. :-) tcp: move some parts from tcp_write_xmit tcp: use tcp_write_xmit also in tcp_push_one tcp: fix tso_should_defer in 64bit icsk: join error paths using goto xfrm6_tunnel: join error paths using goto ipv6/mcast: join error paths using goto ip6mr: use goto to common label instead of opencoding xfrm: join error paths can: merge error paths ax25: join the return paths that free skb bt/rfcomm/tty: join error paths irda: merge exit paths nf/dccp: merge errorpaths rpc/rdma: goto instead of copypaste hp100: use roundup instead of open coding ipmr: merge common code libertas: use roundup instead of opencoding Ingo Molnar (24): netfilter: fix warning in net/netfilter/nf_conntrack_proto_tcp.c netfilter: fix warning in net/netfilter/nf_conntrack_ftp.c s2io: fix warning in drivers/net/s2io.c niu: fix warnings in drivers/net/niu.c niu: fix another warning in drivers/net/niu.c qla3xxx: fix warning in drivers/net/qla3xxx.c sunrpc: fix warning in net/sunrpc/xprtrdma/svc_rdma_transport.c pkt_sched: fix warning in net/sched/sch_hfsc.c ipv6: fix warning in net/ipv6/ip6_flowlabel.c dsa: fix warning in net/dsa/mv88e6xxx.c dsa: fix warning in net/dsa/mv88e6060.c fix warning in fs/dlm/netlink.c sis900: fix warning in drivers/net/sis900.c z85230: fix warning in drivers/net/wan/z85230.c mlx4: fix error path in drivers/net/mlx4/en_rx.c cassini: fix warning in drivers/net/cassini.c dccp: fix warning in net/dccp/options.c mlx4: fix warning in drivers/net/mlx4/mcg.c ax25: fix warning in net/ax25/sysctl_net_ax25.c sunrpc: fix warning in net/sunrpc/xprtrdma/verbs.c bluetooth: fix warning in net/bluetooth/rfcomm/sock.c atlx: fix warning in drivers/net/atlx/atl2.c depca: fix warning in drivers/net/depca.c 3c523: fix warning in drivers/net/3c523.c Ivan Kuten (1): mac80211: fix unaligned access in ieee80211_wep_encrypt_data Ivo van Doorn (26): rt2x00: Optimize configuration handling rt2x00: Remove ieee80211_bss_conf from rt2x00_intf rt2x00: Improve interface_modes initialization rt2x00: Release rt2x00 2.2.2 rt2x00: Remove debugfs CSR access wrappers rt2x00: Remove RATE_BASIC flag rt2x00: Fix LED state handling rt2x00: Block set_key() during suspend/shutdown rt2x00: Fix BUG_ON() with antenna handling rt2x00: Cleanup TX/RX entry handling rt2x00: Optimize get_duration / get_duration_res rt2x00: Fix race condition when using inderect registers rt2x00: Cleanup indirect register access rt2x00: Move rt73usb register access wrappers into rt2x00usb rt2x00: Fix TX failure path rt2x00: Detect USB BULK in/out endpoints rt2x00: Don't switch off LED on initialization rt2x00: Optimize IV/EIV handling rt2x00: Store retry limit values rt2x00: Remove duplicate code rt2x00: Implement HW encryption (rt2500usb) rt2x00: Release rt2x00 2.2.3 rt2x00: Add RXDONE_CRYPTO_IV/ICV flags rt2x00: Fix check for BSS info changes rt2x00: Move crypto TX descriptor handling to rt2x00crypto.c rt2x00: Correctly initialize AID during set_key() James Chapman (1): l2tp: fix UDP checksum support Jarek Poplawski (24): pkt_sched: sch_generic: Add Qdisc_ops peek() method. pkt_sched: sch_generic: Add generic qdisc->ops->peek() implementation. pkt_sched: Add qdisc->ops->peek() implementation. pkt_sched: Use qdisc->ops->peek() instead of ->dequeue() & ->requeue() pkt_sched: Add peek emulation for non-work-conserving qdiscs. sch_netem: Remove classful functionality sch_netem: Replace ->requeue() method with open code pkt_sched: sch_generic: Kfree gso_skb in qdisc_reset() pkt_sched: Fix qdisc len in qdisc_peek_dequeued() pkt_sched: Remove qdisc->ops->requeue() etc. pkt_sched: sch_drr: Fix qlen in drr_drop() net: gen_estimator: Fix gen_kill_estimator() lookups pkt_sched: sch_api: Remove qdisc_list_lock pkt_sched: gen_estimator: Optimize gen_estimator_active() pkt_sched: sch_htb: Remove htb_class aprio field pkt_sched: sch_htb: Remove htb_sched nwc_hit field pkt_sched: sch_htb: Clean htb_class prio and quantum fields pkt_sched: sch_htb: Remove L2T() pkt_sched: sch_htb: Replace HTB_ACCNT() macro with inlines pkt_sched: sch_htb: Optimize htb_find_next_upper() pkt_sched: sch_htb: Optimize WARN_ONs in htb_dequeue_tree() etc. pkt_sched: Annotate uninitialized var in sfq_enqueue() net: Fix oops in dev_ifsioc() pkt_sched: Remove smp_wmb() in qdisc_watchdog() Jay Sternberg (3): iwlwifi: define firmware file name once iwlwifi: expand error lookup and align output iwlwifi: indicate txpower is off in sysfs Jay Vosburgh (3): bonding, net: Move last_rx update into bonding recv logic bonding: Fix ALB mode to balance traffic on VLANs bonding: alternate agg selection policies for 802.3ad Jeff Kirsher (6): DCB: fix kconfig option ixgbe: cleanup link up/down messages e1000: cleanup link up/down messages ixgb: cleanup link up/down messages e100: cleanup link up/down messages igb: fixup AER with proper error handling Jesper Dangaard Brouer (3): NIU: Implement discard counters NIU: Implement discard counters, info/debug statements. NIU: Implement discard counters, optimize Jesse Brandeburg (3): ixgbe: add device support for 82598AT (copper 10GbE) adapters pktgen: add full reset functionality ixgbe: fix dma mapping unbalance Jianjun Kong (12): af_unix: clean up net/unix/af_unix.c garbage.c sysctl_net_unix.c net: clean up net/ipv4/ah4.c esp4.c fib_semantics.c inet_connection_sock.c inetpeer.c ip_output.c net: clean up net/ipv4/ipip.c raw.c tcp.c tcp_minisocks.c tcp_yeah.c xfrm4_policy.c net: clean up net/ipv4/fib_frontend.c fib_hash.c ip_gre.c net: clean up net/ipv4/igmp.c net: clean up net/ipv4/ip_sockglue.c tcp_output.c net: clean up net/ipv4/ipmr.c net: clean up net/ipv4/ip_fragment.c tcp_timer.c ip_input.c net: clean up net/ipv4/pararp.c net: clean up net/ipv4/devinet.c net: clean up net/ipv4/tcp_ipv4.c net: remove two duplicated #include Jiri Slaby (1): Ath5k: add AP mode Jirka Pirko (3): tokenring/3c359.c: fix allocation null check tokenring/3c359.c: Fix error message when allocating tx_ring tokenring/3c359.c: Prevent possible mem leak when open failed Joe Chou (2): r6040: fix wrong logic in mdio code r6040: save and restore MIER correctly in the interrupt routine Joe Korty (1): forcdeth: increase max_interrupt_work Joe Perches (3): include/net net/ - csum_partial - remove unnecessary casts drivers/s390/ - csum_partial - remove unnecessary casts net/ipv6/ip6mr.c: Use kmem_cache_zalloc, remove memset Johannes Berg (72): mac80211: convert to %pM away from print_mac net: convert print_mac to %pM net: convert more to %pM mac80211: remove aggregation status write support from debugfs mac80211: remove writable debugs mesh parameters mac80211: minor code cleanups mac80211: remove wiphy_to_hw mac80211: clean up ieee80211_hw_config errors mac80211: remove max_antenna_gain config mac80211: fix short slot handling 802.11: clean up/fix HT support mac80211: kill hw.conf.antenna_sel_{rx,tx} mac80211: introduce hw config change flags mac80211: provide sequence numbers nl80211: export HT capabilities iwl3945: fix station stuff in RC algorithm mac80211: make retry limits part of hw config mac80211: move bss_conf into vif mac80211: rewrite HT handling p54/rtl8187: fix up the seqno patch mac80211: add might_sleep to hw_config mac80211/drivers: rewrite the rate control API p54: implement MRR make ieee80211 invisible nl80211: fix monitor flags mac80211: remove rate_control_clear mac80211: inform userspace of probe/auth/assoc timeout wireless: don't publish __regulatory_hint wireless: remove cfg80211_reg_mutex wireless: get rid of pointless request list wireless: fix EU check mac80211: insert AP sta entry after filling it wireless: remove write-only 'granted' variable wireless: make regdom passing semantics simpler wireless: remove struct regdom hinting wireless: clean up regulatory ignore_request function wireless regulatory: move ignore_request mac80211: fix two kernel-doc warnings wireless: move mesh config length constant wireless: fix a few sparse warnings ath9k: remove useless NULL initialisers iwl3945: remove dead code iwlwifi: remove implicit direct scan iwlwifi: remove unused essid variable b43/legacy: remove SSID code adm8211: remove SSID code mac80211: remove SSID driver code iwl3945: remove bogus comment don't use net/ieee80211.h wireless: implement basic rate helper function b43: implement short slot and basic rate handling libertas_tf: fix skb tail pointer b43legacy: implement short slot and basic rate handling b43: remove rate index warning wireless: clean up sysfs code using %pM ath5k: name pci driver "ath5k" too mac80211: only transition STAs ps->wake on data frames cfg80211: handle SIOCGIWNAME cfg80211: handle SIOCGIWMODE/SIOCSIWMODE wireless: clean up radiotap a bit cfg80211: fix wiphy remove if no regulatory request cfg80211: "fix" 11d oops p54: fix lm87 checksum endianness iwlwifi: disable AP mode mac80211: improve sta_notify documentation cfg80211: fix nl80211 frequency handling mac80211: only create default STA interface if supported ath9k: remove fragmentation workaround again mac80211: remove fragmentation offload functionality mac80211/cfg80211: check endianness in sparse runs rfkill: strip pointless notifier chain forcedeth: don't poll NV event 36 John Daiker (2): ath5k: reduce checkpatch.pl errors rt2x00: reduce checkpatch.pl errors John W. Linville (21): p54: integrate parts of lmac_longbow.h and other parts of stlc45xx wireless: consolidate on a single escape_essid implementation wireless: remove NETWORK_EMPTY_ESSID flag wireless: escape_ssid should handle non-printables wireless: use individual buffers for printing ssid values wireless: avoid some net/ieee80211.h vs. linux/ieee80211.h conflicts p54: eliminate warning for uninitialized variable 'tim_len' ath9k: correct warning about unintialized variable 'tid' netdevice zd1201: Convert directly reference of netdev->priv to netdev_priv() ipw2100, ipw2200: select LIB80211 lib80211: absorb crypto bits from net/ieee80211 lib80211: consolidate crypt init routines ipw2x00: relocate ipw2100/ipw2200 to common directory net/ieee80211 -> drivers/net/ipw2x00/libipw_* rename mac80211: add explicit padding in struct ieee80211_tx_info rtl8180: adapt for deprecated IEEE80211_CONF_SHORT_SLOT_TIME flag MAINTAINERS: claim maintenance over rtl818x drivers mac80211_hwsim: fix-up some print_mac merge damage hostap: select required crypto bits in Kconfig mac80211: deauth when interface is marked down ieee80211_security: correct warning about width of auth_mode Jouni Malinen (25): mac80211_hwsim: Debug info for BSS config changes nl80211: Add basic rate configuration for AP mode mac80211_hwsim: Debug info for TX queue parameters nl80211: Add TX queue parameter configuration mac80211_hwsim: Make sure beacon_timer gets deleted mac80211: Allow AP mode to be enabled mac80211_hwsim: Add support for client PS mode mac80211_hwsim: Update documentation (AP mode enabled) nl80211: Report max TX power in NL80211_BAND_ATTR_FREQS nl80211: Change max TX power to be in mBm instead of dBm nl80211: Add frequency configuration (including HT40) ath9k: Free Beacon skbs in AP mode ath9k: Disable staggered Beacon frame scheduling mac80211: Disable requests for new scans in AP mode ath9k: Do not remove header padding on RX from short frames mac80211: Add HT rates into RX status reporting ath9k: Report HT rates in RX status mac80211: Send Layer 2 Update frame on reassociation mac80211: Remove radiotap rate-present flag for HT ath9k: Fix TX status reporting for retries and MCS index ath9k: Remove MAC header pad before reporting TX status ath9k: Fix a NULL pointer dereference in ath_rate_get ath9k: Key cache allocation for AP mode ath9k: Fix key cache slot selection for splitmic ath9k: Fixed RX decryption status reporting Julia Lawall (10): drivers/net/wireless/ath9k/rc.c: use ARRAY_SIZE Bluetooth: Change simple_strtol to simple_strtoul drivers/isdn/mISDN: use ARRAY_SIZE drivers/net/hamradio: Move a dereference below a NULL test drivers/net/wan: Remove redundant test drivers/net/au1000_eth.c: Remove redundant test drivers/net/ehea: Remove redundant test drivers/net: Remove redundant test drivers/net/wan: Remove redundant test net/appletalk: Remove redundant test Julius Volz (3): IPVS: Add IPv6 support to SH and DH schedulers IPVS: Add IPv6 support to LBLC/LBLCR schedulers IPVS: Remove supports_ipv6 scheduler flag Kalle Valo (4): mac80211: document ieee80211_tx_info.pad mac80211: enable IEEE80211_CONF_PS only when associated mac80211: track master queue status mac80211: implement dynamic power save Karen Xie (1): cxgb3: manage private iSCSI IP address Karsten Keil (1): misdn: Fix lockdep warning Kay Sievers (2): net: struct device - replace bus_id with dev_name(), dev_set_name() ssb: struct device - replace bus_id with dev_name(), dev_set_name() Kolekar, Abhijeet (3): iwl3945 : Fix Sparse Warnings iwl3945 : Simplify iwl3945_send_beacon_cmd iwl3945 : Simplify iwl3945_pci_probe Komuro (1): fmvj18x_cs: write interrupt ack bit for lan and modem to work simultaneously. Krzysztof Halasa (1): net: PHYLIB mdio fixes #2 Krzysztof Hałasa (28): WAN: split hd6457x.c into hd64570.c and hd64572.c WAN: remove SCA II support from SCA drivers WAN: remove SCA support from SCA-II drivers WAN: convert HD64572-based drivers to NAPI. WAN: TX-done handler now uses the ownership bit in HD64572 drivers. WAN: HD64572 already handles TX underruns with DMAC. WAN: rework HD64572 interrupts a bit. WAN: Simplify HD64572 status handling. WAN: don't print HD64572 driver versions anymore. WAN: Simplify HD64572 drivers. WAN: HD64572 drivers don't use next_desc() anymore. WAN: Correct comments in hd6457[02].c WAN: Simplify sca_init_port() in HD64572 driver. WAN: new synchronous PPP implementation for generic HDLC. WAN: syncppp.c is no longer used by any kernel code. Remove it. WAN pc300too.c: Fix PC300-X.21 detection IXP4xx: check for queue being empty in qmgr_release_queue(). IXP4xx: clear IRQ stat in qmgr_disable_irq(). IXP4xx: Silence section mismatch warning in Ethernet driver. IXP4xx: Make the Ethernet driver use built-in netdev stats. IXP4xx: Add PHYLIB support to Ethernet driver. IXP4xx: Add PHYLIB MII ioctl to the Ethernet driver. IXP4xx: Add ethtool support to Ethernet driver. WAN: Add IXP4xx HSS HDLC driver. Update MAINTAINERS entries for IXP4xx and WAN network drivers. IXP4xx: move common debugging from network drivers to QMGR module. HDLC_PPP: Fix Configure-Ack to return original options as required by the standard. Convert ixp4xx_eth driver to use net_device_ops. Larry Finger (20): p54: Move rx_mtu to struct bootrec_desc hostap: Fix sparse warnings rtl8187: Remove large delays rtl8187: Remove OFDM delays rtl8187: Remove CCK delays rtl8187: Remove msleep calls after calls to rtl8225_write rtl8187: Remove primitive write delays rtl8187: Reduce channel switch delay rtl8187: Change TX power settings Move all rtl818x files to a common directory. Update of MAINTAINERS for RTL8187 rtl8187: Update file authorship in comments rtl8187: Remove module warning and dependence on CONFIG_EXPERIMENTAL mac80211: Fix pid rate-setting algorithm to allow rate changes rtl8187: Fix transmission count sent to mac80211 rtl8187: Improve wireless statistics for RTL8187 rtl8187: Use usb anchor facilities to manage urbs b43legacy: Fix sparse warnings rtl8187: Fix error returns mac80211: Print unknown packet type in tasklet_handler Lennert Buytenhek (6): mv643xx_eth: checkpatch fixes mv643xx_eth: introduce per-port register area pointer mv643xx_eth: inline txq_alloc_desc_index() mv643xx_eth: implement ->set_rx_mode() mv643xx_eth: move receive error handling out of line mv643xx_eth: calculate descriptor pointer only once in rxq_refill() Luis R. Rodriguez (32): ath5k/ath9k: correct signal quality ath9k: correct signal quality report ath5k: correct ath5k signal quality mac80211: make use of regulatory tx power settings on change of tx power ath9k: remove pointless sc_txintrperiod and spin_lock_bh on tx prepare ath9k: enable RX interrupt mitigation ath9k: Allow user to change tx power when asked ath9k: use ETH_P_PAE cfg80211: a reg rule is invalid if freq diff is 0 cfg80211: Add regulatory domain intersection capability cfg80211: make use of reg macros on REG_RULE cfg80211: Add kdoc for struct regulatory_request ath5k: allow APs to receive beacons ath9k: enable RXing of beacons on STA/IBSS cfg80211: mark negative frequencies as invalid cfg80211: remove switch from __regulatory_hint() cfg80211: remove switch from __set_regdom() cfg80211: separate intersection section in __set_regdom() cfg80211: expect different rd in cfg80211 when intersecting cfg80211: call_crda() won't tell us if CRDA was present cfg80211: mark regdomains with > NL80211_MAX_SUPP_REG_RULES invalid cfg80211/mac80211: Add 802.11d support cfg80211: add support for custom firmware regulatory solutions iwlwifi: enable custom fw regulatory solution ath9k: Clarify we only want 32-bit DMA ath9k: make DMA memory consistent mac80211: don't assume driver has been attached on registration mac80211: make Minstrel the default rate control algorithm ath9k: Handle -ENOMEM on RX gracefully nl80211: relicense nl80211.h under the ISC ath9k: Check for pci_map_single() errors ath9k: Use GFP_ATOMIC when allocating TX private area Luotao Fu (1): smc91x: remove isa stuff from smc91x driver Marcel Holtmann (10): Bluetooth: Add fine grained mem_flags usage to btusb driver Bluetooth: Handle bulk URBs in btusb driver from notify callback Bluetooth: Add suspend/resume support to btusb driver Bluetooth: Fix warnings for bt_key_strings and bt_slock_key_strings Bluetooth: Remove deprecated hci_usb driver Bluetooth: Send HCI Reset command by default on device initialization Bluetooth: Allow SCO audio with Asus WL-BTD202 dongle Bluetooth: Enable per-module dynamic debug messages Bluetooth: Fix format arguments warning Bluetooth: Fix RFCOMM release oops when device is still in use Mark McLoughlin (4): virtio_net: Recycle some more rx buffer pages virtio_net: hook up the set-tso ethtool op virtio_net: VIRTIO_NET_F_MSG_RXBUF (imprive rcv buffer allocation) virtio_net: large tx MTU support Martin Willi (3): xfrm: Notify changes in UDP encapsulation via netlink xfrm: Accept XFRM_STATE_AF_UNSPEC SAs on IPv4/IPv6 only hosts xfrm: Accept ESP packets regardless of UDP encapsulation mode Matt Carlson (30): tg3: Add 5761S support tg3: Use pci_ioremap_bar() tg3: Preserve DASH connectivity when WOL enabled tg3: Preserve LAA when device control is released tg3: Reclaim TG3_FLG3_5761_5784_AX_FIXES flag tg3: Do not enable APE on bcm5700 tg3: Move phylib report to end of tg3_init_one tg3: Refine power management and WOL code tg3: Allow WOL for phylib controlled Broadcom phys tg3: Refine phylib support tg3: 5785 enhancements broadcom: Add flow control support broadcom: Refine expansion register access routine broadcom: Add support for BCM50610 tg3: Update version to 3.95 tg3: Use NET_IP_ALIGN tg3: Qualify use of tp->pcix_cap tg3: Prevent corruption at 10 / 100Mbps w CLKREQ tg3: Enable GPHY APD on select devices tg3: Extract FW ver from alt NVRAM formats tg3: Embrace pci_ioremap_bar() tg3: Allow GPHY powerdown on 5761 tg3: Add 57780 support broadcom: Add 57780 support tg3: Update version to 3.96 tg3: WOL fixes tg3: Cleanup IPV6 LSO tg3: Remove unused cfgspc device members tg3: tg3.h cleanups tg3: Update version to 3.97 Matt Mackall (1): tcp: Stop scaring users with "treason uncloaked!" Michael Buesch (3): b43: Fix some MAC locking b43: Suspend MAC while killing the radio b43: Add key memory dumping Michael Chan (7): bnx2: Add PCI ID for 5716S. bnx2: Restrict WoL support. bnx2: Set rx buffer water marks based on MTU. bnx2: Reorganize timeout constants. bnx2: Update version to 1.8.2. bnx2: Rename MSI-X vectors. bnx2: Update version to 1.9.0. Mike Frysinger (2): smc91x: add __init markings to smc_drv_probe() netdev/smc91x: unify Blackfin code a bit and use proper read/write functions Mohamed Abbas (6): iwlwifi: clear scanning bits upon failure iwlwifi: do not call statistics from rfkill iwlagn: fix resume for ADHOC network iwl3945: fix resume for ADHOC network iwlwifi: fix resume while txpower off iwlagn: fix agn rate scaling Nathan Lynch (1): ehea: use get_zeroed_page for alignment-sensitive allocation Neil Horman (2): net: implement emergency route cache rebulds when gc_elasticity is exceeded net: Remove unused netdev arg from some NAPI interfaces. Neil Turton (1): sfc: Add option to use a separate channel for TX completions Nick Andrew (2): wireless: Fix incorrect use of loose in wext.c net: Fix incorrect use of loose in spider_net.c Nick Kossifidis (3): ath5k: Update interrupt masking code ath5k: Update PCU code ath5k: Fix IMR init Nick Pelly (1): Bluetooth: Respect HCI_UART_DEBUG config in hci_ll.c Nicolas Dichtel (1): xfrm6: handling fragment Oliver Hartkopp (2): vcan: convert to net_device_ops vcan: whitespace fixes Oliver Neukum (2): net: prepare usb net drivers for addition of status as a parameter net: startup race in hso driver PJ Waskiewicz (1): ixgbe: Fix usage of netif_*_all_queues() with netif_carrier_{off|on}() Pablo Neira Ayuso (7): netfilter: ctnetlink: use nf_conntrack_get instead of atomic_inc netfilter: ctnetlink: use EOPNOTSUPP instead of EINVAL if the conntrack has no helper netfilter: ctnetlink: get rid of module refcounting in ctnetlink netfilter: nf_conntrack: connection tracking helper name persistent aliases netfilter: ctnetlink: helper modules load-on-demand support netfilter: ctnetlink: deliver events for conntracks changed from userspace filter: add SKF_AD_NLATTR_NEST to look for nested attributes Patrick McHardy (12): netlink: constify struct nlattr * arg to parsing functions pkt_sched: Add ->peek() methods for fifo, prio and SFQ qdiscs. netfilter: nfnetlink_log: fix warning and prototype mismatch netfilter: nf_conntrack: fix warning and prototype mismatch netlink: avoid memset of 0 bytes sparse warning pkt_sched: add DRR scheduler pkt_sched: remove unnecessary xchg() in packet schedulers pkt_sched: remove unnecessary xchg() in packet classifiers netfilter: nf_conntrack_proto_sctp: avoid bogus warning netfilter: nf_conntrack_ftp: change "partial ..." message to pr_debug() pkt_sched: sch_drr: fix drr_dequeue loop() netlink: allow empty nested attributes Paulius Zaleckas (2): phylib: rename mdio-ofgpio to mdio-gpio phylib: make mdio-gpio work without OF (v4) Pavel Roskin (3): p54: don't report known but unhandled EEPROM codes as unknown orinoco: fix last beacon reporting on 64-bit systems airport: remove useless return in a function returning void Peter P Waskiewicz Jr (4): ixgbe: Implement PCIe AER support net: Init NAPI dev_list on napi_del ixgbe: Fix NAPI enable/disable path when using DCB ixgbe: Fix set_ringparam in ixgbe to use the same memory pools. Petr Tesarik (1): tcp: remove an unnecessary field in struct tcp_skb_cb Qinghuang Feng (1): net: remove redundant argument comments Rafael J. Wysocki (2): skge: adapt skge to use reworked PCI PM e100: adapt to the reworked PCI PM Rami Rosen (13): mac80211: remove unused declaration of struct sta_attribute. mac80211: use HWSIM_STA_MAGIC in hwsim_check_sta_magic() and hwsim_set_sta_magic(). mac80211: check return value of dev_alloc_skb() in ieee80211_sta_join_ibss(). mac80211: remove unnecessary include. wireless: missing include in lib80211.h mac80211: tx module cleanup. iwlwifi: cleanup (remove pm_state) iwlwifi: fix build error (iwl-rx.c). mac80211: misc cleanups iwlwifi: fix build warning (iwl-rx.c) iwlwifi: remove a parameter (dest) from *_fill_beacon_frame() methods. mac80211: fix a typo in ieee80211_send_assoc() method. iwlwifi: iwl-tx.c cleanup (remove unused parameter and unused local variable). Randy Dunlap (2): mac80211: remove more excess kernel-doc sctp: fix missing label when PROC_FS=n Reinette Chatre (2): iwlwifi: rely on API version read from firmware mac80211: remove WARN_ON() from ieee80211_hw_config Robert Olsson (2): niu: Naming interrupt vectors. ixgbe: Naming interrupt vectors Roel Kluin (2): net: Make static qlge: ql_adapter_down() typo Roland Dreier (1): cxgb3: Fix sparse warning and micro-optimize is_pure_response() Rémi Denis-Courmont (8): Phonet: use net_device built-in stats for GPRS Phonet: basic net namespace support Phonet: improve GPRS variable names Phonet: allocate a non-Ethernet ARP type Phonet: allocate separate ARP type for GPRS over a Phonet pipe Phonet: use atomic for packet TX window Phonet: get rid of deferred work on the transmission path Phonet: USB CDC Phonet function for gadget framework Sakari Ailus (1): tlan: Remove broken support for big buffers Samuel Ortiz (1): iwl3945: Select correct sta ID from find_station() Sangtae Ha (1): [TCP] CUBIC v2.3 Scott Feldman (5): enic: enable ethtool LRO support enic: driver/firmware API updates enic: mask off some reserved bits in CQ descriptor for future use enic: move wmb closer to where needed: before writing posted_index to hw enic: misc cleanup items: Senthil Balasubramanian (12): ath9k: INI update for atheros chipets. ath9k: incorrect noise floor threshold values. ath9k: Build RFKILL feature even when RFKILL subsystem is a MODULE ath9k: IRQ should be disabled before calling free_irq() ath9k: Race condition in accessing TX and RX buffers. wireless: Incorrect LEAP authentication algorithm identifier. ath9k: Adding AR9285 chipset register information. ath9k: Adding initvalues for Atheros AR9285 chipset. ath9k: Adding support for Atheros AR9285 chipset. ath9k: Incorrect band enum causes invalid antenna configuration. ath9k: avoid rx frames with corrupted descriptor. ath9k: BH shouldn't be enabled when hardirqs are disabled. Simon Arlott (1): netfilter: nf_nat: remove warn_if_extra_mangle Stephen Hemminger (92): vlan: propogate ethtool speed values macvlan: add support for ethtool get settings atlx: use embedded net_device_stats atlx: timer cleanup net: increase receive packet quantum netem: eliminate unneeded return values netdev: network device operations infrastructure netdev: introduce dev_get_stats() netdev: expose ethernet address primitives netdev: convert loopback to net_device_ops ifb: convert to net_device_ops bridge: convert to net_device_ops veth: convert to net_device_ops macvlan: convert to net_device_ops ip: convert to net_device_ops for ioctl vlan: convert to net_device_ops bonding: convert to net_device_ops e1000e: convert to net_device_ops sky2: convert to net_device_ops skge: convert to net_device_ops 8139: convert to net_device_ops tun: convert to net_device_ops atl1e: convert to net_device_ops atlx: convert to net_device_ops cxgb3: convert to net_device_ops cxgb2: convert to net_device_ops e1000: convert to net_device_ops via-velocity: convert to net_device_ops igb: convert to net_device_ops e100: convert to net_device_ops ppp: convert to net_device_ops enic: convert to net_device_ops ixgb: convert to net_device_ops tg3: convert to net_device_ops forcedeth: convert to net_device_ops niu: convert to net_device_ops acenic: convert to net_device_ops netdev: add more functions to netdevice ops dummy: convert to net_device_ops ipmr: convert ipmr virtual interface to net_device_ops fddi: convert to new network device ops defxx: convert driver to net_device_ops hippi: convert driver to net_device_ops ipip: convert to net_device_ops ipv6: convert tunnels to net_device_ops ipgre: convert to netdevice_ops jme: convert driver to net_device_ops s2io: convert to net_device_ops qlge: convert to net_device_ops qlge: fix sparse warnings via-rhine: convert to net_device_ops myri10ge: convert to net_device_ops mlx4: convert to net_device_ops bnx2: convert to net_device_ops dl2k: convert to net_device_ops netxen: convert to net_device_ops sfc: convert to net_device_ops tehuti: convert to net_device_ops sis900: convert to net_device_ops r6040: convert to net_device_ops yellowfin: convert to net_device_ops ns83820: convert to net_device_ops bnx2x: convert to net_device_ops hamachi: convert to net_device_ops qla3xxx: convert to net_device_ops sc92031: convert to net_device_ops eql: convert to net_device_ops ne2k: convert to net_device_ops 8139too: use err.h macros netdev: add HAVE_NET_DEVICE_OPS 8390: add common net_device ops wd: use net_device_ops hp-plus: convert to net_device_ops smc: convert to net_device_ops ne3210: convert to net_device_ops es3210: convert to net_device_ops e2100: convert to net_device_ops lne390: convert to net_device_ops hp: convert to net_device_ops ne2: convert to net_device_ops apne: convert to net_device_ops stnic: convert to net_device_ops 3c503: convert to net_device_ops ne2000: convert to net_device_ops tc: propogate errors from tcf_hash_create tc: check for errors in gen_rate_estimator creation tc: policing requires a rate estimator etherh: build fix for net-next mac8390: update to net_device_ops zorro8390: convert to net_device_ops hydra: convert to net_device_ops ne-h8300: convert to net_device_ops Steve Glendinning (15): SMSC LAN911x and LAN921x vendor driver smsc95xx: add tx checksum offload support smsc911x: add dynamic bus configuration smsc9420: SMSC LAN9420 10/100 PCI ethernet adapter smsc911x: make smsc911x_poll_controller static smsc9420: add netpoll support smsc9420: add ethtool eeprom support smsc9420: add ethtool register dump support net: Move flow control definitions to mii.h net: Refactor full duplex flow control resolution smsc911x: fix BUG if module is removed while interface is up smsc911x: convert driver to use net_device_ops smsc911x: make smsc911x_ethtool_ops constant smsc911x: don't clobber driver_data smsc911x: fix platform resource call during module unload Steve Hodgson (2): sfc: Make reset_workqueue driver-global rather than per-NIC sfc: Treat probe as unsuccessful if it scheduled a reset Sujith (57): mac80211: Change WARN_ON to WARN_ON_ONCE ath9k: Check if the STA supports HT when initializing rate control mac80211: Re-enable aggregation ath9k: Node cleanup ath9k: Simplify node attach/detach routines ath9k: Revamp transmit control block ath9k: Remove SM Power Save as it is not supported now ath9k: Ensure ath_node is not NULL when updating tx chainmask ath9k: Use bitfields to store tid's state in a single variable ath9k: Revamp VAP management ath9k: Refactor hw.c ath9k: Remove unused function ath_get_currentCountry() ath9k: Streamline attach/detach ath9k: Remove unnecessary TSF reset ath9k: Enable interrupts at the proper place ath9k: Remove ath_tx_aggr_resp() ath9k: Clear HT info on starting the driver ath9k: Remove internal RX A-MPDU processing mac80211: Add a new event in ieee80211_ampdu_mlme_action ath9k: Fix compilation failure when RFKILL is enabled mac80211: Use the HT capabilities from the IE instead of the station's caps. ath9k: Merge struct ath_tx_ratectrl with ath_rate_node ath9k: Simplify RC alloc/free functions ath9k: Remove ath_setup_rates ath9k: Remove ath_rate_newassoc() ath9k: Remove half/quarter rate tables ath9k: Nuke fixed rate handling in driver ath9k: Revamp RX handling ath9k: We don't support non-HT devices, so remove superfluous code. ath9k: Remove rate control reference in VAP ath9k: Remove ath_rate_softc ath9k: Use rate_driver_data ath9k: Remove ath9k_rate_table ath9k: General code scrub ath9k: Use helpers ath9k: Move TX completion routine to xmit.c ath9k: Fix bug in deciphering channel flags ath9k: Update TX trigger level on a FIFO underrun. ath9k: Use straightforward PCI routines to setup the TX buffer. ath9k: Code scrub ath9k: Use proper TX channel width for setting channels ath9k: Handle channel initialization for AP mode ath9k: Use cleaner debug masks ath9k: Add ATH9K_DEBUG configuration option ath9k: Remove includes that are not needed ath9k: Add initial layout for an ath9k specific debugfs mechanism ath9k: Add a debugfs file for dumping DMA status ath9k: Choose correct ANI calibration period ath9k: Fix bug in rate table management ath9k: Maintain rate table choice after association ath9k: Add a debugfs file to show interrupt statistics ath9k: Remove remaining occurrences of CONFIG_SLOW_ANT_DIV ath9k: Merge structures ath_atx, ath_node_aggr with ath_node ath9k: Refactor struct ath_softc mac80211: Fix HT channel selection ath9k: Do not use association state to update rate table ath9k: Protect config() callback with a mutex Thomas Graf (1): pkt_sched: Control group classifier Tilman Schmidt (4): gigaset: remove unnecessary poll method gigaset: get rid of info() and warn() macros gigaset: use pr_err() and pr_info() gigaset: ifdef cleanup Tim Gardner (1): ipw2x00: change default policy for auto-associate Tomas Winkler (34): iwlwifi: make initial calibration set configurable iwlwifi: take a valid antenna upon rate scale init iwlwifi: refactor rxon time command iwlwifi: remove host commands structures from iwl_cmd iwlwifi: add iwl_cmd_queue_free for readability iwlwifi: unify tx antenna toggling iwlwifi: fix TX cmd dma unmapping iwlwifi: tx command must run on same tfd as packet iwlwifi: protect headers from double inclusion iwlwifi: refactor TX response flow iwlwifi: don't update TFD free counter for invalid station iwlwifi: parametrize eeprom versions iwlwifi: calibration command namespace renaming iwlwifi: refactor tx byte count table usage iwlwifi: run through spell checker mac80211: fix basic rates setting from association response iwlwifi: revamp tx scheduler byte count tables handling iwlwifi: move spectrum measurement code to iwl-spectrum.c file mac80211: rc80211_pid eliminate sparse warnings iwlwifi: consolidate station management code iwlwifi: rs: remove fc variable and other cleanups iwlwifi: iwl-fh.h cleanup iwlwifi: enable base band calibration in 5000 HW Bluetooth: Fix TX error path in btsdio driver mac80211: disassociate prior to unlinking AP/station iwlwifi: properly initialize calibration command header iwlwifi: 5150 add support for 5150 iwlwifi: 5150 enable DC calibration iwlwifi: 5150 compute ct kill threshold iwlwifi: 5150 parametrize eeprom versions iwlwifi: remove unused clip_groups priv member iwlwifi: remove includes of iwl-helpers.h where not needed iwlwifi: remove 4965 from common uCode API structures iwlwifi: add contact email to MODULE_AUTHOR Vasanthakumar Thiagarajan (5): ath9k: Configure AR_PHY_SWITCH_COM with apropriate antenna control ath9k: Fix panic while unregistering rfkill ath9k: Dont update rate control for every AMPDU ath9k: Synchronize DMA transfer with CPU at right place ath9k: Move rate control alg register/unregister to appropriate place Vegard Nossum (2): Bluetooth: Fix leak of uninitialized data to userspace netlink: fix (theoretical) overrun in message iteration Vivek Natarajan (1): mac80211: Look out for some other AP when disassoc is received. Wang Chen (37): airo: Kill directly reference of netdev->priv netdevice libertas: Fix directly reference of netdev->priv netdevice: safe convert to netdev_priv() #part-1 netdevice: safe convert to netdev_priv() #part-2 netdevice: safe convert to netdev_priv() #part-3 netdevice: safe convert to netdev_priv() #part-4 netdevice chelsio: Convert directly reference of netdev->priv netdevice: 82596: Convert netdev->priv to netdev_priv netdevice hamradio: Convert directly reference of netdev->priv netdevice lance: Convert directly reference of netdev->priv netdevice ppp: Convert directly reference of netdev->priv netdevice ni65: Convert directly reference of netdev->priv netdevice wanrouter: Convert directly reference of netdev->priv ixgbe: convert directly reference of netdev->priv netdevice hdlc: Convert directly reference of netdev->priv netdevice pc300: Convert directly reference of netdev->priv netdevice pc300: Add the reason about PC300 BROKEN in Kconfig netdevice sbni: Convert directly reference of netdev->priv infiniband: Kill directly reference of netdev->priv hysdn: Kill directly reference of netdev->priv isdn: Kill directly reference of netdev->priv dvb: Kill directly reference of netdev->priv mptlan: Kill directly reference of netdev->priv bond: Kill directly reference of netdev->priv ixgbe: function comment typo e1000: e1000_adapter->polling_netdev is useless if_usb: Kill directly reference of netdev->priv simeth: Kill directly reference of netdev->priv xtensa: Kill directly reference of netdev->priv um: Kill directly reference of netdev->priv sgi-xp: Kill directly reference of netdev->priv s390_net: Kill directly reference of netdev->priv staging-p80211: Kill directly reference of netdev->priv staging-slicoss: Kill directly reference of netdev->priv staging-winbond: Kill directly reference of netdev->priv netdevice: Kill netdev->priv netdevice zd1201: Use after free Wei Yongjun (6): xfrm: Cleanup for unlink SPD entry sctp: Bring SCTP_MAXSEG socket option into ietf API extension compliance sctp: Fix a typo in socket.c sctp: Implement socket option SCTP_GET_ASSOC_NUMBER sctp: Avoid memory overflow while FWD-TSN chunk is received with bad stream ID sctp: Add validity check for SCTP_PARTIAL_DELIVERY_POINT socket option Winkler, Tomas (21): iwlwifi: reorganize flow handler bitology iwlwifi: trivial removal of some 4965 remaining from iwl-agn-rs.h iwlwifi: iwl-agn-rs: initialize rs with valid antenna iwlwifi: trivial fix in includes iwlwifi: don't fail power set when calibration is not done yet iwlwifi: move rx queue read pointer into rxq iwlwifi: move iwl_print_hex_dump to iwl-debug.h iwlwifi: get some more information about command failure iwlwifi: move iwl_clear_stations_table to iwl-sta.c iwlwifi: 4965 define firmware file name once iwlwifi: TX setup fix confusion between TX queue and TX DMA channel iwlwifi: TX update chicken bits iwlwifi: 5150 enable LO, TXIQ and BB calibrations iwlwifi: move host command check function into separate file iwlwifi: move disable/enable interrupts to iwl-core.c iwlwifi: move channels sysfs to debugfs iwlwifi: change email contact information iwlifi: remove twice defined SINGLE_FRAME RX FH MASK iwlwifi: 3945 remove qos module parameter iwlwifi: remove qos module parameter iwlwifi: cleanup iwl-dev.h Wu Fengguang (2): generic swap(): ath9k: rename swap() to swap_array() iwlwifi: remove useless goto Wu, Fengguang (4): iwlwifi: add line feed to printk iwlwifi: update comments on the debug interface iwlwifi: use type uint for module param debug iwlwifi: use meaningful vars in _iwl_poll_bit() Yang Hongyang (3): ipv6: Add IPV6_PKTINFO sticky option support to setsockopt() ipv6: fix the return interface index when get it while no message is received ipv6: fix the outgoing interface selection order in udpv6_sendmsg() Yevgeny Petrilin (5): mlx4_en: Memory leak on completion queue free mlx4_en: Removed TX locking when polling TX cq mlx4_en: Removed redundant cq->armed flag mlx4_en: Removed Interrupt moderation module parameters mlx4_en: Remove pauses module parameters. Zhaolei (2): Fix debugfs_create_bool's error checking method for wireless/iwlwifi/ Fix debugfs_create_*'s error checking method for wireless/rt2x00/ Zhu Yi (4): mac80211: print reason code for deauth/dissoc frames iwlwifi: fix printk size format error iwlwifi: fix DMA channel number in iwl_txq_ctx_stop iwlwifi: use GFP_KERNEL to allocate Rx SKB memory Zhu, Yi (9): iwlwifi: fix priv->iw_mode setting when multiple vif are configured iwlwifi: use Rx single frame mode (one Rx frame per RB) iwlwifi: configure_filter rewrite iwlwifi: some fh document fix and cleanup iwlwifi: fix time interval misuse in iwl_poll_{direct_}bit iwlwifi: fix "MAC in deep sleep" error iwlwifi: iwl_poll_{direct_}bit cleanup iwlwifi: use rmb/wmb to protect indirect mmio operation iwlwifi: use iwl_poll_direct_bit in EEPROM reading akeemting (1): jme: GHC register control fix for new hardware colin@cozybit.com (1): Add nl80211 commands to get and set o11s mesh networking parameters herton (1): rtl8187: fix retry count passed in rtl8187_tx Documentation/DocBook/Makefile | 2 +- Documentation/DocBook/networking.tmpl | 3 - Documentation/DocBook/wanbook.tmpl | 99 - Documentation/RCU/rculist_nulls.txt | 167 + Documentation/feature-removal-schedule.txt | 7 - Documentation/networking/README.ipw2200 | 2 +- Documentation/networking/bonding.txt | 68 +- Documentation/networking/dccp.txt | 32 +- Documentation/networking/driver.txt | 2 +- Documentation/networking/generic-hdlc.txt | 8 +- Documentation/networking/ip-sysctl.txt | 6 + Documentation/networking/mac80211_hwsim/README | 9 +- Documentation/networking/netdevices.txt | 2 +- Documentation/networking/regulatory.txt | 22 +- Documentation/powerpc/dts-bindings/fsl/tsec.txt | 12 +- Documentation/rfkill.txt | 20 +- MAINTAINERS | 48 +- arch/arm/mach-ixp4xx/fsg-setup.c | 9 +- arch/arm/mach-ixp4xx/include/mach/qmgr.h | 35 +- arch/arm/mach-ixp4xx/ixp4xx_qmgr.c | 44 +- arch/arm/mach-ixp4xx/nas100d-setup.c | 5 +- arch/arm/mach-ixp4xx/nslu2-setup.c | 5 +- arch/ia64/hp/sim/simeth.c | 25 +- arch/powerpc/boot/dts/asp834x-redboot.dts | 20 + arch/powerpc/boot/dts/ksi8560.dts | 20 + arch/powerpc/boot/dts/mpc8313erdb.dts | 20 + arch/powerpc/boot/dts/mpc8315erdb.dts | 19 + arch/powerpc/boot/dts/mpc8349emitx.dts | 18 + arch/powerpc/boot/dts/mpc8349emitxgp.dts | 5 + arch/powerpc/boot/dts/mpc834x_mds.dts | 19 + arch/powerpc/boot/dts/mpc8377_mds.dts | 19 + arch/powerpc/boot/dts/mpc8377_rdb.dts | 19 + arch/powerpc/boot/dts/mpc8378_mds.dts | 19 + arch/powerpc/boot/dts/mpc8378_rdb.dts | 17 + arch/powerpc/boot/dts/mpc8379_mds.dts | 18 + arch/powerpc/boot/dts/mpc8379_rdb.dts | 18 + arch/powerpc/boot/dts/mpc8536ds.dts | 18 + arch/powerpc/boot/dts/mpc8540ads.dts | 31 + arch/powerpc/boot/dts/mpc8541cds.dts | 18 + arch/powerpc/boot/dts/mpc8544ds.dts | 20 + arch/powerpc/boot/dts/mpc8548cds.dts | 44 + arch/powerpc/boot/dts/mpc8555cds.dts | 18 + arch/powerpc/boot/dts/mpc8560ads.dts | 18 + arch/powerpc/boot/dts/mpc8568mds.dts | 18 + arch/powerpc/boot/dts/mpc8572ds.dts | 45 + arch/powerpc/boot/dts/mpc8641_hpcn.dts | 45 + arch/powerpc/boot/dts/sbc8349.dts | 18 + arch/powerpc/boot/dts/sbc8548.dts | 18 + arch/powerpc/boot/dts/sbc8560.dts | 18 + arch/powerpc/boot/dts/sbc8641d.dts | 44 + arch/powerpc/boot/dts/stx_gp3_8560.dts | 18 + arch/powerpc/boot/dts/tqm8540.dts | 28 + arch/powerpc/boot/dts/tqm8541.dts | 18 + arch/powerpc/boot/dts/tqm8548-bigflash.dts | 44 + arch/powerpc/boot/dts/tqm8548.dts | 44 + arch/powerpc/boot/dts/tqm8555.dts | 18 + arch/powerpc/boot/dts/tqm8560.dts | 18 + arch/powerpc/sysdev/fsl_soc.c | 241 +- arch/s390/appldata/appldata_net_sum.c | 4 +- arch/sparc64/kernel/idprom.c | 5 +- arch/um/drivers/daemon_kern.c | 2 +- arch/um/drivers/mcast_kern.c | 2 +- arch/um/drivers/net_kern.c | 29 +- arch/um/drivers/pcap_kern.c | 2 +- arch/um/drivers/slip_kern.c | 2 +- arch/um/drivers/slirp_kern.c | 2 +- arch/um/drivers/vde_kern.c | 2 +- arch/um/os-Linux/drivers/ethertap_kern.c | 2 +- arch/um/os-Linux/drivers/tuntap_kern.c | 2 +- arch/xtensa/platforms/iss/network.c | 21 +- drivers/atm/Kconfig | 6 + drivers/atm/Makefile | 1 + drivers/atm/solos-pci.c | 790 ++ drivers/block/aoe/aoe.h | 1 - drivers/block/aoe/aoeblk.c | 2 +- drivers/block/aoe/aoecmd.c | 22 +- drivers/block/aoe/aoenet.c | 11 - drivers/bluetooth/Kconfig | 20 - drivers/bluetooth/Makefile | 1 - drivers/bluetooth/bcm203x.c | 9 +- drivers/bluetooth/bfusb.c | 11 +- drivers/bluetooth/bpa10x.c | 7 +- drivers/bluetooth/bt3c_cs.c | 8 +- drivers/bluetooth/btsdio.c | 6 +- drivers/bluetooth/btusb.c | 229 +- drivers/bluetooth/hci_bcsp.c | 5 - drivers/bluetooth/hci_h4.c | 5 - drivers/bluetooth/hci_ldisc.c | 9 +- drivers/bluetooth/hci_usb.c | 1136 --- drivers/bluetooth/hci_usb.h | 129 - drivers/bluetooth/hci_vhci.c | 5 - drivers/firmware/iscsi_ibft.c | 7 +- drivers/infiniband/core/sysfs.c | 10 +- drivers/infiniband/hw/amso1100/c2_provider.c | 8 +- drivers/infiniband/hw/mthca/mthca_mcg.c | 23 +- drivers/infiniband/hw/nes/nes.c | 17 +- drivers/infiniband/hw/nes/nes_cm.c | 31 +- drivers/infiniband/hw/nes/nes_hw.c | 2 +- drivers/infiniband/hw/nes/nes_nic.c | 13 +- drivers/infiniband/hw/nes/nes_utils.c | 5 +- drivers/infiniband/ulp/ipoib/ipoib.h | 23 - drivers/infiniband/ulp/ipoib/ipoib_cm.c | 8 +- drivers/infiniband/ulp/ipoib/ipoib_ib.c | 6 +- drivers/infiniband/ulp/ipoib/ipoib_main.c | 25 +- drivers/infiniband/ulp/ipoib/ipoib_multicast.c | 70 +- drivers/infiniband/ulp/iser/iser_verbs.c | 8 +- drivers/infiniband/ulp/srp/ib_srp.c | 31 +- drivers/isdn/gigaset/asyncdata.c | 18 +- drivers/isdn/gigaset/bas-gigaset.c | 13 +- drivers/isdn/gigaset/common.c | 21 +- drivers/isdn/gigaset/ev-layer.c | 42 +- drivers/isdn/gigaset/gigaset.h | 20 +- drivers/isdn/gigaset/i4l.c | 4 +- drivers/isdn/gigaset/interface.c | 52 +- drivers/isdn/gigaset/isocdata.c | 6 +- drivers/isdn/gigaset/ser-gigaset.c | 32 +- drivers/isdn/gigaset/usb-gigaset.c | 14 +- drivers/isdn/hardware/eicon/di.c | 28 +- drivers/isdn/hardware/eicon/message.c | 60 +- drivers/isdn/hardware/mISDN/hfc_multi.h | 4 +- drivers/isdn/hardware/mISDN/hfcmulti.c | 67 +- drivers/isdn/hysdn/hysdn_net.c | 6 +- drivers/isdn/i4l/isdn_concap.c | 4 +- drivers/isdn/i4l/isdn_net.c | 224 +- drivers/isdn/i4l/isdn_net.h | 50 +- drivers/isdn/i4l/isdn_ppp.c | 32 +- drivers/isdn/mISDN/core.c | 8 +- drivers/isdn/mISDN/dsp_audio.c | 2 +- drivers/isdn/mISDN/dsp_cmx.c | 8 +- drivers/isdn/mISDN/dsp_core.c | 4 +- drivers/isdn/mISDN/dsp_hwec.c | 2 +- drivers/isdn/mISDN/dsp_pipeline.c | 2 +- drivers/isdn/mISDN/dsp_tones.c | 92 +- drivers/isdn/mISDN/l1oip_codec.c | 1 + drivers/isdn/mISDN/l1oip_core.c | 22 +- drivers/isdn/mISDN/layer1.c | 3 +- drivers/isdn/mISDN/layer2.c | 16 +- drivers/isdn/mISDN/socket.c | 2 +- drivers/isdn/mISDN/stack.c | 2 +- drivers/isdn/mISDN/tei.c | 4 +- drivers/isdn/mISDN/timerdev.c | 9 +- drivers/media/dvb/b2c2/flexcop.c | 2 +- drivers/media/dvb/bt8xx/dst.c | 4 +- drivers/media/dvb/dm1105/dm1105.c | 3 +- drivers/media/dvb/dvb-core/dvb_net.c | 37 +- drivers/media/dvb/dvb-usb/dvb-usb-dvb.c | 5 +- drivers/media/dvb/pluto2/pluto2.c | 3 +- drivers/message/fusion/mptlan.c | 22 +- drivers/message/fusion/mptlan.h | 2 +- drivers/misc/sgi-xp/xpnet.c | 13 +- drivers/net/3c501.c | 3 +- drivers/net/3c501.h | 2 +- drivers/net/3c503.c | 21 +- drivers/net/3c505.c | 51 +- drivers/net/3c507.c | 15 +- drivers/net/3c509.c | 6 +- drivers/net/3c515.c | 13 +- drivers/net/3c523.c | 46 +- drivers/net/3c527.c | 4 +- drivers/net/3c59x.c | 13 +- drivers/net/7990.c | 1 - drivers/net/8139cp.c | 47 +- drivers/net/8139too.c | 57 +- drivers/net/82596.c | 48 +- drivers/net/8390.c | 50 +- drivers/net/8390.h | 15 + drivers/net/8390p.c | 50 +- drivers/net/Kconfig | 64 +- drivers/net/Makefile | 11 +- drivers/net/a2065.c | 5 +- drivers/net/ac3200.c | 5 +- drivers/net/acenic.c | 37 +- drivers/net/amd8111e.c | 12 +- drivers/net/apne.c | 29 +- drivers/net/appletalk/cops.c | 9 - drivers/net/appletalk/ipddp.c | 6 +- drivers/net/appletalk/ltpc.c | 13 +- drivers/net/arcnet/arc-rawmode.c | 5 +- drivers/net/arcnet/arc-rimi.c | 16 +- drivers/net/arcnet/arcnet.c | 32 +- drivers/net/arcnet/capmode.c | 9 +- drivers/net/arcnet/com20020-isa.c | 4 +- drivers/net/arcnet/com20020-pci.c | 2 +- drivers/net/arcnet/com20020.c | 10 +- drivers/net/arcnet/com90io.c | 4 +- drivers/net/arcnet/com90xx.c | 12 +- drivers/net/arcnet/rfc1051.c | 9 +- drivers/net/arcnet/rfc1201.c | 14 +- drivers/net/ariadne.c | 21 +- drivers/net/arm/Kconfig | 10 +- drivers/net/arm/Makefile | 3 +- drivers/net/arm/am79c961a.c | 7 +- drivers/net/arm/at91_ether.c | 11 +- drivers/net/arm/ep93xx_eth.c | 8 +- drivers/net/arm/ether1.c | 5 +- drivers/net/arm/ether3.c | 5 +- drivers/net/arm/etherh.c | 24 +- drivers/net/arm/ixp4xx_eth.c | 344 +- drivers/net/arm/ks8695net.c | 1676 ++++ drivers/net/arm/ks8695net.h | 107 + drivers/net/at1700.c | 16 +- drivers/net/atarilance.c | 52 +- drivers/net/atl1e/atl1e_main.c | 47 +- drivers/net/atlx/atl1.c | 102 +- drivers/net/atlx/atl1.h | 4 +- drivers/net/atlx/atl2.c | 101 +- drivers/net/atlx/atl2.h | 1 - drivers/net/atlx/atlx.c | 13 - drivers/net/atp.c | 29 +- drivers/net/au1000_eth.c | 50 +- drivers/net/ax88796.c | 9 +- drivers/net/b44.c | 13 +- drivers/net/bfin_mac.c | 1 - drivers/net/bmac.c | 7 +- drivers/net/bnx2.c | 94 +- drivers/net/bnx2.h | 42 +- drivers/net/bnx2x_link.c | 72 +- drivers/net/bnx2x_link.h | 10 +- drivers/net/bnx2x_main.c | 95 +- drivers/net/bonding/Makefile | 3 + drivers/net/bonding/bond_3ad.c | 667 +- drivers/net/bonding/bond_3ad.h | 59 +- drivers/net/bonding/bond_alb.c | 37 +- drivers/net/bonding/bond_ipv6.c | 216 + drivers/net/bonding/bond_main.c | 477 +- drivers/net/bonding/bond_sysfs.c | 160 +- drivers/net/bonding/bonding.h | 68 +- drivers/net/can/vcan.c | 24 +- drivers/net/cassini.c | 16 +- drivers/net/chelsio/cxgb2.c | 94 +- drivers/net/chelsio/sge.c | 10 +- drivers/net/cpmac.c | 15 +- drivers/net/cris/eth_v10.c | 4 +- drivers/net/cs89x0.c | 16 +- drivers/net/cxgb3/adapter.h | 5 +- drivers/net/cxgb3/common.h | 4 +- drivers/net/cxgb3/cxgb3_ctl_defs.h | 17 + drivers/net/cxgb3/cxgb3_main.c | 130 +- drivers/net/cxgb3/cxgb3_offload.c | 76 +- drivers/net/cxgb3/sge.c | 105 +- drivers/net/cxgb3/t3_hw.c | 26 +- drivers/net/cxgb3/version.h | 2 +- drivers/net/cxgb3/vsc8211.c | 2 + drivers/net/de600.c | 4 +- drivers/net/de620.c | 26 +- drivers/net/declance.c | 7 +- drivers/net/defxx.c | 27 +- drivers/net/depca.c | 54 +- drivers/net/dl2k.c | 28 +- drivers/net/dm9000.c | 40 +- drivers/net/dummy.c | 15 +- drivers/net/e100.c | 68 +- drivers/net/e1000/e1000.h | 1 - drivers/net/e1000/e1000_main.c | 107 +- drivers/net/e1000e/82571.c | 19 +- drivers/net/e1000e/defines.h | 8 + drivers/net/e1000e/e1000.h | 2 + drivers/net/e1000e/es2lan.c | 194 +- drivers/net/e1000e/ethtool.c | 82 +- drivers/net/e1000e/hw.h | 8 +- drivers/net/e1000e/ich8lan.c | 151 +- drivers/net/e1000e/lib.c | 80 +- drivers/net/e1000e/netdev.c | 131 +- drivers/net/e1000e/phy.c | 12 +- drivers/net/e2100.c | 24 +- drivers/net/eepro.c | 10 +- drivers/net/eepro100.c | 2401 ------ drivers/net/eexpress.c | 3 +- drivers/net/ehea/ehea.h | 2 +- drivers/net/ehea/ehea_main.c | 7 +- drivers/net/ehea/ehea_qmr.c | 18 +- drivers/net/enc28j60.c | 49 +- drivers/net/enic/cq_desc.h | 5 +- drivers/net/enic/enic.h | 2 +- drivers/net/enic/enic_main.c | 86 +- drivers/net/enic/enic_res.c | 7 +- drivers/net/enic/enic_res.h | 4 - drivers/net/enic/vnic_dev.c | 70 +- drivers/net/enic/vnic_devcmd.h | 19 +- drivers/net/enic/vnic_intr.h | 2 +- drivers/net/enic/vnic_resource.h | 2 +- drivers/net/enic/vnic_rq.h | 9 +- drivers/net/enic/vnic_rss.h | 13 + drivers/net/enic/vnic_wq.h | 9 +- drivers/net/epic100.c | 56 +- drivers/net/eql.c | 12 +- drivers/net/es3210.c | 34 +- drivers/net/eth16i.c | 15 +- drivers/net/ewrk3.c | 18 +- drivers/net/fealnx.c | 6 +- drivers/net/fec.c | 6 +- drivers/net/fec_mpc52xx.c | 3 +- drivers/net/forcedeth.c | 90 +- drivers/net/fs_enet/fs_enet-main.c | 9 +- drivers/net/gianfar.c | 861 ++- drivers/net/gianfar.h | 78 +- drivers/net/gianfar_ethtool.c | 89 +- drivers/net/gianfar_mii.c | 212 +- drivers/net/gianfar_mii.h | 2 + drivers/net/hamachi.c | 27 +- drivers/net/hamradio/6pack.c | 1 - drivers/net/hamradio/baycom_epp.c | 1 - drivers/net/hamradio/bpqether.c | 8 +- drivers/net/hamradio/dmascc.c | 13 +- drivers/net/hamradio/hdlcdrv.c | 1 - drivers/net/hamradio/mkiss.c | 4 +- drivers/net/hamradio/scc.c | 13 +- drivers/net/hamradio/yam.c | 1 - drivers/net/hp-plus.c | 27 +- drivers/net/hp.c | 25 +- drivers/net/hp100.c | 24 +- drivers/net/hydra.c | 28 +- drivers/net/ibm_newemac/core.c | 11 +- drivers/net/ibmlana.c | 6 +- drivers/net/ibmveth.c | 46 +- drivers/net/ifb.c | 13 +- drivers/net/igb/e1000_defines.h | 7 +- drivers/net/igb/e1000_mac.c | 25 +- drivers/net/igb/e1000_regs.h | 4 + drivers/net/igb/igb.h | 44 +- drivers/net/igb/igb_ethtool.c | 131 +- drivers/net/igb/igb_main.c | 403 +- drivers/net/ioc3-eth.c | 13 +- drivers/net/ipg.c | 9 - drivers/net/irda/ali-ircc.c | 17 +- drivers/net/irda/au1k_ir.c | 1 - drivers/net/irda/donauboe.c | 8 +- drivers/net/irda/irda-usb.c | 15 +- drivers/net/irda/irtty-sir.c | 7 +- drivers/net/irda/kingsun-sir.c | 1 - drivers/net/irda/ks959-sir.c | 1 - drivers/net/irda/ksdazzle-sir.c | 1 - drivers/net/irda/ma600-sir.c | 2 +- drivers/net/irda/mcs7780.c | 1 - drivers/net/irda/nsc-ircc.c | 17 +- drivers/net/irda/pxaficp_ir.c | 4 - drivers/net/irda/sa1100_ir.c | 28 +- drivers/net/irda/sir_dev.c | 12 +- drivers/net/irda/smsc-ircc2.c | 6 +- drivers/net/irda/stir4200.c | 1 - drivers/net/irda/via-ircc.c | 16 +- drivers/net/irda/vlsi_ir.c | 37 +- drivers/net/irda/w83977af_ir.c | 29 +- drivers/net/isa-skeleton.c | 16 +- drivers/net/iseries_veth.c | 14 +- drivers/net/ixgb/ixgb_main.c | 58 +- drivers/net/ixgbe/Makefile | 2 + drivers/net/ixgbe/ixgbe.h | 32 +- drivers/net/ixgbe/ixgbe_82598.c | 192 +- drivers/net/ixgbe/ixgbe_dcb.c | 332 + drivers/net/ixgbe/ixgbe_dcb.h | 184 + drivers/net/ixgbe/ixgbe_dcb_82598.c | 398 + drivers/net/ixgbe/ixgbe_dcb_82598.h | 94 + drivers/net/ixgbe/ixgbe_dcb_nl.c | 641 ++ drivers/net/ixgbe/ixgbe_ethtool.c | 134 +- drivers/net/ixgbe/ixgbe_main.c | 485 +- drivers/net/ixgbe/ixgbe_phy.c | 326 + drivers/net/ixgbe/ixgbe_phy.h | 25 + drivers/net/ixgbe/ixgbe_type.h | 28 +- drivers/net/ixp2000/ixpdev.c | 6 +- drivers/net/jazzsonic.c | 4 +- drivers/net/jme.c | 71 +- drivers/net/jme.h | 34 +- drivers/net/korina.c | 5 +- drivers/net/lance.c | 32 +- drivers/net/lib82596.c | 14 +- drivers/net/lib8390.c | 20 +- drivers/net/lne390.c | 29 +- drivers/net/loopback.c | 29 +- drivers/net/lp486e.c | 29 +- drivers/net/mac8390.c | 22 +- drivers/net/mac89x0.c | 16 +- drivers/net/macb.c | 18 +- drivers/net/mace.c | 34 +- drivers/net/macmace.c | 6 +- drivers/net/macsonic.c | 9 +- drivers/net/macvlan.c | 49 +- drivers/net/meth.c | 4 +- drivers/net/mlx4/en_cq.c | 4 +- drivers/net/mlx4/en_netdev.c | 48 +- drivers/net/mlx4/en_params.c | 20 +- drivers/net/mlx4/en_rx.c | 9 +- drivers/net/mlx4/en_tx.c | 29 +- drivers/net/mlx4/mcg.c | 25 +- drivers/net/mlx4/mlx4_en.h | 12 +- drivers/net/mv643xx_eth.c | 525 +- drivers/net/mvme147.c | 9 +- drivers/net/myri10ge/myri10ge.c | 71 +- drivers/net/myri10ge/myri10ge_mcp.h | 175 +- drivers/net/myri10ge/myri10ge_mcp_gen_header.h | 2 + drivers/net/myri_sbus.c | 27 +- drivers/net/natsemi.c | 12 +- drivers/net/ne-h8300.c | 30 +- drivers/net/ne.c | 29 +- drivers/net/ne2.c | 29 +- drivers/net/ne2k-pci.c | 28 +- drivers/net/ne3210.c | 31 +- drivers/net/netconsole.c | 9 +- drivers/net/netx-eth.c | 1 - drivers/net/netxen/netxen_nic_ethtool.c | 10 +- drivers/net/netxen/netxen_nic_hw.c | 6 +- drivers/net/netxen/netxen_nic_init.c | 2 - drivers/net/netxen/netxen_nic_main.c | 57 +- drivers/net/netxen/netxen_nic_niu.c | 7 +- drivers/net/ni5010.c | 15 +- drivers/net/ni52.c | 43 +- drivers/net/ni65.c | 39 +- drivers/net/niu.c | 145 +- drivers/net/niu.h | 2 +- drivers/net/ns83820.c | 28 +- drivers/net/pasemi_mac.c | 14 +- drivers/net/pasemi_mac_ethtool.c | 4 +- drivers/net/pci-skeleton.c | 8 +- drivers/net/pcmcia/3c574_cs.c | 6 +- drivers/net/pcmcia/3c589_cs.c | 6 +- drivers/net/pcmcia/axnet_cs.c | 22 +- drivers/net/pcmcia/com20020_cs.c | 6 +- drivers/net/pcmcia/fmvj18x_cs.c | 79 +- drivers/net/pcmcia/nmclan_cs.c | 6 +- drivers/net/pcmcia/pcnet_cs.c | 3 +- drivers/net/pcmcia/smc91c92_cs.c | 5 +- drivers/net/pcmcia/xirc2ps_cs.c | 6 +- drivers/net/pcnet32.c | 10 +- drivers/net/phy/Kconfig | 23 +- drivers/net/phy/Makefile | 5 +- drivers/net/phy/broadcom.c | 216 +- drivers/net/phy/et1011c.c | 113 + drivers/net/phy/mdio-gpio.c | 296 + drivers/net/phy/mdio-ofgpio.c | 204 - drivers/net/phy/mdio_bus.c | 40 +- drivers/net/phy/national.c | 155 + drivers/net/phy/phy.c | 2 +- drivers/net/phy/phy_device.c | 54 +- drivers/net/phy/smsc.c | 28 + drivers/net/phy/ste10Xp.c | 137 + drivers/net/plip.c | 35 +- drivers/net/ppp_async.c | 6 - drivers/net/ppp_generic.c | 206 +- drivers/net/ppp_synctty.c | 6 - drivers/net/pppoe.c | 5 +- drivers/net/pppol2tp.c | 94 +- drivers/net/ps3_gelic_net.c | 6 +- drivers/net/ps3_gelic_wireless.c | 37 +- drivers/net/ps3_gelic_wireless.h | 4 +- drivers/net/qla3xxx.c | 42 +- drivers/net/qlge/qlge_ethtool.c | 2 +- drivers/net/qlge/qlge_main.c | 79 +- drivers/net/qlge/qlge_mpi.c | 2 +- drivers/net/r6040.c | 51 +- drivers/net/r8169.c | 57 +- drivers/net/rionet.c | 31 +- drivers/net/rrunner.c | 25 +- drivers/net/s2io.c | 146 +- drivers/net/sb1000.c | 1 - drivers/net/sb1250-mac.c | 11 +- drivers/net/sc92031.c | 30 +- drivers/net/seeq8005.c | 13 +- drivers/net/sfc/Kconfig | 8 + drivers/net/sfc/Makefile | 5 +- drivers/net/sfc/boards.c | 206 +- drivers/net/sfc/boards.h | 14 +- drivers/net/sfc/efx.c | 449 +- drivers/net/sfc/efx.h | 12 +- drivers/net/sfc/enum.h | 36 +- drivers/net/sfc/ethtool.c | 175 +- drivers/net/sfc/falcon.c | 476 +- drivers/net/sfc/falcon.h | 3 + drivers/net/sfc/falcon_gmac.c | 229 + drivers/net/sfc/falcon_hwdefs.h | 161 +- drivers/net/sfc/falcon_xmac.c | 261 +- drivers/net/sfc/gmii.h | 137 +- drivers/net/sfc/mac.h | 16 +- drivers/net/sfc/mdio_10g.c | 483 +- drivers/net/sfc/mdio_10g.h | 63 +- drivers/net/sfc/mtd.c | 268 + drivers/net/sfc/net_driver.h | 131 +- drivers/net/sfc/phy.h | 7 +- drivers/net/sfc/rx.c | 2 +- drivers/net/sfc/selftest.c | 145 +- drivers/net/sfc/selftest.h | 14 +- drivers/net/sfc/sfe4001.c | 225 +- drivers/net/sfc/spi.h | 34 +- drivers/net/sfc/tenxpress.c | 796 ++- drivers/net/sfc/workarounds.h | 12 +- drivers/net/sfc/xfp_phy.c | 29 +- drivers/net/sgiseeq.c | 7 +- drivers/net/sh_eth.c | 3 +- drivers/net/sis190.c | 7 +- drivers/net/sis900.c | 99 +- drivers/net/skfp/skfddi.c | 27 +- drivers/net/skge.c | 103 +- drivers/net/sky2.c | 56 +- drivers/net/slip.c | 12 +- drivers/net/smc-mca.c | 27 +- drivers/net/smc-ultra.c | 27 +- drivers/net/smc-ultra32.c | 5 +- drivers/net/smc911x.c | 16 +- drivers/net/smc9194.c | 13 +- drivers/net/smc91x.c | 42 +- drivers/net/smc91x.h | 58 +- drivers/net/smsc911x.c | 2071 +++++ drivers/net/smsc911x.h | 390 + drivers/net/smsc9420.c | 1744 ++++ drivers/net/smsc9420.h | 275 + drivers/net/sonic.c | 1 - drivers/net/sonic.h | 20 +- drivers/net/spider_net.c | 17 +- drivers/net/spider_net_ethtool.c | 8 +- drivers/net/starfire.c | 24 +- drivers/net/stnic.c | 25 +- drivers/net/sun3_82586.c | 40 +- drivers/net/sun3lance.c | 10 +- drivers/net/sunbmac.c | 22 +- drivers/net/sundance.c | 6 +- drivers/net/sungem.c | 65 +- drivers/net/sunhme.c | 31 +- drivers/net/sunlance.c | 7 +- drivers/net/sunqe.c | 15 +- drivers/net/sunvnet.c | 5 +- drivers/net/tc35815.c | 49 +- drivers/net/tehuti.c | 73 +- drivers/net/tg3.c | 1068 ++- drivers/net/tg3.h | 188 +- drivers/net/tlan.c | 213 +- drivers/net/tokenring/3c359.c | 13 +- drivers/net/tokenring/Kconfig | 2 +- drivers/net/tokenring/abyss.c | 4 +- drivers/net/tokenring/ibmtr.c | 15 +- drivers/net/tokenring/lanstreamer.c | 36 +- drivers/net/tokenring/madgemc.c | 12 +- drivers/net/tokenring/olympic.c | 52 +- drivers/net/tokenring/proteon.c | 7 +- drivers/net/tokenring/skisa.c | 7 +- drivers/net/tokenring/smctr.c | 2 - drivers/net/tokenring/tms380tr.c | 15 +- drivers/net/tokenring/tmspci.c | 5 +- drivers/net/tsi108_eth.c | 12 +- drivers/net/tulip/de2104x.c | 54 +- drivers/net/tulip/de4x5.c | 17 +- drivers/net/tulip/dmfe.c | 7 +- drivers/net/tulip/eeprom.c | 2 +- drivers/net/tulip/interrupt.c | 10 +- drivers/net/tulip/tulip_core.c | 15 +- drivers/net/tulip/uli526x.c | 8 +- drivers/net/tulip/winbond-840.c | 16 +- drivers/net/tulip/xircom_cb.c | 4 +- drivers/net/tun.c | 33 +- drivers/net/typhoon.c | 15 +- drivers/net/ucc_geth.c | 408 +- drivers/net/ucc_geth.h | 1 + drivers/net/usb/asix.c | 5 +- drivers/net/usb/catc.c | 43 +- drivers/net/usb/dm9601.c | 5 +- drivers/net/usb/hso.c | 34 +- drivers/net/usb/kaweth.c | 17 +- drivers/net/usb/mcs7830.c | 9 +- drivers/net/usb/pegasus.c | 74 +- drivers/net/usb/rtl8150.c | 38 +- drivers/net/usb/smsc95xx.c | 110 +- drivers/net/usb/usbnet.c | 5 +- drivers/net/veth.c | 30 +- drivers/net/via-rhine.c | 47 +- drivers/net/via-velocity.c | 28 +- drivers/net/virtio_net.c | 217 +- drivers/net/wan/Kconfig | 9 + drivers/net/wan/Makefile | 3 +- drivers/net/wan/c101.c | 6 +- drivers/net/wan/cosa.c | 1 - drivers/net/wan/cycx_x25.c | 91 +- drivers/net/wan/dlci.c | 37 +- drivers/net/wan/dscc4.c | 4 +- drivers/net/wan/farsync.c | 2 - drivers/net/wan/{hd6457x.c => hd64570.c} | 255 +- drivers/net/wan/hd64572.c | 640 ++ drivers/net/wan/hdlc_fr.c | 10 +- drivers/net/wan/hdlc_ppp.c | 649 ++- drivers/net/wan/hostess_sv11.c | 1 - drivers/net/wan/ixp4xx_hss.c | 1325 +++ drivers/net/wan/lapbether.c | 3 - drivers/net/wan/lmc/lmc_main.c | 1 - drivers/net/wan/lmc/lmc_proto.c | 1 - drivers/net/wan/n2.c | 9 +- drivers/net/wan/pc300_drv.c | 22 +- drivers/net/wan/pc300too.c | 121 +- drivers/net/wan/pci200syn.c | 79 +- drivers/net/wan/sbni.c | 101 +- drivers/net/wan/sdla.c | 48 +- drivers/net/wan/sealevel.c | 1 - drivers/net/wan/syncppp.c | 1480 ---- drivers/net/wan/wanxl.c | 9 +- drivers/net/wan/x25_asy.c | 52 +- drivers/net/wan/z85230.c | 12 +- drivers/net/wd.c | 29 +- drivers/net/wireless/Kconfig | 163 +- drivers/net/wireless/Makefile | 22 +- drivers/net/wireless/adm8211.c | 52 +- drivers/net/wireless/adm8211.h | 2 - drivers/net/wireless/airo.c | 243 +- drivers/net/wireless/arlan-main.c | 27 +- drivers/net/wireless/ath5k/ath5k.h | 102 +- drivers/net/wireless/ath5k/attach.c | 14 +- drivers/net/wireless/ath5k/base.c | 191 +- drivers/net/wireless/ath5k/desc.c | 4 +- drivers/net/wireless/ath5k/dma.c | 190 +- drivers/net/wireless/ath5k/eeprom.c | 1194 +++- drivers/net/wireless/ath5k/eeprom.h | 253 +- drivers/net/wireless/ath5k/initvals.c | 8 +- drivers/net/wireless/ath5k/pcu.c | 233 +- drivers/net/wireless/ath5k/phy.c | 9 +- drivers/net/wireless/ath5k/qcu.c | 37 +- drivers/net/wireless/ath5k/reg.h | 16 +- drivers/net/wireless/ath5k/reset.c | 9 +- drivers/net/wireless/ath9k/Kconfig | 11 + drivers/net/wireless/ath9k/Makefile | 9 +- drivers/net/wireless/ath9k/ani.c | 852 ++ drivers/net/wireless/ath9k/ath9k.h | 432 +- drivers/net/wireless/ath9k/beacon.c | 319 +- drivers/net/wireless/ath9k/calib.c | 1021 +++ drivers/net/wireless/ath9k/core.c | 1886 ----- drivers/net/wireless/ath9k/core.h | 926 +-- drivers/net/wireless/ath9k/debug.c | 262 + drivers/net/wireless/ath9k/eeprom.c | 2824 +++++++ drivers/net/wireless/ath9k/hw.c | 8490 +++++--------------- drivers/net/wireless/ath9k/hw.h | 165 +- drivers/net/wireless/ath9k/initvals.h | 1938 +++++- drivers/net/wireless/ath9k/mac.c | 946 +++ drivers/net/wireless/ath9k/main.c | 2353 ++++-- drivers/net/wireless/ath9k/phy.c | 24 +- drivers/net/wireless/ath9k/phy.h | 5 + drivers/net/wireless/ath9k/rc.c | 1832 ++--- drivers/net/wireless/ath9k/rc.h | 220 +- drivers/net/wireless/ath9k/recv.c | 1242 +--- drivers/net/wireless/ath9k/reg.h | 109 +- drivers/net/wireless/ath9k/regd.c | 85 +- drivers/net/wireless/ath9k/regd.h | 2 +- drivers/net/wireless/ath9k/xmit.c | 1532 ++-- drivers/net/wireless/atmel.c | 79 +- drivers/net/wireless/b43/b43.h | 1 - drivers/net/wireless/b43/debugfs.c | 1 + drivers/net/wireless/b43/debugfs.h | 1 + drivers/net/wireless/b43/dma.c | 4 +- drivers/net/wireless/b43/main.c | 280 +- drivers/net/wireless/b43/phy_a.c | 4 +- drivers/net/wireless/b43/phy_common.c | 18 + drivers/net/wireless/b43/phy_g.c | 28 +- drivers/net/wireless/b43/pio.c | 3 +- drivers/net/wireless/b43/xmit.c | 64 +- drivers/net/wireless/b43/xmit.h | 5 +- drivers/net/wireless/b43legacy/b43legacy.h | 5 +- drivers/net/wireless/b43legacy/debugfs.c | 2 +- drivers/net/wireless/b43legacy/dma.c | 48 +- drivers/net/wireless/b43legacy/main.c | 211 +- drivers/net/wireless/b43legacy/phy.c | 6 +- drivers/net/wireless/b43legacy/pio.c | 31 +- drivers/net/wireless/b43legacy/xmit.c | 26 +- drivers/net/wireless/b43legacy/xmit.h | 2 +- drivers/net/wireless/hostap/Kconfig | 13 +- drivers/net/wireless/hostap/hostap.h | 2 +- drivers/net/wireless/hostap/hostap_80211.h | 2 +- drivers/net/wireless/hostap/hostap_80211_rx.c | 72 +- drivers/net/wireless/hostap/hostap_80211_tx.c | 23 +- drivers/net/wireless/hostap/hostap_ap.c | 253 +- drivers/net/wireless/hostap/hostap_ap.h | 8 +- drivers/net/wireless/hostap/hostap_common.h | 13 - drivers/net/wireless/hostap/hostap_hw.c | 71 +- drivers/net/wireless/hostap/hostap_info.c | 16 +- drivers/net/wireless/hostap/hostap_ioctl.c | 157 +- drivers/net/wireless/hostap/hostap_main.c | 45 +- drivers/net/wireless/hostap/hostap_pci.c | 2 +- drivers/net/wireless/hostap/hostap_proc.c | 35 +- drivers/net/wireless/hostap/hostap_wlan.h | 8 +- drivers/net/wireless/ipw2x00/Kconfig | 191 + drivers/net/wireless/ipw2x00/Makefile | 14 + drivers/net/wireless/{ => ipw2x00}/ipw2100.c | 71 +- drivers/net/wireless/{ => ipw2x00}/ipw2100.h | 0 drivers/net/wireless/{ => ipw2x00}/ipw2200.c | 482 +- drivers/net/wireless/{ => ipw2x00}/ipw2200.h | 2 + .../net/wireless/ipw2x00/libipw_geo.c | 0 .../net/wireless/ipw2x00/libipw_module.c | 51 +- .../net/wireless/ipw2x00/libipw_rx.c | 124 +- .../net/wireless/ipw2x00/libipw_tx.c | 7 +- .../net/wireless/ipw2x00/libipw_wx.c | 98 +- drivers/net/wireless/iwlwifi/Kconfig | 2 + drivers/net/wireless/iwlwifi/Makefile | 3 +- drivers/net/wireless/iwlwifi/iwl-3945-commands.h | 148 +- drivers/net/wireless/iwlwifi/iwl-3945-core.h | 28 +- drivers/net/wireless/iwlwifi/iwl-3945-debug.h | 2 +- drivers/net/wireless/iwlwifi/iwl-3945-hw.h | 4 +- drivers/net/wireless/iwlwifi/iwl-3945-io.h | 24 +- drivers/net/wireless/iwlwifi/iwl-3945-led.c | 2 +- drivers/net/wireless/iwlwifi/iwl-3945-led.h | 2 +- drivers/net/wireless/iwlwifi/iwl-3945-rs.c | 223 +- drivers/net/wireless/iwlwifi/iwl-3945-rs.h | 2 +- drivers/net/wireless/iwlwifi/iwl-3945.c | 125 +- drivers/net/wireless/iwlwifi/iwl-3945.h | 40 +- drivers/net/wireless/iwlwifi/iwl-4965-hw.h | 203 +- drivers/net/wireless/iwlwifi/iwl-4965.c | 251 +- drivers/net/wireless/iwlwifi/iwl-5000-hw.h | 64 +- drivers/net/wireless/iwlwifi/iwl-5000.c | 440 +- drivers/net/wireless/iwlwifi/iwl-agn-hcmd-check.c | 108 + drivers/net/wireless/iwlwifi/iwl-agn-rs.c | 179 +- drivers/net/wireless/iwlwifi/iwl-agn-rs.h | 22 +- drivers/net/wireless/iwlwifi/iwl-agn.c | 1241 +-- drivers/net/wireless/iwlwifi/iwl-calib.c | 19 +- drivers/net/wireless/iwlwifi/iwl-calib.h | 2 +- drivers/net/wireless/iwlwifi/iwl-commands.h | 536 +- drivers/net/wireless/iwlwifi/iwl-core.c | 335 +- drivers/net/wireless/iwlwifi/iwl-core.h | 78 +- drivers/net/wireless/iwlwifi/iwl-csr.h | 8 +- drivers/net/wireless/iwlwifi/iwl-debug.h | 33 +- drivers/net/wireless/iwlwifi/iwl-debugfs.c | 83 +- drivers/net/wireless/iwlwifi/iwl-dev.h | 183 +- drivers/net/wireless/iwlwifi/iwl-eeprom.c | 50 +- drivers/net/wireless/iwlwifi/iwl-eeprom.h | 15 +- drivers/net/wireless/iwlwifi/iwl-fh.h | 173 +- drivers/net/wireless/iwlwifi/iwl-hcmd.c | 4 +- drivers/net/wireless/iwlwifi/iwl-helpers.h | 111 +- drivers/net/wireless/iwlwifi/iwl-io.h | 37 +- drivers/net/wireless/iwlwifi/iwl-led.c | 7 +- drivers/net/wireless/iwlwifi/iwl-led.h | 2 +- drivers/net/wireless/iwlwifi/iwl-power.c | 38 +- drivers/net/wireless/iwlwifi/iwl-power.h | 2 +- drivers/net/wireless/iwlwifi/iwl-prph.h | 8 +- drivers/net/wireless/iwlwifi/iwl-rfkill.c | 12 +- drivers/net/wireless/iwlwifi/iwl-rfkill.h | 2 +- drivers/net/wireless/iwlwifi/iwl-rx.c | 230 +- drivers/net/wireless/iwlwifi/iwl-scan.c | 131 +- drivers/net/wireless/iwlwifi/iwl-spectrum.c | 198 + drivers/net/wireless/iwlwifi/iwl-spectrum.h | 3 +- drivers/net/wireless/iwlwifi/iwl-sta.c | 259 +- drivers/net/wireless/iwlwifi/iwl-sta.h | 16 +- drivers/net/wireless/iwlwifi/iwl-tx.c | 438 +- drivers/net/wireless/iwlwifi/iwl3945-base.c | 751 +- drivers/net/wireless/libertas/assoc.c | 69 +- drivers/net/wireless/libertas/cmd.c | 32 +- drivers/net/wireless/libertas/cmd.h | 3 +- drivers/net/wireless/libertas/debugfs.c | 11 +- drivers/net/wireless/libertas/decl.h | 4 - drivers/net/wireless/libertas/defs.h | 14 +- drivers/net/wireless/libertas/dev.h | 7 +- drivers/net/wireless/libertas/ethtool.c | 14 +- drivers/net/wireless/libertas/host.h | 9 + drivers/net/wireless/libertas/hostcmd.h | 26 +- drivers/net/wireless/libertas/if_sdio.c | 3 +- drivers/net/wireless/libertas/if_usb.c | 7 +- drivers/net/wireless/libertas/main.c | 135 +- drivers/net/wireless/libertas/persistcfg.c | 18 +- drivers/net/wireless/libertas/radiotap.h | 3 - drivers/net/wireless/libertas/scan.c | 105 +- drivers/net/wireless/libertas/scan.h | 4 + drivers/net/wireless/libertas/tx.c | 2 +- drivers/net/wireless/libertas/types.h | 5 +- drivers/net/wireless/libertas/wext.c | 80 +- drivers/net/wireless/libertas_tf/cmd.c | 5 +- drivers/net/wireless/libertas_tf/main.c | 8 +- drivers/net/wireless/mac80211_hwsim.c | 294 +- drivers/net/wireless/netwave_cs.c | 6 +- drivers/net/wireless/orinoco/Makefile | 12 + drivers/net/wireless/{ => orinoco}/airport.c | 2 +- drivers/net/wireless/{ => orinoco}/hermes.c | 0 drivers/net/wireless/{ => orinoco}/hermes.h | 0 drivers/net/wireless/{ => orinoco}/hermes_dld.c | 0 drivers/net/wireless/{ => orinoco}/hermes_dld.h | 0 drivers/net/wireless/{ => orinoco}/hermes_rid.h | 0 drivers/net/wireless/{ => orinoco}/orinoco.c | 231 +- drivers/net/wireless/{ => orinoco}/orinoco.h | 9 + drivers/net/wireless/{ => orinoco}/orinoco_cs.c | 10 +- .../net/wireless/{ => orinoco}/orinoco_nortel.c | 0 drivers/net/wireless/{ => orinoco}/orinoco_pci.c | 0 drivers/net/wireless/{ => orinoco}/orinoco_pci.h | 0 drivers/net/wireless/{ => orinoco}/orinoco_plx.c | 0 drivers/net/wireless/{ => orinoco}/orinoco_tmd.c | 0 drivers/net/wireless/{ => orinoco}/spectrum_cs.c | 31 +- drivers/net/wireless/p54/p54.h | 74 +- drivers/net/wireless/p54/p54common.c | 1620 +++- drivers/net/wireless/p54/p54common.h | 349 +- drivers/net/wireless/p54/p54pci.c | 70 +- drivers/net/wireless/p54/p54pci.h | 2 +- drivers/net/wireless/p54/p54usb.c | 261 +- drivers/net/wireless/p54/p54usb.h | 1 + drivers/net/wireless/prism54/isl_ioctl.c | 24 +- drivers/net/wireless/prism54/islpci_hotplug.c | 8 +- drivers/net/wireless/ray_cs.c | 12 +- drivers/net/wireless/rndis_wlan.c | 95 +- drivers/net/wireless/rt2x00/Kconfig | 1 + drivers/net/wireless/rt2x00/rt2400pci.c | 373 +- drivers/net/wireless/rt2x00/rt2400pci.h | 2 + drivers/net/wireless/rt2x00/rt2500pci.c | 407 +- drivers/net/wireless/rt2x00/rt2500pci.h | 2 + drivers/net/wireless/rt2x00/rt2500usb.c | 443 +- drivers/net/wireless/rt2x00/rt2500usb.h | 5 + drivers/net/wireless/rt2x00/rt2x00.h | 113 +- drivers/net/wireless/rt2x00/rt2x00config.c | 202 +- drivers/net/wireless/rt2x00/rt2x00crypto.c | 79 +- drivers/net/wireless/rt2x00/rt2x00debug.c | 47 +- drivers/net/wireless/rt2x00/rt2x00debug.h | 13 + drivers/net/wireless/rt2x00/rt2x00dev.c | 86 +- drivers/net/wireless/rt2x00/rt2x00leds.c | 88 +- drivers/net/wireless/rt2x00/rt2x00lib.h | 33 +- drivers/net/wireless/rt2x00/rt2x00mac.c | 56 +- drivers/net/wireless/rt2x00/rt2x00pci.c | 41 +- drivers/net/wireless/rt2x00/rt2x00pci.h | 37 +- drivers/net/wireless/rt2x00/rt2x00queue.c | 94 +- drivers/net/wireless/rt2x00/rt2x00queue.h | 47 +- drivers/net/wireless/rt2x00/rt2x00usb.c | 145 +- drivers/net/wireless/rt2x00/rt2x00usb.h | 141 +- drivers/net/wireless/rt2x00/rt61pci.c | 469 +- drivers/net/wireless/rt2x00/rt61pci.h | 2 + drivers/net/wireless/rt2x00/rt73usb.c | 689 +- drivers/net/wireless/rt2x00/rt73usb.h | 2 + drivers/net/wireless/rtl818x/Makefile | 7 + drivers/net/wireless/{ => rtl818x}/rtl8180.h | 0 drivers/net/wireless/{ => rtl818x}/rtl8180_dev.c | 48 +- .../net/wireless/{ => rtl818x}/rtl8180_grf5101.c | 0 .../net/wireless/{ => rtl818x}/rtl8180_grf5101.h | 0 .../net/wireless/{ => rtl818x}/rtl8180_max2820.c | 0 .../net/wireless/{ => rtl818x}/rtl8180_max2820.h | 0 .../net/wireless/{ => rtl818x}/rtl8180_rtl8225.c | 14 +- .../net/wireless/{ => rtl818x}/rtl8180_rtl8225.h | 0 .../net/wireless/{ => rtl818x}/rtl8180_sa2400.c | 0 .../net/wireless/{ => rtl818x}/rtl8180_sa2400.h | 0 drivers/net/wireless/{ => rtl818x}/rtl8187.h | 8 +- drivers/net/wireless/{ => rtl818x}/rtl8187_dev.c | 459 +- .../net/wireless/{ => rtl818x}/rtl8187_rtl8225.c | 397 +- .../net/wireless/{ => rtl818x}/rtl8187_rtl8225.h | 0 drivers/net/wireless/{ => rtl818x}/rtl818x.h | 1 + drivers/net/wireless/strip.c | 22 +- drivers/net/wireless/wavelan.c | 122 +- drivers/net/wireless/wavelan_cs.c | 39 +- drivers/net/wireless/wl3501.h | 4 +- drivers/net/wireless/wl3501_cs.c | 11 +- drivers/net/wireless/zd1201.c | 131 +- drivers/net/wireless/zd1211rw/zd_chip.c | 4 +- drivers/net/wireless/zd1211rw/zd_mac.c | 44 +- drivers/net/wireless/zd1211rw/zd_usb.c | 2 +- drivers/net/xen-netfront.c | 9 +- drivers/net/xtsonic.c | 6 +- drivers/net/yellowfin.c | 42 +- drivers/net/znet.c | 28 +- drivers/net/zorro8390.c | 29 +- drivers/parisc/led.c | 4 +- drivers/s390/net/lcs.c | 12 +- drivers/s390/net/qeth_core_offl.c | 8 +- drivers/s390/net/qeth_l2_main.c | 18 +- drivers/scsi/iscsi_tcp.c | 4 +- drivers/scsi/qla4xxx/ql4_os.c | 3 +- drivers/ssb/main.c | 11 +- drivers/ssb/pcihost_wrapper.c | 2 +- drivers/staging/slicoss/slicoss.c | 7 +- drivers/staging/winbond/linux/wbusb.c | 6 +- drivers/staging/wlan-ng/p80211netdev.c | 20 +- drivers/staging/wlan-ng/p80211wext.c | 58 +- drivers/usb/atm/cxacru.c | 4 +- drivers/usb/atm/usbatm.c | 5 +- drivers/usb/gadget/f_phonet.c | 621 ++ drivers/usb/gadget/u_ether.c | 10 +- drivers/usb/gadget/u_phonet.h | 21 + drivers/uwb/wlp/eda.c | 38 +- firmware/Makefile | 3 + firmware/WHENCE | 11 + firmware/cxgb3/t3b_psram-1.1.0.bin.ihex | 162 + firmware/cxgb3/t3c_psram-1.1.0.bin.ihex | 162 + firmware/cxgb3/t3fw-7.0.0.bin.ihex | 1881 +++++ fs/afs/proc.c | 4 +- fs/afs/server.c | 9 +- fs/cifs/cifs_spnego.c | 6 +- fs/cifs/connect.c | 4 +- fs/dlm/netlink.c | 2 +- fs/lockd/host.c | 8 +- fs/lockd/mon.c | 2 +- fs/nfs/nfsroot.c | 6 +- fs/nfs/super.c | 6 +- fs/nfsd/nfs4state.c | 4 +- fs/nfsd/nfsctl.c | 2 +- fs/ocfs2/cluster/netdebug.c | 8 +- fs/ocfs2/cluster/nodemanager.c | 2 +- fs/ocfs2/cluster/tcp.c | 29 +- include/linux/atm.h | 17 +- include/linux/atmdev.h | 15 + include/linux/cgroup_subsys.h | 6 + include/linux/dcbnl.h | 340 + include/linux/dccp.h | 42 +- include/linux/etherdevice.h | 46 + include/linux/ethtool.h | 2 + include/linux/fddidevice.h | 1 + include/linux/filter.h | 3 +- include/linux/fsl_devices.h | 18 +- include/linux/hdlc.h | 4 +- include/linux/hippidevice.h | 4 +- include/linux/ieee80211.h | 212 +- include/linux/if.h | 1 + include/linux/if_arp.h | 3 + include/linux/in.h | 4 + include/linux/ipv6.h | 1 + include/linux/kernel.h | 12 - include/linux/list_nulls.h | 94 + include/linux/mdio-gpio.h | 25 + include/linux/mii.h | 33 + include/linux/mroute6.h | 26 +- include/linux/netdevice.h | 400 +- include/linux/netfilter_bridge/ebtables.h | 3 +- include/linux/netfilter_ipv4/ipt_policy.h | 2 + include/linux/netfilter_ipv6/ip6t_policy.h | 2 + include/linux/netlink.h | 3 +- include/linux/netpoll.h | 5 - include/linux/nl80211.h | 223 +- include/linux/phy.h | 2 + include/linux/pkt_cls.h | 14 + include/linux/pkt_sched.h | 16 + include/linux/rculist_nulls.h | 110 + include/linux/rfkill.h | 8 +- include/linux/rtnetlink.h | 5 + include/linux/skbuff.h | 54 +- include/linux/smsc911x.h | 47 + include/linux/snmp.h | 3 + include/linux/sunrpc/svc_xprt.h | 8 +- include/linux/virtio_net.h | 9 + include/linux/xfrm.h | 14 + include/net/bluetooth/bluetooth.h | 4 +- include/net/bluetooth/hci.h | 2 +- include/net/cfg80211.h | 142 +- include/net/checksum.h | 2 +- include/net/dcbnl.h | 53 + include/net/dn.h | 8 +- include/net/dn_fib.h | 6 +- include/net/dst.h | 39 +- include/net/flow.h | 9 +- include/net/gen_stats.h | 3 +- include/net/ieee80211.h | 148 +- include/net/ieee80211_radiotap.h | 15 +- include/net/inet_hashtables.h | 85 +- include/net/inet_timewait_sock.h | 10 +- include/net/ip.h | 3 +- include/net/ip_vs.h | 17 +- include/net/{ieee80211_crypt.h => lib80211.h} | 75 +- include/net/mac80211.h | 446 +- include/net/ndisc.h | 14 + include/net/neighbour.h | 15 +- include/net/net_namespace.h | 22 + include/net/netfilter/nf_conntrack.h | 5 +- include/net/netfilter/nf_conntrack_ecache.h | 57 +- include/net/netfilter/nf_conntrack_expect.h | 2 + include/net/netfilter/nf_conntrack_helper.h | 5 +- include/net/netfilter/nf_conntrack_l4proto.h | 2 +- include/net/netfilter/nf_conntrack_tuple.h | 12 +- include/net/netfilter/nfnetlink_log.h | 14 + include/net/netlink.h | 24 +- include/net/netns/ipv4.h | 2 + include/net/netns/ipv6.h | 12 + include/net/netns/mib.h | 3 + include/net/netns/x_tables.h | 5 + include/net/netns/xfrm.h | 56 + include/net/phonet/pep.h | 2 +- include/net/phonet/phonet.h | 2 +- include/net/phonet/pn_dev.h | 2 +- include/net/pkt_cls.h | 2 +- include/net/protocol.h | 3 + include/net/sch_generic.h | 38 +- include/net/sctp/sctp.h | 9 +- include/net/sctp/user.h | 2 + include/net/sock.h | 86 +- include/net/syncppp.h | 102 - include/net/tcp.h | 20 +- include/net/udp.h | 25 +- include/net/udplite.h | 2 +- include/net/wireless.h | 90 +- include/net/xfrm.h | 110 +- lib/vsprintf.c | 77 + net/802/fddi.c | 8 +- net/802/hippi.c | 14 +- net/802/tr.c | 24 +- net/8021q/vlan.c | 26 +- net/8021q/vlan.h | 6 +- net/8021q/vlan_core.c | 2 - net/8021q/vlan_dev.c | 76 +- net/9p/trans_rdma.c | 2 - net/Kconfig | 7 +- net/Makefile | 4 +- net/appletalk/aarp.c | 3 +- net/appletalk/ddp.c | 5 +- net/appletalk/sysctl_net_atalk.c | 14 +- net/atm/atm_sysfs.c | 2 +- net/atm/br2684.c | 7 +- net/atm/clip.c | 4 +- net/atm/common.h | 1 + net/atm/ioctl.c | 49 +- net/atm/lec.c | 60 +- net/atm/mpc.c | 40 +- net/atm/mpoa_caches.c | 18 +- net/atm/pvc.c | 3 + net/atm/resources.c | 88 +- net/atm/resources.h | 2 +- net/atm/svc.c | 19 + net/ax25/ax25_in.c | 41 +- net/ax25/sysctl_net_ax25.c | 58 +- net/bluetooth/af_bluetooth.c | 50 +- net/bluetooth/bnep/bnep.h | 2 +- net/bluetooth/bnep/core.c | 8 +- net/bluetooth/bnep/netdev.c | 11 +- net/bluetooth/bnep/sock.c | 5 - net/bluetooth/cmtp/capi.c | 5 - net/bluetooth/cmtp/core.c | 5 - net/bluetooth/cmtp/sock.c | 5 - net/bluetooth/hci_conn.c | 5 - net/bluetooth/hci_core.c | 11 +- net/bluetooth/hci_event.c | 5 - net/bluetooth/hci_sock.c | 5 - net/bluetooth/hci_sysfs.c | 12 +- net/bluetooth/hidp/core.c | 5 - net/bluetooth/hidp/sock.c | 5 - net/bluetooth/l2cap.c | 5 - net/bluetooth/rfcomm/core.c | 5 - net/bluetooth/rfcomm/sock.c | 9 +- net/bluetooth/rfcomm/tty.c | 48 +- net/bluetooth/sco.c | 5 - net/bridge/br_device.c | 20 +- net/bridge/br_if.c | 4 +- net/bridge/br_netfilter.c | 13 +- net/bridge/br_sysfs_br.c | 2 +- net/bridge/netfilter/ebt_log.c | 18 +- net/bridge/netfilter/ebtable_broute.c | 26 +- net/bridge/netfilter/ebtable_filter.c | 41 +- net/bridge/netfilter/ebtable_nat.c | 38 +- net/bridge/netfilter/ebtables.c | 52 +- net/can/raw.c | 22 +- net/core/datagram.c | 5 +- net/core/dev.c | 458 +- net/core/dst.c | 6 +- net/core/ethtool.c | 53 +- net/core/fib_rules.c | 7 +- net/core/filter.c | 19 + net/core/flow.c | 6 +- net/core/gen_estimator.c | 97 +- net/core/neighbour.c | 73 +- net/core/net-sysfs.c | 15 +- net/core/net_namespace.c | 2 - net/core/netpoll.c | 20 +- net/core/pktgen.c | 42 +- net/core/rtnetlink.c | 15 +- net/core/skbuff.c | 277 +- net/core/sock.c | 46 +- net/core/sysctl_net_core.c | 68 +- net/dcb/Kconfig | 22 + net/dcb/Makefile | 1 + net/dcb/dcbnl.c | 1122 +++ net/dccp/ackvec.c | 9 +- net/dccp/ackvec.h | 5 +- net/dccp/ccid.c | 62 +- net/dccp/ccid.h | 26 +- net/dccp/ccids/ccid2.c | 6 +- net/dccp/dccp.h | 17 +- net/dccp/diag.c | 11 +- net/dccp/feat.c | 1458 +++- net/dccp/feat.h | 130 +- net/dccp/input.c | 44 +- net/dccp/ipv4.c | 13 +- net/dccp/ipv6.c | 15 +- net/dccp/minisocks.c | 54 +- net/dccp/options.c | 229 +- net/dccp/output.c | 19 +- net/dccp/probe.c | 19 +- net/dccp/proto.c | 224 +- net/dccp/sysctl.c | 21 - net/dccp/timer.c | 12 - net/decnet/af_decnet.c | 62 +- net/decnet/dn_dev.c | 22 +- net/decnet/dn_neigh.c | 18 +- net/decnet/dn_nsp_in.c | 28 +- net/decnet/dn_nsp_out.c | 23 +- net/decnet/dn_route.c | 29 +- net/decnet/dn_table.c | 2 +- net/decnet/sysctl_net_decnet.c | 48 +- net/dsa/mv88e6060.c | 6 +- net/dsa/mv88e6123_61_65.c | 4 +- net/dsa/mv88e6131.c | 4 +- net/dsa/mv88e6xxx.c | 2 +- net/dsa/slave.c | 2 +- net/dsa/tag_dsa.c | 1 - net/dsa/tag_edsa.c | 1 - net/dsa/tag_trailer.c | 1 - net/ethernet/eth.c | 19 +- net/ieee80211/Kconfig | 73 - net/ieee80211/Makefile | 12 - net/ieee80211/ieee80211_crypt.c | 206 - net/ipv4/af_inet.c | 116 +- net/ipv4/ah4.c | 10 +- net/ipv4/arp.c | 36 +- net/ipv4/cipso_ipv4.c | 1 - net/ipv4/devinet.c | 19 +- net/ipv4/esp4.c | 8 +- net/ipv4/fib_frontend.c | 10 +- net/ipv4/fib_hash.c | 12 +- net/ipv4/fib_semantics.c | 8 +- net/ipv4/fib_trie.c | 6 +- net/ipv4/icmp.c | 39 +- net/ipv4/igmp.c | 95 +- net/ipv4/inet_connection_sock.c | 31 +- net/ipv4/inet_diag.c | 31 +- net/ipv4/inet_hashtables.c | 277 +- net/ipv4/inet_lro.c | 4 +- net/ipv4/inet_timewait_sock.c | 48 +- net/ipv4/inetpeer.c | 2 +- net/ipv4/ip_forward.c | 2 +- net/ipv4/ip_fragment.c | 21 +- net/ipv4/ip_gre.c | 58 +- net/ipv4/ip_input.c | 10 +- net/ipv4/ip_output.c | 24 +- net/ipv4/ip_sockglue.c | 72 +- net/ipv4/ipcomp.c | 10 +- net/ipv4/ipconfig.c | 40 +- net/ipv4/ipip.c | 37 +- net/ipv4/ipmr.c | 280 +- net/ipv4/netfilter.c | 7 +- net/ipv4/netfilter/arp_tables.c | 16 +- net/ipv4/netfilter/arptable_filter.c | 12 +- net/ipv4/netfilter/ip_tables.c | 12 +- net/ipv4/netfilter/ipt_CLUSTERIP.c | 9 +- net/ipv4/netfilter/ipt_LOG.c | 7 +- net/ipv4/netfilter/ipt_addrtype.c | 16 +- net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c | 27 +- net/ipv4/netfilter/nf_conntrack_proto_icmp.c | 4 +- net/ipv4/netfilter/nf_nat_h323.c | 58 +- net/ipv4/netfilter/nf_nat_irc.c | 4 +- net/ipv4/netfilter/nf_nat_rule.c | 27 +- net/ipv4/netfilter/nf_nat_sip.c | 18 +- net/ipv4/netfilter/nf_nat_snmp_basic.c | 9 +- net/ipv4/proc.c | 8 +- net/ipv4/raw.c | 10 +- net/ipv4/route.c | 227 +- net/ipv4/sysctl_net_ipv4.c | 188 +- net/ipv4/tcp.c | 130 +- net/ipv4/tcp_cubic.c | 120 +- net/ipv4/tcp_diag.c | 2 +- net/ipv4/tcp_input.c | 511 +- net/ipv4/tcp_ipv4.c | 137 +- net/ipv4/tcp_minisocks.c | 2 +- net/ipv4/tcp_output.c | 219 +- net/ipv4/tcp_probe.c | 7 +- net/ipv4/tcp_timer.c | 14 +- net/ipv4/tcp_yeah.c | 4 +- net/ipv4/udp.c | 271 +- net/ipv4/udp_impl.h | 4 +- net/ipv4/udplite.c | 14 +- net/ipv4/xfrm4_input.c | 4 +- net/ipv4/xfrm4_policy.c | 15 +- net/ipv4/xfrm4_state.c | 2 - net/ipv6/addrconf.c | 80 +- net/ipv6/addrlabel.c | 34 +- net/ipv6/af_inet6.c | 2 +- net/ipv6/ah6.c | 9 +- net/ipv6/anycast.c | 6 +- net/ipv6/datagram.c | 3 +- net/ipv6/esp6.c | 7 +- net/ipv6/exthdrs.c | 2 +- net/ipv6/icmp.c | 21 +- net/ipv6/inet6_connection_sock.c | 2 +- net/ipv6/inet6_hashtables.c | 182 +- net/ipv6/ip6_flowlabel.c | 6 +- net/ipv6/ip6_output.c | 5 +- net/ipv6/ip6_tunnel.c | 37 +- net/ipv6/ip6mr.c | 490 +- net/ipv6/ipcomp6.c | 10 +- net/ipv6/ipv6_sockglue.c | 34 +- net/ipv6/mcast.c | 41 +- net/ipv6/mip6.c | 3 +- net/ipv6/ndisc.c | 105 +- net/ipv6/netfilter.c | 7 +- net/ipv6/netfilter/ip6t_LOG.c | 7 +- net/ipv6/netfilter/ip6t_REJECT.c | 2 +- net/ipv6/netfilter/ip6table_filter.c | 17 +- net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c | 5 +- net/ipv6/netfilter/nf_conntrack_proto_icmpv6.c | 2 +- net/ipv6/netfilter/nf_conntrack_reasm.c | 6 +- net/ipv6/raw.c | 3 +- net/ipv6/reassembly.c | 12 +- net/ipv6/route.c | 47 +- net/ipv6/sit.c | 35 +- net/ipv6/syncookies.c | 2 +- net/ipv6/sysctl_net_ipv6.c | 4 +- net/ipv6/tcp_ipv6.c | 28 +- net/ipv6/udp.c | 151 +- net/ipv6/udp_impl.h | 4 +- net/ipv6/udplite.c | 9 +- net/ipv6/xfrm6_input.c | 9 +- net/ipv6/xfrm6_policy.c | 22 +- net/ipv6/xfrm6_state.c | 2 - net/ipv6/xfrm6_tunnel.c | 33 +- net/ipx/sysctl_net_ipx.c | 2 +- net/irda/irlan/irlan_client.c | 4 +- net/irda/irlan/irlan_common.c | 2 +- net/irda/irlap_frame.c | 17 +- net/irda/irsysctl.c | 50 +- net/irda/irttp.c | 14 +- net/irda/timer.c | 2 +- net/key/af_key.c | 217 +- net/llc/af_llc.c | 1 - net/llc/llc_proc.c | 3 +- net/llc/sysctl_net_llc.c | 20 +- net/mac80211/Kconfig | 8 +- net/mac80211/Makefile | 2 + net/mac80211/cfg.c | 194 +- net/mac80211/debugfs.c | 12 +- net/mac80211/debugfs_key.c | 4 +- net/mac80211/debugfs_netdev.c | 117 +- net/mac80211/debugfs_sta.c | 84 +- net/mac80211/event.c | 5 +- net/mac80211/ht.c | 265 +- net/mac80211/ieee80211_i.h | 90 +- net/mac80211/iface.c | 54 +- net/mac80211/key.c | 10 +- net/mac80211/main.c | 284 +- net/mac80211/mesh.c | 4 +- net/mac80211/mesh.h | 5 +- net/mac80211/mesh_hwmp.c | 7 +- net/mac80211/mesh_plink.c | 49 +- net/mac80211/mlme.c | 606 +- net/mac80211/rate.c | 52 +- net/mac80211/rate.h | 11 +- net/mac80211/rc80211_minstrel.c | 109 +- net/mac80211/rc80211_minstrel.h | 2 + net/mac80211/rc80211_pid.h | 3 +- net/mac80211/rc80211_pid_algo.c | 38 +- net/mac80211/rc80211_pid_debugfs.c | 5 +- net/mac80211/rx.c | 174 +- net/mac80211/scan.c | 24 +- net/mac80211/sta_info.c | 37 +- net/mac80211/sta_info.h | 45 +- net/mac80211/tkip.c | 10 +- net/mac80211/tx.c | 462 +- net/mac80211/util.c | 107 +- net/mac80211/wep.c | 33 +- net/mac80211/wep.h | 2 +- net/mac80211/wext.c | 257 +- net/mac80211/wme.c | 32 +- net/mac80211/wpa.c | 32 +- net/netfilter/Kconfig | 5 +- net/netfilter/ipvs/ip_vs_conn.c | 20 +- net/netfilter/ipvs/ip_vs_core.c | 20 +- net/netfilter/ipvs/ip_vs_ctl.c | 82 +- net/netfilter/ipvs/ip_vs_dh.c | 34 +- net/netfilter/ipvs/ip_vs_ftp.c | 13 +- net/netfilter/ipvs/ip_vs_lblc.c | 69 +- net/netfilter/ipvs/ip_vs_lblcr.c | 96 +- net/netfilter/ipvs/ip_vs_lc.c | 3 - net/netfilter/ipvs/ip_vs_nq.c | 3 - net/netfilter/ipvs/ip_vs_proto.c | 38 +- net/netfilter/ipvs/ip_vs_proto_ah_esp.c | 10 +- net/netfilter/ipvs/ip_vs_proto_tcp.c | 8 +- net/netfilter/ipvs/ip_vs_proto_udp.c | 8 +- net/netfilter/ipvs/ip_vs_rr.c | 3 - net/netfilter/ipvs/ip_vs_sed.c | 3 - net/netfilter/ipvs/ip_vs_sh.c | 34 +- net/netfilter/ipvs/ip_vs_sync.c | 4 +- net/netfilter/ipvs/ip_vs_wlc.c | 3 - net/netfilter/ipvs/ip_vs_wrr.c | 3 - net/netfilter/ipvs/ip_vs_xmit.c | 34 +- net/netfilter/nf_conntrack_acct.c | 2 +- net/netfilter/nf_conntrack_amanda.c | 1 + net/netfilter/nf_conntrack_core.c | 61 +- net/netfilter/nf_conntrack_ecache.c | 14 +- net/netfilter/nf_conntrack_expect.c | 43 +- net/netfilter/nf_conntrack_ftp.c | 24 +- net/netfilter/nf_conntrack_h323_main.c | 13 +- net/netfilter/nf_conntrack_helper.c | 32 +- net/netfilter/nf_conntrack_irc.c | 14 +- net/netfilter/nf_conntrack_netbios_ns.c | 1 + net/netfilter/nf_conntrack_netlink.c | 201 +- net/netfilter/nf_conntrack_pptp.c | 1 + net/netfilter/nf_conntrack_proto_generic.c | 4 +- net/netfilter/nf_conntrack_proto_gre.c | 2 +- net/netfilter/nf_conntrack_proto_sctp.c | 30 +- net/netfilter/nf_conntrack_proto_tcp.c | 50 +- net/netfilter/nf_conntrack_proto_udp.c | 8 +- net/netfilter/nf_conntrack_proto_udplite.c | 4 +- net/netfilter/nf_conntrack_sane.c | 1 + net/netfilter/nf_conntrack_sip.c | 1 + net/netfilter/nf_conntrack_standalone.c | 16 +- net/netfilter/nf_conntrack_tftp.c | 1 + net/netfilter/nfnetlink_log.c | 4 +- net/netfilter/xt_NFLOG.c | 5 +- net/netfilter/xt_dccp.c | 16 +- net/netfilter/xt_hashlimit.c | 14 +- net/netfilter/xt_iprange.c | 36 +- net/netfilter/xt_recent.c | 32 +- net/netlabel/netlabel_addrlist.c | 4 +- net/netlabel/netlabel_mgmt.c | 1 - net/netlink/af_netlink.c | 7 + net/netlink/attr.c | 8 +- net/netrom/sysctl_net_netrom.c | 48 +- net/packet/af_packet.c | 2 + net/phonet/af_phonet.c | 8 +- net/phonet/pep-gprs.c | 218 +- net/phonet/pep.c | 38 +- net/phonet/pn_dev.c | 6 +- net/phonet/socket.c | 13 +- net/phonet/sysctl.c | 4 +- net/rfkill/rfkill-input.c | 337 +- net/rfkill/rfkill-input.h | 3 + net/rfkill/rfkill.c | 183 +- net/rose/sysctl_net_rose.c | 40 +- net/rxrpc/af_rxrpc.c | 4 +- net/rxrpc/ar-connection.c | 2 +- net/rxrpc/ar-connevent.c | 2 +- net/rxrpc/ar-error.c | 3 +- net/rxrpc/ar-local.c | 16 +- net/rxrpc/ar-peer.c | 8 +- net/rxrpc/ar-proc.c | 16 +- net/rxrpc/ar-security.c | 2 +- net/rxrpc/ar-transport.c | 12 +- net/rxrpc/rxkad.c | 2 +- net/sched/Kconfig | 22 + net/sched/Makefile | 2 + net/sched/act_api.c | 18 +- net/sched/act_gact.c | 4 +- net/sched/act_ipt.c | 4 +- net/sched/act_mirred.c | 4 +- net/sched/act_nat.c | 4 +- net/sched/act_pedit.c | 4 +- net/sched/act_police.c | 33 +- net/sched/act_simple.c | 4 +- net/sched/act_skbedit.c | 4 +- net/sched/cls_api.c | 3 +- net/sched/cls_basic.c | 2 +- net/sched/cls_cgroup.c | 288 + net/sched/cls_fw.c | 2 +- net/sched/cls_route.c | 2 +- net/sched/cls_tcindex.c | 6 - net/sched/cls_u32.c | 11 +- net/sched/ematch.c | 18 +- net/sched/sch_api.c | 50 +- net/sched/sch_atm.c | 36 +- net/sched/sch_blackhole.c | 1 + net/sched/sch_cbq.c | 76 +- net/sched/sch_drr.c | 519 ++ net/sched/sch_dsmark.c | 22 +- net/sched/sch_fifo.c | 4 +- net/sched/sch_generic.c | 40 +- net/sched/sch_gred.c | 22 +- net/sched/sch_hfsc.c | 64 +- net/sched/sch_htb.c | 171 +- net/sched/sch_multiq.c | 82 +- net/sched/sch_netem.c | 160 +- net/sched/sch_prio.c | 50 +- net/sched/sch_red.c | 33 +- net/sched/sch_sfq.c | 71 +- net/sched/sch_tbf.c | 44 +- net/sched/sch_teql.c | 19 +- net/sctp/ipv6.c | 35 +- net/sctp/protocol.c | 29 +- net/sctp/sm_statefuns.c | 24 +- net/sctp/socket.c | 206 +- net/sctp/sysctl.c | 82 +- net/socket.c | 1 - net/sunrpc/clnt.c | 8 +- net/sunrpc/rpcb_clnt.c | 17 +- net/sunrpc/svcauth_unix.c | 24 +- net/sunrpc/svcsock.c | 6 +- net/sunrpc/xprtrdma/svc_rdma_recvfrom.c | 4 +- net/sunrpc/xprtrdma/svc_rdma_sendto.c | 2 +- net/sunrpc/xprtrdma/svc_rdma_transport.c | 16 +- net/sunrpc/xprtrdma/transport.c | 14 +- net/sunrpc/xprtrdma/verbs.c | 16 +- net/sunrpc/xprtsock.c | 41 +- net/tipc/eth_media.c | 3 +- net/tipc/name_table.c | 2 +- net/unix/af_unix.c | 200 +- net/unix/garbage.c | 12 +- net/unix/sysctl_net_unix.c | 3 +- net/wanrouter/wanmain.c | 36 +- net/wireless/Kconfig | 30 + net/wireless/Makefile | 7 + net/wireless/core.c | 14 +- net/wireless/core.h | 13 + net/wireless/lib80211.c | 284 + .../lib80211_crypt_ccmp.c} | 129 +- .../lib80211_crypt_tkip.c} | 181 +- .../lib80211_crypt_wep.c} | 79 +- net/wireless/nl80211.c | 417 +- net/wireless/reg.c | 1005 ++- net/wireless/reg.h | 33 +- net/wireless/sysfs.c | 25 +- net/wireless/util.c | 19 + net/wireless/wext-compat.c | 139 + net/wireless/wext.c | 2 +- net/x25/sysctl_net_x25.c | 22 +- net/xfrm/Makefile | 4 +- net/xfrm/xfrm_input.c | 25 +- net/xfrm/xfrm_output.c | 18 +- net/xfrm/xfrm_policy.c | 511 +- net/xfrm/xfrm_proc.c | 26 +- net/xfrm/xfrm_state.c | 407 +- net/xfrm/xfrm_sysctl.c | 85 + net/xfrm/xfrm_user.c | 249 +- security/selinux/avc.c | 4 +- security/selinux/hooks.c | 4 +- 1395 files changed, 73267 insertions(+), 48032 deletions(-) delete mode 100644 Documentation/DocBook/wanbook.tmpl create mode 100644 Documentation/RCU/rculist_nulls.txt create mode 100644 drivers/atm/solos-pci.c delete mode 100644 drivers/bluetooth/hci_usb.c delete mode 100644 drivers/bluetooth/hci_usb.h create mode 100644 drivers/net/arm/ks8695net.c create mode 100644 drivers/net/arm/ks8695net.h create mode 100644 drivers/net/bonding/bond_ipv6.c delete mode 100644 drivers/net/eepro100.c create mode 100644 drivers/net/ixgbe/ixgbe_dcb.c create mode 100644 drivers/net/ixgbe/ixgbe_dcb.h create mode 100644 drivers/net/ixgbe/ixgbe_dcb_82598.c create mode 100644 drivers/net/ixgbe/ixgbe_dcb_82598.h create mode 100644 drivers/net/ixgbe/ixgbe_dcb_nl.c create mode 100644 drivers/net/phy/et1011c.c create mode 100644 drivers/net/phy/mdio-gpio.c delete mode 100644 drivers/net/phy/mdio-ofgpio.c create mode 100644 drivers/net/phy/national.c create mode 100644 drivers/net/phy/ste10Xp.c create mode 100644 drivers/net/sfc/falcon_gmac.c create mode 100644 drivers/net/sfc/mtd.c create mode 100644 drivers/net/smsc911x.c create mode 100644 drivers/net/smsc911x.h create mode 100644 drivers/net/smsc9420.c create mode 100644 drivers/net/smsc9420.h rename drivers/net/wan/{hd6457x.c => hd64570.c} (78%) create mode 100644 drivers/net/wan/hd64572.c create mode 100644 drivers/net/wan/ixp4xx_hss.c delete mode 100644 drivers/net/wan/syncppp.c create mode 100644 drivers/net/wireless/ath9k/ani.c create mode 100644 drivers/net/wireless/ath9k/calib.c delete mode 100644 drivers/net/wireless/ath9k/core.c create mode 100644 drivers/net/wireless/ath9k/debug.c create mode 100644 drivers/net/wireless/ath9k/eeprom.c create mode 100644 drivers/net/wireless/ath9k/mac.c create mode 100644 drivers/net/wireless/ipw2x00/Kconfig create mode 100644 drivers/net/wireless/ipw2x00/Makefile rename drivers/net/wireless/{ => ipw2x00}/ipw2100.c (99%) rename drivers/net/wireless/{ => ipw2x00}/ipw2100.h (100%) rename drivers/net/wireless/{ => ipw2x00}/ipw2200.c (97%) rename drivers/net/wireless/{ => ipw2x00}/ipw2200.h (99%) rename net/ieee80211/ieee80211_geo.c => drivers/net/wireless/ipw2x00/libipw_geo.c (100%) rename net/ieee80211/ieee80211_module.c => drivers/net/wireless/ipw2x00/libipw_module.c (88%) rename net/ieee80211/ieee80211_rx.c => drivers/net/wireless/ipw2x00/libipw_rx.c (94%) rename net/ieee80211/ieee80211_tx.c => drivers/net/wireless/ipw2x00/libipw_tx.c (98%) rename net/ieee80211/ieee80211_wx.c => drivers/net/wireless/ipw2x00/libipw_wx.c (91%) create mode 100644 drivers/net/wireless/iwlwifi/iwl-agn-hcmd-check.c create mode 100644 drivers/net/wireless/iwlwifi/iwl-spectrum.c create mode 100644 drivers/net/wireless/orinoco/Makefile rename drivers/net/wireless/{ => orinoco}/airport.c (99%) rename drivers/net/wireless/{ => orinoco}/hermes.c (100%) rename drivers/net/wireless/{ => orinoco}/hermes.h (100%) rename drivers/net/wireless/{ => orinoco}/hermes_dld.c (100%) rename drivers/net/wireless/{ => orinoco}/hermes_dld.h (100%) rename drivers/net/wireless/{ => orinoco}/hermes_rid.h (100%) rename drivers/net/wireless/{ => orinoco}/orinoco.c (96%) rename drivers/net/wireless/{ => orinoco}/orinoco.h (96%) rename drivers/net/wireless/{ => orinoco}/orinoco_cs.c (98%) rename drivers/net/wireless/{ => orinoco}/orinoco_nortel.c (100%) rename drivers/net/wireless/{ => orinoco}/orinoco_pci.c (100%) rename drivers/net/wireless/{ => orinoco}/orinoco_pci.h (100%) rename drivers/net/wireless/{ => orinoco}/orinoco_plx.c (100%) rename drivers/net/wireless/{ => orinoco}/orinoco_tmd.c (100%) rename drivers/net/wireless/{ => orinoco}/spectrum_cs.c (95%) create mode 100644 drivers/net/wireless/rtl818x/Makefile rename drivers/net/wireless/{ => rtl818x}/rtl8180.h (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_dev.c (96%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_grf5101.c (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_grf5101.h (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_max2820.c (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_max2820.h (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_rtl8225.c (98%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_rtl8225.h (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_sa2400.c (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8180_sa2400.h (100%) rename drivers/net/wireless/{ => rtl818x}/rtl8187.h (97%) rename drivers/net/wireless/{ => rtl818x}/rtl8187_dev.c (79%) rename drivers/net/wireless/{ => rtl818x}/rtl8187_rtl8225.c (69%) rename drivers/net/wireless/{ => rtl818x}/rtl8187_rtl8225.h (100%) rename drivers/net/wireless/{ => rtl818x}/rtl818x.h (98%) create mode 100644 drivers/usb/gadget/f_phonet.c create mode 100644 drivers/usb/gadget/u_phonet.h create mode 100644 firmware/cxgb3/t3b_psram-1.1.0.bin.ihex create mode 100644 firmware/cxgb3/t3c_psram-1.1.0.bin.ihex create mode 100644 firmware/cxgb3/t3fw-7.0.0.bin.ihex create mode 100644 include/linux/dcbnl.h create mode 100644 include/linux/list_nulls.h create mode 100644 include/linux/mdio-gpio.h create mode 100644 include/linux/rculist_nulls.h create mode 100644 include/linux/smsc911x.h create mode 100644 include/net/dcbnl.h rename include/net/{ieee80211_crypt.h => lib80211.h} (58%) create mode 100644 include/net/netfilter/nfnetlink_log.h create mode 100644 include/net/netns/xfrm.h delete mode 100644 include/net/syncppp.h create mode 100644 net/dcb/Kconfig create mode 100644 net/dcb/Makefile create mode 100644 net/dcb/dcbnl.c delete mode 100644 net/ieee80211/Kconfig delete mode 100644 net/ieee80211/Makefile delete mode 100644 net/ieee80211/ieee80211_crypt.c create mode 100644 net/sched/cls_cgroup.c create mode 100644 net/sched/sch_drr.c create mode 100644 net/wireless/lib80211.c rename net/{ieee80211/ieee80211_crypt_ccmp.c => wireless/lib80211_crypt_ccmp.c} (74%) rename net/{ieee80211/ieee80211_crypt_tkip.c => wireless/lib80211_crypt_tkip.c} (79%) rename net/{ieee80211/ieee80211_crypt_wep.c => wireless/lib80211_crypt_wep.c} (74%) create mode 100644 net/wireless/wext-compat.c create mode 100644 net/xfrm/xfrm_sysctl.c ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT]: Networking 2008-12-28 8:01 ` David Miller @ 2008-12-29 10:25 ` Andreas Mohr -1 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2008-12-29 10:25 UTC (permalink / raw) To: David Miller Cc: torvalds, akpm, bunk, Jeff Kirsher, auke-jan.h.kok, e1000-devel, netdev, linux-kernel Hi, > Adrian Bunk (1): > > The overdue eepro100 removal. That would be a rather pronounced NAK then? (sorry ;) (reason: rendering my web surfing box useless due to networking loss, see thread "[RFC/PATCH] e100 driver didn't support any MII-less PHYs...") AFAICS e100 is still "non-MII"-challenged (2.6.28 doesn't appear to have the necessary changes, and this pull doesn't seem to contain updates either), and a long chain of attempts to get this resolved hasn't worked yet. Somehow I seem to hit some nice walls getting my stuff into kernel. - e100 MII - i810 AGP resume fix - acx100 (ok, that one is a bit mean to add to this list ;) - ... ALSA patches handled by Takashi OTOH were almost always a "bammm, in it is, there you are, HAND". I can't seem to wash away my slightly CK'ish feeling ;) Thanks, Andreas Mohr ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT]: Networking @ 2008-12-29 10:25 ` Andreas Mohr 0 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2008-12-29 10:25 UTC (permalink / raw) To: David Miller Cc: auke-jan.h.kok, e1000-devel, netdev, bunk, linux-kernel, Jeff Kirsher, akpm, torvalds Hi, > Adrian Bunk (1): > > The overdue eepro100 removal. That would be a rather pronounced NAK then? (sorry ;) (reason: rendering my web surfing box useless due to networking loss, see thread "[RFC/PATCH] e100 driver didn't support any MII-less PHYs...") AFAICS e100 is still "non-MII"-challenged (2.6.28 doesn't appear to have the necessary changes, and this pull doesn't seem to contain updates either), and a long chain of attempts to get this resolved hasn't worked yet. Somehow I seem to hit some nice walls getting my stuff into kernel. - e100 MII - i810 AGP resume fix - acx100 (ok, that one is a bit mean to add to this list ;) - ... ALSA patches handled by Takashi OTOH were almost always a "bammm, in it is, there you are, HAND". I can't seem to wash away my slightly CK'ish feeling ;) Thanks, Andreas Mohr ------------------------------------------------------------------------------ ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT]: Networking 2008-12-29 10:25 ` Andreas Mohr @ 2008-12-29 17:17 ` Andrew Morton -1 siblings, 0 replies; 39+ messages in thread From: Andrew Morton @ 2008-12-29 17:17 UTC (permalink / raw) To: Andreas Mohr Cc: David Miller, torvalds, bunk, Jeff Kirsher, auke-jan.h.kok, e1000-devel, netdev, linux-kernel On Mon, 29 Dec 2008 11:25:15 +0100 Andreas Mohr <andi@lisas.de> wrote: > Hi, > > > Adrian Bunk (1): > > > > The overdue eepro100 removal. > > That would be a rather pronounced NAK then? (sorry ;) > (reason: rendering my web surfing box useless due to networking loss, > see thread "[RFC/PATCH] e100 driver didn't support any MII-less PHYs...") > > AFAICS e100 is still "non-MII"-challenged (2.6.28 doesn't appear to have > the necessary changes, and this pull doesn't seem to contain updates either), > and a long chain of attempts to get this resolved hasn't worked yet. I didn't know about this, and that patch has been around for a loooooooong time. Please make more noise about these things. > > Somehow I seem to hit some nice walls getting my stuff into kernel. > - e100 MII What's that? Does it make your web surfing work again? > - i810 AGP resume fix Whats that? > - acx100 (ok, that one is a bit mean to add to this list ;) What's that? Just resend everything, please, fulyl changelogged, with all necessary cc's. > - ... > ALSA patches handled by Takashi OTOH were almost always a > "bammm, in it is, there you are, HAND". Fell free to cc me on these things - especially bugfixes. I help prevent things from getting lost. ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT]: Networking @ 2008-12-29 17:17 ` Andrew Morton 0 siblings, 0 replies; 39+ messages in thread From: Andrew Morton @ 2008-12-29 17:17 UTC (permalink / raw) To: Andreas Mohr Cc: bunk, e1000-devel, netdev, auke-jan.h.kok, linux-kernel, Jeff Kirsher, torvalds, David Miller On Mon, 29 Dec 2008 11:25:15 +0100 Andreas Mohr <andi@lisas.de> wrote: > Hi, > > > Adrian Bunk (1): > > > > The overdue eepro100 removal. > > That would be a rather pronounced NAK then? (sorry ;) > (reason: rendering my web surfing box useless due to networking loss, > see thread "[RFC/PATCH] e100 driver didn't support any MII-less PHYs...") > > AFAICS e100 is still "non-MII"-challenged (2.6.28 doesn't appear to have > the necessary changes, and this pull doesn't seem to contain updates either), > and a long chain of attempts to get this resolved hasn't worked yet. I didn't know about this, and that patch has been around for a loooooooong time. Please make more noise about these things. > > Somehow I seem to hit some nice walls getting my stuff into kernel. > - e100 MII What's that? Does it make your web surfing work again? > - i810 AGP resume fix Whats that? > - acx100 (ok, that one is a bit mean to add to this list ;) What's that? Just resend everything, please, fulyl changelogged, with all necessary cc's. > - ... > ALSA patches handled by Takashi OTOH were almost always a > "bammm, in it is, there you are, HAND". Fell free to cc me on these things - especially bugfixes. I help prevent things from getting lost. ------------------------------------------------------------------------------ ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT]: Networking 2008-12-29 17:17 ` Andrew Morton (?) @ 2008-12-29 21:09 ` Johannes Berg 2008-12-30 11:05 ` Andreas Mohr -1 siblings, 1 reply; 39+ messages in thread From: Johannes Berg @ 2008-12-29 21:09 UTC (permalink / raw) To: Andrew Morton Cc: Andreas Mohr, David Miller, torvalds, bunk, Jeff Kirsher, auke-jan.h.kok, e1000-devel, netdev, linux-kernel [-- Attachment #1: Type: text/plain, Size: 491 bytes --] On Mon, 2008-12-29 at 09:17 -0800, Andrew Morton wrote: > > - acx100 (ok, that one is a bit mean to add to this list ;) > > What's that? > > Just resend everything, please, fulyl changelogged, with all necessary > cc's. acx100 is legally challenged. We don't want to see it without a clear and full indication by the authors that they can guarantee that it was written without any copyrighted Texas Instruments material. Which they've never bothered to provide. johannes [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 836 bytes --] ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT]: Networking 2008-12-29 21:09 ` Johannes Berg @ 2008-12-30 11:05 ` Andreas Mohr 0 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2008-12-30 11:05 UTC (permalink / raw) To: Johannes Berg Cc: Andrew Morton, Andreas Mohr, David Miller, torvalds, bunk, Jeff Kirsher, auke-jan.h.kok, e1000-devel, netdev, linux-kernel Hi, On Mon, Dec 29, 2008 at 10:09:43PM +0100, Johannes Berg wrote: > On Mon, 2008-12-29 at 09:17 -0800, Andrew Morton wrote: > > > > - acx100 (ok, that one is a bit mean to add to this list ;) > > > > What's that? > > > > Just resend everything, please, fulyl changelogged, with all necessary > > cc's. > > acx100 is legally challenged. We don't want to see it without a clear > and full indication by the authors that they can guarantee that it was > written without any copyrighted Texas Instruments material. Which > they've never bothered to provide. True (and fully agreed), but then that particular entry was just meant to stir up some fog, I didn't really intend to focus on it at all ;) The project was based on non-clean-room reverse-engineering from the get-go anyway (5 people working for 3 months), thus the only way to get this unfortunate hardware non-support situation resolved would be by trying to get TI (or possibly newer holders of that technology) to extend its specifications/firmware blessing to older variants, not just the Android device-related chipsets supported by their new driver which they now provided, thankfully. Andreas Mohr ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT]: Networking 2008-12-29 17:17 ` Andrew Morton @ 2008-12-29 23:15 ` Jeff Kirsher -1 siblings, 0 replies; 39+ messages in thread From: Jeff Kirsher @ 2008-12-29 23:15 UTC (permalink / raw) To: Andrew Morton Cc: Andreas Mohr, David Miller, torvalds, bunk, auke-jan.h.kok, e1000-devel, netdev, linux-kernel On Mon, Dec 29, 2008 at 9:17 AM, Andrew Morton <akpm@linux-foundation.org> wrote: > On Mon, 29 Dec 2008 11:25:15 +0100 Andreas Mohr <andi@lisas.de> wrote: > >> Hi, >> >> > Adrian Bunk (1): >> > >> > The overdue eepro100 removal. >> >> That would be a rather pronounced NAK then? (sorry ;) >> (reason: rendering my web surfing box useless due to networking loss, >> see thread "[RFC/PATCH] e100 driver didn't support any MII-less PHYs...") >> >> AFAICS e100 is still "non-MII"-challenged (2.6.28 doesn't appear to have >> the necessary changes, and this pull doesn't seem to contain updates either), >> and a long chain of attempts to get this resolved hasn't worked yet. > > I didn't know about this, and that patch has been around for a > loooooooong time. Please make more noise about these things. > >> >> Somehow I seem to hit some nice walls getting my stuff into kernel. >> - e100 MII > > What's that? Does it make your web surfing work again? He is referring to a patch to add support for devices which do not use the MII interface which use an Intel MAC. I have the patch in my local tree and have been keeping it up-to-date. I should have an update on this patch after the New Year. -- Cheers, Jeff ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT]: Networking @ 2008-12-29 23:15 ` Jeff Kirsher 0 siblings, 0 replies; 39+ messages in thread From: Jeff Kirsher @ 2008-12-29 23:15 UTC (permalink / raw) To: Andrew Morton Cc: bunk, e1000-devel, netdev, auke-jan.h.kok, Andreas Mohr, linux-kernel, torvalds, David Miller On Mon, Dec 29, 2008 at 9:17 AM, Andrew Morton <akpm@linux-foundation.org> wrote: > On Mon, 29 Dec 2008 11:25:15 +0100 Andreas Mohr <andi@lisas.de> wrote: > >> Hi, >> >> > Adrian Bunk (1): >> > >> > The overdue eepro100 removal. >> >> That would be a rather pronounced NAK then? (sorry ;) >> (reason: rendering my web surfing box useless due to networking loss, >> see thread "[RFC/PATCH] e100 driver didn't support any MII-less PHYs...") >> >> AFAICS e100 is still "non-MII"-challenged (2.6.28 doesn't appear to have >> the necessary changes, and this pull doesn't seem to contain updates either), >> and a long chain of attempts to get this resolved hasn't worked yet. > > I didn't know about this, and that patch has been around for a > loooooooong time. Please make more noise about these things. > >> >> Somehow I seem to hit some nice walls getting my stuff into kernel. >> - e100 MII > > What's that? Does it make your web surfing work again? He is referring to a patch to add support for devices which do not use the MII interface which use an Intel MAC. I have the patch in my local tree and have been keeping it up-to-date. I should have an update on this patch after the New Year. -- Cheers, Jeff ------------------------------------------------------------------------------ ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT]: Networking 2008-12-29 23:15 ` Jeff Kirsher @ 2008-12-30 12:07 ` Andreas Mohr -1 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2008-12-30 12:07 UTC (permalink / raw) To: Jeff Kirsher Cc: Andrew Morton, Andreas Mohr, David Miller, torvalds, bunk, auke-jan.h.kok, e1000-devel, netdev, linux-kernel On Mon, Dec 29, 2008 at 03:15:37PM -0800, Jeff Kirsher wrote: > He is referring to a patch to add support for devices which do not use > the MII interface which use an Intel MAC. I have the patch in my > local tree and have been keeping it up-to-date. I should have an > update on this patch after the New Year. Thanks! One idea worth pondering might be to provide a special struct mii_if_info hookup (fully emulated mdio_read()/write()) for the case of the non-MII hardware types of this driver, thus eliminating any added penalty in the case of nicely MII-compliant hardware. But this should be tackled later, now let's better move on with eepro100 (non-)plans... Andreas Mohr ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [GIT]: Networking @ 2008-12-30 12:07 ` Andreas Mohr 0 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2008-12-30 12:07 UTC (permalink / raw) To: Jeff Kirsher Cc: bunk, e1000-devel, netdev, auke-jan.h.kok, Andreas Mohr, linux-kernel, Andrew Morton, torvalds, David Miller On Mon, Dec 29, 2008 at 03:15:37PM -0800, Jeff Kirsher wrote: > He is referring to a patch to add support for devices which do not use > the MII interface which use an Intel MAC. I have the patch in my > local tree and have been keeping it up-to-date. I should have an > update on this patch after the New Year. Thanks! One idea worth pondering might be to provide a special struct mii_if_info hookup (fully emulated mdio_read()/write()) for the case of the non-MII hardware types of this driver, thus eliminating any added penalty in the case of nicely MII-compliant hardware. But this should be tackled later, now let's better move on with eepro100 (non-)plans... Andreas Mohr ------------------------------------------------------------------------------ ^ permalink raw reply [flat|nested] 39+ messages in thread
* 2.6.29 e100.c non-MII support status? (Re: [GIT]: Networking) 2008-12-30 12:07 ` Andreas Mohr @ 2009-02-28 20:37 ` Andreas Mohr -1 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2009-02-28 20:37 UTC (permalink / raw) To: andi Cc: Jeff Kirsher, Andrew Morton, David Miller, torvalds, bunk, auke-jan.h.kok, e1000-devel, netdev, linux-kernel Hi, On Tue, Dec 30, 2008 at 01:07:56PM +0100, Andreas Mohr wrote: > On Mon, Dec 29, 2008 at 03:15:37PM -0800, Jeff Kirsher wrote: > > He is referring to a patch to add support for devices which do not use > > the MII interface which use an Intel MAC. I have the patch in my > > local tree and have been keeping it up-to-date. I should have an > > update on this patch after the New Year. > > Thanks! > > One idea worth pondering might be to provide a special struct > mii_if_info hookup (fully emulated mdio_read()/write()) > for the case of the non-MII hardware types of this driver, > thus eliminating any added penalty in the case of nicely MII-compliant > hardware. > But this should be tackled later, now let's better move on with eepro100 > (non-)plans... > > Andreas Mohr Given that 2.6.29-rc now actually has eepro100.c removed (since -rc3 or so) and the current -rc6 e100.c does not contain non-MII parts, it looks like 2.6.29 proper will actually remove support for some PCI-based non-MII e100 cards. Thus I'd like to ask what should be done about this for real. Of course we could consciously decide to simply skip e100.c support for those non-MII cards entirely (hoping that they're not THAT wide-spread), but obviously I'd semi-hate this (nevermind the fact that _locally_ I'd have to swap cards, too, which is somewhat more of a problem given an older network requiring to be served by "combo" cards). Simply spoken, it all boils down to actively deciding what to do in the next, about-to-be _affected_, kernel version about support for cards that an older, deprecated driver did support and the new one doesn't. Or one could just let things progress as-is and wait for yet unknown (non-)amounts of scorching user feedback to arrive after 2.6.29 has hit their machines ;) My description in the mail above was meant to list things to be done _after_ an initial non-MII support for e100.c has been added, just for clarification. Thanks, Andreas Mohr ^ permalink raw reply [flat|nested] 39+ messages in thread
* 2.6.29 e100.c non-MII support status? (Re: [GIT]: Networking) @ 2009-02-28 20:37 ` Andreas Mohr 0 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2009-02-28 20:37 UTC (permalink / raw) To: andi Cc: auke-jan.h.kok, e1000-devel, netdev, bunk, linux-kernel, Jeff Kirsher, Andrew Morton, torvalds, David Miller Hi, On Tue, Dec 30, 2008 at 01:07:56PM +0100, Andreas Mohr wrote: > On Mon, Dec 29, 2008 at 03:15:37PM -0800, Jeff Kirsher wrote: > > He is referring to a patch to add support for devices which do not use > > the MII interface which use an Intel MAC. I have the patch in my > > local tree and have been keeping it up-to-date. I should have an > > update on this patch after the New Year. > > Thanks! > > One idea worth pondering might be to provide a special struct > mii_if_info hookup (fully emulated mdio_read()/write()) > for the case of the non-MII hardware types of this driver, > thus eliminating any added penalty in the case of nicely MII-compliant > hardware. > But this should be tackled later, now let's better move on with eepro100 > (non-)plans... > > Andreas Mohr Given that 2.6.29-rc now actually has eepro100.c removed (since -rc3 or so) and the current -rc6 e100.c does not contain non-MII parts, it looks like 2.6.29 proper will actually remove support for some PCI-based non-MII e100 cards. Thus I'd like to ask what should be done about this for real. Of course we could consciously decide to simply skip e100.c support for those non-MII cards entirely (hoping that they're not THAT wide-spread), but obviously I'd semi-hate this (nevermind the fact that _locally_ I'd have to swap cards, too, which is somewhat more of a problem given an older network requiring to be served by "combo" cards). Simply spoken, it all boils down to actively deciding what to do in the next, about-to-be _affected_, kernel version about support for cards that an older, deprecated driver did support and the new one doesn't. Or one could just let things progress as-is and wait for yet unknown (non-)amounts of scorching user feedback to arrive after 2.6.29 has hit their machines ;) My description in the mail above was meant to list things to be done _after_ an initial non-MII support for e100.c has been added, just for clarification. Thanks, Andreas Mohr ------------------------------------------------------------------------------ Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise -Strategies to boost innovation and cut costs with open source participation -Receive a $600 discount off the registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: 2.6.29 e100.c non-MII support status? (Re: [GIT]: Networking) 2009-02-28 20:37 ` Andreas Mohr (?) @ 2009-03-01 10:57 ` Jeff Kirsher 2009-03-01 21:24 ` Andreas Mohr -1 siblings, 1 reply; 39+ messages in thread From: Jeff Kirsher @ 2009-03-01 10:57 UTC (permalink / raw) To: andi Cc: Andrew Morton, David Miller, torvalds, bunk, auke-jan.h.kok, e1000-devel, netdev, linux-kernel On Sat, Feb 28, 2009 at 12:37 PM, Andreas Mohr <andim2@users.sourceforge.net> wrote: > Hi, > > On Tue, Dec 30, 2008 at 01:07:56PM +0100, Andreas Mohr wrote: >> On Mon, Dec 29, 2008 at 03:15:37PM -0800, Jeff Kirsher wrote: >> > He is referring to a patch to add support for devices which do not use >> > the MII interface which use an Intel MAC. I have the patch in my >> > local tree and have been keeping it up-to-date. I should have an >> > update on this patch after the New Year. >> >> Thanks! >> >> One idea worth pondering might be to provide a special struct >> mii_if_info hookup (fully emulated mdio_read()/write()) >> for the case of the non-MII hardware types of this driver, >> thus eliminating any added penalty in the case of nicely MII-compliant >> hardware. >> But this should be tackled later, now let's better move on with eepro100 >> (non-)plans... >> >> Andreas Mohr > > Given that 2.6.29-rc now actually has eepro100.c removed (since -rc3 or so) > and the current -rc6 e100.c does not contain non-MII parts, it looks like > 2.6.29 proper will actually remove support for some PCI-based non-MII > e100 cards. > > Thus I'd like to ask what should be done about this for real. > Of course we could consciously decide to simply skip e100.c support for those > non-MII cards entirely (hoping that they're not THAT wide-spread), > but obviously I'd semi-hate this (nevermind the fact that _locally_ > I'd have to swap cards, too, which is somewhat more of a problem given an > older network requiring to be served by "combo" cards). > > Simply spoken, it all boils down to actively deciding > what to do in the next, about-to-be _affected_, kernel version > about support for cards that an older, deprecated driver did support > and the new one doesn't. > > Or one could just let things progress as-is and wait for > yet unknown (non-)amounts of scorching user feedback to arrive > after 2.6.29 has hit their machines ;) > > > My description in the mail above was meant to list things to be done > _after_ an initial non-MII support for e100.c has been added, > just for clarification. > > Thanks, > > Andreas Mohr > -- I am personally sorry that nothing has been done regarding this patch. I still have this patch in my local tree. I admit that this patch has been on the low priority list, so I will make sure the patch is current this week and respond accordingly this week. -- Cheers, Jeff ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: 2.6.29 e100.c non-MII support status? (Re: [GIT]: Networking) 2009-03-01 10:57 ` Jeff Kirsher @ 2009-03-01 21:24 ` Andreas Mohr 2009-06-02 21:48 ` [PATCH] Add non-MII PHY support to e100 (Re: 2.6.29 e100.c non-MII support status? (Re: [GIT]: Networking)) Andreas Mohr 0 siblings, 1 reply; 39+ messages in thread From: Andreas Mohr @ 2009-03-01 21:24 UTC (permalink / raw) To: Jeff Kirsher Cc: andi, Andrew Morton, David Miller, torvalds, bunk, auke-jan.h.kok, e1000-devel, netdev, linux-kernel Hi, On Sun, Mar 01, 2009 at 02:57:46AM -0800, Jeff Kirsher wrote: > I am personally sorry that nothing has been done regarding this patch. > I still have this patch in my local tree. I admit that this patch > has been on the low priority list, so I will make sure the patch is > current this week and respond accordingly this week. The whole thing has been somewhat low-priority indeed given the probable age of some non-MII contenders. OTOH it would be quite sad (and locally problematic) to see support for those non-MII cards vanish come 2.6.29. Subsequently it would then be nice to devise non-MII support in some structured way that enables us to support them without much burden (code-wise) on proper standards-supporting MII cards. Thank you, Andreas Mohr ^ permalink raw reply [flat|nested] 39+ messages in thread
* [PATCH] Add non-MII PHY support to e100 (Re: 2.6.29 e100.c non-MII support status? (Re: [GIT]: Networking)) 2009-03-01 21:24 ` Andreas Mohr @ 2009-06-02 21:48 ` Andreas Mohr 2009-06-03 6:01 ` e100 kills S2R on my box, plus network drops dead Andreas Mohr 0 siblings, 1 reply; 39+ messages in thread From: Andreas Mohr @ 2009-06-02 21:48 UTC (permalink / raw) To: andi Cc: Jeff Kirsher, Andrew Morton, David Miller, torvalds, bunk, auke-jan.h.kok, e1000-devel, netdev, linux-kernel Hi, On Sun, Mar 01, 2009 at 10:24:12PM +0100, Andreas Mohr wrote: > The whole thing has been somewhat low-priority indeed > given the probable age of some non-MII contenders. OTOH it would be quite sad > (and locally problematic) to see support for those non-MII cards vanish > come 2.6.29. > Subsequently it would then be nice to devise non-MII support > in some structured way that enables us to support them without > much burden (code-wise) on proper standards-supporting MII cards. OK, so....... Frankly, I didn't want to see my card slowly and painfully getting unsupported (which, conversely, results in a PC cut off from ANY kernel upgrades...). Thus I decided to clean up my previous still-too-messy patch by removing all dirty "are we MII?" - noooo - skip it! barriers. ChangeLog: Restore support for cards with MII-lacking PHYs as compared to removed pre-2.6.29 eepro100 driver: use full low-level MII I/O access abstraction by providing clean PHY-specific mdio_ctrl() functions for either standard MII-compliant cards, slightly special ones or non-MII PHY ones. We now have another netdev_priv member for mdio_ctrl(), thus we have some array indirection, but we save some additional opcodes for specific phy_82552_v handling in the common case. Patch tested on 2.6.30-rc7 (cold boot results in working network access - this mail typed.....), checkpatch.pl'ed. Obviously this patch needs quite some testing (-mmotm?), since it also touches phy_82552_v functionality. Oh, and this will be my very ultimately last attempt at this, if there's no serious inclusion of something similar to this, then I'll just give up. [and install my nice WGA'd DRM'd and billed/invaded-by-the-minute Windows...] Thanks! Signed-off-by: Andreas Mohr <andi@lisas.de> --- linux-2.6.30-rc7/drivers/net/e100.c.orig 2009-06-02 19:27:19.000000000 +0200 +++ linux-2.6.30-rc7/drivers/net/e100.c 2009-06-02 23:31:25.000000000 +0200 @@ -143,6 +143,8 @@ * FIXES: * 2005/12/02 - Michael O'Donnell <Michael.ODonnell at stratus dot com> * - Stratus87247: protect MDI control register manipulations + * 2009/06/01 - Andreas Mohr <andi at lisas dot de> + * - add clean lowlevel I/O emulation for cards with MII-lacking PHYs */ #include <linux/module.h> @@ -372,6 +374,7 @@ enum eeprom_offsets { eeprom_cnfg_mdix = 0x03, + eeprom_phy_iface = 0x06, eeprom_id = 0x0A, eeprom_config_asf = 0x0D, eeprom_smbus_addr = 0x90, @@ -381,6 +384,18 @@ eeprom_mdix_enabled = 0x0080, }; +enum eeprom_phy_iface { + NonSuchPhy = 0, + I82553AB, + I82553C, + I82503, + DP83840, + S80C240, + S80C24, + I82555, + DP83840A = 10, +}; + enum eeprom_id { eeprom_id_wol = 0x0020, }; @@ -545,6 +560,7 @@ u32 msg_enable ____cacheline_aligned; struct net_device *netdev; struct pci_dev *pdev; + u16 (*mdio_ctrl)(struct nic *nic, u32 addr, u32 dir, u32 reg, u16 data); struct rx *rxs ____cacheline_aligned; struct rx *rx_to_use; @@ -899,7 +915,21 @@ return err; } -static u16 mdio_ctrl(struct nic *nic, u32 addr, u32 dir, u32 reg, u16 data) +static int mdio_read(struct net_device *netdev, int addr, int reg) +{ + struct nic *nic = netdev_priv(netdev); + return nic->mdio_ctrl(nic, addr, mdi_read, reg, 0); +} + +static void mdio_write(struct net_device *netdev, int addr, int reg, int data) +{ + struct nic *nic = netdev_priv(netdev); + + nic->mdio_ctrl(nic, addr, mdi_write, reg, data); +} + +/* the standard mdio_ctrl() function for usual MII-compliant hardware */ +static u16 mdio_ctrl_hw(struct nic *nic, u32 addr, u32 dir, u32 reg, u16 data) { u32 data_out = 0; unsigned int i; @@ -938,30 +968,83 @@ return (u16)data_out; } -static int mdio_read(struct net_device *netdev, int addr, int reg) -{ - return mdio_ctrl(netdev_priv(netdev), addr, mdi_read, reg, 0); +/* slightly tweaked mdio_ctrl() function for phy_82552_v specifics */ +static u16 mdio_ctrl_phy_82552_v(struct nic *nic, + u32 addr, + u32 dir, + u32 reg, + u16 data) +{ + if ((reg == MII_BMCR) && (dir == mdi_write)) { + if (data & (BMCR_ANRESTART | BMCR_ANENABLE)) { + u16 advert = mdio_read(nic->netdev, nic->mii.phy_id, + MII_ADVERTISE); + + /* + * Workaround Si issue where sometimes the part will not + * autoneg to 100Mbps even when advertised. + */ + if (advert & ADVERTISE_100FULL) + data |= BMCR_SPEED100 | BMCR_FULLDPLX; + else if (advert & ADVERTISE_100HALF) + data |= BMCR_SPEED100; + } + } + return mdio_ctrl_hw(nic, addr, dir, reg, data); } -static void mdio_write(struct net_device *netdev, int addr, int reg, int data) -{ - struct nic *nic = netdev_priv(netdev); - - if ((nic->phy == phy_82552_v) && (reg == MII_BMCR) && - (data & (BMCR_ANRESTART | BMCR_ANENABLE))) { - u16 advert = mdio_read(netdev, nic->mii.phy_id, MII_ADVERTISE); - - /* - * Workaround Si issue where sometimes the part will not - * autoneg to 100Mbps even when advertised. - */ - if (advert & ADVERTISE_100FULL) - data |= BMCR_SPEED100 | BMCR_FULLDPLX; - else if (advert & ADVERTISE_100HALF) - data |= BMCR_SPEED100; +/* Fully software-emulated mdio_ctrl() function for cards without + * MII-compliant PHYs. + * For now, this is mainly geared towards 80c24 support; in case of further + * requirements for other types (i82503, ...?) either extend this mechanism + * or split it, whichever is cleaner. + */ +static u16 mdio_ctrl_phy_mii_emulated(struct nic *nic, + u32 addr, + u32 dir, + u32 reg, + u16 data) +{ + /* might need to allocate a netdev_priv'ed register array eventually + * to be able to record state changes, but for now + * some fully hardcoded register handling ought to be ok I guess. */ + + if (dir == mdi_read) { + switch (reg) { + case MII_BMCR: + /* Auto-negotiation, right? */ + return BMCR_ANENABLE | + BMCR_FULLDPLX; + case MII_BMSR: + return BMSR_LSTATUS /* for mii_link_ok() */ | + BMSR_ANEGCAPABLE | + BMSR_10FULL; + case MII_ADVERTISE: + /* 80c24 is a "combo card" PHY, right? */ + return ADVERTISE_10HALF | + ADVERTISE_10FULL; + default: + DPRINTK(HW, DEBUG, + "%s:addr=%d, reg=%d, data=0x%04X: unimplemented emulation!\n", + dir == mdi_read ? "READ" : "WRITE", addr, reg, data); + return 0xFFFF; + } + } else { + switch (reg) { + default: + DPRINTK(HW, DEBUG, + "%s:addr=%d, reg=%d, data=0x%04X: unimplemented emulation!\n", + dir == mdi_read ? "READ" : "WRITE", addr, reg, data); + return 0xFFFF; + } } - - mdio_ctrl(netdev_priv(netdev), addr, mdi_write, reg, data); +} +static inline int e100_phy_supports_mii(struct nic *nic) +{ + /* for now, just check it by comparing whether we + are using MII software emulation. + */ + return (nic->mdio_ctrl != mdio_ctrl_phy_mii_emulated); } static void e100_get_defaults(struct nic *nic) @@ -1013,7 +1096,8 @@ config->standard_stat_counter = 0x1; /* 1=standard, 0=extended */ config->rx_discard_short_frames = 0x1; /* 1=discard, 0=pass */ config->tx_underrun_retry = 0x3; /* # of underrun retries */ - config->mii_mode = 0x1; /* 1=MII mode, 0=503 mode */ + if (e100_phy_supports_mii(nic)) + config->mii_mode = 1; /* 1=MII mode, 0=i82503 mode */ config->pad10 = 0x6; config->no_source_addr_insertion = 0x1; /* 1=no, 0=yes */ config->preamble_length = 0x2; /* 0=1, 1=3, 2=7, 3=15 bytes */ @@ -1270,6 +1354,44 @@ offsetof(struct mem, dump_buf)); } +static int e100_phy_check_without_mii(struct nic *nic) +{ + u8 phy_type; + int without_mii; + + phy_type = (nic->eeprom[eeprom_phy_iface] >> 8) & 0x0f; + + switch (phy_type) { + case NonSuchPhy: /* Non-MII PHY; UNTESTED! */ + case I82503: /* Non-MII PHY; UNTESTED! */ + case S80C24: /* Non-MII PHY; tested and working */ + { + /* paragraph from the FreeBSD driver, "FXP_PHY_80C24": + * The Seeq 80c24 AutoDUPLEX(tm) Ethernet Interface Adapter + * doesn't have a programming interface of any sort. The + * media is sensed automatically based on how the link partner + * is configured. This is, in essence, manual configuration. + */ + DPRINTK(PROBE, INFO, + "found MII-less i82503 or 80c24 or other PHY\n"); + + nic->mdio_ctrl = mdio_ctrl_phy_mii_emulated; + nic->mii.phy_id = 0; /* is this ok for an MII-less PHY? */ + + /* these might be needed for certain MII-less cards... + * nic->flags |= ich; + * nic->flags |= ich_10h_workaround; */ + + without_mii = 1; + } + break; + default: + without_mii = 0; + break; + } + return without_mii; +} + #define NCONFIG_AUTO_SWITCH 0x0080 #define MII_NSC_CONG MII_RESV1 #define NSC_CONG_ENABLE 0x0100 @@ -1290,9 +1412,21 @@ if (!((bmcr == 0xFFFF) || ((stat == 0) && (bmcr == 0)))) break; } - DPRINTK(HW, DEBUG, "phy_addr = %d\n", nic->mii.phy_id); - if (addr == 32) - return -EAGAIN; + if (addr == 32) { + /* uhoh, no PHY detected: check whether we seem to be some + * weird, rare variant which is *known* to not have any MII. + * But do this AFTER MII checking only, since this does + * lookup of EEPROM values which may easily be unreliable. */ + if (e100_phy_check_without_mii(nic)) + return 0; /* simply return and hope for the best */ + else { + /* for unknown cases log a fatal error */ + DPRINTK(HW, ERR, + "Failed to locate any known PHY, aborting.\n"); + return -EAGAIN; + } + } else + DPRINTK(HW, DEBUG, "phy_addr = %d\n", nic->mii.phy_id); /* Isolate all the PHY ids */ for (addr = 0; addr < 32; addr++) @@ -1320,6 +1454,9 @@ if (nic->phy == phy_82552_v) { u16 advert = mdio_read(netdev, nic->mii.phy_id, MII_ADVERTISE); + /* assign special tweaked mdio_ctrl() function */ + nic->mdio_ctrl = mdio_ctrl_phy_82552_v; + /* Workaround Si not advertising flow-control during autoneg */ advert |= ADVERTISE_PAUSE_CAP | ADVERTISE_PAUSE_ASYM; mdio_write(netdev, nic->mii.phy_id, MII_ADVERTISE, advert); @@ -2585,6 +2722,7 @@ nic->netdev = netdev; nic->pdev = pdev; nic->msg_enable = (1 << debug) - 1; + nic->mdio_ctrl = mdio_ctrl_hw; pci_set_drvdata(pdev, netdev); if ((err = pci_enable_device(pdev))) { ^ permalink raw reply [flat|nested] 39+ messages in thread
* e100 kills S2R on my box, plus network drops dead 2009-06-02 21:48 ` [PATCH] Add non-MII PHY support to e100 (Re: 2.6.29 e100.c non-MII support status? (Re: [GIT]: Networking)) Andreas Mohr @ 2009-06-03 6:01 ` Andreas Mohr 2009-06-03 6:30 ` Andreas Mohr 0 siblings, 1 reply; 39+ messages in thread From: Andreas Mohr @ 2009-06-03 6:01 UTC (permalink / raw) To: andi; +Cc: Jeff Kirsher, rjw, e1000-devel, netdev, linux-kernel Hi, following my patch I tested -rc8 with it, everything pretty fine so far, except for a S2R attempt: PM: Syncing filesystems ... done. Freezing user space processes ... (elapsed 0.02 seconds) done. Freezing remaining freezable tasks ... (elapsed 0.00 seconds) done. Suspending console(s) (use no_console_suspend to debug) sd 0:0:0:0: [sda] Synchronizing SCSI cache sd 0:0:0:0: [sda] Stopping disk ACPI handle has no context! serial 00:09: disabled ACPI handle has no context! r8169 0000:02:0f.0: PME# enabled ACPI handle has no context! ACPI handle has no context! e100 0000:02:07.0: PCI INT A disabled pci_legacy_suspend(): e100_suspend+0x0/0x20 [e100] returns -5 pm_op(): pci_pm_suspend+0x0/0xd7 returns -5 PM: Device 0000:02:07.0 failed to suspend: error -5 PM: Some devices failed to suspend firewire_ohci 0000:02:0e.0: restoring config space at offset 0xf (was 0x4020100, writing 0x402010b) firewire_ohci 0000:02:0e.0: restoring config space at offset 0x5 (was 0x0, writing 0xfddf8000) static int e100_suspend(struct pci_dev *pdev, pm_message_t state) { bool wake; __e100_shutdown(pdev, &wake); return __e100_power_off(pdev, wake); } static int __e100_power_off(struct pci_dev *pdev, bool wake) { if (wake) { return pci_prepare_to_sleep(pdev); } else { pci_wake_from_d3(pdev, false); return pci_set_power_state(pdev, PCI_D3hot); } } Well, the problem being that my card does not _have_ any PM support: lspci -vvv: 02:07.0 Ethernet controller: Intel Corporation 82557/8/9/0/1 Ethernet Pro 100 (rev 01) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 32 (2000ns min, 14000ns max) Interrupt: pin A routed to IRQ 21 Region 0: Memory at fdaff000 (32-bit, prefetchable) [size=4K] Region 1: I/O ports at df00 [size=32] Region 2: Memory at fdc00000 (32-bit, non-prefetchable) [size=1M] [virtual] Expansion ROM at fdb00000 [disabled] [size=1M] Kernel driver in use: e100 So I'm back up to the desktop rather quicker than I would have liked. Worse, after resume I don't have my network back, and attempting to unload e100 or ifconfig eth0 down results in this: INFO: task nmbd:4633 blocked for more than 120 seconds. "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. nmbd D 00000061 0 4633 1 f56f7d14 00000082 0410aa36 00000061 00000100 f6716240 f61a7200 c0563740 c0563740 f6716000 f56f7cd0 f61f3000 f61f3284 c1f1f740 00000001 04132611 00000061 00000000 f56f7cfc c031fe90 f61a7200 40000040 f61f3284 f6716240 Call Trace: [<c031fe90>] ? ip_push_pending_frames+0x2b6/0x2c0 [<c0336a8e>] ? udp_push_pending_frames+0x296/0x2e3 [<c0365bef>] __mutex_lock_common+0x136/0x239 [<c0365d04>] __mutex_lock_slowpath+0x12/0x15 [<c0365dbc>] ? mutex_lock+0x21/0x2e [<c0365dbc>] mutex_lock+0x21/0x2e [<c030b7ad>] rtnetlink_rcv+0x10/0x24 [<c0316723>] netlink_unicast+0xee/0x144 [<c0316996>] netlink_sendmsg+0x21d/0x22a [<c02f800e>] sock_sendmsg+0xca/0xe1 [<c01352bf>] ? autoremove_wake_function+0x0/0x33 [<c01352bf>] ? autoremove_wake_function+0x0/0x33 [<c0183e88>] ? set_fd_set+0x38/0x3d [<c011a47b>] ? __wake_up+0x31/0x3b [<c022cb52>] ? might_fault+0x17/0x19 [<c022cb7e>] ? copy_from_user+0x2a/0x112 [<c02f825b>] sys_sendto+0xa4/0xc3 [<c02f893d>] ? move_addr_to_user+0x40/0x57 [<c02f8c63>] ? sys_getsockname+0x52/0x6f [<c0199905>] ? inotify_d_instantiate+0x12/0x34 [<c0185f9f>] ? __d_instantiate+0x2d/0x30 [<c02f7d21>] ? sock_attach_fd+0x7e/0xab [<c02f8ecc>] sys_socketcall+0xd5/0x16d [<c01029f5>] syscall_call+0x7/0xb IOW, we're deadlocking on the rtnl lock - something must have gone wrong network-wise during suspend / emergency-resume handling. IOW, we have _two_ issues: - that PM suspend part here doesn't support non-PM PCI cards - PM suspend breaks networking stuff (or is that caused by incomplete reinitialization of my card, thus it's not network-suitable after resume and hangs on some network APIs?) What to do? (I should have provided some SysRq-T(?) lock traces I guess, will record that now) Oh, and I will test whether eepro100 S2R works on that machine, and if so what that driver does to avoid trouble. Thanks, Andreas Mohr ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: e100 kills S2R on my box, plus network drops dead 2009-06-03 6:01 ` e100 kills S2R on my box, plus network drops dead Andreas Mohr @ 2009-06-03 6:30 ` Andreas Mohr 0 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2009-06-03 6:30 UTC (permalink / raw) To: andi; +Cc: Jeff Kirsher, rjw, e1000-devel, netdev, linux-kernel Hi, On Wed, Jun 03, 2009 at 08:01:23AM +0200, Andreas Mohr wrote: > IOW, we have _two_ issues: > > - that PM suspend part here doesn't support non-PM PCI cards > - PM suspend breaks networking stuff (or is that caused by incomplete reinitialization of my card, > thus it's not network-suitable after resume and hangs on some network APIs?) > > What to do? > > (I should have provided some SysRq-T(?) lock traces I guess, will record that now) Those were not too useful methinks, but I can provide them if need be. > Oh, and I will test whether eepro100 S2R works on that machine, and if > so what that driver does to avoid trouble. Well, yes, eepro100 (2.6.28.10) does achieve successful S2R, and I _do_ have working network even after resume (which is not too astonishing since it almost takes active measures to NOT make this card work, given that it's fully auto-configuring on the transceiver side) static int eepro100_suspend(struct pci_dev *pdev, pm_message_t state) { struct net_device *dev = pci_get_drvdata (pdev); struct speedo_private *sp = netdev_priv(dev); void __iomem *ioaddr = sp->regs; pci_save_state(pdev); if (!netif_running(dev)) return 0; del_timer_sync(&sp->timer); netif_device_detach(dev); iowrite32(PortPartialReset, ioaddr + SCBPort); /* XXX call pci_set_power_state ()? */ pci_disable_device(pdev); pci_set_power_state (pdev, PCI_D3hot); return 0; } That's pretty boring code, linearily executing stuff without checking results, thus it's unsurprising that it does not prevent suspend on a non-PM PCI card. So, what to do to fix those suspend issues on the e100 side of things? And do we perhaps have similar non-PM PCI card support issues with other drivers? Thanks, Andreas Mohr ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: e100 kills S2R on my box, plus network drops dead @ 2009-06-03 6:30 ` Andreas Mohr 0 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2009-06-03 6:30 UTC (permalink / raw) To: andi; +Cc: rjw, e1000-devel, Jeff Kirsher, linux-kernel, netdev Hi, On Wed, Jun 03, 2009 at 08:01:23AM +0200, Andreas Mohr wrote: > IOW, we have _two_ issues: > > - that PM suspend part here doesn't support non-PM PCI cards > - PM suspend breaks networking stuff (or is that caused by incomplete reinitialization of my card, > thus it's not network-suitable after resume and hangs on some network APIs?) > > What to do? > > (I should have provided some SysRq-T(?) lock traces I guess, will record that now) Those were not too useful methinks, but I can provide them if need be. > Oh, and I will test whether eepro100 S2R works on that machine, and if > so what that driver does to avoid trouble. Well, yes, eepro100 (2.6.28.10) does achieve successful S2R, and I _do_ have working network even after resume (which is not too astonishing since it almost takes active measures to NOT make this card work, given that it's fully auto-configuring on the transceiver side) static int eepro100_suspend(struct pci_dev *pdev, pm_message_t state) { struct net_device *dev = pci_get_drvdata (pdev); struct speedo_private *sp = netdev_priv(dev); void __iomem *ioaddr = sp->regs; pci_save_state(pdev); if (!netif_running(dev)) return 0; del_timer_sync(&sp->timer); netif_device_detach(dev); iowrite32(PortPartialReset, ioaddr + SCBPort); /* XXX call pci_set_power_state ()? */ pci_disable_device(pdev); pci_set_power_state (pdev, PCI_D3hot); return 0; } That's pretty boring code, linearily executing stuff without checking results, thus it's unsurprising that it does not prevent suspend on a non-PM PCI card. So, what to do to fix those suspend issues on the e100 side of things? And do we perhaps have similar non-PM PCI card support issues with other drivers? Thanks, Andreas Mohr ------------------------------------------------------------------------------ OpenSolaris 2009.06 is a cutting edge operating system for enterprises looking to deploy the next generation of Solaris that includes the latest innovations from Sun and the OpenSource community. Download a copy and enjoy capabilities such as Networking, Storage and Virtualization. Go to: http://p.sf.net/sfu/opensolaris-get ^ permalink raw reply [flat|nested] 39+ messages in thread
* [PATCH] Make e100 suspend handler support PCI cards lacking PM capability 2009-06-03 6:30 ` Andreas Mohr @ 2009-06-13 19:19 ` Andreas Mohr -1 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2009-06-13 19:19 UTC (permalink / raw) To: andi; +Cc: akpm, e1000-devel, netdev, linux-kernel Hi all, after having added non-MII PHY card support to e100, I noticed that the suspend handler rejects power-management non-capable PCI cards, causing a S2R request to immediately get back up to the desktop, losing network access in the process (rtnl mutex deadlock). ChangeLog: Support PCI cards which are lacking power management capability in the e100 suspend handler. Frankly I was unsure how to best add this to the driver in a clean way. Usually drivers use pci_set_power_state(..., pci_choose_state(...)) in order to avoid the rejection of an open-coded pci_set_power_state(..., PCI_D3hot) in case of a non-PM card, however pci_choose_state() depends on the _pm-internal_ pm_message_t type, which was doable in .suspend directly but not at the other e100 driver locations where it was used. Next attempt was to extend __e100_power_off() with a pci_power_t parameter, however since __e100_power_off() is called by two locations, that meant that I'd have to use pci_choose_state() at _both_ call sites. Thus I simply resorted to do a brute-force yet most simple pci_find_capability() check in the __e100_power_off() function. Tested on 2.6.30-rc8 and suspending/resuming fine, checkpatch.pl:ed. Patch against 2.6.30-rc8 with my original non-MII support patch applied. (should apply fine in any case, I'd think). Intended for testing in -mmotm or so. Thanks! Signed-off-by: Andreas Mohr <andi@lisas.de> --- linux-2.6.30-rc8.e100/drivers/net/e100.c.my_patch_orig 2009-06-13 18:47:53.000000000 +0200 +++ linux-2.6.30-rc8.e100/drivers/net/e100.c 2009-06-13 20:27:46.000000000 +0200 @@ -2897,6 +2897,13 @@ static void __e100_shutdown(struct pci_d static int __e100_power_off(struct pci_dev *pdev, bool wake) { + /* some older devices don't support PCI PM + * (e.g. mac_82557_D100_B combo card with 80c24 PHY) + * - skip those! (they most likely won't support WoL either) + */ + if (!pci_find_capability(pdev, PCI_CAP_ID_PM)) + return 0; + if (wake) { return pci_prepare_to_sleep(pdev); } else { ^ permalink raw reply [flat|nested] 39+ messages in thread
* [PATCH] Make e100 suspend handler support PCI cards lacking PM capability @ 2009-06-13 19:19 ` Andreas Mohr 0 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2009-06-13 19:19 UTC (permalink / raw) To: andi; +Cc: e1000-devel, netdev, akpm, linux-kernel Hi all, after having added non-MII PHY card support to e100, I noticed that the suspend handler rejects power-management non-capable PCI cards, causing a S2R request to immediately get back up to the desktop, losing network access in the process (rtnl mutex deadlock). ChangeLog: Support PCI cards which are lacking power management capability in the e100 suspend handler. Frankly I was unsure how to best add this to the driver in a clean way. Usually drivers use pci_set_power_state(..., pci_choose_state(...)) in order to avoid the rejection of an open-coded pci_set_power_state(..., PCI_D3hot) in case of a non-PM card, however pci_choose_state() depends on the _pm-internal_ pm_message_t type, which was doable in .suspend directly but not at the other e100 driver locations where it was used. Next attempt was to extend __e100_power_off() with a pci_power_t parameter, however since __e100_power_off() is called by two locations, that meant that I'd have to use pci_choose_state() at _both_ call sites. Thus I simply resorted to do a brute-force yet most simple pci_find_capability() check in the __e100_power_off() function. Tested on 2.6.30-rc8 and suspending/resuming fine, checkpatch.pl:ed. Patch against 2.6.30-rc8 with my original non-MII support patch applied. (should apply fine in any case, I'd think). Intended for testing in -mmotm or so. Thanks! Signed-off-by: Andreas Mohr <andi@lisas.de> --- linux-2.6.30-rc8.e100/drivers/net/e100.c.my_patch_orig 2009-06-13 18:47:53.000000000 +0200 +++ linux-2.6.30-rc8.e100/drivers/net/e100.c 2009-06-13 20:27:46.000000000 +0200 @@ -2897,6 +2897,13 @@ static void __e100_shutdown(struct pci_d static int __e100_power_off(struct pci_dev *pdev, bool wake) { + /* some older devices don't support PCI PM + * (e.g. mac_82557_D100_B combo card with 80c24 PHY) + * - skip those! (they most likely won't support WoL either) + */ + if (!pci_find_capability(pdev, PCI_CAP_ID_PM)) + return 0; + if (wake) { return pci_prepare_to_sleep(pdev); } else { ------------------------------------------------------------------------------ Crystal Reports - New Free Runtime and 30 Day Trial Check out the new simplified licensing option that enables unlimited royalty-free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Make e100 suspend handler support PCI cards lacking PM capability 2009-06-13 19:19 ` Andreas Mohr (?) @ 2009-06-13 22:28 ` Rafael J. Wysocki 2009-06-13 22:45 ` Rafael J. Wysocki 2009-06-14 12:51 ` Andreas Mohr -1 siblings, 2 replies; 39+ messages in thread From: Rafael J. Wysocki @ 2009-06-13 22:28 UTC (permalink / raw) To: andi; +Cc: akpm, e1000-devel, netdev, linux-kernel On Saturday 13 June 2009, Andreas Mohr wrote: > Hi all, > > after having added non-MII PHY card support to e100, I noticed that > the suspend handler rejects power-management non-capable PCI cards, Well, that means we have a bug somewhere in the PCI PM core. > causing a S2R request to immediately get back up to the desktop, > losing network access in the process (rtnl mutex deadlock). That's bad. > > ChangeLog: > Support PCI cards which are lacking power management capability > in the e100 suspend handler. > > > Frankly I was unsure how to best add this to the driver in a clean way. > Usually drivers use pci_set_power_state(..., pci_choose_state(...)) > in order to avoid the rejection of an open-coded > pci_set_power_state(..., PCI_D3hot) in case of a non-PM card, > however pci_choose_state() depends on the _pm-internal_ pm_message_t type, > which was doable in .suspend directly but not at the other e100 > driver locations where it was used. > > Next attempt was to extend __e100_power_off() with a pci_power_t parameter, > however since __e100_power_off() is called by two locations, > that meant that I'd have to use pci_choose_state() at _both_ call sites. > > Thus I simply resorted to do a brute-force yet most simple > pci_find_capability() check in the __e100_power_off() function. > > > Tested on 2.6.30-rc8 and suspending/resuming fine, checkpatch.pl:ed. > Patch against 2.6.30-rc8 with my original non-MII support patch applied. > (should apply fine in any case, I'd think). > Intended for testing in -mmotm or so. > > Thanks! > > Signed-off-by: Andreas Mohr <andi@lisas.de> > > > --- linux-2.6.30-rc8.e100/drivers/net/e100.c.my_patch_orig 2009-06-13 18:47:53.000000000 +0200 > +++ linux-2.6.30-rc8.e100/drivers/net/e100.c 2009-06-13 20:27:46.000000000 +0200 > @@ -2897,6 +2897,13 @@ static void __e100_shutdown(struct pci_d > > static int __e100_power_off(struct pci_dev *pdev, bool wake) > { > + /* some older devices don't support PCI PM > + * (e.g. mac_82557_D100_B combo card with 80c24 PHY) > + * - skip those! (they most likely won't support WoL either) > + */ > + if (!pci_find_capability(pdev, PCI_CAP_ID_PM)) > + return 0; Devices without PCI_CAP_ID_PM may still be power-manageable by ACPI, so returning 0 at this point is not a general solution. > + > if (wake) { > return pci_prepare_to_sleep(pdev); pci_prepare_to_sleep() is supposed to return 0 for your device. I'll have a look at it. Best, Rafael ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Make e100 suspend handler support PCI cards lacking PM capability 2009-06-13 22:28 ` Rafael J. Wysocki @ 2009-06-13 22:45 ` Rafael J. Wysocki 2009-06-14 12:51 ` Andreas Mohr 1 sibling, 0 replies; 39+ messages in thread From: Rafael J. Wysocki @ 2009-06-13 22:45 UTC (permalink / raw) To: andi; +Cc: akpm, e1000-devel, netdev, linux-kernel On Sunday 14 June 2009, Rafael J. Wysocki wrote: > On Saturday 13 June 2009, Andreas Mohr wrote: > > Hi all, > > > > after having added non-MII PHY card support to e100, I noticed that > > the suspend handler rejects power-management non-capable PCI cards, > > Well, that means we have a bug somewhere in the PCI PM core. > > > causing a S2R request to immediately get back up to the desktop, > > losing network access in the process (rtnl mutex deadlock). > > That's bad. > > > > > ChangeLog: > > Support PCI cards which are lacking power management capability > > in the e100 suspend handler. > > > > > > Frankly I was unsure how to best add this to the driver in a clean way. > > Usually drivers use pci_set_power_state(..., pci_choose_state(...)) > > in order to avoid the rejection of an open-coded > > pci_set_power_state(..., PCI_D3hot) in case of a non-PM card, > > however pci_choose_state() depends on the _pm-internal_ pm_message_t type, > > which was doable in .suspend directly but not at the other e100 > > driver locations where it was used. > > > > Next attempt was to extend __e100_power_off() with a pci_power_t parameter, > > however since __e100_power_off() is called by two locations, > > that meant that I'd have to use pci_choose_state() at _both_ call sites. > > > > Thus I simply resorted to do a brute-force yet most simple > > pci_find_capability() check in the __e100_power_off() function. > > > > > > Tested on 2.6.30-rc8 and suspending/resuming fine, checkpatch.pl:ed. > > Patch against 2.6.30-rc8 with my original non-MII support patch applied. > > (should apply fine in any case, I'd think). > > Intended for testing in -mmotm or so. > > > > Thanks! > > > > Signed-off-by: Andreas Mohr <andi@lisas.de> > > > > > > --- linux-2.6.30-rc8.e100/drivers/net/e100.c.my_patch_orig 2009-06-13 18:47:53.000000000 +0200 > > +++ linux-2.6.30-rc8.e100/drivers/net/e100.c 2009-06-13 20:27:46.000000000 +0200 > > @@ -2897,6 +2897,13 @@ static void __e100_shutdown(struct pci_d > > > > static int __e100_power_off(struct pci_dev *pdev, bool wake) > > { > > + /* some older devices don't support PCI PM > > + * (e.g. mac_82557_D100_B combo card with 80c24 PHY) > > + * - skip those! (they most likely won't support WoL either) > > + */ > > + if (!pci_find_capability(pdev, PCI_CAP_ID_PM)) > > + return 0; > > Devices without PCI_CAP_ID_PM may still be power-manageable by ACPI, so > returning 0 at this point is not a general solution. > > > + > > if (wake) { > > return pci_prepare_to_sleep(pdev); > > pci_prepare_to_sleep() is supposed to return 0 for your device. I'll have a > look at it. Please check if the appended patch helps. Best, Rafael --- drivers/pci/pci.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) Index: linux-2.6/drivers/pci/pci.c =================================================================== --- linux-2.6.orig/drivers/pci/pci.c +++ linux-2.6/drivers/pci/pci.c @@ -1284,15 +1284,14 @@ pci_power_t pci_target_state(struct pci_ default: target_state = state; } + } else if (!dev->pm_cap) { + target_state = PCI_D0; } else if (device_may_wakeup(&dev->dev)) { /* * Find the deepest state from which the device can generate * wake-up events, make it the target state and enable device * to generate PME#. */ - if (!dev->pm_cap) - return PCI_POWER_ERROR; - if (dev->pme_support) { while (target_state && !(dev->pme_support & (1 << target_state))) ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Make e100 suspend handler support PCI cards lacking PM capability @ 2009-06-13 22:45 ` Rafael J. Wysocki 0 siblings, 0 replies; 39+ messages in thread From: Rafael J. Wysocki @ 2009-06-13 22:45 UTC (permalink / raw) To: andi; +Cc: e1000-devel, netdev, akpm, linux-kernel On Sunday 14 June 2009, Rafael J. Wysocki wrote: > On Saturday 13 June 2009, Andreas Mohr wrote: > > Hi all, > > > > after having added non-MII PHY card support to e100, I noticed that > > the suspend handler rejects power-management non-capable PCI cards, > > Well, that means we have a bug somewhere in the PCI PM core. > > > causing a S2R request to immediately get back up to the desktop, > > losing network access in the process (rtnl mutex deadlock). > > That's bad. > > > > > ChangeLog: > > Support PCI cards which are lacking power management capability > > in the e100 suspend handler. > > > > > > Frankly I was unsure how to best add this to the driver in a clean way. > > Usually drivers use pci_set_power_state(..., pci_choose_state(...)) > > in order to avoid the rejection of an open-coded > > pci_set_power_state(..., PCI_D3hot) in case of a non-PM card, > > however pci_choose_state() depends on the _pm-internal_ pm_message_t type, > > which was doable in .suspend directly but not at the other e100 > > driver locations where it was used. > > > > Next attempt was to extend __e100_power_off() with a pci_power_t parameter, > > however since __e100_power_off() is called by two locations, > > that meant that I'd have to use pci_choose_state() at _both_ call sites. > > > > Thus I simply resorted to do a brute-force yet most simple > > pci_find_capability() check in the __e100_power_off() function. > > > > > > Tested on 2.6.30-rc8 and suspending/resuming fine, checkpatch.pl:ed. > > Patch against 2.6.30-rc8 with my original non-MII support patch applied. > > (should apply fine in any case, I'd think). > > Intended for testing in -mmotm or so. > > > > Thanks! > > > > Signed-off-by: Andreas Mohr <andi@lisas.de> > > > > > > --- linux-2.6.30-rc8.e100/drivers/net/e100.c.my_patch_orig 2009-06-13 18:47:53.000000000 +0200 > > +++ linux-2.6.30-rc8.e100/drivers/net/e100.c 2009-06-13 20:27:46.000000000 +0200 > > @@ -2897,6 +2897,13 @@ static void __e100_shutdown(struct pci_d > > > > static int __e100_power_off(struct pci_dev *pdev, bool wake) > > { > > + /* some older devices don't support PCI PM > > + * (e.g. mac_82557_D100_B combo card with 80c24 PHY) > > + * - skip those! (they most likely won't support WoL either) > > + */ > > + if (!pci_find_capability(pdev, PCI_CAP_ID_PM)) > > + return 0; > > Devices without PCI_CAP_ID_PM may still be power-manageable by ACPI, so > returning 0 at this point is not a general solution. > > > + > > if (wake) { > > return pci_prepare_to_sleep(pdev); > > pci_prepare_to_sleep() is supposed to return 0 for your device. I'll have a > look at it. Please check if the appended patch helps. Best, Rafael --- drivers/pci/pci.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) Index: linux-2.6/drivers/pci/pci.c =================================================================== --- linux-2.6.orig/drivers/pci/pci.c +++ linux-2.6/drivers/pci/pci.c @@ -1284,15 +1284,14 @@ pci_power_t pci_target_state(struct pci_ default: target_state = state; } + } else if (!dev->pm_cap) { + target_state = PCI_D0; } else if (device_may_wakeup(&dev->dev)) { /* * Find the deepest state from which the device can generate * wake-up events, make it the target state and enable device * to generate PME#. */ - if (!dev->pm_cap) - return PCI_POWER_ERROR; - if (dev->pme_support) { while (target_state && !(dev->pme_support & (1 << target_state))) ------------------------------------------------------------------------------ Crystal Reports - New Free Runtime and 30 Day Trial Check out the new simplified licensing option that enables unlimited royalty-free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Make e100 suspend handler support PCI cards lacking PM capability 2009-06-13 22:28 ` Rafael J. Wysocki 2009-06-13 22:45 ` Rafael J. Wysocki @ 2009-06-14 12:51 ` Andreas Mohr 2009-06-14 14:06 ` Rafael J. Wysocki 1 sibling, 1 reply; 39+ messages in thread From: Andreas Mohr @ 2009-06-14 12:51 UTC (permalink / raw) To: Rafael J. Wysocki; +Cc: andi, akpm, e1000-devel, netdev, linux-kernel Hi, On Sun, Jun 14, 2009 at 12:28:15AM +0200, Rafael J. Wysocki wrote: > On Saturday 13 June 2009, Andreas Mohr wrote: > > Hi all, > > > > after having added non-MII PHY card support to e100, I noticed that > > the suspend handler rejects power-management non-capable PCI cards, > > Well, that means we have a bug somewhere in the PCI PM core. I don't know. I had shortly investigated the same thing, but it very much seemed that this is by design, pci_set_power_state() is documented to reject non-PM cards (in power/pci.txt, and in pci.c, too). Thus I didn't work in this area. And from a cleanliness point of view pci_set_power_state() acting on a non-PM card with no special non-PM ACPI support _should_ return an error status I guess. (especially since docs say that pci_set_power_state() should be used for PM cards) > > causing a S2R request to immediately get back up to the desktop, > > losing network access in the process (rtnl mutex deadlock). > > That's bad. Indeed, and I have no idea what the problem was. rtnl_is_locked() always was false within suspend/resume, thus it had to be a userspace-triggered effect sometime _after_ (non-)resume happened (probably due to the network controller being down and thus inoperable after .suspend). BTW, after that failed .suspend, .resume was not called. I assume this to be correct behaviour. > > static int __e100_power_off(struct pci_dev *pdev, bool wake) > > { > > + /* some older devices don't support PCI PM > > + * (e.g. mac_82557_D100_B combo card with 80c24 PHY) > > + * - skip those! (they most likely won't support WoL either) > > + */ > > + if (!pci_find_capability(pdev, PCI_CAP_ID_PM)) > > + return 0; > > Devices without PCI_CAP_ID_PM may still be power-manageable by ACPI, so > returning 0 at this point is not a general solution. Oh, interesting. BTW, any idea why we have several drivers doing some seemingly useless /* Find power-management capability. */ pm_cap = pci_find_capability(pdev, PCI_CAP_ID_PM); if (pm_cap == 0) { printk(KERN_ERR PFX "Cannot find PowerManagement capability, " "aborting.\n"); err = -EIO; goto err_out_free_res; } ? - it's code bloat - it needlessly rejects non-PM cards - it annoys the hell out of users of a non-PM card > > + > > if (wake) { > > return pci_prepare_to_sleep(pdev); > > pci_prepare_to_sleep() is supposed to return 0 for your device. I'll have a > look at it. No, wake is false for my card, thus that's not the branch to investigate. And that's probably the reason why the patch in the next mail didn't work. (I #if 0'ed my e100 changes, and then patched pci.c, and it did properly contain the patched parts, and the kernel rebuild then failed to suspend) pci_legacy_suspend(): e100_suspend+0x0/0x20 [e100] returns -5 pm_op(): pci_pm_suspend+0x0/0xd7 returns -5 PM: Device 0000:02:07.0 failed to suspend: error -5 PM: Some devices failed to suspend Most likely your patch didn't change pci_set_power_state() processing, I'd think. Now what to do next? Note that I won't be able to test anything for about a week now, unfortunately. Thanks for your info! Andreas Mohr ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Make e100 suspend handler support PCI cards lacking PM capability 2009-06-14 12:51 ` Andreas Mohr @ 2009-06-14 14:06 ` Rafael J. Wysocki 0 siblings, 0 replies; 39+ messages in thread From: Rafael J. Wysocki @ 2009-06-14 14:06 UTC (permalink / raw) To: andi; +Cc: akpm, e1000-devel, netdev, linux-kernel On Sunday 14 June 2009, Andreas Mohr wrote: > Hi, > > On Sun, Jun 14, 2009 at 12:28:15AM +0200, Rafael J. Wysocki wrote: > > On Saturday 13 June 2009, Andreas Mohr wrote: > > > Hi all, > > > > > > after having added non-MII PHY card support to e100, I noticed that > > > the suspend handler rejects power-management non-capable PCI cards, > > > > Well, that means we have a bug somewhere in the PCI PM core. > > I don't know. I had shortly investigated the same thing, > but it very much seemed that this is by design, pci_set_power_state() > is documented to reject non-PM cards (in power/pci.txt, and in > pci.c, too). Thus I didn't work in this area. > > And from a cleanliness point of view pci_set_power_state() > acting on a non-PM card with no special non-PM ACPI support _should_ > return an error status I guess. > (especially since docs say that pci_set_power_state() should > be used for PM cards) > > > > causing a S2R request to immediately get back up to the desktop, > > > losing network access in the process (rtnl mutex deadlock). > > > > That's bad. > > Indeed, and I have no idea what the problem was. > rtnl_is_locked() always was false within suspend/resume, > thus it had to be a userspace-triggered effect sometime > _after_ (non-)resume happened > (probably due to the network controller being down and thus inoperable > after .suspend). > > BTW, after that failed .suspend, .resume was not called. I assume this to > be correct behaviour. > > > > static int __e100_power_off(struct pci_dev *pdev, bool wake) > > > { > > > + /* some older devices don't support PCI PM > > > + * (e.g. mac_82557_D100_B combo card with 80c24 PHY) > > > + * - skip those! (they most likely won't support WoL either) > > > + */ > > > + if (!pci_find_capability(pdev, PCI_CAP_ID_PM)) > > > + return 0; > > > > Devices without PCI_CAP_ID_PM may still be power-manageable by ACPI, so > > returning 0 at this point is not a general solution. > > Oh, interesting. > > BTW, any idea why we have several drivers doing some seemingly useless > > /* Find power-management capability. */ > pm_cap = pci_find_capability(pdev, PCI_CAP_ID_PM); > if (pm_cap == 0) { > printk(KERN_ERR PFX "Cannot find PowerManagement capability, " > "aborting.\n"); > err = -EIO; > goto err_out_free_res; > } > > ? > > - it's code bloat > - it needlessly rejects non-PM cards > - it annoys the hell out of users of a non-PM card No idea. > > > + > > > if (wake) { > > > return pci_prepare_to_sleep(pdev); > > > > pci_prepare_to_sleep() is supposed to return 0 for your device. I'll have a > > look at it. > > No, wake is false for my card, thus that's not the branch to > investigate. Ah. The problem is, then, that we try to put the device into D3, which it cannot do and error code is correctly returned from pci_set_power_state(). I would use the appended patch in that case and the patch sent previously is necessary for the 'wake = true' case. Thanks, Rafael --- drivers/net/e100.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) Index: linux-2.6/drivers/net/e100.c =================================================================== --- linux-2.6.orig/drivers/net/e100.c +++ linux-2.6/drivers/net/e100.c @@ -2763,8 +2763,9 @@ static int __e100_power_off(struct pci_d return pci_prepare_to_sleep(pdev); } else { pci_wake_from_d3(pdev, false); - return pci_set_power_state(pdev, PCI_D3hot); + pci_set_power_state(pdev, PCI_D3hot); } + return 0; } #ifdef CONFIG_PM ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Make e100 suspend handler support PCI cards lacking PM capability @ 2009-06-14 14:06 ` Rafael J. Wysocki 0 siblings, 0 replies; 39+ messages in thread From: Rafael J. Wysocki @ 2009-06-14 14:06 UTC (permalink / raw) To: andi; +Cc: e1000-devel, netdev, akpm, linux-kernel On Sunday 14 June 2009, Andreas Mohr wrote: > Hi, > > On Sun, Jun 14, 2009 at 12:28:15AM +0200, Rafael J. Wysocki wrote: > > On Saturday 13 June 2009, Andreas Mohr wrote: > > > Hi all, > > > > > > after having added non-MII PHY card support to e100, I noticed that > > > the suspend handler rejects power-management non-capable PCI cards, > > > > Well, that means we have a bug somewhere in the PCI PM core. > > I don't know. I had shortly investigated the same thing, > but it very much seemed that this is by design, pci_set_power_state() > is documented to reject non-PM cards (in power/pci.txt, and in > pci.c, too). Thus I didn't work in this area. > > And from a cleanliness point of view pci_set_power_state() > acting on a non-PM card with no special non-PM ACPI support _should_ > return an error status I guess. > (especially since docs say that pci_set_power_state() should > be used for PM cards) > > > > causing a S2R request to immediately get back up to the desktop, > > > losing network access in the process (rtnl mutex deadlock). > > > > That's bad. > > Indeed, and I have no idea what the problem was. > rtnl_is_locked() always was false within suspend/resume, > thus it had to be a userspace-triggered effect sometime > _after_ (non-)resume happened > (probably due to the network controller being down and thus inoperable > after .suspend). > > BTW, after that failed .suspend, .resume was not called. I assume this to > be correct behaviour. > > > > static int __e100_power_off(struct pci_dev *pdev, bool wake) > > > { > > > + /* some older devices don't support PCI PM > > > + * (e.g. mac_82557_D100_B combo card with 80c24 PHY) > > > + * - skip those! (they most likely won't support WoL either) > > > + */ > > > + if (!pci_find_capability(pdev, PCI_CAP_ID_PM)) > > > + return 0; > > > > Devices without PCI_CAP_ID_PM may still be power-manageable by ACPI, so > > returning 0 at this point is not a general solution. > > Oh, interesting. > > BTW, any idea why we have several drivers doing some seemingly useless > > /* Find power-management capability. */ > pm_cap = pci_find_capability(pdev, PCI_CAP_ID_PM); > if (pm_cap == 0) { > printk(KERN_ERR PFX "Cannot find PowerManagement capability, " > "aborting.\n"); > err = -EIO; > goto err_out_free_res; > } > > ? > > - it's code bloat > - it needlessly rejects non-PM cards > - it annoys the hell out of users of a non-PM card No idea. > > > + > > > if (wake) { > > > return pci_prepare_to_sleep(pdev); > > > > pci_prepare_to_sleep() is supposed to return 0 for your device. I'll have a > > look at it. > > No, wake is false for my card, thus that's not the branch to > investigate. Ah. The problem is, then, that we try to put the device into D3, which it cannot do and error code is correctly returned from pci_set_power_state(). I would use the appended patch in that case and the patch sent previously is necessary for the 'wake = true' case. Thanks, Rafael --- drivers/net/e100.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) Index: linux-2.6/drivers/net/e100.c =================================================================== --- linux-2.6.orig/drivers/net/e100.c +++ linux-2.6/drivers/net/e100.c @@ -2763,8 +2763,9 @@ static int __e100_power_off(struct pci_d return pci_prepare_to_sleep(pdev); } else { pci_wake_from_d3(pdev, false); - return pci_set_power_state(pdev, PCI_D3hot); + pci_set_power_state(pdev, PCI_D3hot); } + return 0; } #ifdef CONFIG_PM ------------------------------------------------------------------------------ Crystal Reports - New Free Runtime and 30 Day Trial Check out the new simplified licensing option that enables unlimited royalty-free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Make e100 suspend handler support PCI cards lacking PM capability 2009-06-14 14:06 ` Rafael J. Wysocki (?) @ 2009-06-14 16:31 ` Rafael J. Wysocki -1 siblings, 0 replies; 39+ messages in thread From: Rafael J. Wysocki @ 2009-06-14 16:31 UTC (permalink / raw) To: andi; +Cc: akpm, e1000-devel, netdev, linux-kernel On Sunday 14 June 2009, Rafael J. Wysocki wrote: > On Sunday 14 June 2009, Andreas Mohr wrote: > > Hi, > > > > On Sun, Jun 14, 2009 at 12:28:15AM +0200, Rafael J. Wysocki wrote: > > > On Saturday 13 June 2009, Andreas Mohr wrote: > > > > Hi all, > > > > > > > > after having added non-MII PHY card support to e100, I noticed that > > > > the suspend handler rejects power-management non-capable PCI cards, > > > > > > Well, that means we have a bug somewhere in the PCI PM core. > > > > I don't know. I had shortly investigated the same thing, > > but it very much seemed that this is by design, pci_set_power_state() > > is documented to reject non-PM cards (in power/pci.txt, and in > > pci.c, too). Thus I didn't work in this area. > > > > And from a cleanliness point of view pci_set_power_state() > > acting on a non-PM card with no special non-PM ACPI support _should_ > > return an error status I guess. > > (especially since docs say that pci_set_power_state() should > > be used for PM cards) > > > > > > causing a S2R request to immediately get back up to the desktop, > > > > losing network access in the process (rtnl mutex deadlock). > > > > > > That's bad. > > > > Indeed, and I have no idea what the problem was. > > rtnl_is_locked() always was false within suspend/resume, > > thus it had to be a userspace-triggered effect sometime > > _after_ (non-)resume happened > > (probably due to the network controller being down and thus inoperable > > after .suspend). > > > > BTW, after that failed .suspend, .resume was not called. I assume this to > > be correct behaviour. > > > > > > static int __e100_power_off(struct pci_dev *pdev, bool wake) > > > > { > > > > + /* some older devices don't support PCI PM > > > > + * (e.g. mac_82557_D100_B combo card with 80c24 PHY) > > > > + * - skip those! (they most likely won't support WoL either) > > > > + */ > > > > + if (!pci_find_capability(pdev, PCI_CAP_ID_PM)) > > > > + return 0; > > > > > > Devices without PCI_CAP_ID_PM may still be power-manageable by ACPI, so > > > returning 0 at this point is not a general solution. > > > > Oh, interesting. > > > > BTW, any idea why we have several drivers doing some seemingly useless > > > > /* Find power-management capability. */ > > pm_cap = pci_find_capability(pdev, PCI_CAP_ID_PM); > > if (pm_cap == 0) { > > printk(KERN_ERR PFX "Cannot find PowerManagement capability, " > > "aborting.\n"); > > err = -EIO; > > goto err_out_free_res; > > } > > > > ? > > > > - it's code bloat > > - it needlessly rejects non-PM cards > > - it annoys the hell out of users of a non-PM card > > No idea. > > > > > + > > > > if (wake) { > > > > return pci_prepare_to_sleep(pdev); > > > > > > pci_prepare_to_sleep() is supposed to return 0 for your device. I'll have a > > > look at it. > > > > No, wake is false for my card, thus that's not the branch to > > investigate. > > Ah. The problem is, then, that we try to put the device into D3, which it > cannot do and error code is correctly returned from pci_set_power_state(). > > I would use the appended patch. Or perhaps better this one (functionally equivalent). --- drivers/net/e100.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) Index: linux-2.6/drivers/net/e100.c =================================================================== --- linux-2.6.orig/drivers/net/e100.c +++ linux-2.6/drivers/net/e100.c @@ -2759,12 +2759,13 @@ static void __e100_shutdown(struct pci_d static int __e100_power_off(struct pci_dev *pdev, bool wake) { - if (wake) { + if (wake) return pci_prepare_to_sleep(pdev); - } else { - pci_wake_from_d3(pdev, false); - return pci_set_power_state(pdev, PCI_D3hot); - } + + pci_wake_from_d3(pdev, false); + pci_set_power_state(pdev, PCI_D3hot); + + return 0; } #ifdef CONFIG_PM ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Make e100 suspend handler support PCI cards lacking PM capability 2009-06-14 14:06 ` Rafael J. Wysocki @ 2009-06-14 16:46 ` Andreas Mohr -1 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2009-06-14 16:46 UTC (permalink / raw) To: Rafael J. Wysocki; +Cc: andi, akpm, e1000-devel, netdev, linux-kernel Hi, On Sun, Jun 14, 2009 at 04:06:29PM +0200, Rafael J. Wysocki wrote: > On Sunday 14 June 2009, Andreas Mohr wrote: > > Hi, > > > > On Sun, Jun 14, 2009 at 12:28:15AM +0200, Rafael J. Wysocki wrote: > > > On Saturday 13 June 2009, Andreas Mohr wrote: > > > > + > > > > if (wake) { > > > > return pci_prepare_to_sleep(pdev); > > > > > > pci_prepare_to_sleep() is supposed to return 0 for your device. I'll have a > > > look at it. > > > > No, wake is false for my card, thus that's not the branch to > > investigate. > > Ah. The problem is, then, that we try to put the device into D3, which it > cannot do and error code is correctly returned from pci_set_power_state(). > > I would use the appended patch in that case and the patch sent previously > is necessary for the 'wake = true' case. OK, as said I cannot test this right now, but I'm _damn_ sure it would work. Thus I'd say your equivalent patch posted a bit later can be committed already. But what about the wake = true case? I'm not affected by this since my card doesn't have any wake capa, thus it's your call of whether that pci core code part really was broken and needed fixing. So, for the patch in your next mail: Acked-by: Andreas Mohr <andi@lisas.de> BTW, that patch was (pasted): static int __e100_power_off(struct pci_dev *pdev, bool wake) { - if (wake) { + if (wake) return pci_prepare_to_sleep(pdev); - } else { - pci_wake_from_d3(pdev, false); - return pci_set_power_state(pdev, PCI_D3hot); - } + + pci_wake_from_d3(pdev, false); + pci_set_power_state(pdev, PCI_D3hot); + + return 0; } Couple questions still: - why do we call pci_wake_from_d3(...false) only!? Wouldn't this break WoL after one iteration back and forth, due to missing 'true' case? - why do we call netif_device_detach() _after_ doing hardware shutdown of the network controller? I'd guess this can cause huge issues? Someone told me he had rtnl lock issues upon S2D with e100 (very similar to my rtnl issues during aborted .suspend), and that might possibly be the reason? So few lines of code, so many questions... Thanks, Andreas Mohr ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Make e100 suspend handler support PCI cards lacking PM capability @ 2009-06-14 16:46 ` Andreas Mohr 0 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2009-06-14 16:46 UTC (permalink / raw) To: Rafael J. Wysocki; +Cc: e1000-devel, netdev, akpm, linux-kernel, andi Hi, On Sun, Jun 14, 2009 at 04:06:29PM +0200, Rafael J. Wysocki wrote: > On Sunday 14 June 2009, Andreas Mohr wrote: > > Hi, > > > > On Sun, Jun 14, 2009 at 12:28:15AM +0200, Rafael J. Wysocki wrote: > > > On Saturday 13 June 2009, Andreas Mohr wrote: > > > > + > > > > if (wake) { > > > > return pci_prepare_to_sleep(pdev); > > > > > > pci_prepare_to_sleep() is supposed to return 0 for your device. I'll have a > > > look at it. > > > > No, wake is false for my card, thus that's not the branch to > > investigate. > > Ah. The problem is, then, that we try to put the device into D3, which it > cannot do and error code is correctly returned from pci_set_power_state(). > > I would use the appended patch in that case and the patch sent previously > is necessary for the 'wake = true' case. OK, as said I cannot test this right now, but I'm _damn_ sure it would work. Thus I'd say your equivalent patch posted a bit later can be committed already. But what about the wake = true case? I'm not affected by this since my card doesn't have any wake capa, thus it's your call of whether that pci core code part really was broken and needed fixing. So, for the patch in your next mail: Acked-by: Andreas Mohr <andi@lisas.de> BTW, that patch was (pasted): static int __e100_power_off(struct pci_dev *pdev, bool wake) { - if (wake) { + if (wake) return pci_prepare_to_sleep(pdev); - } else { - pci_wake_from_d3(pdev, false); - return pci_set_power_state(pdev, PCI_D3hot); - } + + pci_wake_from_d3(pdev, false); + pci_set_power_state(pdev, PCI_D3hot); + + return 0; } Couple questions still: - why do we call pci_wake_from_d3(...false) only!? Wouldn't this break WoL after one iteration back and forth, due to missing 'true' case? - why do we call netif_device_detach() _after_ doing hardware shutdown of the network controller? I'd guess this can cause huge issues? Someone told me he had rtnl lock issues upon S2D with e100 (very similar to my rtnl issues during aborted .suspend), and that might possibly be the reason? So few lines of code, so many questions... Thanks, Andreas Mohr ------------------------------------------------------------------------------ Crystal Reports - New Free Runtime and 30 Day Trial Check out the new simplified licensing option that enables unlimited royalty-free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Make e100 suspend handler support PCI cards lacking PM capability 2009-06-14 16:46 ` Andreas Mohr @ 2009-06-14 17:09 ` Rafael J. Wysocki -1 siblings, 0 replies; 39+ messages in thread From: Rafael J. Wysocki @ 2009-06-14 17:09 UTC (permalink / raw) To: andi; +Cc: akpm, e1000-devel, netdev, linux-kernel On Sunday 14 June 2009, Andreas Mohr wrote: > Hi, > > On Sun, Jun 14, 2009 at 04:06:29PM +0200, Rafael J. Wysocki wrote: > > On Sunday 14 June 2009, Andreas Mohr wrote: > > > Hi, > > > > > > On Sun, Jun 14, 2009 at 12:28:15AM +0200, Rafael J. Wysocki wrote: > > > > On Saturday 13 June 2009, Andreas Mohr wrote: > > > > > + > > > > > if (wake) { > > > > > return pci_prepare_to_sleep(pdev); > > > > > > > > pci_prepare_to_sleep() is supposed to return 0 for your device. I'll have a > > > > look at it. > > > > > > No, wake is false for my card, thus that's not the branch to > > > investigate. > > > > Ah. The problem is, then, that we try to put the device into D3, which it > > cannot do and error code is correctly returned from pci_set_power_state(). > > > > I would use the appended patch in that case and the patch sent previously > > is necessary for the 'wake = true' case. > > OK, as said I cannot test this right now, but I'm _damn_ sure it would > work. Thus I'd say your equivalent patch posted a bit later can be > committed already. > > But what about the wake = true case? > I'm not affected by this since my card doesn't have any wake capa, > thus it's your call of whether that pci core code part really was broken > and needed fixing. I think it needs fixing. > So, for the patch in your next mail: > Acked-by: Andreas Mohr <andi@lisas.de> > > > BTW, that patch was (pasted): > > static int __e100_power_off(struct pci_dev *pdev, bool wake) > { > - if (wake) { > + if (wake) > return pci_prepare_to_sleep(pdev); > - } else { > - pci_wake_from_d3(pdev, false); > - return pci_set_power_state(pdev, PCI_D3hot); > - } > + > + pci_wake_from_d3(pdev, false); > + pci_set_power_state(pdev, PCI_D3hot); > + > + return 0; > } > > > Couple questions still: > - why do we call pci_wake_from_d3(...false) only!? > Wouldn't this break WoL after one iteration back and forth, > due to missing 'true' case? The 'true' case is the 'wake = true' one. > - why do we call netif_device_detach() _after_ doing hardware shutdown > of the network controller? I'd guess this can cause huge issues? > Someone told me he had rtnl lock issues upon S2D with e100 > (very similar to my rtnl issues during aborted .suspend), > and that might possibly be the reason? I think you're right, but I'm not a network driver expert. Perhaps you can change the ordering and see if that fixes the rtnl issue (since you're able to reproduce it without my patch, that should be easy to verify). Best, Rafael ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Make e100 suspend handler support PCI cards lacking PM capability @ 2009-06-14 17:09 ` Rafael J. Wysocki 0 siblings, 0 replies; 39+ messages in thread From: Rafael J. Wysocki @ 2009-06-14 17:09 UTC (permalink / raw) To: andi; +Cc: e1000-devel, netdev, akpm, linux-kernel On Sunday 14 June 2009, Andreas Mohr wrote: > Hi, > > On Sun, Jun 14, 2009 at 04:06:29PM +0200, Rafael J. Wysocki wrote: > > On Sunday 14 June 2009, Andreas Mohr wrote: > > > Hi, > > > > > > On Sun, Jun 14, 2009 at 12:28:15AM +0200, Rafael J. Wysocki wrote: > > > > On Saturday 13 June 2009, Andreas Mohr wrote: > > > > > + > > > > > if (wake) { > > > > > return pci_prepare_to_sleep(pdev); > > > > > > > > pci_prepare_to_sleep() is supposed to return 0 for your device. I'll have a > > > > look at it. > > > > > > No, wake is false for my card, thus that's not the branch to > > > investigate. > > > > Ah. The problem is, then, that we try to put the device into D3, which it > > cannot do and error code is correctly returned from pci_set_power_state(). > > > > I would use the appended patch in that case and the patch sent previously > > is necessary for the 'wake = true' case. > > OK, as said I cannot test this right now, but I'm _damn_ sure it would > work. Thus I'd say your equivalent patch posted a bit later can be > committed already. > > But what about the wake = true case? > I'm not affected by this since my card doesn't have any wake capa, > thus it's your call of whether that pci core code part really was broken > and needed fixing. I think it needs fixing. > So, for the patch in your next mail: > Acked-by: Andreas Mohr <andi@lisas.de> > > > BTW, that patch was (pasted): > > static int __e100_power_off(struct pci_dev *pdev, bool wake) > { > - if (wake) { > + if (wake) > return pci_prepare_to_sleep(pdev); > - } else { > - pci_wake_from_d3(pdev, false); > - return pci_set_power_state(pdev, PCI_D3hot); > - } > + > + pci_wake_from_d3(pdev, false); > + pci_set_power_state(pdev, PCI_D3hot); > + > + return 0; > } > > > Couple questions still: > - why do we call pci_wake_from_d3(...false) only!? > Wouldn't this break WoL after one iteration back and forth, > due to missing 'true' case? The 'true' case is the 'wake = true' one. > - why do we call netif_device_detach() _after_ doing hardware shutdown > of the network controller? I'd guess this can cause huge issues? > Someone told me he had rtnl lock issues upon S2D with e100 > (very similar to my rtnl issues during aborted .suspend), > and that might possibly be the reason? I think you're right, but I'm not a network driver expert. Perhaps you can change the ordering and see if that fixes the rtnl issue (since you're able to reproduce it without my patch, that should be easy to verify). Best, Rafael ------------------------------------------------------------------------------ Crystal Reports - New Free Runtime and 30 Day Trial Check out the new simplified licensing option that enables unlimited royalty-free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Make e100 suspend handler support PCI cards lacking PM capability 2009-06-14 17:09 ` Rafael J. Wysocki @ 2009-06-14 17:20 ` Andreas Mohr -1 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2009-06-14 17:20 UTC (permalink / raw) To: Rafael J. Wysocki; +Cc: andi, akpm, e1000-devel, netdev, linux-kernel Hi, On Sun, Jun 14, 2009 at 07:09:45PM +0200, Rafael J. Wysocki wrote: > On Sunday 14 June 2009, Andreas Mohr wrote: > > Couple questions still: > > - why do we call pci_wake_from_d3(...false) only!? > > Wouldn't this break WoL after one iteration back and forth, > > due to missing 'true' case? > > The 'true' case is the 'wake = true' one. OK, so it wasn't an explicit pci_wake_from_d3(...true), but the operations done there are the equivalent of it probably. > > - why do we call netif_device_detach() _after_ doing hardware shutdown > > of the network controller? I'd guess this can cause huge issues? > > Someone told me he had rtnl lock issues upon S2D with e100 > > (very similar to my rtnl issues during aborted .suspend), > > and that might possibly be the reason? > > I think you're right, but I'm not a network driver expert. > > Perhaps you can change the ordering and see if that fixes the rtnl issue > (since you're able to reproduce it without my patch, that should be easy to > verify). I'll test this - later. Thanks a lot, Andreas Mohr ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Make e100 suspend handler support PCI cards lacking PM capability @ 2009-06-14 17:20 ` Andreas Mohr 0 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2009-06-14 17:20 UTC (permalink / raw) To: Rafael J. Wysocki; +Cc: e1000-devel, netdev, akpm, linux-kernel, andi Hi, On Sun, Jun 14, 2009 at 07:09:45PM +0200, Rafael J. Wysocki wrote: > On Sunday 14 June 2009, Andreas Mohr wrote: > > Couple questions still: > > - why do we call pci_wake_from_d3(...false) only!? > > Wouldn't this break WoL after one iteration back and forth, > > due to missing 'true' case? > > The 'true' case is the 'wake = true' one. OK, so it wasn't an explicit pci_wake_from_d3(...true), but the operations done there are the equivalent of it probably. > > - why do we call netif_device_detach() _after_ doing hardware shutdown > > of the network controller? I'd guess this can cause huge issues? > > Someone told me he had rtnl lock issues upon S2D with e100 > > (very similar to my rtnl issues during aborted .suspend), > > and that might possibly be the reason? > > I think you're right, but I'm not a network driver expert. > > Perhaps you can change the ordering and see if that fixes the rtnl issue > (since you're able to reproduce it without my patch, that should be easy to > verify). I'll test this - later. Thanks a lot, Andreas Mohr ------------------------------------------------------------------------------ Crystal Reports - New Free Runtime and 30 Day Trial Check out the new simplified licensing option that enables unlimited royalty-free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Make e100 suspend handler support PCI cards lacking PM capability 2009-06-14 17:09 ` Rafael J. Wysocki (?) (?) @ 2009-06-19 8:00 ` Andreas Mohr -1 siblings, 0 replies; 39+ messages in thread From: Andreas Mohr @ 2009-06-19 8:00 UTC (permalink / raw) To: Rafael J. Wysocki; +Cc: andi, akpm, e1000-devel, netdev, linux-kernel Hi, On Sun, Jun 14, 2009 at 07:09:45PM +0200, Rafael J. Wysocki wrote: > On Sunday 14 June 2009, Andreas Mohr wrote: > > - why do we call netif_device_detach() _after_ doing hardware shutdown > > of the network controller? I'd guess this can cause huge issues? > > Someone told me he had rtnl lock issues upon S2D with e100 > > (very similar to my rtnl issues during aborted .suspend), > > and that might possibly be the reason? > > I think you're right, but I'm not a network driver expert. > > Perhaps you can change the ordering and see if that fixes the rtnl issue > (since you're able to reproduce it without my patch, that should be easy to > verify). Well, I just moved netif_device_detach() above netif_running() check, but this didn't fix my network issues in case of a rejecting .suspend handler: after resume when unloading e100, that hangs, and I get tons of rtnl timeouts and locked rtnl mutex. This is most likely because upon e100 unload, a backtrace showed that I was hanging in e100_down -> msleep (somewhere at the very beginning of e100_down), which is most definitely the inlined napi_disable() call there: static inline void napi_disable(struct napi_struct *n) { set_bit(NAPI_STATE_DISABLE, &n->state); while (test_and_set_bit(NAPI_STATE_SCHED, &n->state)) msleep(1); clear_bit(NAPI_STATE_DISABLE, &n->state); } IOW the .suspend seems to keep NAPI layer active, yet due to .suspend failure there's no .resume called, thus card is in an _inoperable_ state and NAPI cannot be processed any further, thus napi_disable() on driver unload locks up. BTW, in include/linux/napi.h, shouldn't napi_disable() make use of napi_synchronize() instead of C&P? (simply move napi_synchronize() above napi_disable() and use it there) Oh wait, there's the CONFIG_SMP complication: napi_synchronize() is implemented for SMP only, whereas napi_disable() checks the same thing _always_. (or is it a BUG that napi_disable() does the same check for non-SMP, too??) Thanks, Andreas Mohr ^ permalink raw reply [flat|nested] 39+ messages in thread
* [PATCH] Net / e100: Fix suspend of devices that cannot be power managed 2009-06-14 16:46 ` Andreas Mohr @ 2009-06-14 19:46 ` Rafael J. Wysocki -1 siblings, 0 replies; 39+ messages in thread From: Rafael J. Wysocki @ 2009-06-14 19:46 UTC (permalink / raw) To: Jeffrey Kirsher; +Cc: andi, akpm, e1000-devel, netdev, linux-kernel From: Rafael J. Wysocki <rjw@sisk.pl> If the adapter is not power-manageable using either ACPI, or the native PCI PM interface, __e100_power_off() returns error code, which causes every attempt to suspend to fail, although it should return 0 in such a case. Fix this problem by ignoring the return value of pci_set_power_state() in __e100_power_off(). Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Acked-by: Andreas Mohr <andi@lisas.de> --- drivers/net/e100.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) Index: linux-2.6/drivers/net/e100.c =================================================================== --- linux-2.6.orig/drivers/net/e100.c +++ linux-2.6/drivers/net/e100.c @@ -2759,12 +2759,13 @@ static void __e100_shutdown(struct pci_d static int __e100_power_off(struct pci_dev *pdev, bool wake) { - if (wake) { + if (wake) return pci_prepare_to_sleep(pdev); - } else { - pci_wake_from_d3(pdev, false); - return pci_set_power_state(pdev, PCI_D3hot); - } + + pci_wake_from_d3(pdev, false); + pci_set_power_state(pdev, PCI_D3hot); + + return 0; } #ifdef CONFIG_PM ^ permalink raw reply [flat|nested] 39+ messages in thread
* [PATCH] Net / e100: Fix suspend of devices that cannot be power managed @ 2009-06-14 19:46 ` Rafael J. Wysocki 0 siblings, 0 replies; 39+ messages in thread From: Rafael J. Wysocki @ 2009-06-14 19:46 UTC (permalink / raw) To: Jeffrey Kirsher; +Cc: e1000-devel, netdev, akpm, linux-kernel, andi From: Rafael J. Wysocki <rjw@sisk.pl> If the adapter is not power-manageable using either ACPI, or the native PCI PM interface, __e100_power_off() returns error code, which causes every attempt to suspend to fail, although it should return 0 in such a case. Fix this problem by ignoring the return value of pci_set_power_state() in __e100_power_off(). Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Acked-by: Andreas Mohr <andi@lisas.de> --- drivers/net/e100.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) Index: linux-2.6/drivers/net/e100.c =================================================================== --- linux-2.6.orig/drivers/net/e100.c +++ linux-2.6/drivers/net/e100.c @@ -2759,12 +2759,13 @@ static void __e100_shutdown(struct pci_d static int __e100_power_off(struct pci_dev *pdev, bool wake) { - if (wake) { + if (wake) return pci_prepare_to_sleep(pdev); - } else { - pci_wake_from_d3(pdev, false); - return pci_set_power_state(pdev, PCI_D3hot); - } + + pci_wake_from_d3(pdev, false); + pci_set_power_state(pdev, PCI_D3hot); + + return 0; } #ifdef CONFIG_PM ------------------------------------------------------------------------------ Crystal Reports - New Free Runtime and 30 Day Trial Check out the new simplified licensing option that enables unlimited royalty-free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects ^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: [PATCH] Net / e100: Fix suspend of devices that cannot be power managed 2009-06-14 19:46 ` Rafael J. Wysocki (?) @ 2009-06-18 2:03 ` David Miller -1 siblings, 0 replies; 39+ messages in thread From: David Miller @ 2009-06-18 2:03 UTC (permalink / raw) To: rjw; +Cc: jeffrey.t.kirsher, andi, akpm, e1000-devel, netdev, linux-kernel From: "Rafael J. Wysocki" <rjw@sisk.pl> Date: Sun, 14 Jun 2009 21:46:46 +0200 > From: Rafael J. Wysocki <rjw@sisk.pl> > > If the adapter is not power-manageable using either ACPI, or the > native PCI PM interface, __e100_power_off() returns error code, which > causes every attempt to suspend to fail, although it should return 0 > in such a case. Fix this problem by ignoring the return value of > pci_set_power_state() in __e100_power_off(). > > Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> > Acked-by: Andreas Mohr <andi@lisas.de> Applied, thanks! ^ permalink raw reply [flat|nested] 39+ messages in thread
end of thread, other threads:[~2009-06-19 8:00 UTC | newest] Thread overview: 39+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2008-12-28 8:01 [GIT]: Networking David Miller 2008-12-28 8:01 ` David Miller 2008-12-29 10:25 ` Andreas Mohr 2008-12-29 10:25 ` Andreas Mohr 2008-12-29 17:17 ` Andrew Morton 2008-12-29 17:17 ` Andrew Morton 2008-12-29 21:09 ` Johannes Berg 2008-12-30 11:05 ` Andreas Mohr 2008-12-29 23:15 ` Jeff Kirsher 2008-12-29 23:15 ` Jeff Kirsher 2008-12-30 12:07 ` Andreas Mohr 2008-12-30 12:07 ` Andreas Mohr 2009-02-28 20:37 ` 2.6.29 e100.c non-MII support status? (Re: [GIT]: Networking) Andreas Mohr 2009-02-28 20:37 ` Andreas Mohr 2009-03-01 10:57 ` Jeff Kirsher 2009-03-01 21:24 ` Andreas Mohr 2009-06-02 21:48 ` [PATCH] Add non-MII PHY support to e100 (Re: 2.6.29 e100.c non-MII support status? (Re: [GIT]: Networking)) Andreas Mohr 2009-06-03 6:01 ` e100 kills S2R on my box, plus network drops dead Andreas Mohr 2009-06-03 6:30 ` Andreas Mohr 2009-06-03 6:30 ` Andreas Mohr 2009-06-13 19:19 ` [PATCH] Make e100 suspend handler support PCI cards lacking PM capability Andreas Mohr 2009-06-13 19:19 ` Andreas Mohr 2009-06-13 22:28 ` Rafael J. Wysocki 2009-06-13 22:45 ` Rafael J. Wysocki 2009-06-13 22:45 ` Rafael J. Wysocki 2009-06-14 12:51 ` Andreas Mohr 2009-06-14 14:06 ` Rafael J. Wysocki 2009-06-14 14:06 ` Rafael J. Wysocki 2009-06-14 16:31 ` Rafael J. Wysocki 2009-06-14 16:46 ` Andreas Mohr 2009-06-14 16:46 ` Andreas Mohr 2009-06-14 17:09 ` Rafael J. Wysocki 2009-06-14 17:09 ` Rafael J. Wysocki 2009-06-14 17:20 ` Andreas Mohr 2009-06-14 17:20 ` Andreas Mohr 2009-06-19 8:00 ` Andreas Mohr 2009-06-14 19:46 ` [PATCH] Net / e100: Fix suspend of devices that cannot be power managed Rafael J. Wysocki 2009-06-14 19:46 ` Rafael J. Wysocki 2009-06-18 2:03 ` David Miller
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.