Skip to the content.

Virtio-mem (QEMU)

(qemu) info memory-devices
Memory device [virtio-mem]: "vm0"
  memaddr: 0x140000000
  node: 0
  requested-size: 134217728
  size: 134217728
  max-size: 2147483648
  block-size: 2097152
  memdev: /objects/mem3
Memory device [virtio-mem]: "vm1"
  memaddr: 0x1c0000000
  node: 1
  requested-size: 83886080
  size: 83886080
  max-size: 2147483648
  block-size: 2097152
  memdev: /objects/mem4

https://patchwork.kernel.org/project/kvm/cover/20191212171137.13872-1-david@redhat.com/

qom-set vm0 requested-size 64M

可以得到这个日志:

[  127.372411] virtio_mem virtio0: plugged size: 0x40000000
[  127.376059] virtio_mem virtio0: requested size: 0x4000000
struct VirtIOMEM {

    /* usable region size (<= region_size) */
    uint64_t usable_region_size;

    /* actual size (how much the guest plugged) */
    uint64_t size;

    /* requested size */
    uint64_t requested_size;

    /* block size and alignment */
    uint64_t block_size;

qemu

struct VirtIOMEMPCI {
    VirtIOPCIProxy parent_obj; // @todo 这是个啥 ?
    VirtIOMEM vdev;
    Notifier size_change_notifier;
};

[ ] QEMU 也是

[ ] 检测 QEMU 发送消息的路径

什么是 RamDiscardManager

typedef struct RamDiscardManager RamDiscardManager;

本站所有文章转发 CSDN 将按侵权追究法律责任,其它情况随意。