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>
This commit is contained in:
parent
a3feb08639
commit
ba5970a178
@ -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);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user