On Wed, Dec 07, 2016 at 02:21:24PM +0000, Peter Maydell wrote: > On 7 December 2016 at 14:07, Daniel P. Berrange <[email protected]> wrote: > > On Wed, Dec 07, 2016 at 12:30:31PM +0000, Peter Maydell wrote: > >> On 7 December 2016 at 12:04, Daniel P. Berrange <[email protected]> > >> wrote: > >> > On Wed, Dec 07, 2016 at 12:01:14PM +0000, Peter Maydell wrote: > >> >> The usual suggested workaround is to use the -netdev fd option, like > >> >> fd=3 3<>/dev/tap$(< /sys/class/net/tap0/ifindex) > >> >> (which gets the shell to open the right /dev/tap device). > >> >> Unfortunately this isn't compatible with multi-queue support > >> >> because netdev complains > >> >> "ifname=, script=, downscript=, vnet_hdr=, helper=, queues=, fds=, > >> >> and vhostfds= are invalid with fd=" > >> >> so you can't pass options like "queues=4"... > >> > > >> > FWIW you should be able to instead do > >> > > >> > fds=3 3<>/dev/tap$(< /sys/class/net/tap0/ifindex) > >> > > >> > note 'fds' plural, instead of 'fd' > >> > >> What's the difference between that and the "usual suggested workaround" > >> I described above that doesn't work with queues=... ? > > > > It just seems the 'queues' param always wants you to use 'fds' instead > > of 'fd' - 'fds' takes a comma-separated list of FDs - one per queue > > and 'fd' only takes a single FD. > > Oh, I see. That seems a bit obscure :-)
And pointless, because QemuOpts would have allowed use of 'fd' multiple times instead of inventing a new arg. fd=1,fd=3,fd=6 could have worked fine with multi-queue :-( Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://entangle-photo.org -o- http://search.cpan.org/~danberr/ :|
