aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
Commit message (Collapse)AuthorAge
* [PATCH] drivers/net/tokenring/: cleanupsAdrian Bunk2005-06-26
| | | | | | | | This patch contains the follwing cleanups: - make needlessly global code static - remove obsolete Emacs settings Signed-off-by: Adrian Bunk <bunk@stusta.de>
* [PATCH] pcnet_cs.c: IRQ handler optimizationAndreas Mohr2005-06-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During some performance diagnostics I stumbled on this slightly wasteful code in pcnet_cs.c which I made the patch included at the bottom for (two minor comment fixes included). Improvement: instead of *always* calculating lea 0x2c0(%edx),%ebx and then additionally doing the mov %edx,0xc0(%ebx) addition *if we need it*, we now do the *whole* calculation of mov %edx,0x380(%ebx) *only* if we need it. This even manages to save us a whole 16-byte alignment buffer loss in this compilation case. Result: slightly improves IRQ handler performance in both shared and non-shared IRQ case, which should make my rusty P3/700 a slight bit happier. Thank you for your support, Andreas Mohr old asm result (using gcc 3.3.5): 000015a0 <ei_irq_wrapper>: 15a0: 55 push %ebp 15a1: 89 e5 mov %esp,%ebp 15a3: 53 push %ebx 15a4: 8d 9a c0 02 00 00 lea 0x2c0(%edx),%ebx 15aa: e8 fc ff ff ff call 15ab <ei_irq_wrapper+0xb> 15af: 83 f8 01 cmp $0x1,%eax 15b2: 74 03 je 15b7 <ei_irq_wrapper+0x17> 15b4: 5b pop %ebx 15b5: 5d pop %ebp 15b6: c3 ret 15b7: 31 d2 xor %edx,%edx 15b9: 89 93 c0 00 00 00 mov %edx,0xc0(%ebx) 15bf: eb f3 jmp 15b4 <ei_irq_wrapper+0x14> 15c1: eb 0d jmp 15d0 <ei_watchdog> 15c3: 90 nop 15c4: 90 nop 15c5: 90 nop 15c6: 90 nop 15c7: 90 nop 15c8: 90 nop 15c9: 90 nop 15ca: 90 nop 15cb: 90 nop 15cc: 90 nop 15cd: 90 nop 15ce: 90 nop 15cf: 90 nop 000015d0 <ei_watchdog>: new asm result: 000015a0 <ei_irq_wrapper>: 15a0: 55 push %ebp 15a1: 89 e5 mov %esp,%ebp 15a3: 53 push %ebx 15a4: 89 d3 mov %edx,%ebx 15a6: e8 fc ff ff ff call 15a7 <ei_irq_wrapper+0x7> 15ab: 83 f8 01 cmp $0x1,%eax 15ae: 74 03 je 15b3 <ei_irq_wrapper+0x13> 15b0: 5b pop %ebx 15b1: 5d pop %ebp 15b2: c3 ret 15b3: 31 d2 xor %edx,%edx 15b5: 89 93 80 03 00 00 mov %edx,0x380(%ebx) 15bb: eb f3 jmp 15b0 <ei_irq_wrapper+0x10> 15bd: 8d 76 00 lea 0x0(%esi),%esi 000015c0 <ei_watchdog>: Signed-off-by: Andrew Morton <akpm@osdl.org>
* drivers/net/: Use the DMA_{64,32}BIT_MASK constantsDomen Puncer2005-06-26
| | | | | | | | | | | | | Use the DMA_{64,32}BIT_MASK constants from dma-mapping.h when calling pci_set_dma_mask() or pci_set_consistent_dma_mask() This patch includes dma-mapping.h explicitly because it caused errors on some architectures otherwise. See http://marc.theaimsgroup.com/?t=108001993000001&r=1&w=2 for details Signed-off-by: Tobias Klauser <tklauser@nuerscht.ch> Signed-off-by: Domen Puncer <domen@coderock.org>
* [PATCH] arlan: module parameter fixesMagnus Damm2005-06-26
| | | | | | | | | | | | | | Make sure the code compiles with and without ARLAN_ENTRY_EXIT_DEBUGGING. Only provide parameter descriptions when parameters are defined. Remove "arlan_"-prefix to shape up built-in parameter names: arlan.arlan_debug -> arlan.debug arlan.arlan_EEPROM_bad -> arlan.EEPROM_bad arlan.arlan_entry_and_exit_debug -> arlan.entry_and_exit_debug arlan.arlan_entry_debug -> arlan.entry_debug arlan.arlan_exit_debug -> arlan.exit_debug Signed-off-by: Magnus Damm <damm@opensource.se>
* [PATCH] net/sis900: Use the DMA_32BIT_MASK constantTobias Klauser2005-06-26
| | | | | | | | | | | Use the DMA_32BIT_MASK constant from dma-mapping.h when calling pci_set_dma_mask() or pci_set_consistent_dma_mask() instead of custom macros. This patch includes dma-mapping.h explicitly because it caused errors on some architectures otherwise. See http://marc.theaimsgroup.com/?t=108001993000001&r=1&w=2 for details Signed-off-by: Tobias Klauser <tklauser@nuerscht.ch>
* Merge /spare/repo/netdev-2.6/ branch 'register-netdev'Jeff Garzik2005-06-26
|\
| * Merge /spare/repo/linux-2.6/Jeff Garzik2005-06-26
| |\
| * | [netdrvr] Fix register_netdev() races in older ISA net drivers2005-05-12
| | |
* | | 8139cp: safer spin loop for get_statisticsStephen Hemminger2005-06-26
| | | | | | | | | | | | | | | | | | | | | | | | The spin loop in 8139cp is limited to 100 iterations when pulling hardware stats. There is no allowance for processor speed so on a fast machine, the stats may not be available that fast. Also, if the board doesn't return soon enough make sure turn the address back off to prevent later updates when memory has gone away.
* | | gianfar: Update Marvell PHY nameKumar Gala2005-06-26
| | | | | | | | | | | | | | | | | | | | | This patch updates the name identifier to list both of the Marvell PHYs that are supported. Signed-off-by: Kumar Gala <kumar.gala@freescale.com>
* | | bonding: xor/802.3ad improved slave hashJay Vosburgh2005-06-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for alternate slave selection algorithms to bonding balance-xor and 802.3ad modes. Default mode (what we have now: xor of MAC addresses) is "layer2", new choice is "layer3+4", using IP and port information for hashing to select peer. Originally submitted by Jason Gabler for balance-xor mode; modified by Jay Vosburgh to additionally support 802.3ad mode. Jason's original comment is as follows: The attached patch to the Linux Etherchannel Bonding driver modifies the driver's "balance-xor" mode as follows: - alternate hashing policy support for mode 2 * Added kernel parameter "xmit_policy" to allow the specification of different hashing policies for mode 2. The original mode 2 policy is the default, now found in xmit_hash_policy_layer2(). * Added xmit_hash_policy_layer34() This patch was inspired by hashing policies implemented by Cisco, Foundry and IBM, which are explained in Foundry documentation found at: http://www.foundrynet.com/services/documentation/sribcg/Trunking.html#112750 Signed-off-by: Jason Gabler <jygabler@lbl.gov> Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
* | | bonding: gratuitous ARPJay Vosburgh2005-06-26
| | | | | | | | | | | | | | | | | | | | | | | | Add support for generating gratuitous ARPs in bonding active-backup mode when failovers occur. Includes support for VLAN tagging the ARPs as needed. Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
* | | Tulip fixes for Cobalt Qube/RaQRalf Baechle2005-06-26
| | |
* | | Merge upstream (approx. 2.6.12-git8) into 'janitor' branch of netdev-2.6.Jeff Garzik2005-06-26
|\ \ \ | | |/ | |/|
| * | Merge Christoph's freeze cleanup patchLinus Torvalds2005-06-25
| |\ \
| | * | [PATCH] Cleanup patch for process freezingChristoph Lameter2005-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Establish a simple API for process freezing defined in linux/include/sched.h: frozen(process) Check for frozen process freezing(process) Check if a process is being frozen freeze(process) Tell a process to freeze (go to refrigerator) thaw_process(process) Restart process frozen_process(process) Process is frozen now 2. Remove all references to PF_FREEZE and PF_FROZEN from all kernel sources except sched.h 3. Fix numerous locations where try_to_freeze is manually done by a driver 4. Remove the argument that is no longer necessary from two function calls. 5. Some whitespace cleanup 6. Clear potential race in refrigerator (provides an open window of PF_FREEZE cleared before setting PF_FROZEN, recalc_sigpending does not check PF_FROZEN). This patch does not address the problem of freeze_processes() violating the rule that a task may only modify its own flags by setting PF_FREEZE. This is not clean in an SMP environment. freeze(process) is therefore not SMP safe! Signed-off-by: Christoph Lameter <christoph@lameter.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * | | [PATCH] Remove duplicate file in Documentation/networking ↵Tobias Klauser2005-06-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (drivers_net_wan_Kconfig) wanpipe.txt and wan-router.txt in Documentation/networking contain the exact same information (diff between the two shows no drivers/net/wan/Kconfig. Signed-off-by: Tobias Klauser <tklauser@nuerscht.ch> Signed-off-by: Domen Puncer <domen@coderock.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * | | [TG3]: Update driver version and reldate.David S. Miller2005-06-24
| | | | | | | | | | | | | | | | Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | [TG3]: Refinements to new locking strategy.Michael Chan2005-06-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Move tp->irq_sync = 0 to before the interrupt mailbox IO in tg3_enable_ints() so that the interrupt handler will always see irq_sync == 0 when interrupts are enabled. 2. Remove the tg3_enable_ints() call in tg3_reset_hw(). Interrupts are always enabled explicitly or through tg3_netif_start(). This is to prevent interrupts being enabled while poll is disabled. 3. Update trans_start with jiffies in tg3_netif_stop() to prevent false NETDEV WATCHDOG. 4. Pass in the proper irq_sync parameter to tg3_full_lock() depending on netif_running() in some of the ethtool set calls. Signed-off-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | [TG3]: Eliminate all hw IRQ handler spinlocks.David S. Miller2005-06-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move all driver spinlocks to be taken at sw IRQ context only. This fixes the skb_copy() we were doing with hw IRQs disabled (which is illegal and triggers a BUG() with HIGHMEM enabled). It also simplifies the locking all over the driver tremendously. We accomplish this feat by creating a special sequence to synchronize with the hw IRQ handler using a binary state and synchronize_irq(). This idea is from Herbert Xu. Thanks to Michael Chan for helping to track down all of the race conditions in initial versions of this code. Signed-off-by: David S. Miller <davem@davemloft.net>
| * | | [TG3]: Fix missing memory barriers and SD_STATUS_UPDATED bit clearing.David S. Miller2005-06-24
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There must be a rmb() between reading the status block tag and calling tg3_has_work(). This was missing in tg3_mis() and tg3_interrupt_tagged(). tg3_poll() got it right. Also, SD_STATUS_UPDATED must be cleared in the status block right before we call tg3_has_work(). Only tg3_poll() got this wrong. Based upon patches and commentary from Grant Grundler and Michael Chan. Signed-off-by: David S. Miller <davem@davemloft.net>
| * | [SLIP]: Simplify sl_free_bufs()Jesper Juhl2005-06-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can avoid assignments to the local variable 'tmp' and actually get rid of tmp alltogether in sl_free_bufs(). This patch does that. This is safe since both kfree() and slhc_free() handles NULL pointers gracefully. Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | [PATCH] Convert users to tty_unregister_ldisc()Alexey Dobriyan2005-06-23
| | | | | | | | | | | | | | | | | | | | | | | | tty_register_ldisc(N_FOO, NULL) => tty_unregister_ldisc(N_FOO) Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * | Merge 'misc-fixes' branch of ↵Linus Torvalds2005-06-23
| |\ \ | | | | | | | | | | | | master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6
| | * | e1000: fix spinlock bugMitch Williams2005-06-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes an obvious and nasty bug where we could exit the transmit routine while holding tx_lock. Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
| * | | [LTPC]: Replace schedule_timeout() with ssleep()/msleep()Nishanth Aravamudan2005-06-23
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use ssleep() / msleep() [as appropriate] instead of schedule_timeout() to guarantee the task delays as expected. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Acked-by: Arnaldo Carvalho de Melo <acme@conectiva.com.br> Signed-off-by: Maximilian Attems <janitor@sternwelten.at> Signed-off-by: Domen Puncer <domen@coderock.org> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | [PATCH] m32r: Remove include/asm-m32r/m32102peri.hHirokazu Takata2005-06-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch removes an obsolete header file include/asm-m32r/m32102peri.h. In this header, there are some undesirable single character types, like V. And the header is almost no longer used. Signed-off-by: Hayato Fujiwara <fujiwara@linux-m32r.org> Signed-off-by: Hirokazu Takata <takata@linux-m32r.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * | [PATCH] 3c59x: remove superfluous vortex_debug test from boomerang_start_xmit()John W. Linville2005-06-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | Remove the superfluous test of "if (vortex_debug > 3)" inside the "if (vortex_debug > 6)" clause early in boomerang_start_xmit. Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * | [PATCH] class: convert drivers/* to use the new class api instead of ↵gregkh@suse.de2005-06-20
| | | | | | | | | | | | | | | | | | class_simple Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
| * | Manual merge of ↵Linus Torvalds2005-06-18
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | rsync://rsync.kernel.org/pub/scm/linux/kernel/git/jgarzik/netdev-2.6.git This is a fixed-up version of the broken "upstream-2.6.13" branch, where I re-did the manual merge of drivers/net/r8169.c by hand, and made sure the history is all good.
| | * \ Automatic merge of /spare/repo/netdev-2.6 branch skge2005-06-04
| | |\ \
| | | * | [PATCH] skge 64bit portabilityAl Viro2005-05-15
| | | | | | | | | | | | | | | | | | | | | | | | | ptrdiff_t is %td, not %d Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
| | | * | [PATCH] skge missing includeAl Viro2005-05-15
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
| | | * | [netdrvr] new driver skge, for SysKonnect cardsStephen Hemminger2005-05-12
| | | |/
| | * | Automatic merge of /spare/repo/netdev-2.6 branch starfire2005-06-04
| | |\ \
| | | * | [netdrvr starfire] Add GPL'd firmware, remove compat codeJeff Garzik2005-05-12
| | | |/ | | | | | | | | | | | | | | | | Contributed by Ion Badulescu <ionut@badula.org>, further fixed up by me.
| | * | Automatic merge of /spare/repo/netdev-2.6 branch smc91x2005-06-04
| | |\ \
| | | * | [PATCH] smc91x: more tweaks to help with RX overrunsNicolas Pitre2005-05-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Nicolas Pitre <nico@cam.org> Index: linux-2.6/drivers/net/smc91x.c ===================================================================
| | | * | [PATCH] smc91x: improve diagnostic infoNicolas Pitre2005-05-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... and remove duplicate status defines. Signed-off-by: Nicolas Pitre <nico@cam.org> Index: linux-2.6/drivers/net/smc91x.c ===================================================================
| | | * | [PATCH] smc91x warning fixNicolas Pitre2005-05-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A few IO addr type conversions were missing. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
| | | * | [PATCH] smc91x addr config checkNicolas Pitre2005-05-12
| | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The PAGE_SIZE mask is indeed confusing. Use the exact mask for this context which has nothing to do with memory pages at all. Also cast to int since the value to compare with is an int. Signed-off-by: Nicolas Pitre <nico@cam.org> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
| | * | Automatic merge of /spare/repo/netdev-2.6 branch remove-drivers2005-06-04
| | |\ \
| | | * | [PATCH] remove two obsolete net driversAdrian Bunk2005-05-12
| | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The options FMV18X and SK_G16 do depend on the non-available CONFIG_OBSOLETE even in kernel 2.4 - IOW, the last time it was able to select them was in kernel 2.2 (or even before). Since it seems noone misses these drivers, this patch removes them. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
| | * | Automatic merge of /spare/repo/netdev-2.6 branch iff-running2005-06-04
| | |\ \
| | | * | [netdrvrs] Use netif_carrier_* instead of IFF_RUNNING2005-05-12
| | | |/
| | * | Automatic merge of /spare/repo/netdev-2.6 branch viro2005-06-04
| | |\ \
| | | * | [PATCH] pcnet_cs cleanupAl Viro2005-05-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | killed abuse of ->rmem_end Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
| | | * | [PATCH] etherh iomem annotationsAl Viro2005-05-15
| | | |/ | | | | | | | | | | | | | | | | the usual echo Signed-off-by: Al Viro <viro@parcelfarce.linux.theplanet.co.uk>
| | * | Automatic merge of /spare/repo/netdev-2.6 branch r81692005-06-04
| | |\ \
| | | * \ Automatic merge of rsync://www.fr.zoreil.com/linux-2.6.git branch HEAD2005-05-27
| | | |\ \