summary refs log tree commit diff stats
path: root/hw/core/qdev-properties-system.c
diff options
context:
space:
mode:
authorMarcel Apfelbaum <marcel.a@redhat.com>2013-12-01 14:02:23 +0200
committerMichael S. Tsirkin <mst@redhat.com>2013-12-11 20:11:09 +0200
commit53cb28cbfea038f8ad50132dc8a684e638c7d48b (patch)
tree6f73450161cf97bab45c89a8d55bd2691e596fcc /hw/core/qdev-properties-system.c
parent6307d974f9a28bb6652352f52da97f820427d29d (diff)
downloadfocaccia-qemu-53cb28cbfea038f8ad50132dc8a684e638c7d48b.tar.gz
focaccia-qemu-53cb28cbfea038f8ad50132dc8a684e638c7d48b.zip
exec: separate sections and nodes per address space
Every address space has its own nodes and sections, but
it uses the same global arrays of nodes/section.

This limits the number of devices that can be attached
to the guest to 20-30 devices. It happens because:
 - The sections array is limited to 2^12 entries.
 - The main memory has at least 100 sections.
 - Each device address space is actually an alias to
   main memory, multiplying its number of nodes/sections.

Remove the limitation by using separate arrays of
nodes and sections for each address space.

Signed-off-by: Marcel Apfelbaum <marcel.a@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'hw/core/qdev-properties-system.c')
0 files changed, 0 insertions, 0 deletions