linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH RFC 00/30] Initial round of Freescale FEC ethernet patches
@ 2014-06-20 12:11 Russell King - ARM Linux
  2014-06-20 12:11 ` [PATCH RFC 01/30] net: fec: Don't clear IPV6 header checksum field when IP accelerator enable Russell King
                   ` (29 more replies)
  0 siblings, 30 replies; 46+ messages in thread
From: Russell King - ARM Linux @ 2014-06-20 12:11 UTC (permalink / raw)
  To: linux-arm-kernel

This is my initial round of patches (roughly half of my total patch
set) for the Freescale FEC driver.

I'm sending this set out initially for comments and testing.  One of
my motivations for only sending half is to get this half into a state
where DaveM is happy to merge it before I sort out the remainder.
There's quite a lot here, so bear with me on this.

I've tried to sort the fixes before the cleanups as best I can, but
reordering the series is a full-time job due to it's size - it's taken
from Monday until now to get this far with it, so I'm hoping that there
won't be any "you should rearrange the patches as X" comments.

While the original series was well tested during it's original
development, including with performance tests on each patch, that
testing and validation has been lost due to the changes during the
last merge window, and subsequent rebasing and updating of the patches.

The series is based on v3.16-rc1, and as such, I have added Andy's
checksum fix to the start of the series.  This patch is not strictly
part of the RFC, but is included because my complete patch series needs
to account for that change.

Some of these patches are to fix theoretical problems in the driver
(ones which have been found via a review of the code) others address
real observable problems (such as poor half-duplex performance.)

Towards the end of this series, I have included a patch which was
initially at the beginning of the series for dumping out the state of
the transmit ring, which is very useful to debug transmit problems.
This was acceptable when the transmit ring was between 16 and 128
descriptors, but during the recent merge window, this was increased to
512 descriptors, so it will now print around 512 lines to the kernel
message log on transmit timeout.  I'm not entirely convinced this is a
good idea - maybe it should become optional, or maybe the timed-out ring
status should be available via debugfs, but that's a problem to retrieve
if you're running NFS rootfs and the timeout doesn't recover properly.

This series of patches is also available from the following *unstable*
git branch - unstable as it's provided for convenience so you don't
have to apply all these patches individually, unstable as the patches
need to have attributations added, unstable because DaveM will probably
want to apply them as patches to his tree:

  git://ftp.arm.linux.org.uk/~rmk/linux-arm.git fec-testing

 drivers/net/ethernet/freescale/fec.h      |  10 +-
 drivers/net/ethernet/freescale/fec_main.c | 383 +++++++++++++++++-------------
 2 files changed, 225 insertions(+), 168 deletions(-)

-- 
FTTC broadband for 0.8mile line: now at 9.7Mbps down 460kbps up... slowly
improving, and getting towards what was expected from it.

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

end of thread, other threads:[~2014-06-25  1:41 UTC | newest]

