Il 26/02/2014 10:10, Igor Mammedov ha scritto:
if we assume that NUMA policies apply to every hostmem derived backend, then we could realize() approach used by DEVICE. i.e. set NUMA policies in hostmem.c:hostmemory_backend_memory_init()Add parent_complete field to ram-backend class and store there parent's complete pointer. Then we can do: ram_backend_memory_init(UserCreatable *uc, Error **errp) { memory_region_init_ram(); ... MEMORY_BACKEND_RAM_CLASS(uc)->parent_complete(uc, errp); ... }
The problem is that some backends might not be handled the same way. For example, not all backends might produce a single void*/size_t pair for the entire region. Think of a "composite" backend that produces a large memory region from two smaller ones.
Paolo
