Cao jin <caoj.f...@cn.fujitsu.com> writes: > CC: Markus Armbruster <arm...@redhat.com> > CC: Marcel Apfelbaum <mar...@redhat.com> > CC: Michael S. Tsirkin <m...@redhat.com> > Signed-off-by: Cao jin <caoj.f...@cn.fujitsu.com> > --- > hw/pci/msix.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/hw/pci/msix.c b/hw/pci/msix.c > index 0ec1cb1..384a29d 100644 > --- a/hw/pci/msix.c > +++ b/hw/pci/msix.c > @@ -253,9 +253,7 @@ int msix_init(struct PCIDevice *dev, unsigned short > nentries, > return -ENOTSUP; > } > > - if (nentries < 1 || nentries > PCI_MSIX_FLAGS_QSIZE + 1) { > - return -EINVAL; > - } > + assert(nentries >= 1 && nentries <= PCI_MSIX_FLAGS_QSIZE + 1); > > table_size = nentries * PCI_MSIX_ENTRY_SIZE; > pba_size = QEMU_ALIGN_UP(nentries, 64) / 8; > @@ -266,7 +264,7 @@ int msix_init(struct PCIDevice *dev, unsigned short > nentries, > table_offset + table_size > memory_region_size(table_bar) || > pba_offset + pba_size > memory_region_size(pba_bar) || > (table_offset | pba_offset) & PCI_MSIX_FLAGS_BIRMASK) { > - return -EINVAL; > + assert(0); > } > > cap = pci_add_capability(dev, PCI_CAP_ID_MSIX, cap_pos, MSIX_CAP_LENGTH);
Please explain in the commit message why these are programming errors. If you're unsure how, give it a try in a reply to this message, and we'll hammer out something together.