O erro indica que a contagem de referência para a interface é > 0, então algo ainda está usando a interface.
O erro é gerado na função netdev_wait_allrefs em /net/core/dev.c no kernel.
Poderia haver um bug no código do kernel, mas como você disse, essas referências eram todas versões muito mais antigas e ninguém mais relatou nada - o que poderíamos esperar de algo tão central. Ele fornece o mecanismo de bloqueio para não apenas o adaptador lo, mas eth, tun, etc.
Eu interceptaria o erro nos logs e veria qual processo tem uso da interface do lo.
Para fazer isso, use as ferramentas inotify em um script bash para observar o log e, quando o erro ocorrer, despejar uma lista de processos e o que está usando as interfaces:
#!/bin/sh
LOG="/var/log/netdev.log"
while inotifywait -e modify /var/log/kern; do
if tail -n1 /var/log/kern | grep unregister_netdevice; then
echo 'date': error detected... >> $LOG
ss -nlput >> $LOG
ps -Af >> $LOG
# other commands, send an sms?
fi
done
Você pode modificar os comandos executados quando isso é acionado para coletar informações diferentes, e eu suponho que isso esteja no / var / log / kern log (não tenho certeza do seu sabor).
Suspeito que um processo tenha permanecido deixando a interface em uso.