[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [PATCH V2 6/6] virtio-pci: implement dirty page tracking
On 11/9/2023 1:19 AM, Michael S. Tsirkin wrote:
On Wed, Nov 08, 2023 at 05:30:02PM +0800, Zhu, Lingshan wrote:On 11/7/2023 7:33 PM, Michael S. Tsirkin wrote:On Tue, Nov 07, 2023 at 05:52:41PM +0800, Zhu, Lingshan wrote:2. the PCI FLR is clearing all the registers you exposed here.see above3. Endless expansion of config registers of dirty tracking is not scalable, as theyare not init time registers not following the Appendix B guidelines. endless expansion?? It is a complete set of dirty page tracking, right???? have you see this cap only controls? The device DMA writes the bitmap, not by registers.Device dirty page tracking is start/stop command to be done by thehypervisor.So when guest is resetting the device, it stopped the DMA initiated by thehypervisor.This fundamentally breaks things.Why? When device resets, do you want to keep tracking dirty pages????Yes, when the device resets, before that event occurred, all the pages which were dirtied, must be migrated. And after reset also new page tracking to continue.That depends on whether there is an interrupt for the dirty pages. If there is an interrupt, then the guest owns the pagesNot in the virtio model, guest owns the memory once buffer has been used.Yes and even better, interrupt happens after buffers marked as used.But guest owns memory earlier and you can not change it after this point.
If you mean the guest polls the used_idx, yes that can happen, if so the guest owns the pages even earlier, and I am not sure whether we need to change anything.Maybe we don't need to argue on this, because we MAY don't need this dirty page
tracking facility. Platform PML or shadow virtqueue can work.
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]