This is a note to let you know that I've just added the patch titled
via-rhine: Fix bugs in NAPI support.
to the 3.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
via-rhine-fix-bugs-in-napi-support.patch
and it can be found in the queue-3.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.
>From 31de82cb7cb2396ffbe0d5a2879b6c381ad4e3ff Mon Sep 17 00:00:00 2001
From: "David S. Miller" <[email protected]>
Date: Tue, 29 Jan 2013 22:58:04 -0500
Subject: via-rhine: Fix bugs in NAPI support.
From: "David S. Miller" <[email protected]>
[ Upstream commit 559bcac35facfed49ab4f408e162971612dcfdf3 ]
1) rhine_tx() should use dev_kfree_skb() not dev_kfree_skb_irq()
2) rhine_slow_event_task's NAPI triggering logic is racey, it
should just hit the interrupt mask register. This is the
same as commit 7dbb491878a2c51d372a8890fa45a8ff80358af1
("r8169: avoid NAPI scheduling delay.") made to fix the same
problem in the r8169 driver. From Francois Romieu.
Reported-by: Jamie Gloudon <[email protected]>
Tested-by: Jamie Gloudon <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
drivers/net/ethernet/via/via-rhine.c | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
--- a/drivers/net/ethernet/via/via-rhine.c
+++ b/drivers/net/ethernet/via/via-rhine.c
@@ -1802,7 +1802,7 @@ static void rhine_tx(struct net_device *
rp->tx_skbuff[entry]->len,
PCI_DMA_TODEVICE);
}
- dev_kfree_skb_irq(rp->tx_skbuff[entry]);
+ dev_kfree_skb(rp->tx_skbuff[entry]);
rp->tx_skbuff[entry] = NULL;
entry = (++rp->dirty_tx) % TX_RING_SIZE;
}
@@ -2011,11 +2011,7 @@ static void rhine_slow_event_task(struct
if (intr_status & IntrPCIErr)
netif_warn(rp, hw, dev, "PCI error\n");
- napi_disable(&rp->napi);
- rhine_irq_disable(rp);
- /* Slow and safe. Consider __napi_schedule as a replacement ? */
- napi_enable(&rp->napi);
- napi_schedule(&rp->napi);
+ iowrite16(RHINE_EVENT & 0xffff, rp->base + IntrEnable);
out_unlock:
mutex_unlock(&rp->task_lock);
Patches currently in stable-queue which might be from [email protected] are
queue-3.4/pktgen-correctly-handle-failures-when-adding-a-device.patch
queue-3.4/via-rhine-fix-bugs-in-napi-support.patch
queue-3.4/bridge-pull-ip-header-into-skb-data-before-looking-into-ip-header.patch
queue-3.4/xen-netback-don-t-leak-pages-on-failure-in-xen_netbk_tx_check_gop.patch
queue-3.4/tcp-frto-should-not-set-snd_cwnd-to-0.patch
queue-3.4/net-sctp-sctp_endpoint_free-zero-out-secret-key-data.patch
queue-3.4/net-sctp-sctp_setsockopt_auth_key-use-kzfree-instead-of-kfree.patch
queue-3.4/ipv6-fix-header-length-calculation-in-ip6_append_data.patch
queue-3.4/xen-netback-free-already-allocated-memory-on-failure-in-xen_netbk_get_requests.patch
queue-3.4/maintainers-stephen-hemminger-email-change.patch
queue-3.4/ipv6-fix-the-noflags-test-in-addrconf_get_prefix_route.patch
queue-3.4/tg3-fix-crc-errors-on-jumbo-frame-receive.patch
queue-3.4/tg3-avoid-null-pointer-dereference-in-tg3_interrupt-in-netconsole-mode.patch
queue-3.4/tcp-fix-for-zero-packets_in_flight-was-too-broad.patch
queue-3.4/net-prevent-setting-ttl-0-via-ip_ttl.patch
queue-3.4/netback-correct-netbk_tx_err-to-handle-wrap-around.patch
queue-3.4/ipv6-do-not-create-neighbor-entries-for-local-delivery.patch
queue-3.4/r8169-remove-the-obsolete-and-incorrect-amd-workaround.patch
queue-3.4/sctp-refactor-sctp_outq_teardown-to-insure-proper-re-initalization.patch
queue-3.4/xen-netback-shutdown-the-ring-if-it-contains-garbage.patch
queue-3.4/net-mlx4_core-set-number-of-msix-vectors-under-sriov-mode-to-firmware-defaults.patch
queue-3.4/net-calxedaxgmac-throw-away-overrun-frames.patch
queue-3.4/net-mlx4_en-fix-bridged-vswitch-configuration-for-non-sriov-mode.patch
queue-3.4/packet-fix-leakage-of-tx_ring-memory.patch
queue-3.4/netxen-fix-off-by-one-bug-in-netxen_release_tx_buffer.patch
queue-3.4/net-loopback-fix-a-dst-refcounting-issue.patch
queue-3.4/isdn-gigaset-fix-zero-size-border-case-in-debug-dump.patch
queue-3.4/atm-iphase-rename-fregt_t-ffreg_t.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html