netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] 2.4, 2.6 patchset for fealnx.c
@ 2004-04-05 19:18 Denis Vlasenko
  2004-04-07 18:19 ` Denis Vlasenko
  2004-04-13 18:32 ` Jeff Garzik
  0 siblings, 2 replies; 3+ messages in thread
From: Denis Vlasenko @ 2004-04-05 19:18 UTC (permalink / raw)
  To: Jeff Garzik, Francois Romieu, andreas; +Cc: netdev, Denis Vlasenko

[-- Attachment #1: Type: text/plain, Size: 1954 bytes --]

I almost emptied my TODO. Hurray ;)

2.4 patches are stress-tested. As before, I used UDP flood
in extremely memory constrained box (kernel OOM killed
several processes while I ran test). Looks ok.

2.6.5 kernel have console-related slab corruption issues
on test machine, can't stress-test patches. Compile and boot
tested only. Pings work.

24/*
    patches against 2.4.25
    
26/*
    patches against 2.6.5

fealnx.0.diff
    replace dev->base_addr with ioaddr
    2.4 only: sync with 2.6

fealnx.1.diff
    replace magic constants with enums

fealnx.2.diff
    add 'static'
    fix wrapped comment

fealnx.3.diff
    fix pointer substraction bug

fealnx.4.diff
    stop doing stop_nic_rx()/writel(np->crvalue, ioaddr+TCRRCR)
    in rest_rx_descriptors(), this can inadvertently (re)enable
    tx and/or rx.

fealnx.5.diff
    introduce stop_nic_rxtx(), use it where makes sense

fealnx.6.diff
    Francois' fixes for low memory handling
    remove free_one_rx_descriptor(), not used anymore

fealnx.7.diff
    Garzik fix (AFAIR): add locking to tx_timeout

fealnx.8.diff
    Move reset code from tx_timeout into two separate routines:
    reset_and_disable_rxtx() and enable_rxtx()
    New function reset_tx_descriptors(): clean up tx ring
    after tx_timeout. tx_timeout now does:
	reset_and_disable_rxtx()
	reset_tx_descriptors()
	enable_rxtx()
	netif_wake_queue()
    Absense of netif_wake_queue() call was probably the cause of
    tx_timeout() stalling all future tx.
    Add reset timer, fire it 1/2 sec after 'Too much work in interrupt'
    It cleans up rx ring and resets device a-la tx_timeout()
    Remove stop_nic_tx(), not used anymore

fealnx.9.diff
    set_rx_mode() can be called by core code, needs locking.
    __set_rx_mode() is a 'dont lock' variant

fealnx.10.diff
    replace local delay functions with udelay

fealnx.11.diff
    beautify some code a bit
    make driver coding style uniform
    fix bug in dead code
--
vda



[-- Attachment #2: fealnx.tar.gz --]
[-- Type: application/x-tgz, Size: 17519 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2004-04-13 18:32 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-04-05 19:18 [PATCH] 2.4, 2.6 patchset for fealnx.c Denis Vlasenko
2004-04-07 18:19 ` Denis Vlasenko
2004-04-13 18:32 ` Jeff Garzik

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).