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.7-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.7 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.


>From aaf884494fda8734dcd8f42602e646e2238d01f6 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.7/pktgen-correctly-handle-failures-when-adding-a-device.patch
queue-3.7/via-rhine-fix-bugs-in-napi-support.patch
queue-3.7/ipv6-add-an-error-handler-for-icmp6.patch
queue-3.7/ipv4-remove-output-route-check-in-ipv4_mtu.patch
queue-3.7/xen-netback-don-t-leak-pages-on-failure-in-xen_netbk_tx_check_gop.patch
queue-3.7/tcp-frto-should-not-set-snd_cwnd-to-0.patch
queue-3.7/net-sctp-sctp_endpoint_free-zero-out-secret-key-data.patch
queue-3.7/net-splice-avoid-high-order-page-splitting.patch
queue-3.7/ipv6-ip6_gre-fix-error-case-handling-in-ip6gre_tunnel_xmit.patch
queue-3.7/net-sctp-sctp_setsockopt_auth_key-use-kzfree-instead-of-kfree.patch
queue-3.7/ipv6-fix-header-length-calculation-in-ip6_append_data.patch
queue-3.7/xen-netback-free-already-allocated-memory-on-failure-in-xen_netbk_get_requests.patch
queue-3.7/maintainers-stephen-hemminger-email-change.patch
queue-3.7/ipv6-fix-the-noflags-test-in-addrconf_get_prefix_route.patch
queue-3.7/tcp-fix-a-panic-on-up-machines-in-reqsk_fastopen_remove.patch
queue-3.7/ip_gre-fix-kernel-panic-in-ip_gre-with-gre-csum.patch
queue-3.7/tcp-fix-for-zero-packets_in_flight-was-too-broad.patch
queue-3.7/tcp-fix-splice-and-tcp-collapsing-interaction.patch
queue-3.7/ipv4-add-a-socket-release-callback-for-datagram-sockets.patch
queue-3.7/net-prevent-setting-ttl-0-via-ip_ttl.patch
queue-3.7/netback-correct-netbk_tx_err-to-handle-wrap-around.patch
queue-3.7/e1000e-enable-ecc-on-i217-i218-to-catch-packet-buffer-memory-errors.patch
queue-3.7/tcp-don-t-abort-splice-after-small-transfers.patch
queue-3.7/ipv6-do-not-create-neighbor-entries-for-local-delivery.patch
queue-3.7/macvlan-fix-macvlan_get_size.patch
queue-3.7/r8169-remove-the-obsolete-and-incorrect-amd-workaround.patch
queue-3.7/sctp-refactor-sctp_outq_teardown-to-insure-proper-re-initalization.patch
queue-3.7/xen-netback-shutdown-the-ring-if-it-contains-garbage.patch
queue-3.7/ipv4-don-t-update-the-pmtu-on-mtu-locked-routes.patch
queue-3.7/net-mlx4_core-set-number-of-msix-vectors-under-sriov-mode-to-firmware-defaults.patch
queue-3.7/net-calxedaxgmac-throw-away-overrun-frames.patch
queue-3.7/net-splice-fix-__splice_segment.patch
queue-3.7/net-mlx4_en-fix-bridged-vswitch-configuration-for-non-sriov-mode.patch
queue-3.7/ipv4-invalidate-the-socket-cached-route-on-pmtu-events-if-possible.patch
queue-3.7/packet-fix-leakage-of-tx_ring-memory.patch
queue-3.7/net-wireless-overwrite-default_ethtool_ops.patch
queue-3.7/netxen-fix-off-by-one-bug-in-netxen_release_tx_buffer.patch
queue-3.7/net-loopback-fix-a-dst-refcounting-issue.patch
queue-3.7/isdn-gigaset-fix-zero-size-border-case-in-debug-dump.patch
queue-3.7/tcp-fix-incorrect-lockdroppedicmps-counter.patch
queue-3.7/ipv4-fix-route-refcount-on-pmtu-discovery.patch
queue-3.7/tcp-splice-fix-an-infinite-loop-in-tcp_read_sock.patch
queue-3.7/atm-iphase-rename-fregt_t-ffreg_t.patch
queue-3.7/tcp-detect-syn-data-drop-when-f-rto-is-disabled.patch
queue-3.7/tcp-fix-an-infinite-loop-in-tcp_slow_start.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

Reply via email to