qemu/net
Jason Wang f6b26cf257 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
for both the NetClientState array in NICState and VirtIONetQueue array in
VirtIONet.

Tested by myself, with single virtio-net-pci device. The memory allocation is
almost the same as when multiqueue is not merged.

Cc: Edivaldo de Araujo Pereira <edivaldoapereira@yahoo.com.br>
Cc: qemu-stable@nongnu.org
Signed-off-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2013-02-27 16:10:47 +01:00
..
checksum.c Change license from GPLv2 to GPLv2+ 2012-02-01 16:24:54 -06:00
clients.h net: reorganize headers 2012-12-19 08:31:29 +01:00
dump.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
hub.c net: fix qemu_flush_queued_packets() in presence of a hub 2013-02-27 16:10:23 +01:00
hub.h net: fix qemu_flush_queued_packets() in presence of a hub 2013-02-27 16:10:23 +01:00
Makefile.objs net: move net.c to net/ 2012-12-19 08:29:59 +01:00
net.c net: reduce the unnecessary memory allocation of multiqueue 2013-02-27 16:10:47 +01:00
queue.c net: fix unbounded NetQueue 2013-02-27 16:10:39 +01:00
slirp.c HMP: add QDict to info callback handler 2013-01-17 10:24:52 -02:00
socket.c misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
tap_int.h tap: multiqueue support 2013-02-01 11:03:02 -06:00
tap-aix.c tap: multiqueue support 2013-02-01 11:03:02 -06:00
tap-bsd.c tap: multiqueue support 2013-02-01 11:03:02 -06:00
tap-haiku.c tap: multiqueue support 2013-02-01 11:03:02 -06:00
tap-linux.c tap: set IFF_ONE_QUEUE per default 2013-02-27 16:10:47 +01:00
tap-linux.h tap: set IFF_ONE_QUEUE per default 2013-02-27 16:10:47 +01:00
tap-solaris.c tap: multiqueue support 2013-02-01 11:03:02 -06:00
tap-win32.c tap: support enabling or disabling a queue 2013-02-01 11:03:02 -06:00
tap.c tap: forbid creating multiqueue tap when hub is used 2013-02-27 16:10:47 +01:00
util.c net: reorganize headers 2012-12-19 08:31:29 +01:00
util.h net: move parse_macaddr() to net/util.[ch] 2009-12-03 09:41:34 -06:00
vde.c net: add missing include file 2012-12-22 12:06:48 +00:00