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
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.

--
error compiling committee.c: too many arguments to function



\
 
 \ /
  Last update: 2011-11-20 12:25    [from the cache]
©2003-2011 Jasper Spaans