aboutsummaryrefslogtreecommitdiff
path: root/drivers/net
AgeCommit message (Collapse)Author
2007-12-05[LRO]: fix lro_gen_skb() alignmentAndrew Gallatin
Add a field to the lro_mgr struct so that drivers can specify how much padding is required to align layer 3 headers when a packet is copied into a freshly allocated skb by inet_lro.c:lro_gen_skb(). Without padding, skbs generated by LRO will cause alignment warnings on architectures which require strict alignment (seen on sparc64). Myri10GE is updated to use this field. Signed-off-by: Andrew Gallatin <gallatin@myri.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2007-12-04PHY: Add the phy_device_release device method.Anton Vorontsov
Lately I've got this nice badness on mdio bus removal: Device 'e0103120:06' does not have a release() function, it is broken and must be fixed. ------------[ cut here ]------------ Badness at drivers/base/core.c:107 NIP: c015c1a8 LR: c015c1a8 CTR: c0157488 REGS: c34bdcf0 TRAP: 0700 Not tainted (2.6.23-rc5-g9ebadfbb-dirty) MSR: 00029032 <EE,ME,IR,DR> CR: 24088422 XER: 00000000 ... [c34bdda0] [c015c1a8] device_release+0x78/0x80 (unreliable) [c34bddb0] [c01354cc] kobject_cleanup+0x80/0xbc [c34bddd0] [c01365f0] kref_put+0x54/0x6c [c34bdde0] [c013543c] kobject_put+0x24/0x34 [c34bddf0] [c015c384] put_device+0x1c/0x2c [c34bde00] [c0180e84] mdiobus_unregister+0x2c/0x58 ... Though actually there is nothing broken, it just device subsystem core expects another "pattern" of resource managment. This patch implement phy device's release function, thus we're getting rid of this badness. Also small hidden bug fixed, hope none other introduced. ;-) Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Acked-by: Andy Fleming <afleming@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-04gianfar: fix compile warningGrant Likely
Eliminate an uninitialized variable warning. The code is correct, but a pointer to the automatic variable 'addr' is passed to dma_alloc_coherent. Since addr has never been initialized, and the compiler doesn't know what dma_alloc_coherent will do with it, it complains. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-04pasemi_mac: Fix reuse of free'd skbOlof Johansson
Turns out we're freeing the skb when we detect CRC error, but we're not clearing out info->skb. We could either clear it and have the stack reallocate it, or just leave it and the rx ring refill code will reuse the one that was allocated. Reusing a freed skb obviously caused some nasty crashes of various kind, as reported by Brent Baude and David Woodhouse. Signed-off-by: Olof Johansson <olof@lixom.net> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-04SMC911X: Fix using of dereferenced skb after netif_rxWang Chen
Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-04sky2: recovery deadlock fixStephen Hemminger
Prevent deadlock in sky2 recovery logic. sky2_down calls napi_synchronize which gets stuck if napi was already disabled. Fix by rearranging slightly and not calling napi_disable until after both ports are stopped. The napi_disable probably is being overly paranoid, but it is safe now. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-04Fix memory corruption in fec_mpc52xxJon Smirl
The mpc5200 fec driver is corrupting memory. This patch fixes two bugs where the wrong skb was being referenced. Signed-off-by: Jon Smirl <jonsmirl@gmail.com> Acked-by: Domen Puncer <domen.puncer@telargo.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-04Don't claim to do IPv6 checksum offloadDavid Woodhouse
Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-04cxgb - revert file mode changes.Divy Le Ray
revert inavertant file mode changes Signed-off-by: Divy Le Ray <divy@chelsio.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-03Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/net-2.6Linus Torvalds
* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/net-2.6: (27 commits) [INET]: Fix inet_diag dead-lock regression [NETNS]: Fix /proc/net breakage [TEXTSEARCH]: Do not allow zero length patterns in the textsearch infrastructure [NETFILTER]: fix forgotten module release in xt_CONNMARK and xt_CONNSECMARK [NETFILTER]: xt_TCPMSS: remove network triggerable WARN_ON [DECNET]: dn_nl_deladdr() almost always returns no error [IPV6]: Restore IPv6 when MTU is big enough [RXRPC]: Add missing select on CRYPTO mac80211: rate limit wep decrypt failed messages rfkill: fix double-mutex-locking mac80211: drop unencrypted frames if encryption is expected mac80211: Fix behavior of ieee80211_open and ieee80211_close ieee80211: fix unaligned access in ieee80211_copy_snap mac80211: free ifsta->extra_ie and clear IEEE80211_STA_PRIVACY_INVOKED SCTP: Fix build issues with SCTP AUTH. SCTP: Fix chunk acceptance when no authenticated chunks were listed. SCTP: Fix the supported extensions paramter SCTP: Fix SCTP-AUTH to correctly add HMACS paramter. SCTP: Fix the number of HB transmissions. [TCP] illinois: Incorrect beta usage ...
2007-12-01LIB82596: correct data types for hardware addressesThomas Bogendoerfer
dma_addr_t is 64bit wide on some architectures (for example 64bit MIPS), so it's not a good idea to use it for 32bit wide addresses in descriptors. Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01via-velocity: don't oops on MTU change (resend)Stephen Hemminger
The VIA veloicty driver needs the following to allow changing MTU when down. The buffer size needs to be computed when device is brought up, not when device is initialized. This also fixes a bug where the buffer size was computed differently on change_mtu versus initial setting. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01Stop phy code from returning success to unknown ioctls.David Woodhouse
This kind of sucks, and prevents the Fedora installer from using the device for network installs... [root@efika phy]# iwconfig eth0 Warning: Driver for device eth0 has been compiled with an ancient version of Wireless Extension, while this program support version 11 and later. Some things may be broken... eth0 ESSID:off/any Nickname:"" NWID:0 Channel:0 Access Point: 00:00:BF:81:14:E0 Bit Rate:-1.08206e+06 kb/s Sensitivity=0/0 RTS thr:off Fragment thr:off Encryption key:<too big> Power Management:off Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01SET_NETDEV_DEV() in fec_mpc52xx.cDavid Woodhouse
This helps to allow the Fedora installer to use the built-in Ethernet on the Efika for a network install. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01net: smc911x: only enable for mpr2 on sh.Paul Mundt
The smc911x.h is a bit of a mess, not supporting any sort of generic configuration. For the moment only ARCH_PXA and SH_MAGIC_PANEL_R2 have suitable definitions, so we reflect this in the Kconfig also. While there are other SH boards that will likely turn this on in the 2.6.25 time frame, it's not worth trying to stub around at the moment. Fixes up the allmodconfig build, as noted by akpm. Signed-off-by: Paul Mundt <lethal@linux-sh.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01e1000: Fix NAPI state bug when Rx completeAuke Kok
Don't exit polling when we have not yet used our budget, this causes the NAPI system to end up with a messed up poll list. Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01sky2: turn of dynamic Tx watermark workaround (FE+ only)Stephen Hemminger
Add workaround for issues FE+ (A0) transmit watermark. This is copied verbatim from vendor driver sk98lin (10.22.4.3). Don't have that chip version and no more information seems to be available. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01sky2: don't use AER routinesStephen Hemminger
Using PCIE advanced error recovery stuff creates more user problems than it's worth. The AER stuff depends on MMCONFIG and in many configurations it just doesn't work. Plus it doesn't add any real functionality to the driver. The sky2 driver handles its own errors fine as is. This reverts 555382cbfc6d2187b53888190755e56f52308cd6 Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01sky2: revert to access PCI config via device spaceStephen Hemminger
Using the hardware window into PCI config space is more reliable and smaller/faster than using the pci_config routines. It avoids issues with MMCONFIG etc. Reverts: 167f53d05fccb47b6eeadac7f6705b3f2f042d03 Please apply for 2.6.24 Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01cxgb - fix statsDivy Le Ray
Fix MAC stats accounting. Fix get_stats. Signed-off-by: Divy Le Ray <divy@chelsio.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01cxgb - fix NAPIDivy Le Ray
netif_rx_complete() should be called only when work_done < budget. Signed-off-by: Divy Le ray <divy@chelsio.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01cxgb - fix T2 GSODivy Le Ray
The patch ensures that a GSO skb has enough headroom to push an encapsulating cpl_tx_pkt_lso header. Signed-off-by: Divy Le Ray <divy@chelsio.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01ucc_geth: handle passing of RX-only and TX-only internal delay PHY ↵Kim Phillips
connection type parameters Extend the RGMII-Internal Delay specification case to include TX-only and RX-only variants. Signed-off-by: Kim Phillips <kim.phillips@freescale.com> Tested-by: Anton Vorontsov <avorontsov@ru.mvista.com> Acked-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01phylib: marvell: add support for TX-only and RX-only Internal DelayKim Phillips
Previously, Internal Delay specification implied the delay be applied to both TX and RX. This patch allows for separate TX/RX-only internal delay specification. Signed-off-by: Kim Phillips <kim.phillips@freescale.com> Tested-by: Anton Vorontsov <avorontsov@ru.mvista.com> Acked-by: Li Yang <leoli@freescale.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01skge: MTU changing fixStephen Hemminger
The code to change MTU doesn't correctly handle all the chip variations and requirements for restarting. On Genesis chips changing MTU would just cause receiver to hang. Use a simpler approach of just taking link down/up if needed. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01skge: serial mode register valuesStephen Hemminger
For compatiablity with sk98lin, make sure and set same values in serial mode register. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01skge version 1.13Stephen Hemminger
Version for 2.6.24 Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01skge: increase TX threshold for JumboStephen Hemminger
Need to increase TX threshold when doing Jumbo frames on dual port board to avoid underruns. (Code from sk98lin). Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01skge: fiber link up/down fixStephen Hemminger
The driver would not work over fibre if other end when down then came back up (would require reloading driver). The correct way to manage the link the same way for both TP and fibre. Resloves problem described in: http://lkml.org/lkml/2007/11/6/395 Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01skge: retry on MAC shutdownStephen Hemminger
Make sure and retry when shutting down the MAC. This code is copied from sk98lin driver. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01skge: receive flush logicStephen Hemminger
Receive FIFO overrun is not catastrophic condition, so don't flush when it happens. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01skge: FIFO Ram calculation errorStephen Hemminger
The calculation of usable FIFO RAM is wrong in the skge driver. First, is doesn't take into account the reserved area on the original SysKonnect Genesis boards. Second it has an off-by-one error because hw->ports is either 1 or 2. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01S2io: Fixed the case when the card initialization fails on mtu changeSreenivasa Honnur
Fix the case when the card initialization fails on a mtu change and then close is called (due to ifdown), which frees non existent rx buffers. - Returning appropriate error codes in init_nic function. - In s2io_close function s2io_card_down is called only when device is up. - In s2io_change_mtu function return value of s2io_card_up function is checked and returned if it failed. Signed-off-by: Surjit Reang <surjit.reang@neterion.com> Signed-off-by: Sreenivasa Honnur <sreenivasa.honnur@neterion.com> Signed-off-by: Ramkrishna Vepa <ram.vepa@neterion.com> Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-12-01Merge branch 'fixes-jgarzik' of ↵Jeff Garzik
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6 into upstream-fixes
2007-12-01Merge branch 'master' into upstream-fixesJeff Garzik
2007-11-29iwlwifi 4965 Fix race conditional panic.Joonwoo Park
Signed-off-by: Joonwoo Park <joonwpark81@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-11-29iwlwifi 3945 Fix race conditional panic.Joonwoo Park
Signed-off-by: Joonwoo Park <joonwpark81@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-11-29iwlwifi: fix iwl_mac_add_interface handlerTomas Winkler
This patch fixes iwl_mac_add_interface. 1. Currently only one interface is supported, instead of silently retuning 0 now it returns -EOPNOTSUPP (By Johannes Berg) 2. It enables changing mac address from user space (By Ian Schram) Signed-off-by: Tomas Winkler <tomas@localhost.localdomain> Cc: Zhu Yi <yi.zhu@intel.com> Cc: Reinette Chatre <reinette.chatre@intel.com> Cc: linux-wireless <linux-wireless@vger.kernel.org Cc: Ian Schram <ischram@telenet.be> Cc: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-11-29libertas: let more than one MAC event throughHolger Schurig
lbs_mac_event_disconnected() was called once and then never again upon a hardware MAC event. The reason was that the driver didn't clean the correct bit in the interrupt cause register of the chip. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-11-29libertas: Don't set NETIF_F_IPV6_CSUM in dev->featuresDavid Woodhouse
I'm not sure why it was doing this, and I'm not sure I _want_ to know why. But calling it NETIF_F_DYNALLOC doesn't change the fact that the kernel believes it to be NETIF_F_IPV6_CSUM, and that IPv6 communication is hence buggered. Signed-off-by: David Woodhouse <dwmw2@infradead.org> Acked-by: Dan Williams <dcbw@redhat.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-11-29drivers/net/wireless: Add missing "space"Joe Perches
Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-11-29b43/b43legacy: fix left-over URLs and ifdefsStefano Brivio
Fix some left-over URLs and ifdefs in b43 and b43legacy drivers. Signed-off-by: Stefano Brivio <stefano.brivio@polimi.it> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-11-29iwlwifi: fix possible NULL dereference in iwl_set_rate()Saleem Abdulrasool
Signed-off-by: Saleem Abdulrasool <compnerd@compnerd.org> Signed-off-by: Zhu Yi <yi.zhu@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
2007-11-29[SUNGEM]: Fix NAPI regression with reset workJohannes Berg
sungem's gem_reset_task() will unconditionally try to disable NAPI even when it's called while the interface is not operating and hence the NAPI struct isn't enabled. Make napi_disable() depend on gp->running. Also removes a superfluous test of gp->running in the same function. Signed-off-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2007-11-27Merge branch 'for-linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: IB/iser: Add missing counter increment in iser_data_buf_aligned_len() IB/ehca: Fix static rate regression mlx4_core: Fix state check in mlx4_qp_modify() IB/ipath: Normalize error return codes for posting work requests IB/ipath: Fix offset returned to ibv_modify_srq() IB/ipath: Fix error path in QP creation IB/ipath: Fix offset returned to ibv_resize_cq()
2007-11-26Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/net-2.6Linus Torvalds
* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/net-2.6: (41 commits) [XFRM]: Fix leak of expired xfrm_states [ATM]: [he] initialize lock and tasklet earlier [IPV4]: Remove bogus ifdef mess in arp_process [SKBUFF]: Free old skb properly in skb_morph [IPV4]: Fix memory leak in inet_hashtables.h when NUMA is on [IPSEC]: Temporarily remove locks around copying of non-atomic fields [TCP] MTUprobe: Cleanup send queue check (no need to loop) [TCP]: MTUprobe: receiver window & data available checks fixed [MAINTAINERS]: tlan list is subscribers-only [SUNRPC]: Remove SPIN_LOCK_UNLOCKED [SUNRPC]: Make xprtsock.c:xs_setup_{udp,tcp}() static [PFKEY]: Sending an SADB_GET responds with an SADB_GET [IRDA]: Compilation for CONFIG_INET=n case [IPVS]: Fix compiler warning about unused register_ip_vs_protocol [ARP]: Fix arp reply when sender ip 0 [IPV6] TCPMD5: Fix deleting key operation. [IPV6] TCPMD5: Check return value of tcp_alloc_md5sig_pool(). [IPV4] TCPMD5: Use memmove() instead of memcpy() because we have overlaps. [IPV4] TCPMD5: Omit redundant NULL check for kfree() argument. ieee80211: Stop net_ratelimit/IEEE80211_DEBUG_DROP log pollution ...
2007-11-26Merge branch 'for-linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/blackfin-2.6: (56 commits) Blackfin arch: fix bug when enable uart1 with uart0 disabled => no initial console Blackfin arch: split apart dump_bfin_regs and merge/remove show_regs from process.c, which was largely duplicated Blackfin arch: use common __INIT/__FINIT defines rather than setting the .section ourselves to .init.text Blackfin arch: fix bug when sending signals with the wrong PC, cause gdb get confused Blackfin arch: Ensure we printk out strings with the proper loglevel Blackfin arch: Need to specify ax with the .init.text section, Blackfin arch: Update Kconfig to latest Blackfin silicon datasheets Blackfin arch: update defconfig files Blackfin arch: Fix typo, and add ENDPROC - no functional changes Blackfin arch: convert READY to DMA_READY as it causes build errors in common sound code otherwise Blackfin arch: add defines for the on-chip L1 ROM of BF54x Blackfin arch: cplb and map header file cleanup Blackfin arch: cleanup the cplb declares Blackfin arch: fix broken on BF52x, remove silly checks on processors for L1_SCRATCH defines Blackfin arch: add support for working around anomaly 05000312 Blackfin arch: cleanup BF54x header file and add BF547 definition Blackfin arch: fix building for BF542 processors which only have 1 TWI Blackfin arch: rename _return_from_exception to _bfin_return_from_exception and export it Blackfin arch: move EXPORT_SYMBOL() to C files where the symbol is actually defined Blackfin arch: fix bug NOR Flash MTD mount fail ...
2007-11-26plip: fix parport_register_device name parameterMikulas Patocka
Plip passes a string "name" that is allocated on stack to parport_register_device. parport_register_device holds the pointer to "name" and when the registering function exits, it points nowhere. On some machine, this bug causes bad names to appear in /proc, such as /proc/sys/dev/parport/parport0/devices/T^/�X^/�, on others, the plip proc node is completely missing. The patch also fixes documentation to note this requirement. Signed-off-by: Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-11-26plip: use netif_rx_ni() for packet receiveMikulas Patocka
netif_rx is meant to be called from interrupts because it doesn't wake up ksoftirqd. For calling from outside interrupts, netif_rx_ni exists. This fixes plip to use netif_rx_ni. It fixes the infamous error "NOHZ: local_softirq_panding 08" that happens on some machines with NOHZ and plip --- it is caused by the fact that softirq is pending and ksoftirqd is sleeping. Signed-off-by: Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-11-23dmfe: checkpatch fix (add whitespace)Jeff Garzik
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>