lkml.org 
[lkml]   [2011]   [Nov]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2 3/6] KVM: introduce kvm_for_each_memslot macro
(2011/11/20 20:21), Avi Kivity wrote:
> On 11/18/2011 11:18 AM, Xiao Guangrong wrote:
>> index bb8728e..10524c0 100644
>> --- a/include/linux/kvm_host.h
>> +++ b/include/linux/kvm_host.h
>> @@ -307,6 +307,10 @@ static inline struct kvm_vcpu *kvm_get_vcpu(struct kvm *kvm, int i)
>> (vcpup = kvm_get_vcpu(kvm, idx)) != NULL; \
>> idx++)
>>
>> +#define kvm_for_each_memslot(slots, memslot, i) \
>> + for (i = 0; i< (slots)->nmemslots&& \
>> + ({ memslot =&(slots)->memslots[i]; 1; }); i++)
>> +
>>
>
> Statement expression not needed, you can use the comma operator:
>
> i< (slots)->nmemslots&& (memslot = @(slots)->memslots[i], true)
>
> or even
>
> memslot =&(slots)->memslots[i], i< (slots)->nmemslots
>
> or just kill i and make memslot the loop variable.
>

Do you have any preference for the arguments ordering?

I think placing the target one, memslot in this case, first is conventional in
the kernel code, except when we want to place "kvm" or something like that.

But in kvm code, there seems to be some difference.

Takuya


\
 
 \ /
  Last update: 2011-11-21 02:17    [W:0.179 / U:0.012 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site