I have been receiving this error regularly for some time.
unregister_netdevice: waiting for lo to become free. Usage count = 1
Much of the time, it is harmless and nothing happens.
Sometimes though, everything grinds to very nearly a full stop re: networking.
This is full OS affecting and I cannot connect via the GUI at all, and even when connected via SSH/Telnet command completion becomes hard as the connection goes in and out. This situation remains so, until a full reboot can be executed. Can't test restarting docker only, as connectivity becomes so problematic at that point issuing commands becomes difficult.
It seems, via research, this is a cross platform kernel related issue, and shows up most commonly when using docker containers with high network activity (for example, torrents). It seems it is also intermittent, and therefore hard to reproduce except in a production environment with lots of connections.
Devs indicate it seems to be related to hairpin mode networking, and if this can be disabled it stops. Hairpin mode is used by default on containers.
Suggested workarounds found so far are:
Disable IPV6 in the containers. hard to do as even if docker is configured to not use IPV6, it seems it still uses it anyway. Additionally, even when disabled in the kernel via boot parameters, many say it did not fix the issue.
Set docker networking to promiscuous mode. This disables hairpin mode. Anyone know how to do this on a container? I don't know myself. This worked for users of kubernetes and some others.
Final suggestions I would offer are to:
Not use docker containers for torrents. Only until fixed anyway. I am probably going this route unless I can get promiscuous mode going, and it works.