Hi On Mon, Feb 29, 2016 at 7:40 PM, Markus Armbruster <[email protected]> wrote: > 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 <[email protected]> > ---
Didn't look that horrible to me, and could be actually more useful than a later error. But I don't think this is an issue, so why not drop a few lines.. Reviewed-by: Marc-André Lureau <[email protected]> > hw/misc/ivshmem.c | 9 --------- > 1 file changed, 9 deletions(-) > > diff --git a/hw/misc/ivshmem.c b/hw/misc/ivshmem.c > index 8f976ca..e578b8a 100644 > --- a/hw/misc/ivshmem.c > +++ b/hw/misc/ivshmem.c > @@ -961,15 +961,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); > > -- > 2.4.3 > > -- Marc-André Lureau
