From: Jan K. <jan...@we...> - 2008-05-12 11:42:10
|
Avi Kivity wrote: > Jan Kiszka wrote: >> Having both kvm_eat_signal and kvm_eat_signals makes the code harder to >> read. Moreover, given the single caller of kvm_eat_signals, there is no >> real reason to keep it in a separate function. >> >> > > Given that with the iothread we spend very little time processing > signals in vcpu threads, maybe it's better to drop the loop completely. > The common case is zero or one pending signals. The uncommon case of > two or more pending signals will be handled by the KVM_RUN ioctl > returning immediately with -EINTR (i.e. in the outer loop). > You mean static void kvm_main_loop_wait(CPUState *env, int timeout) { pthread_mutex_unlock(&qemu_mutex); kvm_eat_signal(env, timeout); pthread_mutex_lock(&qemu_mutex); cpu_single_env = env; vcpu_info[env->cpu_index].signalled = 0; } ? Jan |