Force NetworkManager para reiniciar e recarregar drivers de rede sem reinicializar

1

Tenho problemas recorrentes com o NetworkManager e seus componentes dependentes que sempre falham quando não tenho tempo para depurar ou corrigir o problema. Eu estou tentando descobrir como eu posso agressivamente reiniciar e descarregar / carregar ambos os módulos do kernel para reiniciar o NetworkManager. Pense nisso como reinicialização suave do seu sistema, mas sem fazer logout. Eu consegui fazer o mesmo para os problemas do bluetooth, por exemplo, btuse e reinicie o bluetoothd.

Sistema em que estou testando: HW: Thinkpad T460 SO: Arch Linux Nic: Ambos WLAN e Nic Intel

Até agora, recebo os seguintes problemas:

kernel: NetworkManager  D    0 17671      1 0x00000004
kernel: Call Trace:
kernel:  __schedule+0x239/0x890
kernel:  schedule+0x3d/0x90
kernel:  schedule_preempt_disabled+0x15/0x20
kernel:  __mutex_lock.isra.2+0x295/0x520
kernel:  ? __follow_mount_rcu.isra.30+0x68/0xe0
kernel:  __mutex_lock_slowpath+0x13/0x20
kernel:  ? __mutex_lock_slowpath+0x13/0x20
kernel:  mutex_lock+0x25/0x30
kernel:  misc_open+0x28/0x170
kernel:  chrdev_open+0xa3/0x1c0
kernel:  do_dentry_open+0x1bc/0x2e0
kernel:  ? cdev_put.part.3+0x20/0x20
kernel:  vfs_open+0x4e/0x80
kernel:  path_openat+0x51e/0x13a0
kernel:  ? shmem_getpage_gfp+0xf2/0xbc0
kernel:  do_filp_open+0x9b/0x110
kernel:  ? __check_object_size+0xaf/0x1b0
kernel:  ? __alloc_fd+0xb2/0x160
kernel:  do_sys_open+0x1ba/0x250
kernel:  ? do_sys_open+0x1ba/0x250
kernel:  SyS_openat+0x14/0x20
kernel:  entry_SYSCALL_64_fastpath+0x1a/0xa5
kernel: RIP: 0033:0x7f2925471360
kernel: RSP: 002b:00007ffe2271fa50 EFLAGS: 00000293 ORIG_RAX: 0000000000000101
kernel: RAX: ffffffffffffffda RBX: 000055fe3e292200 RCX: 00007f2925471360
kernel: RDX: 0000000000080002 RSI: 000055fe3c860343 RDI: ffffffffffffff9c
kernel: RBP: 00007f2925457240 R08: 0000000000000000 R09: 0000000000000000
kernel: R10: 0000000000000000 R11: 0000000000000293 R12: 0000000000000000
kernel: R13: 0000000000000000 R14: 0000000000000000 R15: 00007f2927e5fb68
kernel: NetworkManager  D    0 17797      1 0x00000004

Além disso, os processos do NetworkManger não são eliminados corretamente, eles ainda permanecem como processos zumbis 'que bloqueiam a reinicialização do serviço

➜  ~ ps -A | grep Net
 2392 ?        00:00:00 NetworkManager
 2654 ?        00:00:00 NetworkManager
 2789 ?        00:00:00 NetworkManager
 2911 ?        00:00:00 NetworkManager
 3966 ?        00:00:00 NetworkManager
 4149 ?        00:00:00 NetworkManager
 4308 ?        00:00:00 NetworkManager
 4884 ?        00:00:00 NetworkManager
 5047 ?        00:00:00 NetworkManager
 5159 ?        00:00:00 NetworkManager
 5284 ?        00:00:00 NetworkManager
 5392 ?        00:00:00 NetworkManager
 5487 ?        00:00:00 NetworkManager
 5634 ?        00:00:00 NetworkManager
 5738 ?        00:00:00 NetworkManager
 5839 ?        00:00:00 NetworkManager
 6009 ?        00:00:00 NetworkManager
 6118 ?        00:00:00 NetworkManager
 6213 ?        00:00:00 NetworkManager
 6358 ?        00:00:00 NetworkManager
 6478 ?        00:00:00 NetworkManager
... many more

Ainda posso acessar a rede configurando a LAN e a WLAN na linha de comando.

Qualquer sugestão seria ótima, mesmo que o resultado seja feio, tudo bem. Eu prefiro que o sistema atinja um pânico kernal e faça qualquer coisa. Como atualmente, a única outra opção é reiniciar.

    
por Darragh 21.10.2017 / 00:09

1 resposta

0

Se eu entendi corretamente, systemctl restart NetworkManager não funciona e você precisa reinicializar.

Então, talvez eu esteja errado, mas se realmente não estiver "limpo corretamente", parece que você precisa reiniciar o systemd sem reinicializar ...

Não sei se é a solução para o seu problema, mas para reiniciar o systemd sem reiniciar você pode executar (como root)

  • systemctl daemon-reexec

ou alternativamente

  • systemctl restart systemd-journald
por 05.11.2017 / 01:41