Hi, In my project of "Guest Page Hinting"[1], I have a list of pages which are supposed to be passed to the host. Now I am trying to figure out the changes which I should make in QEMU in order to pass this request to the host. Unlike virtio balloon where the request to deflate/inflate is derived from the host, in my case, I need to figure out how the request which is generated in the guest could be received in QEMU. One way to go about this is to have my own function pointer pointing a to a function qemu_page_hinting() in virtio-balloon.c under QEMU. Now the part where I am not sure is how exactly I will ensure that when virtqueue_kick arrives in QEMU this function is invoked. (I am planning to use the same deflate_vq for my use-case). Another way could be to make changes in the existing "virtio_balloon_handle_output" and may add another flag in the virtqueue structure using which I could distinguish if it's a guest page hinting request. But even in this case, I am not sure how will it work because from what I understood when a user sends a deflate request then this function gets invoked and after all the processing it notifies the guest. (Which is opposite of what I am trying to achieve). Any suggestion what should be the right way to go forward? [1] https://www.spinics.net/lists/kvm/msg153666.html -- Regards Nitesh
Attachment:
signature.asc
Description: OpenPGP digital signature