Commit 7e7de876 authored by Cam Macdonell's avatar Cam Macdonell Committed by Anthony Liguori
Browse files

ivshmem: remove redundant ioeventfd configuration



setup_ioeventfds() is unnecessary and actually causes a segfault when used
ioeventfd=on is used on the command-line.  Since ioeventfds are handled within
the memory API, it can be removed.

Signed-off-by: default avatarCam Macdonell <cam@cs.ualberta.ca>
Signed-off-by: default avatarAnthony Liguori <aliguori@us.ibm.com>
parent 998a74bc
Loading
Loading
Loading
Loading
+0 −15
Original line number Diff line number Diff line
@@ -385,17 +385,6 @@ static void close_guest_eventfds(IVShmemState *s, int posn)
    s->peers[posn].nb_eventfds = 0;
}

static void setup_ioeventfds(IVShmemState *s) {

    int i, j;

    for (i = 0; i <= s->max_peer; i++) {
        for (j = 0; j < s->peers[i].nb_eventfds; j++) {
            ivshmem_add_eventfd(s, i, j);
        }
    }
}

/* this function increase the dynamic storage need to store data about other
 * guests */
static void increase_dynamic_storage(IVShmemState *s, int new_min_size) {
@@ -696,10 +685,6 @@ static int pci_ivshmem_init(PCIDevice *dev)
    memory_region_init_io(&s->ivshmem_mmio, &ivshmem_mmio_ops, s,
                          "ivshmem-mmio", IVSHMEM_REG_BAR_SIZE);

    if (ivshmem_has_feature(s, IVSHMEM_IOEVENTFD)) {
        setup_ioeventfds(s);
    }

    /* region for registers*/
    pci_register_bar(&s->dev, 0, PCI_BASE_ADDRESS_SPACE_MEMORY,
                     &s->ivshmem_mmio);