This is a note to let you know that I've just added the patch titled Revert "r8169: add support for Byte Queue Limits" to the 3.19-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: revert-r8169-add-support-for-byte-queue-limits.patch and it can be found in the queue-3.19 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From foo@baz Wed Mar 11 11:44:33 CET 2015 From: "David S. Miller" <davem@xxxxxxxxxxxxx> Date: Tue, 10 Mar 2015 18:47:33 -0400 Subject: Revert "r8169: add support for Byte Queue Limits" From: "David S. Miller" <davem@xxxxxxxxxxxxx> This reverts commit 1e918876853aa85435e0f17fd8b4a92dcfff53d6. Revert BQL support in r8169 driver as several regressions point to this commit and we cannot figure out the real cause yet. Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- drivers/net/ethernet/realtek/r8169.c | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) --- a/drivers/net/ethernet/realtek/r8169.c +++ b/drivers/net/ethernet/realtek/r8169.c @@ -5067,8 +5067,6 @@ static void rtl_hw_reset(struct rtl8169_ RTL_W8(ChipCmd, CmdReset); rtl_udelay_loop_wait_low(tp, &rtl_chipcmd_cond, 100, 100); - - netdev_reset_queue(tp->dev); } static void rtl_request_uncached_firmware(struct rtl8169_private *tp) @@ -7089,8 +7087,6 @@ static netdev_tx_t rtl8169_start_xmit(st txd->opts2 = cpu_to_le32(opts[1]); - netdev_sent_queue(dev, skb->len); - skb_tx_timestamp(skb); /* Force memory writes to complete before releasing descriptor */ @@ -7192,7 +7188,6 @@ static void rtl8169_pcierr_interrupt(str static void rtl_tx(struct net_device *dev, struct rtl8169_private *tp) { unsigned int dirty_tx, tx_left; - unsigned int bytes_compl = 0, pkts_compl = 0; dirty_tx = tp->dirty_tx; smp_rmb(); @@ -7216,8 +7211,10 @@ static void rtl_tx(struct net_device *de rtl8169_unmap_tx_skb(&tp->pci_dev->dev, tx_skb, tp->TxDescArray + entry); if (status & LastFrag) { - pkts_compl++; - bytes_compl += tx_skb->skb->len; + u64_stats_update_begin(&tp->tx_stats.syncp); + tp->tx_stats.packets++; + tp->tx_stats.bytes += tx_skb->skb->len; + u64_stats_update_end(&tp->tx_stats.syncp); dev_kfree_skb_any(tx_skb->skb); tx_skb->skb = NULL; } @@ -7226,13 +7223,6 @@ static void rtl_tx(struct net_device *de } if (tp->dirty_tx != dirty_tx) { - netdev_completed_queue(tp->dev, pkts_compl, bytes_compl); - - u64_stats_update_begin(&tp->tx_stats.syncp); - tp->tx_stats.packets += pkts_compl; - tp->tx_stats.bytes += bytes_compl; - u64_stats_update_end(&tp->tx_stats.syncp); - tp->dirty_tx = dirty_tx; /* Sync with rtl8169_start_xmit: * - publish dirty_tx ring index (write barrier) Patches currently in stable-queue which might be from davem@xxxxxxxxxxxxx are queue-3.19/team-don-t-traverse-port-list-using-rcu-in-team_set_mac_address.patch queue-3.19/ipv6-make-__ipv6_select_ident-static.patch queue-3.19/usb-plusb-add-support-for-national-instruments-host-to-host-cable.patch queue-3.19/rtnetlink-ifla_vf_policy-fix-misuses-of-nla_binary.patch queue-3.19/net-bcmgenet-fix-software-maintained-statistics.patch queue-3.19/net-phy-fix-verification-of-eee-support-in-phy_init_eee.patch queue-3.19/net-reject-creation-of-netdev-names-with-colons.patch queue-3.19/net-pktgen-disable-xmit_clone-on-virtual-devices.patch queue-3.19/net-do-not-use-rcu-in-rtnl_dump_ifinfo.patch queue-3.19/net-ping-return-eafnosupport-when-appropriate.patch queue-3.19/ipv6-fix-fragment-id-assignment-on-le-arches.patch queue-3.19/flowcache-fix-kernel-panic-in-flow_cache_flush_task.patch queue-3.19/net-compat-ignore-msg_cmsg_compat-in-compat_sys_-send-recv-msg.patch queue-3.19/ipv6-fix-ipv6_cow_metrics-for-non-dst_host-case.patch queue-3.19/revert-r8169-add-support-for-byte-queue-limits.patch queue-3.19/tcp-make-sure-skb-is-not-shared-before-using-skb_get.patch queue-3.19/openvswitch-fix-net-exit.patch queue-3.19/gen_stats.c-duplicate-xstats-buffer-for-later-use.patch queue-3.19/net-bcmgenet-fix-throughtput-regression.patch queue-3.19/ipv6-addrconf-add-missing-validate_link_af-handler.patch queue-3.19/ipv4-ip_check_defrag-should-not-assume-that-skb_network_offset-is-zero.patch queue-3.19/pktgen-fix-udp-checksum-computation.patch queue-3.19/ematch-fix-auto-loading-of-ematch-modules.patch queue-3.19/udp-only-allow-ufo-for-packets-from-sock_dgram-sockets.patch queue-3.19/team-fix-possible-null-pointer-dereference-in-team_handle_frame.patch queue-3.19/sh_eth-fix-lost-mac-address-on-kexec.patch queue-3.19/sock-sock_dequeue_err_skb-needs-hard-irq-safety.patch queue-3.19/macvtap-make-sure-neighbour-code-can-push-ethernet-header.patch queue-3.19/rtnetlink-call-dellink-on-failure-when-newlink-exists.patch queue-3.19/ipv4-ip_check_defrag-should-correctly-check-return-value-of-skb_copy_bits.patch -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html