Rajesh Shah <[email protected]> writes:
> On Tue, Jun 20, 2006 at 04:28:17PM -0600, Eric W. Biederman wrote:
>>
>> @@ -937,27 +936,8 @@ int pci_enable_msi(struct pci_dev* dev)
>> if (!pos)
>> return -EINVAL;
>>
>> - if (!msi_lookup_vector(dev, PCI_CAP_ID_MSI)) {
>> - /* Lookup Sucess */
>> - unsigned long flags;
>> + BUG_ON(!msi_lookup_vector(dev, PCI_CAP_ID_MSI));
>>
> A driver that calls pci_enable_msi() while MSI is already enabled
> will hit this BUG_ON. This is different from the behavior of
> some other pci functions like pci_enable_device(), which
> silently return success if the requested operation is a nop.
> It's pretty easy to do the same here too (ditto for MSI-X).
With MSI-X we can't be a NOOP so it is clearly a bug.
With MSI it might happen, and I don't have a problem if it becomes
a noop. At the same time I'm not convinced it isn't a bug.
All I really care about is that we don't try and do the impossible and
enable the msi from a half initialized software state like we were doing
before.
That was really ugly and impossible to get right.
Eric
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]