Statistics
| Branch: | Revision:

root / net @ d1a0cf73

Name Size
Makefile.objs 457 Bytes
checksum.c 2.2 kB
clients.h 2.1 kB
dump.c 4.7 kB
hub.c 8.2 kB
hub.h 647 Bytes
net.c 30.1 kB
queue.c 7.8 kB
slirp.c 21.9 kB
socket.c 21 kB
tap-aix.c 1.9 kB
tap-bsd.c 4 kB
tap-haiku.c 1.9 kB
tap-linux.c 7.5 kB
tap-linux.h 1.7 kB
tap-solaris.c 6.4 kB
tap-win32.c 21.5 kB
tap.c 23 kB
tap_int.h 1.9 kB
util.c 1.9 kB
util.h 1.3 kB
vde.c 3.5 kB

Latest revisions

# Date Author Comment
ce675a75 02/27/2013 05:10 pm Jason Wang

tap: forbid creating multiqueue tap when hub is used

Obviously, hub does not support multiqueue tap. So this patch forbids creating
multiple queue tap when hub is used to prevent the crash when command line such
as "-net tap,queues=2" is used.

Cc: ...

d26e445c 02/27/2013 05:10 pm Peter Lieven

tap: set IFF_ONE_QUEUE per default

historically the kernel queues packets two times. once
at the device and second in qdisc. this is believed to cause
interface stalls if one of these queues overruns.

setting IFF_ONE_QUEUE is the default in kernels >= 3.8. the...

f6b26cf2 02/27/2013 05:10 pm Jason Wang

net: reduce the unnecessary memory allocation of multiqueue

Edivaldo reports a problem that the array of NetClientState in NICState is too
large - MAX_QUEUE_NUM(1024) which will wastes memory even if multiqueue is not
used.

Instead of static arrays, solving this issue by allocating the queues on demand...

7d91ddd2 02/27/2013 05:10 pm Luigi Rizzo

net: fix unbounded NetQueue

In the current implementation of qemu, running without a network
backend will cause the queue to grow unbounded when the guest is
transmitting traffic.

This patch fixes the problem by implementing bounded size NetQueue,
used with an arbitrary limit of 10000 packets, and dropping packets...

199ee608 02/27/2013 05:10 pm Luigi Rizzo

net: fix qemu_flush_queued_packets() in presence of a hub

When frontend and backend are connected through a hub as below
(showing only one direction), and the frontend (or in general, all
output ports of the hub) cannot accept more traffic, the backend
queues packets in queue-A....

cc2a9043 02/13/2013 07:57 pm Andreas Färber

net: Avoid NULL function pointer dereference on cleanup

The pSeries machine and some other devices don't supply a cleanup
callback. Revert part of 1ceef9f27359cbe92ef124bf74de6f792e71f6fb that
started calling it unconditionally.

Cc: Jason Wang <>...

b8904921 02/07/2013 09:13 pm Michael Roth

net: fix infinite loop on exit

1ceef9f27359cbe92ef124bf74de6f792e71f6fb added handling for cleaning
up multiple queues in qemu_del_nic() for cases where multiqueue is in
use. To determine the number of queues it looks at nic->conf->queues,
then iterates through all the queues to cleanup the associated...

02cd8090 02/02/2013 02:05 am Anthony Liguori

tap: unbreak -netdev tap,fd=X

The multiqueue patch series broke -netdev tap,fd=X which manifests
as libvirt not being able to start a guest. This was because it
passed NULL for the netdev name which results in an anonymous netdev
device regardless of what the user specified....

e5dc0b40 02/01/2013 07:03 pm Jason Wang

tap: introduce a helper to get the name of an interface

This patch introduces a helper tap_get_ifname() to get the device name of tap
device. This is needed when ifname is unspecified in the command line and qemu
were asked to create tap device by itself. In this situation, the name were...

264986e2 02/01/2013 07:03 pm Jason Wang

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....

View revisions

Also available in: Atom