On 2012-06-14 06:51, Alex Williamson wrote: > Trivial conversion, failed to have an uninit before and after.
Need not be in this series, but we should fix that trivial bug nevertheless. Jan > > Signed-off-by: Alex Williamson <alex.william...@redhat.com> > --- > > hw/ivshmem.c | 10 +++------- > 1 file changed, 3 insertions(+), 7 deletions(-) > > diff --git a/hw/ivshmem.c b/hw/ivshmem.c > index 05559b6..8b49eee 100644 > --- a/hw/ivshmem.c > +++ b/hw/ivshmem.c > @@ -70,7 +70,6 @@ typedef struct IVShmemState { > */ > MemoryRegion bar; > MemoryRegion ivshmem; > - MemoryRegion msix_bar; > uint64_t ivshmem_size; /* size of shared memory region */ > int shm_fd; /* shared memory file descriptor */ > > @@ -563,16 +562,13 @@ static uint64_t ivshmem_get_size(IVShmemState * s) { > > static void ivshmem_setup_msi(IVShmemState * s) > { > - memory_region_init(&s->msix_bar, "ivshmem-msix", 4096); > - if (!msix_init(&s->dev, s->vectors, &s->msix_bar, 1, 0)) { > - pci_register_bar(&s->dev, 1, PCI_BASE_ADDRESS_SPACE_MEMORY, > - &s->msix_bar); > - IVSHMEM_DPRINTF("msix initialized (%d vectors)\n", s->vectors); > - } else { > + if (msix_init_exclusive_bar(&s->dev, s->vectors, 1)) { > IVSHMEM_DPRINTF("msix initialization failed\n"); > exit(1); > } > > + IVSHMEM_DPRINTF("msix initialized (%d vectors)\n", s->vectors); > + > /* allocate QEMU char devices for receiving interrupts */ > s->eventfd_table = g_malloc0(s->vectors * sizeof(EventfdEntry)); > > -- Siemens AG, Corporate Technology, CT T DE IT 1 Corporate Competence Center Embedded Linux