I think the poll is a red herring...the new version of virt-manager actually does have a 1000ms timeout when I strace it.
So, oddly the issue doesn't pop up with virt-manager --debug...and looking though the code, when --debug is not used, it calls this:
def drop_tty():
# We fork and setsid so that we drop the controlling
# tty. This prevents libvirt's SSH tunnels from prompting
# for user input if SSH keys/agent aren't configured.
if os.fork() != 0:
os._exit(0)
I think the poll is a red herring...the new version of virt-manager actually does have a 1000ms timeout when I strace it.
So, oddly the issue doesn't pop up with virt-manager --debug...and looking though the code, when --debug is not used, it calls this:
def drop_tty():
# We fork and setsid so that we drop the controlling
# tty. This prevents libvirt's SSH tunnels from prompting
# for user input if SSH keys/agent aren't configured.
if os.fork() != 0:
os._exit(0)
os.setsid()
As soon as it forks, CPU goes up to 100%.