Netdev List
 help / color / mirror / Atom feed
* [PATCH net-next 0/5] Device reset and reconfig fixes
@ 2014-02-19 13:22 Claudiu Manoil
  2014-02-19 13:22 ` [PATCH net-next 1/5] gianfar: Implement MAC reset and reconfig procedure Claudiu Manoil
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Claudiu Manoil @ 2014-02-19 13:22 UTC (permalink / raw)
  To: netdev; +Cc: David S. Miller

These patches end up fixing some notable device reset & reconfig
related problems.  One issue is on-the-fly (Rx/Tx on) programming
of interrupt coalescing (IC) registers on the processing path,
against HW recommendation.  This is an old issue that became visible
after BQL introduction, as under certain conditions (low traffic)
one TX interrupt gets lost and BQL fires Tx timeout as a result.
Another notable issue is a race on the Tx path (xmit, clean_tx)
during device reset (i.e. during Tx timeout watchdog firing)
that leads to NULL access.
Fixing the problematic on-thy-fly register writes (i.e. the IC regs)
required the implementation of a MAC soft reset procedure.
The race leading to NULL access was addressed by fixing the
stop_gfar()/startup_gfar() pair (disable/enable napi a.s.o.)
and adding the device state DOWN to sync with the TX path.

Thanks.

Claudiu Manoil (5):
  gianfar: Implement MAC reset and reconfig procedure
  gianfar: Fix on-the-fly vlan and mtu updates
  gianfar: Don't free/request irqs on device reset
  gianfar: Fix device reset races (oops) for Tx
  gianfar: Fix Tx int miss, dont write IC on-the-fly

 drivers/net/ethernet/freescale/gianfar.c         | 599 ++++++++++-------------
 drivers/net/ethernet/freescale/gianfar.h         |  18 +-
 drivers/net/ethernet/freescale/gianfar_ethtool.c | 104 ++--
 3 files changed, 325 insertions(+), 396 deletions(-)

-- 
1.7.11.7

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

end of thread, other threads:[~2014-02-22  0:32 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-19 13:22 [PATCH net-next 0/5] Device reset and reconfig fixes Claudiu Manoil
2014-02-19 13:22 ` [PATCH net-next 1/5] gianfar: Implement MAC reset and reconfig procedure Claudiu Manoil
2014-02-19 13:22 ` [PATCH net-next 2/5] gianfar: Fix on-the-fly vlan and mtu updates Claudiu Manoil
2014-02-22  0:32   ` Ben Hutchings
2014-02-19 13:22 ` [PATCH net-next 3/5] gianfar: Don't free/request irqs on device reset Claudiu Manoil
2014-02-19 13:22 ` [PATCH net-next 4/5] gianfar: Fix device reset races (oops) for Tx Claudiu Manoil
2014-02-19 13:22 ` [PATCH net-next 5/5] gianfar: Fix Tx int miss, dont write IC on-the-fly Claudiu Manoil

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox