[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 0/2] Dump: add a Filesystem in Userspace and command

From: Nan Li
Subject: [Qemu-devel] [PATCH 0/2] Dump: add a Filesystem in Userspace and command "fuse-mount"
Date: Sun, 8 May 2016 07:32:46 +0800

These two patches introduce a Filesystem in Userspace (FUSE) and add a 
"fuse-mount" command to support this filesystem.

When running the command "dump-guest-memory", we usually need a large space
of storage to save the dumpfile into disk. It costs not only much time to
save a file in some of hard disks, but also costs limited storage in host.
In order to reduce the saving time and make it convenient for users to dump
the guest memory, we introduce a Filesystem in Userspace (FUSE) to save the
dump file in RAM. It is selectable in the configure file, adding a compiling
of package "fuse-devel". It doesn't change the way of dumping guest memory.

qemu_fuse_main(int argc, char *argv[]) is the API for qemu code to mount
this filesystem. And it only supports these operations just for dumping
guest memory.

static struct fuse_operations qemu_fuse_oper = {
    .getattr        = qemu_fuse_getattr,
    .fgetattr       = qemu_fuse_fgetattr,
    .readdir        = qemu_fuse_readdir,
    .create   = qemu_fuse_create,
    .open   = qemu_fuse_open,
    .read   = qemu_fuse_read,
    .write  = qemu_fuse_write,
    .unlink = qemu_fuse_unlink,

command "fuse-mount"
It can mount or unmount the filesystem with both hmp and qmp commands.
It calls the API function qemu_fuse_main(int argc, char *argv[]).

 Nan Li (2):
  Dump: introduce a Filesystem in Userspace
  Dump: add command "fuse-mount"

 Makefile.target  |   1 +
 configure        |  34 +++++
 dump.c           |  48 +++++++
 fuse-mem.c       | 376 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 fuse-mem.h       |   2 +
 hmp-commands.hx  |  19 +++
 hmp.c            |  12 ++
 hmp.h            |   1 +
 qapi-schema.json |  15 +++
 qmp-commands.hx  |  31 +++++
 10 files changed, 539 insertions(+)
 create mode 100644 fuse-mem.c
 create mode 100644 fuse-mem.h


reply via email to

[Prev in Thread] Current Thread [Next in Thread]