Re: [PATCH 2/9] PCI/MSI: Support allocating virtual MSI interrupts

From: Logan Gunthorpe
Date: Thu Jan 31 2019 - 17:52:23 EST




On 2019-01-31 3:39 p.m., Bjorn Helgaas wrote:
> I assume you'll merge this along with the rest of the series, so:
>
> Acked-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>

Thanks!

>> diff --git a/include/linux/msi.h b/include/linux/msi.h
>> index 784fb52b9900..6458ab049852 100644
>> --- a/include/linux/msi.h
>> +++ b/include/linux/msi.h
>> @@ -88,6 +88,7 @@ struct msi_desc {
>> __u8 multi_cap : 3;
>> __u8 maskbit : 1;
>> __u8 is_64 : 1;
>> + __u8 is_virtual : 1;
>
> You did the right thing by using the same style as what's already
> here, but does anybody know why are we using __u8 and __u16 here?
>
> Those typedefs are in include/uapi/asm-generic/int-l64.h, which
> suggests they're for things exported to user space, but I don't think
> that's the case here, so I'm wondering if we could someday replace
> these with u8 and u16. Obviously that wouldn't be part of *this*
> series.

Yes, I was also confused by this. But I always follow the "when-in-rome"
rule. My understanding is the same as yours is that __u8 should be used
for userspace compatibility which doesn't apply here. If there is
consensus on this being wrong, I'd be happy to write a cleanup patch
that fixes it separate from this series.
>> +/*
>> + * Virtual interrupts allow for more interrupts to be allocated
>> + * than the device has interrupts for. These are not programmed
>> + * into the devices MSI-X table and must be handled by some
>
> s/devices/device's/

Fixed for when I send v2.

Logan