qemu/include
Jason Wang 264986e2c8 tap: multiqueue support
Recently, linux support multiqueue tap which could let userspace call TUNSETIFF
for a signle device many times to create multiple file descriptors as
independent queues. User could also enable/disabe a specific queue through
TUNSETQUEUE.

The patch adds the generic infrastructure to create multiqueue taps. To achieve
this a new parameter "queues" were introduced to specify how many queues were
expected to be created for tap by qemu itself. Alternatively, management could
also pass multiple pre-created tap file descriptors separated with ':' through a
new parameter fds like -netdev tap,id=hn0,fds="X:Y:..:Z". Multiple vhost file
descriptors could also be passed in this way.

Each TAPState were still associated to a tap fd, which mean multiple TAPStates
were created when user needs multiqueue taps. Since each TAPState contains one
NetClientState, with the multiqueue nic support, an N peers of NetClientState
were built up.

A new parameter, mq_required were introduce in tap_open() to create multiqueue
tap fds.

Signed-off-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2013-02-01 11:03:02 -06:00
..
block mirror: add buf-size argument to drive-mirror 2013-01-25 18:18:34 +01:00
bt softmmu: move remaining include files to include/ subdirectories 2012-12-19 08:32:46 +01:00
char chardev: fix QemuOpts lifecycle 2013-01-16 06:58:53 +01:00
disas build: kill libdis, move disassemblers to disas/ 2012-12-19 08:29:06 +01:00
exec tci: Fix broken build (regression) 2013-01-19 20:01:57 +00:00
fpu softfloat: Implement uint64_to_float128 2013-01-05 10:12:50 +00:00
migration migration: move beginning stage to the migration thread 2013-01-17 13:54:18 +01:00
monitor monitor: move include files to include/monitor/ 2012-12-19 08:31:32 +01:00
net tap: multiqueue support 2013-02-01 11:03:02 -06:00
qapi misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
qemu hbitmap: add assertion on hbitmap_iter_init 2013-01-25 18:18:35 +01:00
qom cpu: Unconditionalize CPUState fields 2013-01-28 16:57:56 +01:00
sysemu kvm: Pass CPUState to kvm_on_sigbus_vcpu() 2013-01-28 16:57:56 +01:00
ui qemu-pixman.h: Avoid mutual inclusion loop with console.h 2013-01-30 11:16:28 +01:00
config.h janitor: move remaining public headers to include/ 2012-12-19 08:32:46 +01:00
elf.h janitor: move remaining public headers to include/ 2012-12-19 08:32:46 +01:00
libfdt_env.h fdt: Use bswapN instead of bswap_N 2013-01-12 12:22:58 +00:00
qemu-common.h block: Add special error code for wrong format 2013-01-25 18:18:35 +01:00
trace.h build: some simplifications for "trace/Makefile.objs" 2013-01-12 18:42:51 +01:00