Commit e68dd684 authored by Peter Maydell's avatar Peter Maydell
Browse files

Merge remote-tracking branch 'remotes/mst/tags/for_upstream' into staging



virtio, pci: fixes

More fixes for 2.9.

Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>

# gpg: Signature made Wed 29 Mar 2017 00:35:49 BST
# gpg:                using RSA key 0x281F0DB8D28D5469
# gpg: Good signature from "Michael S. Tsirkin <mst@kernel.org>"
# gpg:                 aka "Michael S. Tsirkin <mst@redhat.com>"
# Primary key fingerprint: 0270 606B 6F3C DF3D 0B17  0970 C350 3912 AFBE 8E67
#      Subkey fingerprint: 5D09 FD08 71C8 F85B 94CA  8A0D 281F 0DB8 D28D 5469

* remotes/mst/tags/for_upstream:
  virtio: fix vring_align() on 64-bit windows
  pci: Add missing drop of bus master AS reference
  event_notifier: prevent accidental use after close

Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
parents fb59dabd b8adbc65
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -869,6 +869,8 @@ static void do_pci_unregister_device(PCIDevice *pci_dev)
    pci_dev->bus->devices[pci_dev->devfn] = NULL;
    pci_config_free(pci_dev);

    memory_region_del_subregion(&pci_dev->bus_master_container_region,
                                &pci_dev->bus_master_enable_region);
    address_space_destroy(&pci_dev->bus_master_as);
}

+1 −1
Original line number Diff line number Diff line
@@ -34,7 +34,7 @@ struct VirtQueue;
static inline hwaddr vring_align(hwaddr addr,
                                             unsigned long align)
{
    return (addr + align - 1) & ~(align - 1);
    return QEMU_ALIGN_UP(addr, align);
}

typedef struct VirtQueue VirtQueue;
+2 −0
Original line number Diff line number Diff line
@@ -81,8 +81,10 @@ void event_notifier_cleanup(EventNotifier *e)
{
    if (e->rfd != e->wfd) {
        close(e->rfd);
        e->rfd = -1;
    }
    close(e->wfd);
    e->wfd = -1;
}

int event_notifier_get_fd(const EventNotifier *e)
+1 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ int event_notifier_init(EventNotifier *e, int active)
void event_notifier_cleanup(EventNotifier *e)
{
    CloseHandle(e->event);
    e->event = NULL;
}

HANDLE event_notifier_get_handle(EventNotifier *e)