On 05/07/2016 05:32 PM, Nan Li wrote: > 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.
Why introduce FUSE? Can we reuse NBD instead? > > 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, > }; > > Signed-off-by: Nan Li <n...@suse.com> > --- > Makefile.target | 1 + > configure | 34 +++++ > fuse-mem.c | 376 > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > fuse-mem.h | 2 + > 4 files changed, 413 insertions(+) > create mode 100644 fuse-mem.c > create mode 100644 fuse-mem.h New files should be listed in MAINTAINERS; also, new files usually belong better in an appropriate subdirectory rather than littering the top directory (we're trying to reduce, not increase, the number of top-level files). I haven't closely reviewed the patch, because I think the meta-questions about the feature in general should be discussed first. -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature