diff options
author | David S. Miller <davem@davemloft.net> | 2018-02-13 18:36:10 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-02-13 18:36:10 +0300 |
commit | 885842d89a9ba619dce05537f0fe107d250e600b (patch) | |
tree | a392bcdcc156c560c61ebcf8320ae3850c2a3c1f /drivers/net/ethernet/freescale/dpaa | |
parent | cf19e5e2054f5172c07a152f9e04eb3bae3d86dd (diff) | |
parent | b86b47a39598cdf17e0e826ebe1be21c798112cf (diff) | |
download | linux-885842d89a9ba619dce05537f0fe107d250e600b.tar.xz |
Merge branch 'Replacing-net_mutex-with-rw_semaphore'
Kirill Tkhai says:
====================
Replacing net_mutex with rw_semaphore
this is the third version of the patchset introducing net_sem
instead of net_mutex. The patchset adds net_sem in addition
to net_mutex and allows pernet_operations to be "async". This
flag means, the pernet_operations methods are safe to be
executed with any other pernet_operations (un)initializing
another net.
If there are only async pernet_operations in the system,
net_mutex is not used either for setup_net() or for cleanup_net().
The pernet_operations converted in this patchset allow
to create minimal .config to have network working, and
the changes improve the performance like you may see
below:
%for i in {1..10000}; do unshare -n bash -c exit; done
*before*
real 1m40,377s
user 0m9,672s
sys 0m19,928s
*after*
real 0m17,007s
user 0m5,311s
sys 0m11,779
(5.8 times faster)
In the future, when all pernet_operations become async,
we'll just remove this "async" field tree-wide.
All the new logic is concentrated in patches [1-5/32].
The rest of patches converts specific operations:
review, rationale of they can be converted, and setting
of async flag.
Kirill
v3: Improved patches descriptions. Added comment into [5/32].
Added [32/32] converting netlink_tap_net_ops (new pernet operations
introduced in 2018).
v2: Single patch -> patchset with rationale of every conversion
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/freescale/dpaa')
0 files changed, 0 insertions, 0 deletions