On Monday 19 January 2009, Kenji Kaneshige wrote: > Hidetoshi Seto wrote: > > Rafael J. Wysocki wrote: > >> On Saturday 17 January 2009, Rafael J. Wysocki wrote: > > (snip) > >>> If MSI-X are supported, it allocates as many vectors as there are entries > >>> in the port's MSI-X table, but no more than 32, and figures out which of them > >>> will be used for the port services. > >> The patch didn't check which services are available during the MSI-X set up > >> which was wrong. > >> > >> Also, in the meantime, i thought it might be a good idea to free the interrupt > >> routing table entries that aren't going to be used after all. > >> > >> The patch below adds this to the previous version and checks for the > >> availability of port services in the MSI-X setup resume. I hope it will > >> be acceptable to everyone. > >> [--snip--] > > > > /* Are there any unused entries? */ > > if (nr_allocated > nvec) { > > /* this port have extra entries not for services we know... */ > > > > Sounds good. That is, > > If the number of entries we required equals to nr_entries (from > Table size field in Message Control register), we don't need to > drop the first MSI-X setup. I've split the patch into two parts, one adding pci_msix_table_size() and the other containing the rest of changes. Also, I've modified the second patch to follow the above observation. The patches will follow as replies to this message. Thanks, Rafael -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html