From: Markus Armbruster Date: Tue, 15 Mar 2016 18:34:43 +0000 (+0100) Subject: ivshmem: Drop the hackish test for UNIX domain chardev X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=ba5970a178ef927c34cb8a6dfff54de0a58497c6;p=qemu.git ivshmem: Drop the hackish test for UNIX domain chardev The chardev must be capable of transmitting SCM_RIGHTS ancillary messages. We check it by comparing CharDriverState member filename to "unix:". That's almost as brittle as it is disgusting. When the actual transmission all happened asynchronously, this check was all we could do in realize(), and thus better than nothing. But now we receive at least one SCM_RIGHTS synchronously in realize(), it's not worth its keep anymore. Drop it. Signed-off-by: Markus Armbruster Reviewed-by: Marc-André Lureau Message-Id: <1458066895-20632-29-git-send-email-armbru@redhat.com> --- diff --git a/hw/misc/ivshmem.c b/hw/misc/ivshmem.c index da32a74004..c1a75db7c5 100644 --- a/hw/misc/ivshmem.c +++ b/hw/misc/ivshmem.c @@ -964,15 +964,6 @@ static void pci_ivshmem_realize(PCIDevice *dev, Error **errp) memory_region_add_subregion(&s->bar, 0, mr); pci_register_bar(PCI_DEVICE(s), 2, attr, &s->bar); } else if (s->server_chr != NULL) { - /* FIXME do not rely on what chr drivers put into filename */ - if (strncmp(s->server_chr->filename, "unix:", 5)) { - error_setg(errp, "chardev is not a unix client socket"); - return; - } - - /* if we get a UNIX socket as the parameter we will talk - * to the ivshmem server to receive the memory region */ - IVSHMEM_DPRINTF("using shared memory server (socket = %s)\n", s->server_chr->filename);