Message ID | 1492164934-988-5-git-send-email-eric.auger@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Fri, Apr 14, 2017 at 3:45 PM, Eric Auger <eric.auger@redhat.com> wrote: > We plan to use vgic_find_mmio_region in vgic-its.c so let's > turn it into a public function. > > Also let's take the opportunity to rename the region parameter > into regions to emphasize this latter is an array of regions. > > Signed-off-by: Eric Auger <eric.auger@redhat.com> > Reviewed-by: Andre Przywara <andre.przywara@arm.com> > Acked-by: Marc Zyngier <marc.zyngier@arm.com> Tested-by: Prakash, Brahmajyosyula <Brahmajyosyula.Prakash@cavium.com>
On Fri, Apr 14, 2017 at 12:15:16PM +0200, Eric Auger wrote: > We plan to use vgic_find_mmio_region in vgic-its.c so let's > turn it into a public function. > > Also let's take the opportunity to rename the region parameter > into regions to emphasize this latter is an array of regions. > > Signed-off-by: Eric Auger <eric.auger@redhat.com> > Reviewed-by: Andre Przywara <andre.przywara@arm.com> > Acked-by: Marc Zyngier <marc.zyngier@arm.com> > > --- > v4 -> v5: > - add Marc's A-b > > v3 -> v4: > - rename region parameter into regions > - add Andre's R-b > --- > virt/kvm/arm/vgic/vgic-mmio.c | 11 +++++------ > virt/kvm/arm/vgic/vgic-mmio.h | 5 +++++ > 2 files changed, 10 insertions(+), 6 deletions(-) > > diff --git a/virt/kvm/arm/vgic/vgic-mmio.c b/virt/kvm/arm/vgic/vgic-mmio.c > index 2a5db13..1c17b2a 100644 > --- a/virt/kvm/arm/vgic/vgic-mmio.c > +++ b/virt/kvm/arm/vgic/vgic-mmio.c > @@ -446,13 +446,12 @@ static int match_region(const void *key, const void *elt) > return 0; > } > > -/* Find the proper register handler entry given a certain address offset. */ > -static const struct vgic_register_region * > -vgic_find_mmio_region(const struct vgic_register_region *region, int nr_regions, > - unsigned int offset) > +const struct vgic_register_region * > +vgic_find_mmio_region(const struct vgic_register_region *regions, > + int nr_regions, unsigned int offset) > { > - return bsearch((void *)(uintptr_t)offset, region, nr_regions, > - sizeof(region[0]), match_region); > + return bsearch((void *)(uintptr_t)offset, regions, nr_regions, > + sizeof(regions[0]), match_region); > } > > void vgic_set_vmcr(struct kvm_vcpu *vcpu, struct vgic_vmcr *vmcr) > diff --git a/virt/kvm/arm/vgic/vgic-mmio.h b/virt/kvm/arm/vgic/vgic-mmio.h > index 98bb566..6eec91b 100644 > --- a/virt/kvm/arm/vgic/vgic-mmio.h > +++ b/virt/kvm/arm/vgic/vgic-mmio.h > @@ -192,4 +192,9 @@ u64 vgic_sanitise_shareability(u64 reg); > u64 vgic_sanitise_field(u64 reg, u64 field_mask, int field_shift, > u64 (*sanitise_fn)(u64)); > > +/* Find the proper register handler entry given a certain address offset */ nit: we don't usually comment the functions in the prototype in the header files but keep comments with the function implementation. But I don't care deeply about this. Acked-by: Christoffer Dall <cdall@linaro.org> > +const struct vgic_register_region * > +vgic_find_mmio_region(const struct vgic_register_region *regions, > + int nr_regions, unsigned int offset); > + > #endif > -- > 2.5.5 >
diff --git a/virt/kvm/arm/vgic/vgic-mmio.c b/virt/kvm/arm/vgic/vgic-mmio.c index 2a5db13..1c17b2a 100644 --- a/virt/kvm/arm/vgic/vgic-mmio.c +++ b/virt/kvm/arm/vgic/vgic-mmio.c @@ -446,13 +446,12 @@ static int match_region(const void *key, const void *elt) return 0; } -/* Find the proper register handler entry given a certain address offset. */ -static const struct vgic_register_region * -vgic_find_mmio_region(const struct vgic_register_region *region, int nr_regions, - unsigned int offset) +const struct vgic_register_region * +vgic_find_mmio_region(const struct vgic_register_region *regions, + int nr_regions, unsigned int offset) { - return bsearch((void *)(uintptr_t)offset, region, nr_regions, - sizeof(region[0]), match_region); + return bsearch((void *)(uintptr_t)offset, regions, nr_regions, + sizeof(regions[0]), match_region); } void vgic_set_vmcr(struct kvm_vcpu *vcpu, struct vgic_vmcr *vmcr) diff --git a/virt/kvm/arm/vgic/vgic-mmio.h b/virt/kvm/arm/vgic/vgic-mmio.h index 98bb566..6eec91b 100644 --- a/virt/kvm/arm/vgic/vgic-mmio.h +++ b/virt/kvm/arm/vgic/vgic-mmio.h @@ -192,4 +192,9 @@ u64 vgic_sanitise_shareability(u64 reg); u64 vgic_sanitise_field(u64 reg, u64 field_mask, int field_shift, u64 (*sanitise_fn)(u64)); +/* Find the proper register handler entry given a certain address offset */ +const struct vgic_register_region * +vgic_find_mmio_region(const struct vgic_register_region *regions, + int nr_regions, unsigned int offset); + #endif