On 09/24/2012 08:59 AM, Xiao Guangrong wrote: > On 09/24/2012 02:24 PM, Takuya Yoshikawa wrote: >> This is an RFC since I have not done any comparison with the approach >> using for_each_set_bit() which can be seen in Avi's work. >> > > Why not compare it? I think for_each_set_bit is better and it can > improve for all cases (in your patch, you did not consider all case, > for example, if the guest under mm overcommit, it should generate > lots of TLB flush/RELOAD request). > > Actually, i think Avi's way can be improved in the further, we can > just use one atomic operation to avoid cache-miss. May be like this: > > while (vcpu->request) { > xchg(vcpu->request, request); > > for_each_set_bit(request) { > clear_bit(X); > > ...... > } > > } In fact I had something like that in one of the earlier versions, but it was problematic. I'll try to see what the issue was. -- error compiling committee.c: too many arguments to function -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html