summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarkus Armbruster2016-03-15 19:34:43 +0100
committerMarkus Armbruster2016-03-21 21:29:01 +0100
commitba5970a178ef927c34cb8a6dfff54de0a58497c6 (patch)
tree86224b312b9686d01b9409af8d6375c8c2bb5b87
parentivshmem: Rely on server sending the ID right after the version (diff)
downloadqemu-ba5970a178ef927c34cb8a6dfff54de0a58497c6.tar.gz
qemu-ba5970a178ef927c34cb8a6dfff54de0a58497c6.tar.xz
qemu-ba5970a178ef927c34cb8a6dfff54de0a58497c6.zip
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 <armbru@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <1458066895-20632-29-git-send-email-armbru@redhat.com>
-rw-r--r--hw/misc/ivshmem.c9
1 files changed, 0 insertions, 9 deletions
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);