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 <[email protected]>
> ---
> 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