Thread overview: 46+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-06-20 12:11 [PATCH RFC 00/30] Initial round of Freescale FEC ethernet patches Russell King - ARM Linux
2014-06-20 12:11 ` [PATCH RFC 01/30] net: fec: Don't clear IPV6 header checksum field when IP accelerator enable Russell King
2014-06-20 12:11 ` [PATCH RFC 02/30] net: fec: iMX6 FEC does not support half-duplex gigabit Russell King
2014-06-20 12:11 ` [PATCH RFC 03/30] net: fec: fix ethtool set_pauseparam duplex bug Russell King
2014-06-20 12:12 ` [PATCH RFC 04/30] net: fec: fix interrupt handling races Russell King
2014-06-20 12:39   ` David Laight
2014-06-20 15:36     ` Russell King - ARM Linux
2014-06-20 16:00       ` David Laight
2014-06-22  6:38   ` fugang.duan at freescale.com
2014-06-20 12:12 ` [PATCH RFC 05/30] net: fec: use netif_tx_disable() rather than netif_stop_queue() Russell King
2014-06-20 12:12 ` [PATCH RFC 06/30] net: fec: remove checking for NULL phy_dev in fec_enet_close() Russell King
2014-06-20 12:12 ` [PATCH RFC 07/30] net: fec: ensure that a disconnected phy isn't configured Russell King
2014-06-20 12:12 ` [PATCH RFC 08/30] net: fec: stop the phy before shutting down the MAC Russell King
2014-06-20 12:12 ` [PATCH RFC 09/30] net: fec: remove useless fep->opened Russell King
2014-06-20 12:12 ` [PATCH RFC 10/30] net: fec: make rx skb handling more robust Russell King
2014-06-20 12:12 ` [PATCH RFC 11/30] net: fec: clean up transmit descriptor setup Russell King
2014-06-20 12:12 ` [PATCH RFC 12/30] net: fec: ensure fec_enet_free_buffers() properly cleans the rings Russell King
2014-06-20 12:12 ` [PATCH RFC 13/30] net: fec: fix missing kmalloc() failure check in fec_enet_alloc_buffers() Russell King
2014-06-20 12:12 ` [PATCH RFC 14/30] net: fec: improve safety of suspend/resume/transmit timeout paths Russell King
2014-06-20 12:12 ` [PATCH RFC 15/30] net: fec: ensure fec_enet_close() copes with resume failure Russell King
2014-06-20 12:13 ` [PATCH RFC 16/30] net: fec: only restart or stop the device if it is present and running Russell King
2014-06-20 12:13 ` [PATCH RFC 17/30] net: fec: move calls to quiesce/resume packet processing out of fec_restart() Russell King
2014-06-20 12:13 ` [PATCH RFC 18/30] net: fec: remove inappropriate calls around fec_restart() Russell King
2014-06-22  6:54   ` fugang.duan at freescale.com
2014-06-22  7:55     ` Russell King - ARM Linux
2014-06-22  8:07       ` fugang.duan at freescale.com
2014-06-20 12:13 ` [PATCH RFC 19/30] net: fec: quiesce packet processing before stopping device in fec_suspend() Russell King
2014-06-20 12:13 ` [PATCH RFC 20/30] net: fec: quiesce packet processing before stopping device in fec_set_features() Russell King
2014-06-20 12:13 ` [PATCH RFC 21/30] net: fec: quiesce packet processing before changing features Russell King
2014-06-20 12:13 ` [PATCH RFC 22/30] net: fec: quiesce packet processing when taking link down in fec_enet_adjust_link() Russell King
2014-06-20 12:13 ` [PATCH RFC 23/30] net: fec: clean up duplex mode handling Russell King
2014-06-20 12:13 ` [PATCH RFC 24/30] net: fec: better implementation of iMX6 ERR006358 quirk Russell King
2014-06-22  7:49   ` fugang.duan at freescale.com
2014-06-22  8:12     ` Russell King - ARM Linux
2014-06-22  8:24       ` Russell King - ARM Linux
2014-06-22  8:38       ` fugang.duan at freescale.com
2014-06-22  8:49         ` Russell King - ARM Linux
2014-06-24 10:29           ` Russell King - ARM Linux
2014-06-25  1:41             ` fugang.duan at freescale.com
2014-06-20 12:13 ` [PATCH RFC 25/30] net: fec: replace delayed work with standard work Russell King
2014-06-20 12:13 ` [PATCH RFC 26/30] net: fec: clear receive interrupts before processing a packet Russell King
2014-06-20 12:14 ` [PATCH RFC 27/30] net: fec: reorder ethtool ops to match order in struct declaration Russell King
2014-06-20 12:14 ` [PATCH RFC 28/30] net: fec: add support for dumping transmit ring on timeout Russell King
2014-06-20 12:14 ` [PATCH RFC 29/30] net: fec: remove useless status check in tx reap path Russell King
2014-06-20 12:14 ` [PATCH RFC 30/30] net: fec: consolidate hwtstamp implementation Russell King
2014-06-21  6:11   ` Richard Cochran

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