Including changes to mnexec -c to reduce the number of
close() system calls, which may help with performance in
containers on Ubuntu 22.04.
Note that systemd-udevd also seems to be a cause of performance issues
and should probably be disabled while running Mininet.
Adding dbeug logging to test_simpleperf because it is failing
intermittently. (Note with packet loss it can fail, but this
is not how we should be testing it.)
This helps with virtualenv although it can open
up another security hole if you end up using an
unexpected python interpreter.
Overall it seems to make sense to err on the side
of usability but it's good to be aware of security.
However, for the remaining utility scripts that require
python 2, we explicitly note this with #!/usr/bin/python2.
Although we could use print() from __future__, this messes
up scripts which use examples as modules.
The simple, if not nicest for 2.7, solution is to use
info(), output() and other mininet.log functions. The disadvantage
is that we may have to adjust things if we change info() to
add automatic newlines, but we can burn that bridge in Mininet
3.x.
There are a bunch of these remaining, but I don't think the right course is
to 'fix' all of them to make pep8 happy, but instead to either change
the test in pep8 to consider that a continuation line may itself
be continued halfway, OR, to change the code in these lines to be more
readable by removing the need for all those nested continuations.
Personally, I find multiply-broken lines (aka nested continuations) really
hard to read.