|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH V3 22/29] x86/vioapic: extend vioapic_get_vector() to support remapping format RTE
On Thu, Oct 19, 2017 at 09:56:34AM -0600, Jan Beulich wrote:
>>>> On 19.10.17 at 17:49, <roger.pau@xxxxxxxxxx> wrote:
>> On Thu, Sep 21, 2017 at 11:02:03PM -0400, Lan Tianyu wrote:
>>> --- a/xen/arch/x86/hvm/vioapic.c
>>> +++ b/xen/arch/x86/hvm/vioapic.c
>>> @@ -561,11 +561,25 @@ int vioapic_get_vector(const struct domain *d,
>>> unsigned int gsi)
>>> {
>>> unsigned int pin;
>>> const struct hvm_vioapic *vioapic = gsi_vioapic(d, gsi, &pin);
>>> + struct arch_irq_remapping_request request;
>>>
>>> if ( !vioapic )
>>> return -EINVAL;
>>>
>>> - return vioapic->redirtbl[pin].fields.vector;
>>> + irq_request_ioapic_fill(&request, vioapic->id,
>>> vioapic->redirtbl[pin].bits);
>>> + if ( viommu_check_irq_remapping(vioapic->domain, &request) )
>>> + {
>>> + int err;
>>> + struct arch_irq_remapping_info info;
>>> +
>>> + err = viommu_get_irq_info(vioapic->domain, &request, &info);
>>> + return !err ? info.vector : err;
>>
>> You can simplify this as return err :? info.vector;
>
>At which point the local variable becomes pretty pointless.
Maybe we can remove 'err' and return
unlikely(viommu_get_irq_info(...)) ?: info.vector;
Thanks
Chao
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |