> I attached the patch for this problem.
>
> * Modified to send a SIGHUP to the primary thread from the secondary
> thread detects the start of the VM, and
> the primary thread is modified so as to select() the requests from
> the VM which started.
That's certainly one way of doing it. I might have used
'pthread_cond_singal'.
> * Also, when four VM(s) are started simultaneously,
> poll()<in event_thread() at server/virt-serial.c> could not handle
> all the boot.
> Therefore, I revised it to call domainStarted()/domainStopped() in
> myDomainEventCallback1().
You're using pthread_kill, so what I suspect happens is 4 SIGHUPs are
coming in very quickly, causing more modification to be required.