[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1455827909-26443-1-git-send-email-jakub.kicinski@netronome.com>
Date: Thu, 18 Feb 2016 20:38:15 +0000
From: Jakub Kicinski <jakub.kicinski@...ronome.com>
To: davem@...emloft.net
Cc: netdev@...r.kernel.org,
Jakub Kicinski <jakub.kicinski@...ronome.com>
Subject: [PATCHv3 net-next 00/14] nfp: MTU fixes for net
Hi Dave!
This is the second part of MTU reconfiguration fixes, targeted
at net-next.
Patches 1-8 refactor open/stop paths to look like this:
- alloc;
- dev/FW init;
- stack init/start.
stop:
- stack quiescence/stop;
- dev/FW down;
- free.
That's a quite a bit of code churn I did my best to split
it up but probably still not much fun to review.
Patch 9 splits the open/stop into chunks I can call later.
Patch 10 makes sure that FW start/stop operations are
reflected in SW state (which was not needed earlier since
we always did full down/up).
[Patches 11 and 13 are trivial, split for readability.]
Patch 12 does what you requested for MTU change:
- alloc new resources;
- stop dev;
- try to start dev with new config;
- if failed try with old config;
- if failed die loudly.
Patch 14 does the same thing for ring resize.
I tested this with various error injection hacks and it
seems quite solid.
This is on top of the first series, merge of net into
net-next will be required for this to apply.
Thanks!
Jakub Kicinski (14):
nfp: move link state interrupt request/free calls
nfp: break up nfp_net_{alloc|free}_rings
nfp: make *x_ring_init do all the init
nfp: allocate ring SW structs dynamically
nfp: cleanup tx ring flush and rename to reset
nfp: reorganize initial filling of RX rings
nfp: preallocate RX buffers early in .ndo_open
nfp: move filling ring information to FW config
nfp: slice .ndo_open() and .ndo_stop() up
nfp: sync ring state during FW reconfiguration
nfp: propagate list buffer size in struct rx_ring
nfp: convert .ndo_change_mtu() to prepare/commit paradigm
nfp: pass ring count as function parameter
nfp: allow ring size reconfiguration at runtime
drivers/net/ethernet/netronome/nfp/nfp_net.h | 10 +-
.../net/ethernet/netronome/nfp/nfp_net_common.c | 898 ++++++++++++++-------
.../net/ethernet/netronome/nfp/nfp_net_ethtool.c | 30 +-
3 files changed, 615 insertions(+), 323 deletions(-)
--
1.9.1
Powered by blists - more mailing lists