If user adds a memory-backend-file object using object_add command, specifying a non-existing directory for property mem-path, qemu will core dump with message:
/nonexistingdir: No such file or directory Bad ram offset fffffffffffff000 Aborted (core dumped) This patch fixes this problem. Signed-off-by: Hu Tao <hu...@cn.fujitsu.com> --- backends/hostmem-file.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/backends/hostmem-file.c b/backends/hostmem-file.c index 5179994..70172d1 100644 --- a/backends/hostmem-file.c +++ b/backends/hostmem-file.c @@ -55,6 +55,9 @@ file_backend_memory_alloc(HostMemoryBackend *backend, Error **errp) object_get_canonical_path(OBJECT(backend)), backend->size, fb->share, fb->mem_path, errp); + if (backend->mr.ram_addr == -1) { + error_setg(errp, "failed to allocate memory"); + } } #endif } -- 1.9.3